Open
Description
The definition of _digamma(z::ComplexOrReal{Float64})
contains the formula
SpecialFunctions.jl/src/gamma.jl
Line 29 in cf35c58
in which
_cotpi
is defined asSpecialFunctions.jl/src/gamma.jl
Line 63 in cf35c58
For large complex arguments,
_cotpi
produces NaN
since cospi
and sinpi
produce Inf
. For example,
julia> cospi(500 * exp(im * 3pi/4))
Inf - Inf*im
julia> sinpi(500 * exp(im * 3pi/4))
Inf + Inf*im
julia> cospi(500 * exp(im * 3pi/4)) / sinpi(500 * exp(im * 3pi/4))
NaN + NaN*im
Nevertheless, the ordinary cot
gives the correct answer
julia> cot(pi * 500 * exp(im * 3pi/4))
0.0 - 1.0im
A way to avoid NaN
is to define cotpi
as in mpmath
https://github.com/mpmath/mpmath/blob/b600dbcabf4b7406a61e82b9e607f754a9f12ff9/mpmath/libfp.py#L153-L161
Metadata
Metadata
Assignees
Labels
No labels