bugGNU Scientific Library - Bugs: bug #28718, gsl_sf_hyperg_1F1(-1.5,1.5,-100)...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #28718: gsl_sf_hyperg_1F1(-1.5,1.5,-100) catastrophic cancellation in series

Submitted by:  -Deleted Account- <bjg>
Submitted on:  Sat 23 Jan 2010 02:09:25 PM UTC  
 
Category: Accuracy problemSeverity: 3 - Normal
Operating System: Status: Fixed
Assigned to: -Deleted Account- <bjg>Open/Closed: Closed
Release: 1.13

Sat 23 Jan 2010 02:16:20 PM UTC, comment #1:

fixed by commit 7dc52adec443dbb8e66848f1ca636980a34d1e5c

-Deleted Account- <bjg>In charge of this item.
Sat 23 Jan 2010 02:09:25 PM UTC, original submission:

From: Lorenzo Moneta <Lorenzo.Moneta@cern.ch>
To: <bug-gsl@gnu.org>
CC: Weibin Li <weibinli@mpipks-dresden.mpg.de>, Brian Gough <bjg@network-theory.co.uk>
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

-Deleted Account- <bjg>In charge of this item.

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Please enter the title of George Orwell's famous dystopian book (it's a date):

 

 

Follow 2 latest changes.

Date Changed By Updated Field Previous Value => Replaced By
Sat 23 Jan 2010 02:16:20 PM UTCbjgStatusConfirmed=>Fixed
  Open/ClosedOpen=>Closed

Back to the top


Powered by Savane 3.1-cleanup1