牛顿-柯特斯(Newton-Cotes )公式也叫插值型求积公式。已知
f(x_0),f(x_1),...,f(x_n)的值。以这n+1个点进行拉格朗日插值,得到n次多项式,再对该n次的多项式求积分。
将积分区间
[a,b]n等分,
x_i=a+ihh=(b-a)/n,(i=0,1,..,n)
则n次拉格朗日插值多项式为:
L_n(x)=\sum_{i=0}^nf(x_i)l_i(x)
其中
l_i(x)=\frac{(x-x_0)...(x-x_{i-1})(x-x_{i+1})...(x-x_n)}{(x_i-x_0)...(x_i-x_{i-1})(x_i-x_{i+1})...(x_i-x_n)} \\
\qquad (1)那么
\int_a^b f(x) dx \approx \sum_{i=0}^nf(x_i)A_i
\qquad (2)
\begin{split}
A_i& = \int_a^b l_i(x) dx \\
&=\int_a^b \frac{(x-x_0)...(x-x_{i-1})(x-x_{i+1})...(x-x_n)}{(x_i-x_0)...(x_i-x_{i-1})(x_i-x_{i+1})...(x_i-x_n)} dx\\
& =h \int_0^n \frac{t(t-1)...(t-i+1)(t-i-1)...(t-n)}{(-1)^{n-k}k!(n-k)!} dx
\end{split}记
C_i^{(n)}= \frac{(-1)^{n-k}}{nk!(n-k)!}\int_0^nt(t-1)...(t-i+1)(t-i-1)...(t-n) dt
\qquad(3)
A_i = (b-a)C_i^{(n)}
\qquad (4)
由
(2)(4) 可得
\int_a^b f(x) dx \approx (b-a)\sum_{i=0}^nf(x_i)C_i^{(n)}
\qquad (5)
这就是牛顿-柯特斯公式。其中,
C_i^{(n)} 称为柯特斯系数。
由
(3)式可知,柯特斯系数
C_i^{(n)} 与被积函数以及积分区间都无关,只要给出积分区间的等分数n,就可以算出柯特斯系数
C_i^{(n)} 。例如,当n=2时
\begin{cases}
C_0^{(2)} =\int_0^2 t(t-1) dt=\frac{1}{6} \\[2ex]
C_1^{(2)} =-\frac{1}{2}\int_0^2 t(t-2) dt=\frac{4}{6} \\[2ex]
C_2^{(2)} =\frac{1}{4}\int_0^2 t(t-4) dt=\frac{1}{6}
\end{cases}
对应的牛顿-柯特斯公式为:
\int_a^b f(x) dx \approx \frac{(b-a)}{6}[f(a)+4f(\frac{(a+b)}{2})+f(b)]
\qquad(6)此即为辛普森(Simpson)公式。
为了便于应用,将柯特斯系数列出,可以快速写出牛顿-柯特斯公式。
牛顿-柯特斯公式的缺点:对于次数较高的多项式而有很大误差(龙格现象),一般取低阶公式计算。
[算例] 用牛顿--柯特斯公式计算积分
\int_{0.6}^1 \frac{1}{1+x^2} dx
n=1时
I \approx \frac{1-0.6}{2}[\frac{1}{1+0.6^2}+\frac{1}{1+1^2}]=0.2470588n=2时
I \approx \frac{1-0.6}{6}[\frac{1}{1+0.6^2}+4\frac{1}{1+0.8^2}+\frac{1}{1+1^2}]=0.2449546n=4时
I \approx \frac{1-0.6}{90}[7\frac{1}{1+0.6^2}+32\frac{1}{1+0.7^2}+12\frac{1}{1+0.8^2}+32\frac{1}{1+0.9^2}+7\frac{1}{1+1^2}]=0.2449787精确值为
\int_{0.6}^1 \frac{1}{1+x^2} dx =arctan(1)-arctan(0.6)=0.24497866