Today, I have added more code to get the Laplace transforms of the Exponential
Integrals Si, Shi, Ci, and Chi. Furthermore, I had already added the Exponential
Integrals E, E1, and Ei and the Laguerre and the Hermite functions.
All these transformations work with the Maxima function laplace. I have build up
a new testfile with the 129 tabulated integrals in A&S. Now we have 109 results.
There are 20 noun forms remaining, because we have no algorithm to solve these
integrals. (I am not sure if it is better to commit a new test file
rtest_laplace.mac or to add/change/remove the tests in rtest_hypgeo.mac.)
Most of the integrals can simplified directly to the tabulated results. To fully
simplify the results the flags gamma_expand, expintrep, logexpand, logarc are
used.
These are some examples to show how it works:
********************** Problem 1 ***************
Input:
laplace('gen_laguerre(n,0,t),t,s)
Result:
(1-1/s)^n/s
... Which was correct.
********************** Problem 2 ***************
Input:
laplace('laguerre(n,t),t,s)
Result:
(1-1/s)^n/s
... Which was correct.
********************** Problem 3 ***************
Input:
laplace('hermite(2*n,sqrt(t))/sqrt(t),t,s)
Result:
%pi*2^(2*n)*(1-1/s)^n/(gamma(-(2*n-1)/2)*sqrt(s))
... Which was correct.
********************** Problem 4 ***************
Input:
laplace('hermite(1+2*n,sqrt(t)),t,s)
Result:
-%pi*2^(2*n+2)*(1-1/s)^n/(2*gamma(-(2*n+1)/2)*s^(3/2))
... Which was correct.
********************** Problem 5 ***************
Input:
ratsimp(laplace(%e^(a*t)*(expintegral_e1(a*t)+log(a)),t,s))
Result:
log(s)/(s-a)
... Which was correct.
********************** Problem 6 ***************
Input:
ratsimp(laplace(%e^(a*t)*(expintegral_e(1,a*t)+log(a)),t,s))
Result:
log(s)/(s-a)
... Which was correct.
********************** Problem 7 ***************
Input:
ev(radcan(laplace(cos(t)*expintegral_si(t)-sin(t)*expintegral_ci(t),t,s)),
logarc:true,logexpand:super)
Result:
log(s)/(s^2+1)
... Which was correct.
********************** Problem 8 ***************
Input:
ev(radcan(laplace(-cos(t)*expintegral_ci(t)-sin(t)*expintegral_si(t),t,s)),
logarc:true,logexpand:super)
Result:
s*log(s)/(s^2+1)
... Which was correct.
********************** Problem 9 ***************
Input:
laplace(expintegral_e1(t/k),t,s)
Result:
log(k*s+1)/s
... Which was correct.
********************** Problem 10 ***************
Input:
radcan(laplace(-2*expintegral_ci(t/k),t,s))
Result:
log(k^2*s^2+1)/s
... Which was correct.
********************** Problem 11 ***************
Input:
ratsimp(laplace(2*log(a)-2*expintegral_ci(a*t),t,s))
Result:
log(s^2+a^2)/s
... Which was correct.
********************** Problem 12 ***************
Input:
ratsimp(laplace(-2*t*expintegral_ci(a*t)+2*sin(a*t)/a+2*t*log(a),t,s))
Result:
log(s^2+a^2)/s^2
... Which was correct.
********************** Problem 13 ***************
Input:
(assume(k > 0),done)
Result:
done
... Which was correct.
********************** Problem 14 ***************
Input:
laplace(expintegral_si(k*t),t,s)
Result:
atan(k/s)/s
... Which was correct.
********************** Problem 16 ***************
Input:
(assume(s > 0,a > 0),done)
Result:
done
... Which was correct.
********************** Problem 17 ***************
Input:
ev(ratsimp(laplace(1/(a+t),t,s)),gamma_expand:true,expintrep:expintegral_e1,
logexpand:super)
Result:
%e^(a*s)*expintegral_e1(a*s)
... Which was correct.
********************** Problem 19 ***************
Input:
(assume(a > 0),done)
Result:
done
... Which was correct.
********************** Problem 20 ***************
Input:
ev(ratsimp(laplace(1/(a+t)^2,t,s)),logexpand:super,gamma_expand:true,
expintrep:expintegral_e1)
Result:
-(a*s*%e^(a*s)*expintegral_e1(a*s)-1)/a
... Which was correct.
********************** Problem 22 ***************
Input:
(assume(a > 0,n > 1),done)
Result:
done
... Which was correct.
********************** Problem 23 ***************
Input:
laplace(1/(a+t)^n,t,s)
Result:
gamma_incomplete(1-n,a*s)*s^(n-1)*%e^(a*s)
... Which was correct.