當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python SciPy special.spherical_jn用法及代碼示例


本文簡要介紹 python 語言中 scipy.special.spherical_jn 的用法。

用法:

scipy.special.spherical_jn(n, z, derivative=False)#

第一類球貝塞爾函數或其導數。

定義為[1],

其中 是第一類貝塞爾函數。

參數

n 整數,數組

Bessel 函數的階數 (n >= 0)。

z 複數或浮點數,數組

貝塞爾函數的參數。

derivative 布爾型,可選

如果為 True,則返回導數(而不是函數本身)的值。

返回

jn ndarray

注意

對於大於順序的實參,該函數使用升序遞歸 [2] 計算。對於小的實數或複數參數,使用與第一類圓柱貝塞爾函數的定義關係。

使用關係 [3] 計算導數,

參考

[AS]

Milton Abramowitz 和 Irene A. Stegun 合編。帶有公式、圖表和數學表格的數學函數手冊。紐約:多佛,1972 年。

例子

第一類 的球麵貝塞爾函數接受實數和複數第二個參數。他們可以返回一個複雜的類型:

>>> from scipy.special import spherical_jn
>>> spherical_jn(0, 3+5j)
(-9.878987731663194-8.021894345786002j)
>>> type(spherical_jn(0, 3+5j))
<class 'numpy.complex128'>

我們可以在區間 中驗證 的注釋導數的關係:

>>> import numpy as np
>>> x = np.arange(1.0, 2.0, 0.01)
>>> np.allclose(spherical_jn(3, x, True),
...             spherical_jn(2, x) - 4/x * spherical_jn(3, x))
True

前幾個 帶有真實參數:

>>> import matplotlib.pyplot as plt
>>> x = np.arange(0.0, 10.0, 0.01)
>>> fig, ax = plt.subplots()
>>> ax.set_ylim(-0.5, 1.5)
>>> ax.set_title(r'Spherical Bessel functions $j_n$')
>>> for n in np.arange(0, 4):
...     ax.plot(x, spherical_jn(n, x), label=rf'$j_{n}$')
>>> plt.legend(loc='best')
>>> plt.show()
scipy-special-spherical_jn-1.png

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.special.spherical_jn。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。