アプリ版:「スタンプのみでお礼する」機能のリリースについて

数値積分で

e^(-x)/√xを[0,1]の範囲で数値積分するのですが、

f(0)の値が無限になり、台形公式やシンプソンの公式が使えません。

この場合どのように解けばよいんですか?

A 回答 (5件)

「手計算タイプの数値積分」とは何ですか。

私は聞いたことがありませんが、一般に通用する言葉なのですか?下のP.J.Davis,P.Rabinowitzの本は数値積分の専門書ですが、これにも「手計算タイプの数値積分」はありません。そもそも数値積分とは手計算でなく計算機でする積分のことなので、「手計算タイプの数値積分」は自己矛盾のような気もしますが?
    • good
    • 0

National bureau of Standards Applied Mathematics series 41; Tables of the Error Function and its Derivative


によれば
 (2/√π)∫[0,1]dx exp(-x^2) = 0.84270079294971512
したがって
 ∫[0,1]dx e^(-x)/√x =∫[0,2]du exp(-u^2/4)
=√π × 0.84270079294971512 ≒ 1.493648264
    • good
    • 0

e^(-x)/√xはx→0 のとき 1/√x のように発散します。

そこで
 du = dx/√x
となるようにするには u=2√x とおけば良いことが分かります。すると
 ∫[0,1]dx e^(-x)/√x = ∫[0,2]du exp(-u^2/4)
と発散のない形になります。正規分布表でこの積分を求めるとおよそ1.49になります。
    • good
    • 0

適当な変数変換で被積分関数の特異点を除いておく必要があります。

一般的な方法としてはIMT公式や二重指数関数型公式があります。

P.J.Davis,P.Rabinowitz/著 , 森正武/訳
計算機による数値積分法:日本コンピュータ協会 (1981)

u=log(x) とおくと

 ∫[0,1]dx e^(-x)/√x = ∫[-∞,0]du exp(u/2)*exp(-exp(u))

被積分関数が発散する点がなくなった替わりに積分区間が無限になってしまいました。しかしexp(u/2)はu→-∞で急速に減少するのでこちらの方が望ましいと言えます。右辺を数値積分すると1.493648になりました。検算するために部分積分を繰り返して
 ∫[0,1]dx e^(-x)/√x = e^(-1) Σ2^k/(2k-1)!!  (k=1~∞の和)
として右辺を計算すると1.493648になりました。もっと難しい問題は
 戸田 英雄 小野 令美
日本物理学会誌、37(8) [1982.08]、p655
    • good
    • 0
この回答へのお礼

後は計算機でやるってことですよね?

ありがとうございます、本当に助かりました!!

数値積分といっても方法がいくつもあり、
手計算タイプの数値積分ではできないみたい(?)ですね。

お礼日時:2006/11/18 10:55

積分区間を[ε、1]として、lim(ε→0) を考える物では無いでしょうか。

この回答への補足

やってみましたが、結局同じような計算をすることになりました・・・

補足日時:2006/11/17 21:03
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!