bundles / scipy 2.0.0.dev0+git20260907.41eeb59 / scipy / special / _spherical_bessel / spherical_in
function
scipy.special._spherical_bessel:spherical_in
source: build-install/usr/lib/python3.14/site-packages/scipy/special/_spherical_bessel.py:188
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_likeOrder of the Bessel function (n >= 0).
z: complex or float, array_likeArgument of the Bessel function.
derivative: bool, optionalIf True, the value of the derivative (rather than the function itself) is returned.
Returns
in: ndarrayValue or derivative of modified spherical Bessel function of the first kind.
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)
✗np.complex128(-1.1689867793369184-1.2697305267234227j)
type(spherical_in(0, 3+5j))
✓<class 'numpy.complex128'>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))✓
TrueThe 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')✗
<matplotlib.legend.Legend object at 0x7f3f5904ecf0>
plt.show()
✓
Aliases
scipy.special.spherical_in