# [Maxima] Extension of the function \$laplace to call \$specint

Dieter Kaiser drdieterkaiser at web.de
Wed Mar 4 13:56:50 CST 2009

```I have checked in an extension to \$laplace to call \$specint when \$laplace fails
to find the laplace transform.

In addition there is one change in desoln.lisp necessary. The function \$desolve
initialize the parameter of the laplace transformation with the value nil. This
value is passed to the routines \$laplace and \$specint. But \$specint does not
work well with the value nil as a parameter. Therefore, I have changed the
initialization to a gensym.

Furthermore, I have tested the extension of laplace with all integrals of the
test file hypgeo.mac. laplace finds all solutions too. There are some problems
with extra questions from asksign, because \$laplace first tries to find an
integral with the routine \$defint.

At this time I have not extended the testsuite. But here are some results as an
expample:

Laplace transformation for sin(t)/t and sin(t)/t^1:

(%i7) laplace(sin(t)/t,t,s);
(%o7) %pi/2-atan(s)
(%i8) laplace(sin(t)/t^2,t,s);
(%o8) 'laplace(sin(t)/t^2,t,s)

The special function bessel_j(0,t):

(%i9) laplace(bessel_j(0,t),t,s);
(%o9) 1/(sqrt(1/s^2+1)*s)

An example with the unit_step function which can be integrated by \$specint:

(%i18) laplace(1/sqrt(%pi*t)*unit_step(t-k),t,s);
(%o18) gamma_incomplete(1/2,k*s)/(sqrt(%pi)*sqrt(s))

When we use the flag gamma_expand the the result simplifies to the correct
expression with a erfc function:

(%i19) laplace(1/sqrt(%pi*t)*unit_step(t-k),t,s),gamma_expand:true;
(%o19) erfc(sqrt(k)*sqrt(s))/sqrt(s)

Dieter Kaiser

```