MCPで接続 →

計算を入力してください

公式

広告

結果

ベータ関数 B(a, b)
4.477609374347165
dimensionless
計算手法 対数ガンマによるガンマ比(ランチョス g=7)
恒等式 B(a,b) = Γ(a)Γ(b) / Γ(a+b)
対称性 B(a,b) = B(b,a)

ベータ関数とは

ベータ関数は「第一種オイラー積分」とも呼ばれる、2変数の特殊関数で \(B(a, b)\) と表記します。確率論(ベータ分布)、統計学、組合せ論、そして定積分の評価など、幅広い分野に登場します。本計算機は、任意の2つの実数 a・b に対して \(B(a, b)\) の数値を返します。負の引数についても、ガンマ比による拡張を通じて関数が定義される範囲で計算できます。

0から1までの曲線の定積分として定義されるベータ関数で、曲線の下の面積が塗りつぶされている
ベータ関数は、区間[0,1]における t^(a-1)(1-t)^(b-1) の下の面積に等しい。

使い方

第1引数 a と第2引数 b を入力してください。どちらも単位を持たない純粋な数値なので、単位の指定は不要です。表示する有効桁数(倍精度で解像できるおよそ15桁まで)を選び、結果ボックスから \(B(a, b)\) の値を読み取ります。この関数は対称性を持つため、a と b を入れ替えても結果はまったく同じになります。

計算式の解説

積分による定義は、\(\operatorname{Re}(a) > 0\) かつ \(\operatorname{Re}(b) > 0\) のとき次のようになります。

$$B(a, b) = \int_0^1 t^{a-1}(1-t)^{b-1}\,dt$$

実際の計算では、これと等価な閉じた形を用います。

$$B(a, b) = \frac{\Gamma(a)\,\Gamma(b)}{\Gamma(a+b)}$$

引数が大きい場合のオーバーフローを避けるため、本計算機は対数で処理します。すなわち \(\ln B = \ln\Gamma(a) + \ln\Gamma(b) - \ln\Gamma(a+b)\) を求め、その後に指数を取り、正しい符号を付与します。ガンマ値はランチョス近似(\(g = 7\))で求め、0.5 未満の引数には反射公式 \(\Gamma(x)\Gamma(1-x) = \pi/\sin(\pi x)\) を適用しています。

広告
ベータ関数を3つのガンマ関数のボックスの比として示す図
B(a,b)はガンマ関数から構成される:Gamma(a)×Gamma(b)÷Gamma(a+b)。

計算例

a = 1.5、b = 0.2 の場合:\(\Gamma(1.5) = \sqrt{\pi}/2 \approx 0.886227\)、\(\Gamma(0.2) \approx 4.590844\)、\(\Gamma(1.7) \approx 0.908639\)。よって

$$B(1.5, 0.2) = \frac{0.886227 \times 4.590844}{0.908639} \approx 4.47748$$

となります。きれいに確認できる例として、

$$B(2, 3) = \frac{\Gamma(2)\Gamma(3)}{\Gamma(5)} = \frac{1\cdot 2}{24} = \frac{1}{12} \approx 0.083333$$

です。

広告

主要な用語と記号

ベータ関数 \(B(a,b)\)
オイラーベータ関数。積分 \(B(a,b)=\int_0^1 t^{a-1}(1-t)^{b-1}\,dt\) で定義され(\(a,b>0\) の場合)、ガンマ比 \(B(a,b)=\Gamma(a)\Gamma(b)/\Gamma(a+b)\) と同等です。対称性があります:\(B(a,b)=B(b,a)\)。
ガンマ関数 \(\Gamma(x)\)
階乗の連続拡張。\(\Gamma(x)=\int_0^\infty t^{x-1}e^{-t}\,dt\)(\(x>0\) の場合)で、正の整数に対して \(\Gamma(n)=(n-1)!\) を満たし、\(\Gamma(x+1)=x\,\Gamma(x)\) が成立します。
パラメータ \(a\) と \(b\)
ベータ関数の2つの実パラメータ。積分定義は \(a>0\) および \(b>0\) で収束します。ガンマ比の形式は、ガンマ因子が特異点を持つ場合を除き、\(B\) を他の実数値に拡張します。
対数ガンマ \(\ln\Gamma(x)\)
ガンマ関数の自然対数。\(B\) を \(\exp[\ln\Gamma(a)+\ln\Gamma(b)-\ln\Gamma(a+b)]\) として計算することで、\(\Gamma\) 自体が生成する非常に大きな中間値を回避し、数値的な安定性を保ちます。
ランチョス近似
\(\Gamma(x)\)(および \(\ln\Gamma(x)\))の広く使われている級数近似法。固定された小さい係数セットで高い精度を実現し、ベータ関数やガンマ関数の計算機内で一般的に使用されます。
反射公式
恒等式 \(\Gamma(x)\,\Gamma(1-x)=\dfrac{\pi}{\sin(\pi x)}\)。直接級数が適用されない負の値または小さい引数に対するガンマ関数を評価するために使用されます。
特異点/発散
ガンマ関数は \(x=0,-1,-2,\dots\) で特異点を持ち、発散します。したがって、\(a\) または \(b\) が非正整数の場合、\(B(a,b)\) は発散します(分母によるキャンセルがない限り)。そのような入力は有限値を持ちません。
ベータ分布との関係
ベータ関数はベータ分布の正規化定数です。その確率密度関数は \(f(x)=\dfrac{x^{a-1}(1-x)^{b-1}}{B(a,b)}\)(区間 \([0,1]\) 上)です。同じ \(a\) と \(b\) パラメータがベータ分布の平均と分散に出現します。

よくある質問

\(B(a, b)\) は常に正の値ですか? \(a > 0\) かつ \(b > 0\) のときは常に正かつ有限です。負の非整数引数の場合、符号は対応するガンマ値の符号の積に従います。

非正の整数のときはどうなりますか? a または b が 0、\(-1\)、\(-2\)、… のとき、結果は発散します(未定義)。a+b だけが非正の整数である場合は、分母の極が支配的となり \(B(a, b) = 0\) になります。

なぜ積分ではなくガンマ比を使うのですか? ガンマ比は閉じた形で計算が速く、対数ガンマを介することで、直接積分では扱いにくい非常に小さい引数・非常に大きい引数のどちらに対しても精度を保てるためです。

最終更新: