Hi list,
I have worked out rules for integrating expressions that involve the unit_step function. They all seem to work now
because of your suggestion. There are some restrictions on the unit_step argument, it has to be linear like
unit_step(a*x+b), where a = 1 but as long as that is true a very large set of expressions can be integrated now with
these rules. Basically anything in the form of
expr1*unit_step(x+b)+expr2*unit_step(x+c) + ... can be integrated as long as expr1, expr2 and ... exprn can be
integrated.
That means piecewise expressions or functions can be integrated now. c and d have to be numbers (+ or -) or expressions
that evaluate to a number. With these rules would there be a chance that they could be added to the fourie.mac package?
I would be adding two new functions too like pw(L,x) that return an expression involving unit_step. I have done away
with matrices in the output.
I have not found anything wrong with putting declare (integrate, linear) but I have also considered that it may be
better to do that to antidiff or a new function like pwintegrate. I am not sure which way to do it and of course I am
not a Maxima developer so I can't make changes except to my own copy of Maxima. Is there any interest in this? Are
there known problems with declaring integrate to be linear?
Rich
I have attached the rules and two examples. The examples work best in wxMaxima.
----- Original Message -----
From: "Richard Fateman" <fateman at cs.berkeley.edu>
To: "'Richard Hennessy'" <rvh2007 at comcast.net>; "'Maxima List'" <maxima at math.utexas.edu>
Sent: Sunday, October 19, 2008 12:42 AM
Subject: RE: [Maxima] Tellsimp and tellsimpafter
I suggest you use some other function name, like myintegrate(...,..)
and see if you can make your rules work. integrate() has semantics
associated with it that may be causing difficulty.
read about declaring operators linear.
in particular, declare(myintegrate,linear)
--> myintegrate(a*x^2+b*x+c,x) ==>
a*myintegrate(x^2,x)+b*myintegrate(x,x)+c*myintegrate(1,x);
> -----Original Message-----
> From: maxima-bounces at math.utexas.edu
> [mailto:maxima-bounces at math.utexas.edu] On Behalf Of Richard Hennessy
> Sent: Saturday, October 18, 2008 9:16 PM
> To: Maxima List
> Subject: Tellsimp and tellsimpafter
>
> Hi List,
>
> I have been trying to get Maxima to change an integral of a
> sum to the sum of integrals in cases where some of the
> integrals in the sum can be done and some cannot and have had
> no luck with it at all. It seems like this cannot be done
> with matchdeclare and tellsimp and tellsimpafter. I can
> write a program to do it but I would prefer to know for sure if
> it cannot be done with tellsimp, tellsimpafter and
> matchdeclare. I always get a single integral sign of the entire sum.
>
> Example
>
> integrate(x^2*unit_step(x-5) + x,x)
> -> integrate(x^2*unit_step(x-5) + x,x)
>
> This form for the answer is of no help to me..
>
> Thanks,
>
> Rich
>
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pw.mac
Type: image/x-macpaint
Size: 2555 bytes
Desc: not available
Url : http://www.math.utexas.edu/pipermail/maxima/attachments/20081020/fee5dbf5/attachment.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Basic examples.wxm
Type: application/octet-stream
Size: 3506 bytes
Desc: not available
Url : http://www.math.utexas.edu/pipermail/maxima/attachments/20081020/fee5dbf5/attachment.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Fourie Example 2.wxm
Type: application/octet-stream
Size: 1836 bytes
Desc: not available
Url : http://www.math.utexas.edu/pipermail/maxima/attachments/20081020/fee5dbf5/attachment-0001.obj