Integrating gamma_incomplete



These rules are not perfectly right completely I have found.  This can be done better in code.  I think tellsimp cannot 
be made to do it perfectly right so I am writing a Maxima code file that will do this and I can add it to integrate via 
abs_integrate's list of integration routines.

Rich


--------------------------------------------------
From: "Dieter Kaiser" <drdieterkaiser at web.de>
Sent: Tuesday, March 09, 2010 5:49 PM
To: "Richard Hennessy" <rich.hennessy at verizon.net>
Cc: <maxima at math.utexas.edu>
Subject: Re: [Maxima] Integrating gamma_incomplete

> Am Montag, den 08.03.2010, 20:42 -0500 schrieb Richard Hennessy:
>> Hi again,
>>
>> Sorry for another post on this.  I figured out the problem with the rules and I also found a bug in quad_qagi, I 
>> think
>> but it may just be overflow.  Any here it is.
>>
>> (%i43) display2d:false;
>> (out43) false
>> (%i44) out4;
>> (out44) -(gamma_incomplete(6/7,9*x^7)*x-gamma_incomplete(1,9*x^7)/9^(1/7))/(7*9^(6/7))
>> (%i45) quad_qagi(%,x,0,inf);
>> gamma_incomplete: continued fractions failed for gamma_incomplete(1.0, 4.3682654441477153E+19).
>> (out45) quad_qagi(-(gamma_incomplete(6/7,9*x^7)*x-gamma_incomplete(1,9*x^7)/9^(1/7))/(7*9^(6/7)),x,0,inf,epsrel =
>> 1.0E-8,epsabs = 0.0,limit = 200)
>> (%i46)
>>
>> Now for the rules that work.
>>
>> matchdeclare([a,s],freeof(x),x,true,[m,n],nonnegintegerp)$
>> block(
>> [simp:false],
>> tellsimp('integrate(gamma_incomplete(s, a*x^n), x),x*gamma_incomplete(s, a*x^n) - (x*gamma_incomplete(1/n + s,
>> a*x^n))/(a^(1/n)*(x^n)^(1/n))),
>> tellsimp('integrate(gamma_incomplete(s, a*x^n)*x^m, x),x*gamma_incomplete(s, a*x^n)*x^m/(m+1)
>> - (x*gamma_incomplete((m+1)/n + s, a*x^n))/((m+1)*a^((m+1)/n)*(x^n)^(1/n)))
>> )$
>> remove([a,s,x,m,n],matchdeclare)$
>> declare(integrate,linear);
>> assume(x>0);
>> /* eof */
>
> Hello Richard,
>
> thank you for your suggestions to implement a rule to get the more
> general integral of gamma_incomplete.
>
> Because of your suggestion I had a look at the code of abs_integrate to
> get some ideas how to implement all the integrals of special functions
> in a more general way.
>
> I have not a lot of experience with Maxima code. My favorite is Lisp and
> I am interested in improving the core functionality of Maxima.
>
> Dieter Kaiser
>
>
>