什麼是 dn(u, k)?
Jacobi 橢圓函數 dn(u, k) 又稱為「delta 振幅(delta amplitude)」,是三個主要 Jacobi 橢圓函數之一,與 sn、cn 並列。這三個函數可視為一般三角函數的推廣,在物理與工程領域隨處可見:單擺的精確週期、非線性波動方程的孤立子(soliton)解、剛體運動(Euler 方程),乃至橢圓濾波器的設計都會用到。本計算器可針對任意實數變數 u,以及範圍介於 -1 到 1 之間的模數 k,計算出 dn 的值。
使用方式
輸入變數 u(任意實數)以及模數 k(須滿足 \(-1 \le k \le 1\))。由於 dn 僅取決於 \(k^2\),因此 k 的正負號並不會影響計算結果。點擊「計算」即可得到 dn(u, k)。計算器在內部會將參數設為 \(m = k^2\)。
公式說明
令 \(\varphi = \operatorname{am}(u, m)\) 為振幅(amplitude),它由第一類不完全橢圓積分 \(F(\varphi \mid m) = u\) 隱式定義。如此一來,\(\operatorname{sn} = \sin(\varphi)\)、\(\operatorname{cn} = \cos(\varphi)\),而 $$\operatorname{dn}(u,\, k) = \sqrt{1 - k^{2}\,\operatorname{sn}^{2}(u,\, k)}$$ 我們使用遞降 Landen 轉換/算術-幾何平均(AGM)法(即經典《Numerical Recipes》中的「sncndn」演算法)來數值計算 \(\operatorname{am}(u, m)\),此方法具有二次收斂特性,在整個定義域內都能維持高精確度。
範例演算
取 u = 4 且 k = 0.7,則 m = 0.49。振幅 \(\operatorname{am}(4, 0.49) \approx 3.4179\) 弧度,因此 \(\operatorname{sn}(4, 0.7) \approx -0.27156\)。接著 $$\operatorname{dn} = \sqrt{1 - 0.49 \times (-0.27156)^{2}} = \sqrt{1 - 0.036131} = \sqrt{0.963869} \approx \mathbf{0.981768}$$
常見問題
當 k = 0 時會發生什麼? 對於任意 u,\(\operatorname{dn}(u, 0) = 1\),因為模數項消失,且 \(\operatorname{am}(u, 0) = u\)。
那 k = 1 呢? \(\operatorname{dn}(u, 1) = \operatorname{sech}(u) = \frac{1}{\cosh(u)}\);例如 \(\operatorname{dn}(4, 1) \approx 0.036644\)。
dn 的值域為何? 當 \(|k| < 1\) 時,dn 恆為正值,並在最小值 \(k' = \sqrt{1 - k^{2}}\) 與最大值 1 之間振盪;最大值出現在 u = 0(mod 2K),其中 K 為第一類完全橢圓積分。