[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/calc/calc-poly.el
From: |
Jay Belanger |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/calc/calc-poly.el |
Date: |
Wed, 07 Sep 2005 15:27:11 -0400 |
Index: emacs/lisp/calc/calc-poly.el
diff -c emacs/lisp/calc/calc-poly.el:1.14 emacs/lisp/calc/calc-poly.el:1.15
*** emacs/lisp/calc/calc-poly.el:1.14 Thu Jul 14 19:46:05 2005
--- emacs/lisp/calc/calc-poly.el Wed Sep 7 19:27:11 2005
***************
*** 1069,1086 ****
(math-add-or-sub (list '/ (nth 1 (nth 1 expr)) (nth 2 expr))
(list '/ (nth 2 (nth 1 expr)) (nth 2 expr))
nil (eq (car (nth 1 expr)) '-)))
((and (eq (car-safe expr) '^)
(memq (car-safe (nth 1 expr)) '(+ -))
(integerp (nth 2 expr))
! (if (> (nth 2 expr) 0)
! (or (and (or (> math-mt-many 500000) (< math-mt-many -500000))
! (math-expand-power (nth 1 expr) (nth 2 expr)
! nil t))
! (list '*
! (nth 1 expr)
! (list '^ (nth 1 expr) (1- (nth 2 expr)))))
! (if (< (nth 2 expr) 0)
! (list '/ 1 (list '^ (nth 1 expr) (- (nth 2 expr))))))))
(t expr)))
(defun calcFunc-expand (expr &optional many)
--- 1069,1113 ----
(math-add-or-sub (list '/ (nth 1 (nth 1 expr)) (nth 2 expr))
(list '/ (nth 2 (nth 1 expr)) (nth 2 expr))
nil (eq (car (nth 1 expr)) '-)))
+ ((and (eq calc-matrix-mode 'matrix)
+ (eq (car-safe expr) '^)
+ (natnump (nth 2 expr))
+ (> (nth 2 expr) 1)
+ (memq (car-safe (nth 1 expr)) '(+ -)))
+ (if (= (nth 2 expr) 2)
+ (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (nth 1 expr))
+ (list '* (nth 2 (nth 1 expr)) (nth 1 expr))
+ nil (eq (car (nth 1 expr)) '-))
+ (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (list '^ (nth 1
expr)
+ (1- (nth 2
expr))))
+ (list '* (nth 2 (nth 1 expr)) (list '^ (nth 1
expr)
+ (1- (nth 2
expr))))
+ nil (eq (car (nth 1 expr)) '-))))
((and (eq (car-safe expr) '^)
(memq (car-safe (nth 1 expr)) '(+ -))
(integerp (nth 2 expr))
! (if (and (eq calc-matrix-mode 'matrix)
! (> (nth 2 expr) 1))
! (if (= (nth 2 expr) 2)
! (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (nth 1
expr))
! (list '* (nth 2 (nth 1 expr)) (nth 1
expr))
! nil (eq (car (nth 1 expr)) '-))
! (math-add-or-sub (list '* (nth 1 (nth 1 expr))
! (list '^ (nth 1 expr)
! (1- (nth 2 expr))))
! (list '* (nth 2 (nth 1 expr))
! (list '^ (nth 1 expr)
! (1- (nth 2 expr))))
! nil (eq (car (nth 1 expr)) '-)))
! (if (> (nth 2 expr) 0)
! (or (and (or (> math-mt-many 500000) (< math-mt-many
-500000))
! (math-expand-power (nth 1 expr) (nth 2 expr)
! nil t))
! (list '*
! (nth 1 expr)
! (list '^ (nth 1 expr) (1- (nth 2 expr)))))
! (if (< (nth 2 expr) 0)
! (list '/ 1 (list '^ (nth 1 expr) (- (nth 2 expr)))))))))
(t expr)))
(defun calcFunc-expand (expr &optional many)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/calc/calc-poly.el,
Jay Belanger <=