-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pFq falsely evaluates to NaN #73
Comments
Hi @mauricelanghinrichs, thanks for the bug report! In fact, 3F2 has the special method here, which is a rational approximation. I think the explanation is that it's exactly hitting a pole/pole. Looking at your parameters, you are computing terminating functions, so they're actually polynomials. It would be arguably safe to use julia> HypergeometricFunctions.pFqmaclaurin((-4, -3, 151), (2, -153), -1.0)
13.843137254901961
just for the moment. (I generally discourage calling internals, but I don't have a bug fix available right now.) Or you can perturb the argument julia> (pFq((-4, -3, 151), (2, -153), -1.0+eps()) + pFq((-4, -3, 151), (2, -153), -1.0-eps()))/2
13.843137254901961
More generally, it looks like |
Thanks for the fast response! Yes, I think all my cases are terminating hypergeometric functions, as the pFq came up from a finite sum over an expression. So generally the
Agree on this, the interface with simply |
Thanks for this great package. Has been really useful, however I noticed a potential bug when evaluating a specific value:
I got
while nearby values are computed correctly, such as
Mathematica would compute values
so matching the second value and providing a numerical value instead of NaN for the first case.
Increasing precision does not help
Julia version v"1.8.5", SpecialFunctions v2.3.0, HypergeometricFunctions v0.3.23.
The text was updated successfully, but these errors were encountered: