From: Raymond T. <rt...@us...> - 2006-05-06 13:44:10
|
Update of /cvsroot/maxima/maxima/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18271/src Modified Files: defint.lisp Log Message: Bug 1482843: subscripted variable causes trouble in integrate deg-lessp was not handling the case of subscripted variables. Not sure if the implementation is the best, but it solves this particular issue. Index: defint.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/defint.lisp,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- defint.lisp 7 Apr 2006 18:15:35 -0000 1.24 +++ defint.lisp 6 May 2006 13:44:06 -0000 1.25 @@ -296,7 +296,16 @@ (and (numberp (caddr expr)) (not (eq (asksign (m+ power (m- (caddr expr)))) '$negative)))) - (deg-lessp (cadr expr) var power))))) + (deg-lessp (cadr expr) var power))) + ((and (consp expr) + (member 'array (car expr)) + (not (eq var (caar expr)))) + ;; We have some subscripted variable that's not our variable + ;; (I think), so it's deg-lessp. + ;; + ;; FIXME: Is this the best way to handle this? Are there + ;; other cases we're mising here? + t))) (defun antideriv (a) (let ((limitp ()) |