Mercurial > emacs
comparison lisp/calc/calc-mode.el @ 65901:f4c158053fb0
(calc-matrix-mode, math-get-modes-vec): Add square matrix option.
author | Jay Belanger <jay.p.belanger@gmail.com> |
---|---|
date | Fri, 07 Oct 2005 21:18:01 +0000 |
parents | 1038e6fc7f28 |
children | 43c517a3ef4e |
comparison
equal
deleted
inserted
replaced
65900:13cc64069e8c | 65901:f4c158053fb0 |
---|---|
350 (if calc-symbolic-mode 1 0) | 350 (if calc-symbolic-mode 1 0) |
351 (if calc-prefer-frac 1 0) | 351 (if calc-prefer-frac 1 0) |
352 (if (eq calc-complex-mode 'polar) 1 0) | 352 (if (eq calc-complex-mode 'polar) 1 0) |
353 (cond ((eq calc-matrix-mode 'scalar) 0) | 353 (cond ((eq calc-matrix-mode 'scalar) 0) |
354 ((eq calc-matrix-mode 'matrix) -2) | 354 ((eq calc-matrix-mode 'matrix) -2) |
355 ((eq calc-matrix-mode 'square) -3) | |
355 (calc-matrix-mode) | 356 (calc-matrix-mode) |
356 (t -1)) | 357 (t -1)) |
357 (cond ((eq calc-simplify-mode 'none) -1) | 358 (cond ((eq calc-simplify-mode 'none) -1) |
358 ((eq calc-simplify-mode 'num) 0) | 359 ((eq calc-simplify-mode 'num) 0) |
359 ((eq calc-simplify-mode 'binary) 2) | 360 ((eq calc-simplify-mode 'binary) 2) |
474 (calc-wrapper | 475 (calc-wrapper |
475 (calc-change-mode 'calc-matrix-mode | 476 (calc-change-mode 'calc-matrix-mode |
476 (cond ((eq arg 0) 'scalar) | 477 (cond ((eq arg 0) 'scalar) |
477 ((< (prefix-numeric-value arg) 1) | 478 ((< (prefix-numeric-value arg) 1) |
478 (and (< (prefix-numeric-value arg) -1) 'matrix)) | 479 (and (< (prefix-numeric-value arg) -1) 'matrix)) |
479 (arg (prefix-numeric-value arg)) | 480 (arg |
481 (if (consp arg) 'square | |
482 (prefix-numeric-value arg))) | |
480 ((eq calc-matrix-mode 'matrix) 'scalar) | 483 ((eq calc-matrix-mode 'matrix) 'scalar) |
481 ((eq calc-matrix-mode 'scalar) nil) | 484 ((eq calc-matrix-mode 'scalar) nil) |
482 (t 'matrix))) | 485 (t 'matrix))) |
483 (if (integerp calc-matrix-mode) | 486 (if (integerp calc-matrix-mode) |
484 (message "Variables are assumed to be %dx%d matrices" | 487 (message "Variables are assumed to be %dx%d matrices" |
485 calc-matrix-mode calc-matrix-mode) | 488 calc-matrix-mode calc-matrix-mode) |
486 (message (if (eq calc-matrix-mode 'matrix) | 489 (message (if (eq calc-matrix-mode 'matrix) |
487 "Variables are assumed to be matrices" | 490 "Variables are assumed to be matrices" |
488 (if calc-matrix-mode | 491 (if (eq calc-matrix-mode 'square) |
489 "Variables are assumed to be scalars (non-matrices)" | 492 "Variables are assumed to be square matrices" |
490 "Variables are not assumed to be matrix or scalar")))))) | 493 (if calc-matrix-mode |
494 "Variables are assumed to be scalars (non-matrices)" | |
495 "Variables are not assumed to be matrix or scalar"))))))) | |
491 | 496 |
492 (defun calc-set-simplify-mode (mode arg msg) | 497 (defun calc-set-simplify-mode (mode arg msg) |
493 (calc-change-mode 'calc-simplify-mode | 498 (calc-change-mode 'calc-simplify-mode |
494 (if arg | 499 (if arg |
495 (and (> (prefix-numeric-value arg) 0) | 500 (and (> (prefix-numeric-value arg) 0) |