第1種合流型超幾何関数Kummer M(a,b,z)の複素数計算

第1種合流型超幾何関数Kummer M(a,b,z)の複素数計算

複素パラメータa・bと複素引数zからKummer M(a,b,z)=1F1(a;b;z)を計算し、実部・虚部・絶対値・主偏角を表示します。

入力

複素パラメータaの実部です。絶対値上限も別に検査します。

複素パラメータaの虚部です。実数なら0にします。

複素パラメータbの実部です。極と安全域も検査します。

複素パラメータbの虚部です。実数なら0にします。

複素引数zの実部です。branchと評価経路も検査します。

複素引数zの虚部です。cutの片側は0でない符号で指定します。

使い方

  1. a・b・zの実部と虚部を六つの欄へ入力します。純実数の虚部は0にしてください。
  2. 計算ボタンを押し、ページ先頭の一行五列表で実部、虚部、絶対値、主偏角を確認します。入力エラーが出た場合は示された全欄と安全域を見直します。
  3. 別の数表と比べるときは関数種、全パラメータ、branch、scaledかunscaledか、有効桁を一緒に記録し、必要ならTSVをコピーします。

計算式・考え方

Kummer M(a,b,z)=1F1(a;b;z)=Σ(k≥0)(a)_k z^k/((b)_k k!)です。bが0、−1、−2、…の極に達しない監査域だけを評価します。

注意事項

  • Kummer M(a,b,z)=1F1(a;b;z)はaとzについて整関数ですが、標準的な定義はbが0、−1、−2、…で特異になります。このページは|a|≤8、|b|≤8、|z|≤10とし、到達し得るb=0から−8までの各極から複素距離0.05以上を要求します。
  • zにはbranch cutを設けません。負の実数zもKummer Mの整関数値として同じ一点を表し、上側・下側を選ぶ入力は不要です。一方、bの極を∞表示で済ませると有限な正則化関数と混同するため、本ページは極そのものを入力エラーにします。
  • a=−nなら級数はn次多項式で止まり、有限回の項更新で値を得られます。aとbが同じならM(a,a,z)=exp(z)という検算もできますが、bが極でないことが前提です。個別の恒等式を公開域外へ延長しません。
  • 既定値a=2、b=3、z=0.5では約1.405114917199487です。実数入力なので虚部は0になりますが、一般の複素入力では実部と虚部の双方を保持します。別資料が正規化された1F1やregularized関数でないか確認してください。
  • Kummer変換は大きい正実部zで直接級数の相殺を減らす場合がありますが、exp(z)が巨大になるsectorもあります。本coreは両候補を盲目的に平均せず、有限性と推定誤差を比較し、信頼できる候補が残らなければ値を返しません。
  • 第1種という呼称だけでWhittaker MやGauss 2F1と置き換えないでください。1F1はGauss超幾何関数の合流極限であり、微分方程式、特異点、パラメータの意味が異なります。
  • このページ群は合流型超幾何微分方程式の標準解を、一般の複素入力を式文字列へせず、実部と虚部の六つの有限数値として受け取ります。a+biのようなJavaScript式、極形式、変数、任意コードは実行しません。各欄へ実数を入れ、純実数でも虚部欄へ0を明示してください。
  • 公開範囲は数学的な最大定義域ではなく、IEEE 754 binary64と有界反復で精度を高精度oracleへ照合できた部分です。成分が個別の上下限内でも複素絶対値が上限を超える点は拒否します。範囲外を端点へ丸めたり、虚部を捨てたり、整数へ近似したりしません。
  • 結果表は関数名、実部Re、虚部Im、絶対値、主偏角radの一行五列です。複素数の再利用ではReとImを正本として保存してください。絶対値と偏角だけでは小さい成分や象限境界の情報を失い、値が厳密0のとき偏角は定義できないため未定義と表示します。
  • 主偏角はatan2に相当する−πからπの代表値です。branch cutの片側極限を比べる場合、偏角の表示が約2π跳ぶことがありますが、これは必ずしも関数値の不連続や実装不良を意味しません。採用した入力の虚部符号とbranch規約を一緒に記録してください。
  • 合流型超幾何関数には、パラメータが負整数になって級数が有限多項式で止まる場合があります。終端条件を小数の近似一致で判定せず、実部が厳密な対象整数で虚部が厳密0のときだけ多項式経路へ進みます。−1に非常に近い値を−1へ丸めることはありません。
  • Gamma関数やPochhammer記号を含む式では、非正整数の極、極の近傍、巨大項の相殺が問題になります。本実装は極からの距離、安全な反復上限、有限性、丸め誤差推定を検査し、未収束や非有限の途中値を成功した0または∞として表示しません。
  • Kummer Mの数値核は直接級数とKummer変換M(a,b,z)=exp(z)M(b−a,b,−z)を候補にし、Neumaier補償和で項を加えます。両経路が使える場合は項の絶対値合計と最終値から推定した丸め誤差の小さい候補を選びますが、表示桁が厳密値になる保証ではありません。
  • Kummer Uの非終端経路は右半平面側の積分表示を有限区間へ写像し、16点Gauss–Legendre則を適応分割します。振動が強い左半平面、未監査の解析接続、任意の複素無限積分へ自動的に広げません。収束深さや区間数の上限に達した場合はエラーで閉じます。
  • Whittaker関数はKummer関数へ指数因子とzの複素べきを掛けた標準解です。したがって同じ文字MでもKummer M(a,b,z)とWhittaker Mκ,μ(z)は別の関数です。検索結果や数表を比較するときは関数名だけでなくパラメータの対応式まで確認してください。
  • zの複素べきはprincipal logarithmを基準にします。負実軸そのものを受けるか拒否するかは関数ごとに異なり、絶対値|z|へ置換して実数化する方法は元の解析関数と同値ではありません。上側・下側の指定が必要な用途では0でない小さな虚部を明示します。
  • 共役対称性が使える実パラメータの例では、zと共役zの結果も共役になります。しかしパラメータ自体が複素数なら、zだけを共役にしても一般には同じ関係になりません。入力全体をどのように共役したかを揃えて検算してください。
  • 表示は最大15有効桁のunscaled値で、任意精度、誤差区間、指数因子を除いたscaled関数ではありません。零点近傍では小さい関数値の相対誤差と偏角が敏感になり、大きい値では末尾桁が失われます。研究や設計の最終値には任意精度実装を併用してください。
  • 正常例だけでなく、絶対値境界、終端多項式、極の直近、原点、負実軸cut、非終端積分域の端を分けて検査します。一つの恒等式が合うことを全領域の保証とはせず、90桁の独立値、PythonとJavaScriptの同値、有限性、エラー対象欄を組み合わせます。
  • 本ツールは指定した一点の関数値を返します。零点探索、逆関数、微分、積分、固有値、物理境界条件、正規化係数の自動選択は行いません。微分方程式や量子力学へ使う場合は、無次元化、時間因子、採用解、単位をモデル側で確認してください。
  • 入力値と結果は利用者のブラウザ内だけで処理されます。外部API、外部CDN、fetch、XMLHttpRequest、WebSocket、位置情報、Cookie、localStorageを使わず、複素パラメータや結果をサーバーへ送信または保存しません。共有端末では必要に応じてタブを閉じてください。
  • 定義とパラメータの特異性はNIST DLMF §13.2(https://dlmf.nist.gov/13.2)、Kummer Uの積分表示は§13.4(https://dlmf.nist.gov/13.4)、Whittaker関数の定義と対称性は§13.14(https://dlmf.nist.gov/13.14)、Gamma関数の関係式は§5.5(https://dlmf.nist.gov/5.5)を2026年7月16日に照合しました。
  • 監査済みの有界binary64複素値です。任意精度、scaled値、零点保証、未監査の解析接続は扱いません。

よくある質問

複素数をa+biの形で一欄へ入力できますか?

できません。実部と虚部を別欄へ有限実数として入力し、式やコードを実行しない設計です。

範囲外の値は境界へ丸められますか?

丸めません。未監査域やbranchの曖昧さを隠さず、対象欄を示す入力エラーにします。

表示された15桁はすべて正確ですか?

binary64の表示であり、零点近傍、相殺、dynamic rangeによって末尾桁は変わります。最終値は任意精度実装でも確認してください。

入力や結果はサーバーへ送られますか?

送られません。計算、表、コピー用データはブラウザ内で完結します。

入力した複素パラメータ、複素引数、生成した関数値は利用者の端末内だけで処理され、外部へ送信または保存されません。個人情報の入力欄もありません。