通过MCP连接 →

输入计算

数学公式

广告

结果

第一类开尔文函数
71 rows
Order v = 0  |  x from -7 to 7
-7.0 7.0 -3.6329302425079018 -21.23940257957222
x ber_v(x) bei_v(x)
-7 -3.63293 -21.239403
-6.8 -5.815515 -18.073624
-6.6 -7.328688 -15.046993
-6.4 -8.27625 -12.222863
-6.2 -8.756062 -9.643739
-6 -8.858316 -7.334747
-5.8 -8.664445 -5.306845
-5.6 -8.246576 -3.559747
-5.4 -7.667394 -2.084517
-5.2 -6.980346 -0.86584
-5 -6.230082 0.116034
-4.8 -5.453076 0.883657
-4.6 -4.678357 1.461037
-4.4 -3.928307 1.872564
-4.2 -3.21948 2.142168
-4 -2.563417 2.29269
-3.8 -1.967423 2.345433
-3.6 -1.435305 2.319864
-3.4 -0.968039 2.233446
-3.2 -0.564376 2.101573
-3 -0.22138 1.937587
-2.8 0.065112 1.752851
-2.6 0.300092 1.556878
-2.4 0.489048 1.357485
-2.2 0.63769 1.16097
-2 0.751734 0.972292
-1.8 0.836722 0.795262
-1.6 0.897891 0.632726
-1.4 0.940075 0.486734
-1.2 0.967629 0.358704
-1 0.984382 0.249566
-0.8 0.993601 0.159886
-0.6 0.997975 0.08998
-0.4 0.9996 0.039998
-0.2 0.999975 0.01
0 1 0
0.2 0.999975 0.01
0.4 0.9996 0.039998
0.6 0.997975 0.08998
0.8 0.993601 0.159886
1 0.984382 0.249566
1.2 0.967629 0.358704
1.4 0.940075 0.486734
1.6 0.897891 0.632726
1.8 0.836722 0.795262
2 0.751734 0.972292
2.2 0.63769 1.16097
2.4 0.489048 1.357485
2.6 0.300092 1.556878
2.8 0.065112 1.752851
3 -0.22138 1.937587
3.2 -0.564376 2.101573
3.4 -0.968039 2.233446
3.6 -1.435305 2.319864
3.8 -1.967423 2.345433
4 -2.563417 2.29269
4.2 -3.21948 2.142168
4.4 -3.928307 1.872564
4.6 -4.678357 1.461037
4.8 -5.453076 0.883657
5 -6.230082 0.116034
5.2 -6.980346 -0.86584
5.4 -7.667394 -2.084517
5.6 -8.246576 -3.559747
5.8 -8.664445 -5.306845
6 -8.858316 -7.334747
6.2 -8.756062 -9.643739
6.4 -8.27625 -12.222863
6.6 -7.328688 -15.046993
6.8 -5.815515 -18.073624
7 -3.63293 -21.239403

这个计算器有什么用

本工具用于生成第一类开尔文函数 berv(x) 和 beiv(x) 的数值表,可指定阶数(次数)v,并在一段 x 取值范围内逐行计算。这两个函数分别是贝塞尔函数 Jv 在旋转自变量 \(x\cdot e^{i3\pi/4}\) 处取值后的实部和虚部,常见于交流电阻(趋肤效应)、圆柱体热传导等物理与工程问题中。

随 x 振幅逐渐增大的两条振荡曲线,一条实线一条虚线
在一段 x 范围内 ber(x)(实线)和 bei(x)(虚线)的典型形状。

使用方法

需要填写四个参数:阶数 v(常用 0、1、2…)、x 的起始值、每行递加的步长(增量),以及迭代次数(即表格行数)。默认设置会让 x 从 −7 扫到 +7,步长为 0.2,共 71 行。计算结果以表格形式给出 x、berv(x)、beiv(x) 三列数值。

公式说明

级数表达式为 $$\mathrm{ber}_v(x) + i\,\mathrm{bei}_v(x) = \left(\frac{x}{2}\right)^{v} e^{\,3v\pi i/4} \sum_{k=0}^{\infty} \frac{\left(\frac{i\,x^{2}}{4}\right)^{k}}{k!\,\Gamma(v+k+1)}$$我们采用复数项递推方式求值:每一项都等于前一项乘以 \(\frac{i\,x^{2}/4}{k(v+k)}\),这样就无需反复计算幂次和阶乘。其中 Gamma 函数针对实数 v 采用 Lanczos 近似计算。当某一项相对于累加和已可忽略不计时,求和便停止。

Advertisement

计算实例(v = 0,x = 2)

由级数可得 $$\mathrm{ber}_0(2) \approx 1 - 0.25 + 0.001736 - \cdots \approx 0.75173$$ $$\mathrm{bei}_0(2) \approx 1 - 0.027778 + 0.0000694 \approx 0.97229$$与标准函数表的结果一致(\(\mathrm{ber}_0(2)=0.7517\),\(\mathrm{bei}_0(2)=0.9723\))。

幂级数各项依次减小,累加到曲线上的一个点
示例:对级数各项求和得到 ber_0(2) 和 bei_0(2)。

常见问题

v 可以取非整数吗? 可以。Gamma 函数支持任意实数 v。需要注意的是,当 x 为负且 v 为非整数时,前置因子 \(\left(\frac{x}{2}\right)^{v}\) 是多值的,此处取主值分支。

为什么 v=0 时函数值关于原点对称? 因为 v=0 的级数只含 x 的偶次幂,所以 \(\mathrm{ber}_0(-x)=\mathrm{ber}_0(x)\),\(\mathrm{bei}_0(-x)=\mathrm{bei}_0(x)\)。

x 很大时怎么办? 对于 |x| 适中的情形,级数收敛良好;但当 \(|x| > 20\) 时需要累加很多项,此时采用渐近展开会更稳定。为获得最佳精度,建议将取值控制在默认范围之内。

最后更新: