透過 MCP 連接 →

輸入計算

Dimensionless, with -1 ≤ k ≤ 1. Note: m = k² is the "parameter" convention.

數學公式

廣告

結果

完全橢圓積分 K(k)
1.5747455615
無因次
模數 |k| 0.1
Parameter m = k² 0.01
計算方法 算術幾何平均法(AGM)

什麼是第一類完全橢圓積分?

第一類完全橢圓積分記作 \(K(k)\),是一個經典的特殊函數,定義為被積函數 \(d\theta / \sqrt{1 - k^{2}\cdot\sin^{2}\theta}\) 從 0 積分到 \(\pi/2\) 的結果。每當你需要計算單擺的精確(大擺幅)週期、利用紐曼公式(Neumann's formula)求同軸線圈的互感、各種弧長,或橢圓形裂紋周圍的應力場時,它都會登場。本計算器會回傳給定橢圓模數 \(k\) 所對應的 \(K(k)\) 實數值。

四分之一圓,展示角度 theta 在積分區間上的掃過
K(k) 對角度 theta 從 0 到 pi/2 進行積分。

慣例說明:用模數 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 時,則以對數方式發散。

Advertisement

公式與計算方法

我們採用算術幾何平均法:

$$K(k) = \frac{\pi}{2\,\mathrm{AGM}\!\left(1,\;\sqrt{1 - k^{2}}\right)}$$

從 \(a = 1\) 與 \(b = \sqrt{1 - k^{2}}\)(即互補模數)出發,反覆以兩者的算術平均與幾何平均取代它們,直到兩數收斂相等為止。AGM 為二次收斂,因此大約十多次迭代即可達到雙精度的完整精度。

兩個數列透過算術平均與幾何平均收斂到一個共同極限
AGM 迭代快速收斂到用於計算 K(k) 的共同值。

實例演算

以 \(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$$
Advertisement

常見問題

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\) 之外,此實數積分沒有定義,需要改用倒數模數變換(reciprocal-modulus transformation),因此本工具會拒絕這類輸入。

最後更新: