|
From: Robert D. <rob...@us...> - 2008-02-07 05:24:11
|
Update of /cvsroot/maxima/maxima/src In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv22933/src Modified Files: comm2.lisp Log Message: In DIFFSUMPROD, change ATOM to $MAPATOM so differentiating a sum or product wrt a subscripted variable works the same as for an ordinary variable. Add a few tests for that. Index: comm2.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/comm2.lisp,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- comm2.lisp 31 Jan 2008 04:54:15 -0000 1.18 +++ comm2.lisp 7 Feb 2008 05:24:05 -0000 1.19 @@ -40,7 +40,7 @@ (if (pzerop v) 0 (mul3 v (maxima-substitute (caddr e) y (car e)) -1))))) (defmfun diffsumprod (e x) - (cond ((or (not (atom x)) (not (free (cadddr e) x)) (not (free (car (cddddr e)) x))) + (cond ((or (not ($mapatom x)) (not (free (cadddr e) x)) (not (free (car (cddddr e)) x))) (diff%deriv (list e x 1))) ((eq (caddr e) x) 0) (t (let ((u (sdiff (cadr e) x))) |