aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Belanger2005-10-07 21:18:22 +0000
committerJay Belanger2005-10-07 21:18:22 +0000
commit8fc5f8233b811bf2fe08cb641a4d00538c654030 (patch)
tree8ba199e509072e028924dbf93d64dd25e1a82c67
parentd7b79b09b1dc1bc5e58772bd099f4324d93182c9 (diff)
downloademacs-8fc5f8233b811bf2fe08cb641a4d00538c654030.tar.gz
emacs-8fc5f8233b811bf2fe08cb641a4d00538c654030.zip
(math-expand-term): Check for matrices instead of checking
calc-matrix-mode when deciding how to expand.
-rw-r--r--lisp/calc/calc-poly.el25
1 files changed, 9 insertions, 16 deletions
diff --git a/lisp/calc/calc-poly.el b/lisp/calc/calc-poly.el
index e27705de98a..4714b2f7d38 100644
--- a/lisp/calc/calc-poly.el
+++ b/lisp/calc/calc-poly.el
@@ -1069,25 +1069,18 @@
1069 (math-add-or-sub (list '/ (nth 1 (nth 1 expr)) (nth 2 expr)) 1069 (math-add-or-sub (list '/ (nth 1 (nth 1 expr)) (nth 2 expr))
1070 (list '/ (nth 2 (nth 1 expr)) (nth 2 expr)) 1070 (list '/ (nth 2 (nth 1 expr)) (nth 2 expr))
1071 nil (eq (car (nth 1 expr)) '-))) 1071 nil (eq (car (nth 1 expr)) '-)))
1072 ((and (eq calc-matrix-mode 'matrix)
1073 (eq (car-safe expr) '^)
1074 (natnump (nth 2 expr))
1075 (> (nth 2 expr) 1)
1076 (memq (car-safe (nth 1 expr)) '(+ -)))
1077 (if (= (nth 2 expr) 2)
1078 (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (nth 1 expr))
1079 (list '* (nth 2 (nth 1 expr)) (nth 1 expr))
1080 nil (eq (car (nth 1 expr)) '-))
1081 (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (list '^ (nth 1 expr)
1082 (1- (nth 2 expr))))
1083 (list '* (nth 2 (nth 1 expr)) (list '^ (nth 1 expr)
1084 (1- (nth 2 expr))))
1085 nil (eq (car (nth 1 expr)) '-))))
1086 ((and (eq (car-safe expr) '^) 1072 ((and (eq (car-safe expr) '^)
1087 (memq (car-safe (nth 1 expr)) '(+ -)) 1073 (memq (car-safe (nth 1 expr)) '(+ -))
1088 (integerp (nth 2 expr)) 1074 (integerp (nth 2 expr))
1089 (if (and (eq calc-matrix-mode 'matrix) 1075 (if (and
1090 (> (nth 2 expr) 1)) 1076 (or (math-known-matrixp (nth 1 (nth 1 expr)))
1077 (math-known-matrixp (nth 2 (nth 1 expr)))
1078 (and
1079 calc-matrix-mode
1080 (not (eq calc-matrix-mode 'scalar))
1081 (not (and (math-known-scalarp (nth 1 (nth 1 expr)))
1082 (math-known-scalarp (nth 2 (nth 1 expr)))))))
1083 (> (nth 2 expr) 1))
1091 (if (= (nth 2 expr) 2) 1084 (if (= (nth 2 expr) 2)
1092 (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (nth 1 expr)) 1085 (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (nth 1 expr))
1093 (list '* (nth 2 (nth 1 expr)) (nth 1 expr)) 1086 (list '* (nth 2 (nth 1 expr)) (nth 1 expr))