numpy.i0#

numpy.i0(x)[source]#

Modified Bessel function of the first kind, order 0.

Usually denoted\(I_0\).

Parameters:
xarray_like of float

Argument of the Bessel function.

Returns:
outndarray, shape = x.shape, dtype = float

The modified Bessel function evaluated at each of the elements ofx.

Notes

The scipy implementation is recommended over this function: it is aproper ufunc written in C, and more than an order of magnitude faster.

We use the algorithm published by Clenshaw[1] and referenced byAbramowitz and Stegun[2], for which the function domain ispartitioned into the two intervals [0,8] and (8,inf), and Chebyshevpolynomial expansions are employed in each interval. Relative error onthe domain [0,30] using IEEE arithmetic is documented[3] as having apeak of 5.8e-16 with an rms of 1.4e-16 (n = 30000).

References

[1]

C. W. Clenshaw, “Chebyshev series for mathematical functions”, inNational Physical Laboratory Mathematical Tables, vol. 5, London:Her Majesty’s Stationery Office, 1962.

[2]

M. Abramowitz and I. A. Stegun,Handbook of MathematicalFunctions, 10th printing, New York: Dover, 1964, pp. 379.https://personal.math.ubc.ca/~cbm/aands/page_379.htm

Examples

>>>importnumpyasnp>>>np.i0(0.)array(1.0)>>>np.i0([0,1,2,3])array([1.        , 1.26606588, 2.2795853 , 4.88079259])
On this page