actions

ニュートン・コーツの公式

ニュートン・コーツの公式(ニュートン・コーツのこうしき、: Newton-Cotes formulae, Newton-Cotes rules)とは、等間隔の点における被積分関数の値に基づく数値積分法の総称である。名前はアイザック・ニュートンロジャー・コーツに由来する。

ニュートン・コーツの公式は、等間隔の点での被積分関数の値が与えられた場合に有用である。もし他の点での値も求められるならば、ガウス求積クレンショー・カーチス求積English版などの他の方法の方が適している場合もある。

概要

ニュートン・コーツの公式は、端点を使う「閉じた」ものと、端点を使わない「開いた」ものの 2 種類に大別できる。

n 次の閉じたニュートン・コーツの公式は次のようになる。

[math]\int_a^b f(x) \,dx \approx \sum_{i=0}^n w_i\, f(x_i)[/math]

ここで xi = a + i ba/n (i = 0, ..., n) である。

wi は重みと呼ばれる。重みは以下のようにラグランジュ補間による補間多項式から導かれる。

[math]\int_a^b f(x) \,dx \approx \int_a^b L(x) \,dx = \int_a^b \left( \sum_{i=0}^n f(x_i)\, l_i(x) \right) \,dx = \sum_{i=0}^n f(x_i) \underbrace{\int_a^b l_i(x) \,dx}_{w_i}[/math]

また、以上の導出から重みは関数 f によらず、xi のみによって決まることがわかる。

n 次の開いたニュートン・コーツの公式の場合は、xi = a + (i + 1) ba/n + 2 (i = 0, ..., n) とし、重みは閉じたものと同様である。

ニュートン・コーツの公式の一覧

閉じたニュートン・コーツの公式
次数 名前 誤差項
1 台形公式 [math]\frac{b-a}{2} (f_0 + f_1)[/math] [math]-\frac{(b-a)^3}{12}\,f^{(2)}(\xi)[/math]
2 シンプソンの公式 [math]\frac{b-a}{6} (f_0 + 4 f_1 + f_2)[/math] [math]-\frac{(b-a)^5}{2880}\,f^{(4)}(\xi)[/math]
3 シンプソンの3/8公式 [math]\frac{b-a}{8} (f_0 + 3 f_1 + 3 f_2 + f_3)[/math] [math]-\frac{(b-a)^5}{6480}\,f^{(4)}(\xi)[/math]
4 ブールの公式English版 [math]\frac{b-a}{90} (7 f_0 + 32 f_1 + 12 f_2 + 32 f_3 + 7 f_4)[/math] [math]-\frac{(b-a)^7}{1935360}\,f^{(6)}(\xi)[/math]
開いたニュートン・コーツの公式
次数 名前 誤差項
0 中点則 [math](b-a) f_0[/math] [math]\frac{(b-a)^3}{24}\,f^{(2)}(\xi)[/math]
1 台形法 [math]\frac{b-a}{2} (f_0 + f_1)[/math] [math]\frac{(b-a)^3}{36}\,f^{(2)}(\xi)[/math]
2 ミルンの公式 [math]\frac{b-a}{3} (2 f_0 - f_1 + 2 f_2)[/math] [math]\frac{7(b-a)^5}{23040}\,f^{(4)}(\xi)[/math]
3 [math]\frac{b-a}{24} (11 f_0 + f_1 + f_2 + 11 f_3)[/math] [math]\frac{19(b-a)^5}{90000}\,f^{(4)}(\xi)[/math]

ここで、fif (xi) の略記である。

誤差項 E[math]\int_a^b f(x) \,dx - \sum_{i=0}^n w_i f(x_i) = E[/math] となる ξ ∈ (a, b) が存在することを意味する。 また、f の導関数は、多項式は正確に積分できる(即ち、誤差が 0 になる)ことを表している。なお、(ba) の次数と f の導関数の階数は、1 つおきに 2 ずつ増加することに注意。

重みの計算

ニュートン・コーツの公式の重みは線形方程式系の解として求めることができる。 これは補間多項式の一意性より f (x)n 次以下の多項式の場合 L(x) = f (x) となることに基づく。係数行列ファンデルモンド行列である。

[math] \begin{pmatrix} 1 & 1 & \cdots & 1 \\ x_0 & x_1 & \cdots & x_n \\ \vdots & \vdots & \ddots & \vdots \\ x_0^n & x_1^n & \cdots & x_n^n \end{pmatrix} \begin{pmatrix} w_0 \\ w_1 \\ \vdots \\ w_n \end{pmatrix} = \begin{pmatrix} b - a \\ (b^2 - a^2)/2 \\ \vdots \\ (b^{n+1} - a^{n+1})/(n+1) \end{pmatrix} [/math]

高次における不安定性

ニュートン・コーツの公式は、任意の次数で構築できる。しかし大きな次数 n においてはルンゲ現象により誤差指数関数的に大きくなる。そのため、通常は大きな次数ではガウス求積クレンショー・カーチス求積English版などの非等分点法の方が、安定してより正確な値を求められる。もしそれらの方法が使えないならば、合成積分公式を使うことでルンゲ現象を避けることができる。

合成積分公式

ニュートン・コーツの公式の精度を良くするには、ステップ長 ba/n は小さくする必要がある。つまり、積分区間 [a, b] 自体が小さくなければならない。このため、積分区間 [a, b] を小さな部分区間に分割し、各部分区間ごとにニュートン・コーツの公式を使い、その結果を足し合わせるという方法が使われる。これは合成積分公式と呼ばれる。

関連項目

参考文献

外部リンク