MCPで接続 →

計算を入力してください

k is the modulus, 0 ≤ k ≤ 1; the parameter is m = k². All angles in radians.

公式

広告

結果

sn(u,k)
0.822636
ヤコビの楕円正弦関数
cn(u,k)
0.568569
dn(u,k)
0.911492
Identity sn² + cn² 1 (should be 1)
Identity dn² + k²sn² 1 (should be 1)

この計算機でできること

このツールは、任意の実数の引数 \(u\) と 0〜1 の範囲の母数 \(k\) に対して、ヤコビの楕円関数 \(\operatorname{sn}(u,k)\)・\(\operatorname{cn}(u,k)\)・\(\operatorname{dn}(u,k)\) の3つを計算します。これらは三角関数を一般化した関数で、物理や工学のさまざまな場面に登場します。たとえば振り子の厳密な運動、ソリトン(KdV方程式やサイン・ゴルドン方程式)、楕円フィルタの設計、等角写像などです。

u に対してプロットされたヤコビ楕円関数 sn、cn、dn のグラフ
3つのヤコビ楕円関数 sn、cn、dn を引数 u の周期波として示す。

母数・パラメータ・角度の表記について

表記法には注意が必要です。本計算機では 母数 \(k\)(\(0 \le k \le 1\))を用います。関連するパラメータは \(m = k^2\)、モジュラー角は \(\alpha = \arcsin(k)\) です。お手元の資料が \(m\) や \(\alpha\) で書かれている場合は、まず \(k = \sqrt{m}\) または \(k = \sin(\alpha)\) で変換してください。引数 \(u\) およびすべての角度はラジアンで扱います。

使い方

引数 \(u\)(任意の実数)と、0〜1 の範囲の母数 \(k\) を入力すると、sn・cn・dn が表示されます。結果欄には2つの定義恒等式の値も表示され、いずれも 1 になるはずです。これは計算精度を確認するための仕組みです。

広告

定義式とアルゴリズム

振幅 \(\varphi = \operatorname{am}(u,k)\) は、$$u = \int_{0}^{\varphi} \frac{d\theta}{\sqrt{1 - k^2 \sin^2\theta}}$$ によって暗黙的に定義されます。これを用いて \(\operatorname{sn} = \sin(\varphi)\)、\(\operatorname{cn} = \cos(\varphi)\)、\(\operatorname{dn} = \sqrt{1 - k^2 \sin^2\varphi}\) が求まります。本計算機は、この積分を降下ランデン変換/算術幾何平均(AGM)法によって反転させます。この方法は2次収束で、約9ステップで倍精度に到達します。極限の場合、すなわち \(k = 0\)(\(\operatorname{sn} = \sin u,\ \operatorname{cn} = \cos u,\ \operatorname{dn} = 1\))と \(k = 1\)(\(\operatorname{sn} = \tanh u,\ \operatorname{cn} = \operatorname{dn} = \operatorname{sech} u\))については、AGM の退化を避けるためそれぞれの閉形式で処理しています。

振幅角 phi を示す直角三角形で、その正弦と余弦が sn と cn を与える
振幅角 phi:その正弦と余弦が sn と cn を与える。

計算例

\(u = 1.0\)、\(k = 0.5\)(よって \(m = 0.25\))としましょう。振幅は \(\operatorname{am}(1, 0.5) \approx 0.95985\) rad となり、\(\operatorname{sn} \approx 0.81962\)、\(\operatorname{cn} \approx 0.57280\)、$$\operatorname{dn} = \sqrt{1 - 0.25 \cdot 0.81962^2} \approx 0.91217$$ が得られます。2つの恒等式もきちんと成り立ちます。\(\operatorname{sn}^2 + \operatorname{cn}^2 \approx 1\)、\(\operatorname{dn}^2 + k^2\operatorname{sn}^2 \approx 1\) です。

広告

よくある質問

周期はいくつですか? sn と cn の実周期は \(4K(k)\)、dn の周期は \(2K(k)\) です。ここで \(K(k)\) は第一種完全楕円積分です。

値の取りうる範囲は? \(|\operatorname{sn}| \le 1\)、\(|\operatorname{cn}| \le 1\)、そして \(k' \le \operatorname{dn} \le 1\) です。ここで \(k' = \sqrt{1 - k^2}\) は補母数です。

k は 1 より大きくできますか? 実数値のヤコビ関数には \(0 \le k \le 1\) が必要です。この範囲外の \(k\) は有効区間に丸められます。

最終更新: