{ } Raw JSON

bundles / scipy latest / scipy / special / _spherical_bessel / spherical_in

function

scipy.special._spherical_bessel:spherical_in

source: /scipy/special/_spherical_bessel.py :217

Signature

def   spherical_in ( n z derivative = False )

Summary

Modified spherical Bessel function of the first kind or its derivative.

Extended Summary

Defined as [1],

where is the modified Bessel function of the first kind.

Parameters

n : int, array_like

Order of the Bessel function (n >= 0).

z : complex or float, array_like

Argument of the Bessel function.

derivative : bool, optional

If True, the value of the derivative (rather than the function itself) is returned.

Returns

in : ndarray

Notes

The function is computed using its definitional relation to the modified cylindrical Bessel function of the first kind.

The derivative is computed using the relations [2],

Examples

The modified spherical Bessel functions of the first kind :math:`i_n` accept both real and complex second argument. They can return a complex type:
from scipy.special import spherical_in
spherical_in(0, 3+5j)
type(spherical_in(0, 3+5j))
We can verify the relation for the derivative from the Notes for :math:`n=3` in the interval :math:`[1, 2]`:
import numpy as np
x = np.arange(1.0, 2.0, 0.01)
np.allclose(spherical_in(3, x, True),
            spherical_in(2, x) - 4/x * spherical_in(3, x))
The first few :math:`i_n` with real argument:
import matplotlib.pyplot as plt
x = np.arange(0.0, 6.0, 0.01)
fig, ax = plt.subplots()
ax.set_ylim(-0.5, 5.0)
ax.set_title(r'Modified spherical Bessel functions $i_n$')
for n in np.arange(0, 4):
    ax.plot(x, spherical_in(n, x), label=rf'$i_{n}$')
plt.legend(loc='best')
plt.show()
fig-bb449426b4fb1efe.png

Aliases

  • scipy.special.spherical_in

Referenced by