[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug-gsl] bug in gsl_sf_coulomb_wave_FG_e (gsl 1.14 compiled with gcc 4.
From: |
Alexey A. Illarionov |
Subject: |
[Bug-gsl] bug in gsl_sf_coulomb_wave_FG_e (gsl 1.14 compiled with gcc 4.5.0) |
Date: |
Wed, 25 Aug 2010 23:41:14 -0400 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.4) Gecko/20100624 Lanikai/3.1 |
Hi guys,
It seems that I find a bug in gsl_sf_coulomb_wave_FG_e. For large values
of lambda and small values of x, with eta = 0 it produces nan values
without raising of the flag.
Here the sample cases (see attachment with example)
gsl_sf_coulomb_wave_FG_e(0.,1.2693881947287221e-07, 37, 1, ...)
gsl_sf_coulomb_wave_FG_e(0.,5.911135077240691e-07, 39, 1, ...)
gsl_sf_coulomb_wave_FG_e(0.,6.118185507743884e-07, 40, 1, ...)
and lots of others.
It seems that the origin of the problem is at
coulomb_F_recur
function (call at coulomb.c:970), that return garbage-like big numbers
but the error flag is not raised.
Here since we are interested only in unnormalized values we can makes a
workaround like checking if values greater than some number, renormalize
them to 1 for some value. But if this function is used elsewhere with
the need of normalized values, this workaround will produce problems there.
Unfortunately I don't have time right now to dig in more, I'll try look
at it at the weekend if the issue is not solved by that date.
P.S. I'm not sure, but for me at this values of arguments (x <<
x_{turning_point}) using series approximation directly is more adequate
(if we do not consider G and Gp which I'm not sure how to deal).
--
Best regards, Alexey Alexandrovich Illarionov
2.c
Description: Text Data
- [Bug-gsl] bug in gsl_sf_coulomb_wave_FG_e (gsl 1.14 compiled with gcc 4.5.0),
Alexey A. Illarionov <=