scipy.special.kn#
- scipy.special.kn(n, x, out=None) = <ufunc 'kn'>#
整數階 n 的第二類 modified Bessel 函數
返回實數 z 處整數階 n 的第二類 modified Bessel 函數。
這些函數有時也稱為第三類函數、Basset 函數或 Macdonald 函數。
- 參數:
- narray_like of int
Bessel 函數的階數 (浮點數將會截斷並發出警告)
- xarray_like of float
評估 Bessel 函數的參數
- outndarray, optional
函數結果的可選輸出陣列。
- 返回:
- 純量或 ndarray
第二類 modified Bessel 函數 \(K_n(x)\) 的值。
註解
AMOS [1] 常式 zbesk 的包裝器。 有關所用演算法的討論,請參閱 [2] 及其中的參考文獻。
參考文獻
[1]Donald E. Amos, “AMOS, 用於複數參數和非負階 Bessel 函數的可移植套件”, http://netlib.org/amos/
[2]Donald E. Amos, “演算法 644:用於複數參數和非負階 Bessel 函數的可移植套件”, ACM TOMS Vol. 12 Issue 3, Sept. 1986, p. 265
範例
繪製多個階數的實數輸入函數圖
>>> import numpy as np >>> from scipy.special import kn >>> import matplotlib.pyplot as plt >>> x = np.linspace(0, 5, 1000) >>> for N in range(6): ... plt.plot(x, kn(N, x), label='$K_{}(x)$'.format(N)) >>> plt.ylim(0, 10) >>> plt.legend() >>> plt.title(r'Modified Bessel function of the second kind $K_n(x)$') >>> plt.show()
計算多個階數的單個值
>>> kn([4, 5, 6], 1) array([ 44.23241585, 360.9605896 , 3653.83831186])