I have noticed an issue when using the zeta function that is supplied by the SpecialFunctions package.
Specifically, it outputs a NaN for a certain range of imaginary values.
using SpecialFunctions zeta1 = zeta(.4 + 452.0im) zeta2 = zeta(.4 + 453.0im) @show(zeta1, zeta2)
This yields the output below:
zeta1 = -0.3803486880569726 + 4.99926741483461im zeta2 = NaN + NaN*im
I think that zeta2 should not be a NaN for the answer!
By way of reference WolframAlpha reports zeta2 as: 5.59563… + 4.99458…i
I am running Julia 1.0.1 on Windows 10.
This also happens on Julia 0.6.4, and on JuliaBox.
I have tried zeta on a multitude of cases with the real greater than 0.0 and less than 0.5. It each case it gave a NaN.
The answer is correct, if the real is greater than or equal to .5.
I checked the tests in SpecialFunctions, and did not see a test that covered this situation.
Why it stops working when the imaginary value reaches 453.0 is a mystery to me?