scipy.special.kn#
- scipy.special.kn(n, x, out=None) = <ufunc 'kn'>#
整数阶 n 的第二类修正贝塞尔函数
返回整数阶 n 在实数 z 处的第二类修正贝塞尔函数。
这些有时也被称为第三类函数、Basset函数或Macdonald函数。
- 参数:
- n类似数组的整数
贝塞尔函数的顺序(浮点数将被截断并发出警告)
- x类数组的浮点数
要计算贝塞尔函数的参数
- 出ndarray,可选
函数结果的可选输出数组。
- 返回:
- 标量或ndarray
第二类修正贝塞尔函数的值,\(K_n(x)\)。
注释
AMOS [1] 例程 zbesk 的包装器。关于所用算法的讨论,请参见 [2] 及其中的参考文献。
参考文献
[1]Donald E. Amos, “AMOS, 一个用于复数参数和非负阶贝塞尔函数的便携式软件包”, http://netlib.org/amos/
[2]Donald E. Amos, “算法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])