ベータ関数
ベータ関数 は複素数 $x,\ y$ について
\[B(x,y)=\int_{0}^{1}t^{x-1}(1-t)^{y-1}dt\quad (\mathrm{Re}x,\mathrm{Re}y\gt 0)\tag{1}\]
で定義される関数です。定義式 (1) から明らかなように、ベータ関数は引数 $x$ と $y$ を交換しても値を変えません。すなわち
\[B(x,y)=B(y,x)\tag{2}\]
が成り立ちます。SciPy の特殊関数計算用サブパッケージ special から beta() 関数をインポートして、(2) を確かめてみましょう。
# PYTHON_BETA_FUNCTION
# In[1]
from scipy.special import beta, gamma
# ベータ関数の変数交換
a = beta(1, 2)
b = beta(2, 1)
print("B(1, 2) = {}".format(a))
print("B(2, 1) = {}".format(b))
B(1, 2) = 0.5 B(2, 1) = 0.5
ベータ関数とガンマ関数
ベータ関数は ガンマ関数 と
\[B(x,y)=\frac{\Gamma (x)\Gamma (y)}{\Gamma (x+y)}\tag{3}\]
という関係で結びついています。
# In[2]
# B(3, 5)
b = beta(3, 5)
# Γ(3)Γ(5)/Γ(3+5)
g = gamma(3) * gamma(5) / gamma(8)
print("B(3, 5) = {:.5f}".format(b))
print("Γ(3)Γ(5)/Γ(3+5) = {:.5f}".format(g))
B(3, 5) = 0.00952 Γ(3)Γ(5)/Γ(3+5) = 0.00952
ベータ関数のグラフ
$y=1,\ 2,\ 3$ に固定して、$x$ を変化させたときのベータ関数をプロットしてみます。
# In[3]
import numpy as np
import matplotlib.pyplot as plt
# x座標データ
x = np.linspace(0, 4, 65)
# グラフ描画領域を設定
fig = plt.figure(figsize = (6, 6))
ax = fig.add_subplot(111)
ax.set_title("Beta Functions", size = 15)
ax.grid()
ax.set_xlim(0, 4)
ax.set_ylim(0, 4)
ax.set_xlabel("x", size = 14, labelpad = 10)
ax.set_ylabel("B(x, y)", size = 14, labelpad = 10)
# 色のリスト
c = ["red", "blue", "green"]
# ベータ関数B(x,1),B(x,2),B(x,3)のグラフを描画
for i in range(1, 4):
ax.plot(x, beta(x, i), color = c[i - 1],
label = "y = {}".format(i))
# 凡例を表示
ax.legend()
ベータ関数の相反公式
ベータ関数 $B(x,1-x)$ は正弦関数 $\sin x$ と次のような形で結びついています。
\[B(x,1-x)=\frac{\pi}{\sin \pi x}\]
これをベータ関数の 相反公式 とよびます。
$B(x,1-x)$ は整数点 $x=0,\ 1,\ 2,\ ...$ を漸近線にもつ周期関数です。
# In[4]
# グラフ描画領域を設定
fig = plt.figure(figsize = (6, 6))
ax = fig.add_subplot(111)
ax.set_title("B(x, 1 - x)", size = 15)
ax.grid()
ax.set_xlim(0, 4)
ax.set_ylim(-15, 15)
ax.set_xlabel("x", size = 14, labelpad = 10)
ax.set_ylabel("B(x, 1-x)", size = 14, labelpad = 8)
# B(x,1-x)のグラフを描画
for i in range(4):
x = np.linspace(i, i + 1, 65)
ax.plot(x, beta(x, 1 - x), color = "darkblue")
人工知能がベータ関数を解説します
[ChatGPT] ベータ関数は、積分の形を持つ特殊な数学関数です。ベータ関数は、次のように定義されます:
B(x, y) = ∫[0, 1] t^(x-1) (1-t)^(y-1) dt
ここで、xとyは実数であり、x > 0、y > 0である必要があります。この定義は、t^(x-1) (1-t)^(y-1)という関数を0から1までtについて積分することを意味します。ベータ関数は、確率論、統計学、数学解析などの分野で広く使用されます。主な特徴の一つは、ガンマ関数との関連性です。実際、ベータ関数はガンマ関数を使って次のように表すこともできます:
B(x, y) = Γ(x)Γ(y) / Γ(x+y)
ここで、Γ(x)はガンマ関数です。ベータ関数にはいくつかの性質があります。以下にいくつか例を挙げます:
1. 対称性:B(x, y) = B(y, x)
2. 再帰関係:B(x, y) = B(x+1, y) + B(x, y+1)
3. 積分表示:B(x, y) = ∫[0, ∞] t^(x-1) / (t^(x+y)) (1+t)^(-x-y) dt
ベータ関数は、確率密度関数や累積分布関数の形を求める場合など、さまざまな数学的な計算や解析に使用されます。また、ベータ分布と関連付けられることもあり、統計モデリングやデータ解析においても重要な役割を果たします。以上がベータ関数の基本的な概要です。詳細な計算や性質については、数学の専門書や参考資料を参照することをおすすめします。