Welcome to Toshiyuki Ihara's Excel計算の技 その3





「∫f(x)dx の例として、I=∫exp(-x^2)dx を台形積分で計算する。」 accesslog


イントロ 次に、「∫f(x)dx の例として、I=∫exp(-x^2)dx を台形積分で計算する。」という課題を取り上げます。

このように書くと難しそうですが、簡単に言えば「sum関数」を使って和を計算するだけです。

流れとしては
1:まず、x軸を用意する。
2:y軸として、exp(-x^2)を作る
3:y軸を台形積分するための関数を入力する
4:積分結果がどの程度正しいかを評価する
といった順で解説します。

まずは左図のように入力します。
ここでx0とdxはx軸を作るためのパラメータで、x=x0+m*dx(mは正の整数)となります。
これから、A列にx軸を作り、B列にy=exp(-x^2)を計算させます。
さらにその積分値IをD9に表示するほか、D12セルには(2*I)^2の値を計算し、積分の誤差を評価します。
x軸を作るため、左図のようにA列に赤字の式を入力します。
もちろん、A11〜A509へは直接入力せず、A10セルのコピー貼り付けで済ませます。
A9〜A509のセルに0〜5.00の値が並べばOKです。
次にB列に図のような式を入力します。
B9セルに

=exp(-(A9^2))

と書いたら、あとはB10〜B509にコピー貼り付けするだけです。
D9セルに、下式を入力します。

=(B9/2+B509/2+SUM(B10:B508))*B2

この式はまさに台形積分そのものです。
左端と右端だけは半分にしてやらないと、y*dx/2程度の誤差を含むことになります。
逆にいえば、積分の両端でy→0となる関数の場合は、全部和をとってもあまり問題ありません。
D12セルに、下記の式を入力します。

=(2*D9)^2

つまり、積分値を2倍してさらに2乗します。
計算結果を見ると、見事に「3.141593」となっていますね。

I=∫exp(-x^2)dx =(π/2)^0.5

という関係を数値計算で示すことができたわけです。
A9〜B509の範囲を選択してグラフを作成すると、図のようになります。
x=5でほとんど0に減衰しているので、x=[0:∞]での積分値がかなりの精度で求められるわけです。

エクセル計算の技へ戻る

ホームへ