2 計算

実際に先ほどの積分 $ \int_0^\infty x^3/(e^x-1)dx$を計算してみる。 この積分は、積分変数 $ x$ の値を大きくとると $ e^x$ が数値的に発散してしまうので、

$\displaystyle I= \int_{0}^{\infty} dx\, \frac{x^3 e^{-x}}{1-e^{-x}} \cong \int_{\epsilon}^{A} dx \, \frac{x^3 e^{-x}}{1-e^{-x}} \sim I(\epsilon,A)$ (6)

と書き換えて計算するのが適当である。 ここで $ A>0$ は適当に大きな数であり、 $ \epsilon>0$ は適当に小さな数である。 $ \epsilon=0$ とすると、数値積分領域に被積分関数中分母が $ 1-e^{-x}$ が零となる点が含まれることになるので、 数値計算をするときは、 適当に小さな $ \epsilon$ を使う必要がある。 今回は $ A$ を指定するのではなく $ I_n$$ I_{n+1}$ の差の絶対値が十分小さな値以下になるまで計算する様にした。 実際のところはグラフから分かるように高々 $ x\sim 35$ 程度で被積分関数は $ 10^{-10}$ 程度の大きさになるので、 $ A$ の値が十分大きくなる前に値が求まることになる。

\includegraphics[width=7.77truecm,scale=1.1]{shinpuson_gaikei.eps} \includegraphics[width=8.77truecm,scale=1.1]{shinpuson_logscale.eps}

計算結果は次の通りである。( $ \epsilon=dx$ としてある。)

$\displaystyle I(10^{-1},45.4000)$ $\displaystyle =6.4936199578686695233$    
$\displaystyle I(10^{-2},42.7400)$ $\displaystyle = 6.4939390703474284550$    
$\displaystyle I(10^{-3},40.2220)$ $\displaystyle =6.4939394019339164998$    
$\displaystyle I(10^{-4},37.7242)$ $\displaystyle =6.4939394022609082668$    
$\displaystyle I(10^{-5},35.2147)$ $\displaystyle =6.4939394022307972421$    
$\displaystyle I(10^{-6},32.6888)$ $\displaystyle =6.4939394019330034524$    

$ \epsilon = 10^{-4}$ のときの値が最も理想値に近い。

fat-cat 平成16年11月27日