Enhanced Laplace transforms and desolve for Maxima



Dear Mark H Weaver,
*
*
I have try your patch but it failed in 64bit architecture but
I successfully patch it and run it in 32bit ubuntu10.10. by using your patch
I simply paste my code in maxima,
----------------------------------
load(desoln);
load(laplac);
load(hstep);
load(pwilt);
load(abs_integrate);

f[n,k] := concat('f_,n,"_",k)(s)$
df[n,k] :=
  if n=0 then 0
  else
'diff(f[2*n,k],s)=%psi*((k-1)*sqrt(n-k+2)*f[2*n,k-1]-k*sqrt(n-k+1)*f[2*n,k+1])$

atvalue(f_12_2(s),s=0,0)$
atvalue(f_12_3(s),s=0,0)$
atvalue(f_12_4(s),s=0,0)$
atvalue(f_12_5(s),s=0,0)$
atvalue(f_12_6(s),s=0,0)$
atvalue(f_12_7(s),s=0,0)$

makelist( df[6,k],k,1,7);

desolve(%, makelist(f[12,k],k,1,7) );
-----------------------------------------------------------------------------------------------------
and your patch help me get the function for f_12_1(s) till f_12_7(s)
---------( f_n_k(s) )----------||

this patch also true until f_16_9 only. when i try to run for f_18_10 i got
' ilt ' result again..below is the code that give ' ilt ' result
----------------------
load(desoln);
load(laplac);
load(hstep);
load(pwilt);
load(abs_integrate);

f[n,k] := concat('f_,n,"_",k)(s)$
df[n,k] :=
  if n=0 then 0
  else
'diff(f[2*n,k],s)=%psi*((k-1)*sqrt(n-k+2)*f[2*n,k-1]-k*sqrt(n-k+1)*f[2*n,k+1])$

atvalue(f_18_2(s),s=0,0)$
atvalue(f_18_3(s),s=0,0)$
atvalue(f_18_4(s),s=0,0)$
atvalue(f_18_5(s),s=0,0)$
atvalue(f_18_6(s),s=0,0)$
atvalue(f_18_7(s),s=0,0)$
atvalue(f_18_8(s),s=0,0)$
atvalue(f_18_9(s),s=0,0)$
atvalue(f_18_10(s),s=0,0)$

makelist( df[9,k],k,1,10);

desolve(%, makelist(f[18,k],k,1,10) );
--------------------------------------------------------------------

so what should I do if i want to solve this problem until hundreds ' k ' ?


On Wed, Jan 26, 2011 at 3:41 AM, Richard Hennessy <rich.hennessy at verizon.net
> wrote:

> Hi Mark,
>
> I was working on an inverse Fourier transform function for piecewise
> functions for pw.mac (pwift()).  I did not know of your work so I will
> suspend my work on that.  I really don't have the time to work on this stuff
> anymore.  I think your work is really great BTW.
>
> It has been a long time since I have had any math courses.  Is there a way
> to do inverse Fourier transforms using ilt()?  I can't remember.
>
> Good luck,
>
> Rich
>
>
>
> -----Original Message----- From: Mark H Weaver
> Sent: Tuesday, January 25, 2011 11:51 AM
> To: Hugo Coolens
> Cc: maxima at math.utexas.edu
> Subject: Re: [Maxima] Enhanced Laplace transforms and desolve for Maxima
>
>
> Hugo Coolens <coolens at kahosl.be> writes:
>
>> Will the new code also deal with this:
>>  ilt(exp(-a*s)/s,s,t);
>>
>
> I didn't modify ilt to do this, but my new pwilt does it:
>
> (%i2) load(pwilt)$
> (%i3) pwilt(exp(-a*s)/s,s,t);
> (%o3) hstep(t-a)
> (%i4) pwilt(%e^-s*(s*%e^s-s^2-2*s-2)/s^3, s,t), ratsimp;
> (%o4) t-t^2*hstep(t-1)
>
> It is also designed to handle periodic functions
> (though currently it fails to detect this in some cases):
>
> (%i5) assume(a>0);
> (%o5) [a > 0]
> (%i6) pwilt(1/(s*(1-%e^-(2*a*s)))-%e^-(a*s)/(s*(1-%e^-(2*a*s))), s,t);
> (%o6) 'sum(hstep(t-2*%k*a)-hstep(t-2*%k*a-a),%k,0,inf)
>
> pwilt stands for "piecewise inverse laplace transform".  I attached the
> code at the beginning of this thread.  In the other direction, my
> changes to laplac.lisp support taking laplace transforms of piecewise
> functions defined in terms of hstep or unit_step.
>
> Note that this is still a work in progress.
>
>   Best,
>    Mark
>
>
>  This would be great for (electronic) engineering students who want to
>> make the shift to Maxima
>>
>>
>> best regards,
>> hugo
>>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>



-- 
Regards,

RAZIF RAZALI,
Tutor & Master Student,
Physics Department,
Faculty Of Science,
Universiti Teknologi Malaysia(UTM).
+60199393606