数値解析 第7回 (4) ガウスの積分公式
Case 1 : $\dps{\int_{-1}^1 f\,dx}$ の近似式
最初は区間 $[\,-1,1\,]$ での公式を作ります。その方針は 前回と同じく、$p(x)$ を具体的に求める必要はなくてCase 2 : $\dps{\int_{\alpha}^{\beta} f\,dx}$ の近似式
積分区間 $[\,-1,1\,]$ が $[\,\alpha,\beta\,]$ に写るように、一次式ガウスの積分公式の使い方
例えば $\dps{\int_1^2 f(x)\, dx}$ の近似値を例
台形公式 小区間数 = 4, 分点数 = 5, 近似値 = 0.308882624093, 誤差 = 0.007177655321 小区間数 = 8, 分点数 = 9, 近似値 = 0.314275892571, 誤差 = 0.001784386844 小区間数 = 16, 分点数 = 17, 近似値 = 0.315614800853, 誤差 = 0.000445478561 小区間数 = 32, 分点数 = 33, 近似値 = 0.315948948277, 誤差 = 0.000111331137 小区間数 = 64, 分点数 = 65, 近似値 = 0.316032449035, 誤差 = 0.000027830380 小区間数 = 128, 分点数 = 129, 近似値 = 0.316053321970, 誤差 = 0.000006957445 小区間数 = 256, 分点数 = 257, 近似値 = 0.316058540062, 誤差 = 0.000001739352 小区間数 = 512, 分点数 = 513, 近似値 = 0.316059844577, 誤差 = 0.000000434837 小区間数 = 1024, 分点数 = 1025, 近似値 = 0.316060170705, 誤差 = 0.000000108709 小区間数 = 2048, 分点数 = 2049, 近似値 = 0.316060252237, 誤差 = 0.000000027177 小区間数 = 4096, 分点数 = 4097, 近似値 = 0.316060272620, 誤差 = 0.000000006794 小区間数 = 8192, 分点数 = 8193, 近似値 = 0.316060277716, 誤差 = 0.000000001699 小区間数 = 16384, 分点数 = 16385, 近似値 = 0.316060278990, 誤差 = 0.000000000425 小区間数 = 32768, 分点数 = 32769, 近似値 = 0.316060279308, 誤差 = 0.000000000106 小区間数 = 65536, 分点数 = 65537, 近似値 = 0.316060279388, 誤差 = 0.000000000027 シンプソンの公式 小区間数 = 4, 分点数 = 9, 近似値 = 0.316073648730, 誤差 = 0.000013369316 小区間数 = 8, 分点数 = 17, 近似値 = 0.316061103614, 誤差 = 0.000000824200 小区間数 = 16, 分点数 = 33, 近似値 = 0.316060330752, 誤差 = 0.000000051338 小区間数 = 32, 分点数 = 65, 近似値 = 0.316060282620, 誤差 = 0.000000003206 小区間数 = 64, 分点数 = 129, 近似値 = 0.316060279615, 誤差 = 0.000000000200 小区間数 = 128, 分点数 = 257, 近似値 = 0.316060279427, 誤差 = 0.000000000013 小区間数 = 256, 分点数 = 513, 近似値 = 0.316060279415, 誤差 = 0.000000000001 小区間数 = 512, 分点数 = 1025, 近似値 = 0.316060279414, 誤差 = 0.000000000000 シンプソンの 3/8 公式 小区間数 = 4, 分点数 = 13, 近似値 = 0.316066209330, 誤差 = 0.000005929915 小区間数 = 8, 分点数 = 25, 近似値 = 0.316060645541, 誤差 = 0.000000366127 小区間数 = 16, 分点数 = 49, 近似値 = 0.316060302228, 誤差 = 0.000000022814 小区間数 = 32, 分点数 = 97, 近似値 = 0.316060280839, 誤差 = 0.000000001425 小区間数 = 64, 分点数 = 193, 近似値 = 0.316060279503, 誤差 = 0.000000000089 小区間数 = 128, 分点数 = 385, 近似値 = 0.316060279420, 誤差 = 0.000000000006 小区間数 = 256, 分点数 = 769, 近似値 = 0.316060279415, 誤差 = 0.000000000000 3次のガウス 小区間数 = 4, 分点数 = 12, 近似値 = 0.316060291081, 誤差 = 0.000000011667 小区間数 = 8, 分点数 = 24, 近似値 = 0.316060279593, 誤差 = 0.000000000179 小区間数 = 16, 分点数 = 48, 近似値 = 0.316060279417, 誤差 = 0.000000000003 小区間数 = 32, 分点数 = 96, 近似値 = 0.316060279414, 誤差 = 0.000000000000 4次のガウス 小区間数 = 4, 分点数 = 16, 近似値 = 0.316060279404, 誤差 = 0.000000000010 小区間数 = 8, 分点数 = 32, 近似値 = 0.316060279414, 誤差 = 0.000000000000 5次のガウス 小区間数 = 4, 分点数 = 20, 近似値 = 0.316060279414, 誤差 = 0.000000000000 小区間数 = 8, 分点数 = 40, 近似値 = 0.316060279414, 誤差 = 0.000000000000ガウスの積分公式が少ない分点数でも精度よく計算していることが見て取れます。
ガウスの積分公式が使えない場合
観測点が自由に選べない状況ではガウスの積分公式は使えません。 例えば一定の時間間隔で観測されるデータから数値積分をしなければならないときには、シンプソンの公式などを使います。