MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Hypergeometric integral looks wrong ?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg55522] Re: Hypergeometric integral looks wrong ?
  • From: Maxim <ab_def at prontomail.com>
  • Date: Sun, 27 Mar 2005 02:43:19 -0500 (EST)
  • References: <d1tv31$rk0$1@smc.vnet.net> <d20r1q$baq$1@smc.vnet.net> <d234ac$lhp$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

It's not true that the identity doesn't hold for values of the parameter z  
in [0, 1]. The transformation which I used is valid if the last argument  
of Hypergeometric2F1 is not in the interval [0, 1]. I denoted this  
argument as z_, which is not the same as your variable z. Mathematica's  
result involves Hypergeometric2F1[..., 1/z] and Hypergeometric2F1[...,  
E^(v*t)/z] (or equivalent Beta functions). It is easy to see that both  
arguments are not in [0, 1]:

In[1]:=
FullSimplify[!(0 <= E^(v*t)/z <= 1) // LogicalExpand,
   v > 0 && z < 1 && t > 0]

Out[1]=
z != 0

or

In[2]:=
Reduce[0 <= E^(v*t)/z <= 1 && v > 0 && z < 1 && t > 0]

Out[2]=
False

or

In[3]:=
E^(v*t)/z /.
   {v -> Interval[{0, Infinity}],
    z -> Interval[{-Infinity, 1}],
    t -> Interval[{0, Infinity}]}

Out[3]=
Interval[{-Infinity, 0}, {1, Infinity}]

and similarly for 1/z (Interval doesn't exclude points 0 and 1, though).  
Next, (a-b) shouldn't be integer; however, the right-hand side of the rule  
still makes sense as the limit (we can replace b with b+eps and then take  
the limit as eps tends to 0). Basically we have a removable singularity  
which gets cancelled in the final answer, the same as at the point z=0. We  
can conclude that the transformation is valid everywhere under the  
conditions that you specified.

Also it's quite possible that we may encounter complex quantities such as  
(-z)^a at intermediate steps; there's nothing wrong with that.

Maxim Rytin
m.r at inbox.ru


On Sat, 26 Mar 2005 07:51:40 +0000 (UTC), luis serven <junk1 at lafaena.com>  
wrote:

> Thanks for your reply. However, the transformation you mention involves  
> real
> powers of (-z) ands is defined for z outside (0,1), while in my case I  
> need
> to allow for 1> z >=0.
>
> Luigi
>
>
> "Maxim" <ab_def at prontomail.com> wrote in message
> news:d20r1q$baq$1 at smc.vnet.net...
>> On Thu, 24 Mar 2005 08:51:45 +0000 (UTC), luigi <junk1 at lafaena.com>  
>> wrote:
>>
>>> I have to compute the following integral:
>>>
>>> (1/ bv) Integrate[Exp[- b v s](1 - z Exp[-v s])^(-a), {s, 0, Infinity},
>>> Assumptions -> {Re[b] > 0, Re[v] > 0, Re[b v] > 0}]
>>>
>>> In my case, z runs over (-Infinity,1), and a, b v are real ( a < 0).
>>> Now if the limits of integration were (0, Infinity) then this is just  
>>> the
>>> hypergeometric function 2F1[a, b, b+1, z]. But since I am integrating
>>> over
>>> the interval (0, t), direct calculation yields
>>>
>>> 2F1[a, b, b+1, z] - Exp[-b v t] 2F1[a, b, b+1, z Exp [- v t]]
>>>
>>> But Mathematica 5.0 instead yields
>>>
>>> (1-z)^(-a) 2F1[a, a-b, 1+a-b , 1/z] ((z-1)/z)^(a) - Exp[-b v t]  
>>> (1-Exp[v
>>> t]/z)^a (1 - Exp[-v t] z)^(-a) 2F1[a, a-b, 1+a-b , Exp[v t]/z ]
>>>
>>> This looks quite different and, moreover, does not seem to make sense  
>>> for
>>> the range of z I am allowing. Is mathematica's result right ? Am I
>>> missing
>>> some transformation that links both results ?
>>>
>>> Thanks for any help.
>>>
>>>
>>
>> Yes, it is possible to convert one form of the answer to another, except
>> that b*v (and not bv) should be put in the numerator. Mathematica's  
>> answer
>> contains Hypergeometric2F1[..., E^(v*t)/z] rather than
>> Hypergeometric2F1[..., z*E^(-v*t)], so we need an appropriate
>> transformation identity. Using the formula found at
>> http://functions.wolfram.com/07.23.17.0057.01 , we obtain (in version  
>> 5.1)
>>
>> In[1]:=
>> Assuming[a < 0 && b > 0 && v > 0 && z < 1 && t > 0,
>>   b*v*Integrate[E^(-b*v*s)*(1 - z*E^(-v*s))^(-a), {s, 0, t}] /.
>>         Beta[z_, a_, b_] ->
>>           z^a/a*Hypergeometric2F1[a, 1 - b, a + 1, z] /.
>>       Hypergeometric2F1[a_, b_, c_, z_] ->
>>         Gamma[b - a]*Gamma[c]/(Gamma[b]*Gamma[c - a])*
>>             Hypergeometric2F1[a, a - c + 1, a - b + 1, 1/z]/(-z)^a +
>>           Gamma[a - b]*Gamma[c]/(Gamma[a]*Gamma[c - b])*
>>             Hypergeometric2F1[b, b - c + 1, b - a + 1, 1/z]/(-z)^b //
>>     FullSimplify[#, ExcludedForms -> _Hypergeometric2F1]&]
>>
>> Out[1]=
>> Hypergeometric2F1[a, b, 1 + b, z] -
>>   Hypergeometric2F1[a, b, 1 + b, z/E^(t*v)]/E^(b*t*v)
>>
>> as requested.
>>
>> Maxim Rytin
>> m.r at inbox.ru
>>
>
>


  • Prev by Date: Re: MapAt changes its response towards different expressions
  • Next by Date: Re: Unicode Support
  • Previous by thread: Re: Hypergeometric integral looks wrong ?
  • Next by thread: Why is the Arrow routine so poor?