SciPy

scipy.special.jn

scipy.special.jn(v, z) = <ufunc 'jv'>

Bessel function of the first kind of real order and complex argument.

Parameters:

v : array_like

Order (float).

z : array_like

Argument (float or complex).

Returns:

J : ndarray

Value of the Bessel function, \(J_v(z)\).

See also

jve
\(J_v\) with leading exponential behavior stripped off.
spherical_jn
spherical Bessel functions.

Notes

For positive v values, the computation is carried out using the AMOS [R454] zbesj routine, which exploits the connection to the modified Bessel function \(I_v\),

\[\begin{split}J_v(z) = \exp(n\pi\imath/2) I_v(-\imath z)\qquad (\Im z > 0)\end{split}\]\[\begin{split}J_v(z) = \exp(-n\pi\imath/2) I_v(\imath z)\qquad (\Im z < 0)\end{split}\]

For negative v values the formula,

\[J_{-v}(z) = J_v(z) \cos(\pi v) - Y_v(z) \sin(\pi v)\]

is used, where \(Y_v(z)\) is the Bessel function of the second kind, computed using the AMOS routine zbesy. Note that the second term is exactly zero for integer v; to improve accuracy the second term is explicitly omitted for v values such that v = floor(v).

Not to be confused with the spherical Bessel functions (see spherical_jn).

References

[R454](1, 2) Donald E. Amos, “AMOS, A Portable Package for Bessel Functions of a Complex Argument and Nonnegative Order”, http://netlib.org/amos/

Previous topic

scipy.special.jv

Next topic

scipy.special.jve