什么是第一类完全椭圆积分?
第一类完全椭圆积分记作 \(K(k)\),是一个经典的特殊函数,定义为被积函数 \(d\theta / \sqrt{1 - k^{2}\cdot\sin^{2}\theta}\) 在 0 到 \(\pi/2\) 区间上的积分。凡是需要计算单摆大摆角下的精确周期、用诺伊曼公式求同轴线圈的互感、弧长,以及椭圆裂纹周围的应力场等问题,都会用到它。本计算器可针对给定的椭圆模 \(k\) 返回 \(K(k)\) 的实数值。
约定:用模 k,而不是参数 m
常见的约定有两种。本工具直接采用模 \(k\),因此参数为 \(m = k^{2}\)。也就是说,本站的 \(K(k)\) 等同于 MATLAB 中的 ellipke(m)(其中 \(m = k^{2}\))。举例来说,MATLAB 的 ellipke(0.5) 对应于在此处输入 \(k = \sqrt{0.5} \approx 0.7071\)。在与其他参考资料对照数值前,请务必先确认对方使用的是哪种约定。
使用方法
在 \(-1 \le k \le 1\) 范围内输入椭圆模 \(k\),即可读出 \(K(k)\)。由于 \(K\) 关于 \(k\) 是偶函数,正负号并不影响结果(\(K(-k) = K(k)\)),工具内部会自动取绝对值。当 \(|k| < 1\) 时函数取有限值;当 \(|k|\) 趋近 1 时,函数按对数方式发散。
公式与算法
我们采用算术-几何平均(AGM):
$$K(k) = \frac{\pi}{2\,\mathrm{AGM}\!\left(1,\;\sqrt{1 - k^{2}}\right)}$$从 \(a = 1\) 和 \(b = \sqrt{1 - k^{2}}\)(即互补模)出发,不断用它们的算术平均与几何平均替换,直到两者相等为止。AGM 具有二次收敛速度,因此大约十几次迭代即可达到双精度的完整精度。
计算示例
取 \(k = 0.1\):此时 \(m = 0.01\),互补模为 \(\sqrt{0.99} \approx 0.994987\)。1 与 0.994987 的 AGM 收敛到约 0.9974921。于是
$$K(0.1) = \frac{\pi}{2 \times 0.9974921} \approx 1.5747456$$常见问题
K(0) 等于多少?恰好等于 \(\pi/2 \approx 1.5707963\),因为此时被积函数化简为 1。
为什么在 k = 1 处会发散?因为互补模变为 0,\(\mathrm{AGM}(1,0) = 0\),而 \(K(k)\) 存在对数奇点,所以 \(K \rightarrow +\infty\)。
可以输入 |k| > 1 吗?不可以。在 \(-1 \le k \le 1\) 范围之外,实数积分没有定义,需要进行倒数模变换,因此本工具会拒绝此类输入。