[SciPy-Dev] Argument casts in special functions
Sat Oct 20 08:04:23 CDT 2012
Related to: https://github.com/scipy/scipy/pull/334
Currently we have the following behavior for the integer-order
from scipy.special import yn
print yn(1, 0.123) # -> -5.2816754510498471
print yn(1.5, 0.123) # -> -5.2816754510498471
That is, the floating point argument is silently truncated
to an integer.
This is not so optimal: the more strict behavior would be to
return a `nan` to signify the domain error.
The question now is: is it worth preserving the old behavior
of the existing functions?
My guess would be yes, but I think the unsafe casts should be
used just as a legacy special case, and not as a general rule.
(Also, the integer-order functions could be deprecated --- there
is no speed advantage in them as the kernel selection can be done
based on input / input data type).
More information about the SciPy-Dev