scipy.special.kn#
- scipy.special.kn(n, x, out=None) = <ufunc 'kn'>#
二阶整型阶数的修正贝塞尔函数
返回实数 z 处的整型阶数 n 的二阶修正贝塞尔函数。
这些有时也称为三阶函数、巴塞特函数或麦克唐纳函数。
- 参数:
- n整型数组_like
贝塞尔函数的阶数(浮点数将被截断并发出警告)
- xfloat 数组_like
对贝塞尔函数进行求值的参数
- outndarray,可选
函数结果的可选输出数组。
- 返回:
- 标量或 ndarray
二阶修正贝塞尔函数的值,\(K_n(x)\)。
备注
对 AMOS 的包装 [1] 例程 zbesk。有关所用算法的讨论,请参见 [2] 及其参考文献。
参考文献
[1]唐纳德·E·艾默斯,“AMOS,一种复数自变量和非负阶贝塞尔函数的可移植程序包”,http://netlib.org/amos/
[2]唐纳德·E·艾默斯,“算法 644:一种复数自变量和非负阶贝塞尔函数的可移植程序包”,ACM TOMS 卷 12 期 3,1986 年 9 月,第 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])