bug-gsl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-gsl] gsl_sf_hyperg_1F1


From: Lorenzo Moneta
Subject: Re: [Bug-gsl] gsl_sf_hyperg_1F1
Date: Thu, 21 Jan 2010 16:12:45 +0100

Hello, 

 I have found a similar problem, probably related to the inaccuracy in the 
series calculation of 
the hypergeometric function for 
gsl_sf_hyperg_1F1( a < 0, b > 0, x << 0). 

For example : 

  gsl_sf_hyperg_1F1(-1.5, 1.5, - 99.9)  returns the correct value of  
4.55768964383819423e+02

while gsl_sf_hyperg_1F1(-1.5, 1.5, -100.) returns -1.13760e+20 when the correct 
value is 456.44  (from Mathematica)

I think the Kummer formula (    1F1(a,b,x) = exp(-x) * 1F1(b-a,b,-x) could be 
used for larger value of |x| ( at least works for |x| = 700), while 
the current cut-off is for |x| < 100. 

 Best Regards

 Lorenzo

 
On Dec 11, 2009, at 9:41 PM, Brian Gough wrote:

> At Mon, 30 Nov 2009 15:26:11 +0100,
> Weibin Li wrote:
>> The output of above code shows an extremely large error. by increasing
>> Ri, the relative error decreases. Is there any idea to fix this?
> 
> I've looked at the problem.  Unfortunately I think it is just very
> difficult to compute an accurate value in this region.  The large
> error reflects that.  I have logged it at as bug at
> https://savannah.gnu.org/bugs/index.php?28267
> 
> I could not find of any algorithm that gives an accurate value in this
> region of parameters (a<<0, |a|>b>0, x>>0) , due to cancellation
> errors in both the ordinary 1F1 series and Kummer transformed series.
> If you know of one I would be glad to hear it.
> 
> -- 
> Brian Gough
> 
> GNU Scientific Library -
> http://www.gnu.org/software/gsl/
> 
> 
> _______________________________________________
> Bug-gsl mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/bug-gsl





reply via email to

[Prev in Thread] Current Thread [Next in Thread]