這個計算器能做什麼
本工具會針對一連串模數 k,建立兩種完全橢圓積分的數值表:第一類的 K(k) 與第二類的 E(k)。只要輸入起始值、步長與想要的列數,計算器就會從起始值開始,每一列遞增一個步長,並逐列回報對應的 K(k) 與 E(k)。這屬於純數學中的特殊函數計算,結果在世界各地都完全一致,沒有地區差異。
使用方法
請輸入 k 的起始值(模數,為純比值,須滿足 -1 ≤ k ≤ 1)、每列遞增量(步長,可為負值),以及重複次數(列數,須為 ≥ 1 的整數)。舉例來說,起始值設 0、步長設 0.02、列數設 51,就會讓 k 從 0.00 一路掃到 1.00。由於這兩個積分只取決於 k 的平方,因此負的 k 會得到與正 k 相同的數值。
公式說明
這裡採用的引數是模數 k,而非參數 m = k²,請特別留意兩者的差別。以積分形式表示,K(k) 是 dθ / sqrt(1 - k² sin²θ) 從 0 到 pi/2 的定積分;E(k) 則是在同一範圍內對 sqrt(1 - k² sin²θ) dθ 積分。我們以快速且高精度的算術幾何平均法(AGM)來求值:K(k) = pi / (2 · AGM(1, sqrt(1 - k²)))。至於 E(k),則透過累加 AGM 過程中的 c 項求得:E(k) = K(k) · (1 - Σ 2^(n-1) c_n²),其中 c_0² = k²。
實際範例
以 k = 0.5 為例:1 - k² = 0.75,開根號得 0.8660254。AGM(1, 0.8660254) ≈ 0.9318082,因此 K(0.5) = pi / (2 · 0.9318082) = 1.6857503548。c 項總和約為 0.1339804,於是 E(0.5) = 1.6857503548 · (1 - 0.1339804) = 1.4603362889。
常見問題
當 k = 1 時會怎樣? K(1) 會發散至無限大;E(1) 則恰好等於 1。因此在這個邊界列上,表格會顯示 K 為「Infinity(無限大)」、E 為 1,而不會直接出錯當機。
計算器用的是 k 還是 m? 用的是模數 k。如果你手上拿到的是參數 m,請先開根號(k = sqrt(m))再輸入。
那 |k| > 1 的情形呢? 這已超出實數定義域 -1 ≤ k ≤ 1,凡是落在此範圍外的列都會被標示為超出定義域。