SciPy

scipy.special.ive

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

Exponentially scaled modified Bessel function of the first kind

Defined as:

ive(v, z) = iv(v, z) * exp(-abs(z.real))
Parameters:

v : array_like of float

Order.

z : array_like of float or complex

Argument.

Returns:

out : ndarray

Values of the exponentially scaled modified Bessel function.

Notes

For positive v, the AMOS [R373] zbesi routine is called. It uses a power series for small z, the asymptitic expansion for large abs(z), the Miller algorithm normalized by the Wronskian and a Neumann series for intermediate magnitudes, and the uniform asymptitic expansions for \(I_v(z)\) and \(J_v(z)\) for large orders. Backward recurrence is used to generate sequences or reduce orders when necessary.

The calculations above are done in the right half plane and continued into the left half plane by the formula,

\[I_v(z \exp(\pm\imath\pi)) = \exp(\pm\pi v) I_v(z)\]

(valid when the real part of z is positive). For negative v, the formula

\[I_{-v}(z) = I_v(z) + \frac{2}{\pi} \sin(\pi v) K_v(z)\]

is used, where \(K_v(z)\) is the modified Bessel function of the second kind, evaluated using the AMOS routine zbesk.

References

[R373](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.iv

Next topic

scipy.special.hankel1