Sheldon Newhouse wrote:
> 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
> .
>
>
Now, I put a new version on the web which also handles trig, exponential
functions and unit_steps. It has some of my usual aliases, and is not
intended as a final version.
Suggestions, comments, bug reports, etc. are welcome.
-sen