From: Barton W. <wil...@us...> - 2010-05-30 14:33:01
|
Update of /cvsroot/maxima/maxima/share/contrib/integration In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv1725 Modified Files: abs_integrate.mac Log Message: o allow for integration of some mod functions. o In unit_step_mult_simp, protect unit_step from an input of inf. Index: abs_integrate.mac =================================================================== RCS file: /cvsroot/maxima/maxima/share/contrib/integration/abs_integrate.mac,v retrieving revision 1.25 retrieving revision 1.26 diff -u -d -r1.25 -r1.26 --- abs_integrate.mac 31 Jan 2010 21:20:41 -0000 1.25 +++ abs_integrate.mac 30 May 2010 12:25:02 -0000 1.26 @@ -29,6 +29,7 @@ extra_integrate(q,x) := block([l, i, ii : funmake(nounify('integrate),[q,x])], l : extra_integration_methods, + q : subst('mod = lambda([x,y], x - y * floor(x / y)),q), while l # [ ] do ( i : first(l)(q,x), l : rest(l), @@ -94,7 +95,7 @@ for ek in e do ( if safe_op(ek) = 'unit_step then p : cons(first(ek),p) else q : q * ek), p : xreduce('min, p), - if freeof('max, 'min, p) then q * unit_step(p) else e) + if freeof('max, 'min, 'inf, p) then q * unit_step(p) else e) else map('unit_step_mult_simp, e)); /* Do signum(a) * signum(b) --> signum(a * b) and e * signum(e) --> abs(e) */ |