完全楕円積分K(k)・E(k)をグラフ・表計算

完全楕円積分K(k)・E(k)をグラフ・表計算

modulus kの格子から第1種・第2種完全楕円積分K(k)、E(k)を計算し、発散端点を区別して表示します。

入力

-1以上1以下の第0点です。

0以外の有限値です。負なら降順になります。

初期値を含む1~201点です。

使い方

  1. kの初期値、増分、点数を入力し、最終kが−1以上1以下になるように設定します。
  2. K(k)とE(k)を同じ横軸で計算し、グラフと数値表を比較します。
  3. 端点を含む場合はKの未定義セルとEの有限値1を確認し、必要ならTSVを保存します。

計算式・考え方

K(k)=∫_0^1 dt/√((1−t²)(1−k²t²))、E(k)=∫_0^1 √((1−k²t²)/(1−t²))dtです。実数では−1≤k≤1で偶関数です。K(±1)は発散し、E(±1)=1です。

注意事項

  • KとEはk²だけに依存するため偶関数です。既定の0から1ではKは増加し、Eは減少します。k=0では両方ともπ/2です。k=1で二つを同時にInfinityへしたり、Kの発散に合わせてEも消したりせず、系列ごとに定義域を判定します。
  • 実装は対称Carlson積分RFとRDを使います。K=RF(0,1−k²,1)、E=RF(0,1−k²,1)−k²RD(0,1−k²,1)/3です。被積分関数を201点ごとに数値積分する方法より計算量を抑え、各複製反復の収束判定と有限性を検査します。
  • 楕円周長の近似、単振り子の周期、電磁気や流体の式ではparameter mや補母数k′が使われることがあります。式にK(m)と書かれていても引数がmなのかkなのかを資料の定義で確認してください。
  • この3ページで使うkはJacobi楕円関数と完全楕円積分のmodulusです。ライブラリによってはparameter mを入力するため、その場合はm=k²へ変換します。k=0.8とm=0.8は同じ条件ではなく、このページのk=0.8はm=0.64に対応します。比較結果を保存するときは関数名、横軸、kまたはmのどちらを使ったかを併記してください。
  • 計算は入力検証から最大201点の生成、SVGグラフ、代替数値表、TSV作成までブラウザ内だけで完結します。外部API、サーバー計算、CDN、fetchは使いません。点数に固定上限を設け、各標本のAGMまたはCarlson反復にも固定上限を置き、収束しない値を無制限に追い掛けません。
  • 第1種完全楕円積分Kは|k|=1で発散します。端点を含む系列ではKだけを未定義として線を分断し、同じ点のE=1は残します。非常に大きな有限値、Infinity、0などへ置き換えないため、表の空白は計算漏れではなく発散点を明示したものです。グラフだけでなく数値表も合わせて確認してください。
  • Jacobiのsn、cn、dnはsn²+cn²=1およびdn²+k²sn²=1で相互検算できます。振幅amはsn=sin(am)、cn=cos(am)、dn=∂am/∂uを満たします。個々の値だけでなく、格子全体で恒等式の残差、u=0の値、正負の対称性を調べると実装や母数指定の取り違えを見つけやすくなります。
  • 表示はbinary64の最大15有効桁です。式、入力値、丸め方式が同じでも末尾数桁は別ソフトと異なる場合があります。周期や零点を読む用途では、グラフのピクセル位置だけを根拠にせずTSVの数値を確認し、必要なら増分を小さくして対象区間を狭めてください。これは任意精度計算や数学的証明を代替するものではありません。
  • 検算は一つの既定値だけで終えず、原点、許可端点、正負の対称点、周期の中央を含む小さな格子でも行います。完全楕円積分ではK(0)=E(0)=π/2と偶対称性、Jacobi関数ではu=0のsn=0、cn=dn=1をまず確認します。次に別実装へparameter m=k²を正しく渡し、各行の絶対誤差と相対誤差を比較します。関数名が一致しても母数規約や振幅の枝が違えば、数値精度とは別の系統差になります。
  • 格子の最終値は初期値+増分×(点数−1)で決まります。初期値だけが範囲内でも、途中や最終点が範囲外になる設定は入力間制約で拒否します。増分には負数も使えるため、右から左へ調べることもできますが、0は同じ点を繰り返すだけなので拒否します。広い区間を粗く描いて特徴を把握した後、注目区間を狭くして点数を再配分すると、201点の上限内でも効率よく変化を確認できます。
  • グラフは連続性を理解する補助であり、標本点の間を新たに高精度計算しているわけではありません。急な変化、発散点の近傍、短い周期を含む場合は線分が真の曲線を十分に表さないことがあります。代替表には実際に計算した横軸と値だけを載せ、未定義セルを明示します。TSVへ出した値を再利用するときも、空白を0へ自動変換せず、定義域と標本間隔をメタデータとして残してください。
  • 定義と実数域はNIST Digital Library of Mathematical Functionsの§19.2、§19.25、§22.2、§22.6、§22.16、§22.20を2026年7月13日に照合しました。複素引数、|k|>1の変換、多価逆関数、発散値の正則化は扱いません。有限な通常実数値だけを返す範囲を入力欄と注記で明示します。
  • 有界な倍精度の実数グラフです。発散値、複素値、任意精度計算は扱いません。

よくある質問

k=1でKが空白なのはなぜですか?

対数的に発散し、有限値ツールでは返せないためです。E(1)=1は同じ行に表示します。

負のkも使えますか?

はい。KとEはk²に依存する偶関数なので、−1から1を指定できます。

mを入力しますか?

いいえ。modulus kです。parameter mを使う資料からはk=√mへ変換します。

入力した母数、横軸条件、生成系列は利用者の端末内だけで処理され、外部へ送信または保存されません。個人情報を入力する欄もありません。