ベータ関数 B(a,b) 計算機
ベータ関数 B(a,b)=∫_0^1 t^(a-1)(1-t)^(b-1)dt をガウス求積の数値積分とガンマ関数表現 Γ(a)Γ(b)/Γ(a+b) の両方で計算。lnB や両者の一致誤差も表示します。
最終更新:
入力
正の実数 a, b を入力すると、ベータ関数 B(a,b)=∫_0^1 t^(a-1)(1-t)^(b-1)dt を64点ガウス求積で数値積分し、ガンマ関数表現と比較します。
正の実数
正の実数
計算結果
ベータ関数 B(2, 3)(数値積分)
0.0833333333
64 点ガウス・ルジャンドル求積による近似
ガンマ表現 Γ(a)Γ(b)/Γ(a+b)
0.0833333333
lnB(a,b)
-2.4849066498
数値積分との差
2.220446e-16
ガンマ表現 B(a,b)=Γ(a)Γ(b)/Γ(a+b) は Lanczos 近似で計算しています。a または b が1未満のときは端点で被積分関数が発散するため、数値積分の誤差が大きくなります。
計算方法・使い方
- ベータ関数は B(a,b)=∫_0^1 t^(a-1)(1-t)^(b-1)dt と定義され、a, b は正の実数を入力します。
- 主要数値は標準区間 [-1,1] を [0,1] に線形変換した64点ガウス・ルジャンドル求積による数値積分の結果です。
- ガンマ表現は B(a,b)=Γ(a)Γ(b)/Γ(a+b) で、ガンマ関数は Lanczos 近似で計算しています。
- lnB(a,b)=lnΓ(a)+lnΓ(b)-lnΓ(a+b) で、桁あふれを避けたいときに有用です。
- a または b が1未満だと被積分関数が端点で発散するため、数値積分の値はガンマ表現よりわずかに誤差が大きくなります。
お客様の声
このツールを使った感想をお聞かせください。
レビューを投稿する
計算結果の誤りや不具合を見つけたら、こちらをオンにしてご報告ください。
評価