scipy.special.j0#
- scipy.special.j0(x, out=None) = <ufunc 'j0'>#
0 阶第一类贝塞尔函数。
- 参数:
- xarray_like
参数(浮点数)。
- outndarray,可选
函数值的可选输出数组
- 返回:
- J标量或 ndarray
在x处 0 阶第一类贝塞尔函数值。
参见
jv
实阶复参数贝塞尔函数。
spherical_jn
球形贝塞尔函数。
笔记
该域划分为区间 [0, 5] 和 (5, 无穷大)。在第一个区间,使用以下有理逼近
\[J_0(x) \approx (w - r_1^2)(w - r_2^2) \frac{P_3(w)}{Q_8(w)},\]其中 \(w = x^2\),\(r_1\) 和 \(r_2\) 是 \(J_0\) 的零点,\(P_3\) 和 \(Q_8\) 分别是 3 次和 8 次多项式。
在第二个区间,使用带有两个分别为 6/6 和 7/7 的有理函数的汉凯尔渐近展开式。
此函数是 Cephes [1] 例程
j0
的包装函数。它不应与球面贝塞尔函数混淆(请参见spherical_jn
)。参考
[1]Cephes 数学函数库,http://www.netlib.org/cephes/
示例
计算一个点的函数
>>> from scipy.special import j0 >>> j0(1.) 0.7651976865579665
计算多个点的函数
>>> import numpy as np >>> j0(np.array([-2., 0., 4.])) array([ 0.22389078, 1. , -0.39714981])
绘制 -20 到 20 的函数。
>>> import matplotlib.pyplot as plt >>> fig, ax = plt.subplots() >>> x = np.linspace(-20., 20., 1000) >>> y = j0(x) >>> ax.plot(x, y) >>> plt.show()