# [Maxima] More on enhanced laplace transforms

Barton Willis willisb at unk.edu
Fri Mar 13 18:01:38 CDT 2009

I didn't try, but using a tellsimpafter, I think you can have
ilt try your code on failure. Do something like (maybe ilt
needs a

block([simp : false], tellsimpafter(ilt(f,s,t), ilap_1(f)));

Maybe your ilap_1 should have three arguments (as does ilt).

Barton

-----maxima-bounces at math.utexas.edu wrote: -----

>To: "maxima at math.utexas.edu" <maxima at math.utexas.edu>
>From: Sheldon Newhouse <sen1 at math.msu.edu>
>Sent by: maxima-bounces at math.utexas.edu
>Date: 03/13/2009 04:14PM
>Subject: [Maxima] More on enhanced laplace transforms
>
>Hello,
> I have developed a very primitive extension to the laplace transform
>routines to deal with the kinds of discontinuous functions often taught
>in basic ODE courses.
>
>The direct routine (i.e., taking the Laplace transform using some
>unit_step functions) is a simple wrapper around the 'specint' program in
>maxima (thanks to Dieter Kaiser for alerting me about this routine and
>its use in Laplace transforms).
>
>The inverse routine is a pretty sloppy hack and only seems to work for
>linear combinations of polynomials and unit_step functions.
>
>Expressions involving  direct transforms including exponential and trig
>functions are just too complicated for the present version.  The
>transforms have to be massaged first to get rid of expressions like
>exp(A*s) in the denominators, etc.
>
>To save writing, the direct routine is called 'lap(f)' where f is a
>function of t, and
> the inverse routine is ilap(F) where F is a function of s.
>
>Examples:
>(%i26) f: sum(unit_step(t-i)*(t+1)^i,i,1,3);
>
>(%o26) (t+1)*ustep(t-1)+(t+1)^2*ustep(t-2)+(t+1)^3*ustep(t-3)
>(%i27) lap(f);
>
>(%o27)
>%e^-(3*s)*((2*s^3+s^2)*%e^(2*s)+(9*s^3+6*s^2+2*s)*%e^s+64*s^3+48*s^2
>                                      +24*s+6)
>        /s^4
>(%i28) ilap(%);
>
>(%o28) (t-1)*ustep(t-1)+2*ustep(t-1)+(t-2)^2*ustep(t-2)+6*(t-2)*ustep(t-2)
>
>+9*ustep(t-2)+(t-3)^3*ustep(t-3)+12*(t-3)^2*ustep(t-3)
>                       +48*(t-3)*ustep(t-3)+64*ustep(t-3)
>(%i29) expand(%o28 -%o26);
>
>(%o29) 0
>
>
>I have put a file called 'My_laplace.mac"  on the web at
>  http://janus.math.msu.edu/sen/WWW/Maxima_Laplace
>
>in case anyone is interested.  (Note: this is new and probably has
>bugs.  All I can say is that I tested it with problems in some basic ODE
>books and it works on them).
>
>I would appreciate any comments which might improve the code and make,
>perhaps,  a useful research tool.
>
>-sen
>
>
>
>
>
>_______________________________________________
>Maxima mailing list
>Maxima at math.utexas.edu
>http://www.math.utexas.edu/mailman/listinfo/maxima