# 机械求积法
梯形公式:
∫abf(x)dx≈21(b−a)[f(a)+f(b)]
中矩形公式:
∫abf(x)dx≈(b−a)f(2a+b)
辛普森公式:
∫abf(x)dx≈61(b−a)[f(a)+4f(2a+b)+f(b)]
# 代数精度
使求积公式准确成立的多项式的次数,可以作为一种衡量求积公式精确度程度的标准
若 ∫abf(X)dx≈∑i=0nAif(xi) 对于一切次数小于等于 m 的多项式是准确的,而对于次数为 m+1 的某一多项式并不准确,则称该求积公式具有 m 次代数精度
推论:若 ∫abf(X)dx≈∑i=0nAif(xi) 具有 m 次代数精度,则这个公式对于一切次数小于等于 m 的多项式是准确的
证明
若 ∫abf(X)dx≈∑i=0nAif(xi) 对函数 f(x) 和 g(x) 准确成立,则它对于函数 αf(x)+βg(x) 准确成立
∫ab[αf(x)+βg(x)]dx=∫abαf(x)dx+∫abβg(x)dx=αi=0∑nAif(xi)+βi=0∑nAig(xi)=i=0∑nAi[αf(xi)+βg(xi)]
对于任意给定的 n+1 个互异的节点 a=x0<x1<...<xn=b 总存在系数 A0,A1,...,An,使得 ∫abf(X)dx≈∑i=0nAif(xi) 的代数精度最低为 n
证明
设以 x0,x1,...,xn 为插值节点的 f(x) 的 Lagrange 插值多项式为
pn(x)=i=0∑nf(xi)li(x)
则
f(x)=pn(x)+(n+1)!f(n+1)(ξ)w(x)
所以
∫abf(x)dx=i=0∑nf(xi)∫abli(x)dx+(n+1)!1∫abf(n+1)(ξ)w(x)dx
记
R(f)=(n+1)!1∫abf(n+1)(ξ)w(x)dx
对于任何一个次数不高于 n 次的多项式 f(x),R(f)=0
# 求积公式的构造方法
# 利用代数精度作为标准构造求积公式
因为如果代数精度为 m,那么对于一切次数小于等于 m 的多项式是准确的,所以可以带入 1,x,x2,... 进行解方程求解
# 插值法构造求积公式
用 pn(x) 代替 f(x) 从而的获得求积公式
∫abf(x)dx≈∫abpn(x)dx
∫abpn(x)dx=∫ab[i=0∑nf(xi)li(x)]dx=i=0∑nf(xi)∫abli(x)dx
显然,求积系数为
Ai=∫abli(x)dx
定义:求积公式的求积系数为 Ai=∫abli(x)dx ,则此求积公式是插值型的
定理:求积公式 ∫abf(x)dx≈∑i=0nAif(xi) 至少具有 n 次代数精度的充要条件是它是插值型的
证明
⇒
因为 ∫abf(x)dx≈i=0∑nAif(xi) 至少具有 n 次精度,所以它对所有次数小于等于 n 次的多项式准确成立
则以 x0,x1,..,xn 为插值节点的 Lagrange 插值基函数 li(x) 是个 n 次多项式,准确成立
∫abf(x)dx=i=0∑nAili(x)
因为
li(x)={10i=ji=j
则
∫abf(x)dx=Ai
⇐
因为对于任意次数小于等于 n 的多项式 f(x) ,其 n 次插值多项式 p(x) 就是其自身(因为 f(n+1)(x)=0)
所以插值型的求积公式对于一切次数小于等于 n 的多项式准确成立
# Newton-Cotes 求积公式
如果将积分区间 [a,b] 分成 n 等份,其求积节点 xi 为 xi=a+ih,i=0,1,2,...,n,h=nb−a 表示各等分小区间的宽度
∫abf(x)dx=∫abpn(x)dx=i=0∑n[f(xi)∫abli(x)dx]=(b−a)i=0∑n[b−a∫abli(x)dx⋅f(xi)]
科特斯系数:
Ci=b−a∫abli(x)dx
因为 x=a+th
x=a→t=0x=b→t=ndx=hdtb−a=nh
所以 Ci 可以化简为
Ci=nh1∫0n[j=0,j=i∏nxi−xjx−xj]dx=nh1∫0n[j=0,j=i∏n(a+ih)−(a+jh)(a+th)−(a+jh)]dx=n1∫0nj=0,j=i∏ni−jt−jdt=n×i!×(n−i)!(−1)n−i∫0n[j=0,j=i∏n(t−h)]dt
![]()
# 牛顿 - 科特斯公式的稳定性
考虑计算 f(xi) 时产生的舍入误差 εi
∫abf(x)dx≈(b−a)i=0∑nCi[f(xi)+εi]
则由舍入误差引起的积分误差为:
ε=(b−a)i=0∑nCi[f(xi)+εi]−(b−a)i=0∑nCif(xi)=(b−a)i=0∑nCiεi
记 εmax=max∣εi∣
∣ε∣=∣(b−a)i=0∑nCiεi∣≤(b−a)i=0∑n∣Ciεi∣=(b−a)i=0∑n∣Ci∣∣εi∣≤(b−a)εmaxi=0∑n∣Ci∣
当 n≤7 时, Ci 皆为正,故:∑i=0n∣Ci∣=∑i=0nCi=0
∣ε∣≤(b−a)εmax
→ 由舍入误差引起的积分误差有上界
当 n≥8 时, Ci 出现负数, 故:∑i=0n∣Ci∣ 随着 n 的增大而不断增大
→ 由舍入误差引起的积分误差无上界
** 总结:** 高阶的牛顿 - 科特斯求积公式不是数值稳定的,所以不宜采用
# 公式的分类
梯形公式
几何意义:用四边形梯形的面积近似替代 y=f(x) 围成的曲边梯形的面积
![]()
辛普森公式
几何意义:用抛物线 y=p2(x) 围成的曲边梯形面积近似替代 y=f(x) 围成的曲边梯形的面积
![]()
科特斯公式
由四次 Lagrange 插值式推导而得得求积公式
∫abf(x)dx≈(b−a)×907f(x0)+32f(x1)+12f(x2)+32f(x3)+7f(x4)
# 公式的余项
# 牛顿 - 科特斯公式的余项
R=∫ab(n+1)!f(n+1)(ξ)w(x)dx
令 x=a+th
R=∫0n(n+1)!f(n+1)(ξ)(a+th−a−0h)(a+th−a−1h)...(a+th−a−nh)hdt=(n+1)!hn+2∫0nf(n+1)(ξ)j=0∏n(t−j)dt
定理:当 n 为偶数时,n 阶 Newton-Cotes 求积公式得代数精度至少是 n+1
证明
记 n+1 次多项式为
qn+1(x)=k=0∑n+1bkxk
其 n+1 阶导数为
qn+1(x)(n+1)=bn+1(n+1)!
则
R=(n+1)!hn+2∫0nbn+1(n+1)!j=0∏n(t−j)dt=bn+1hn+2∫0n(t−0)(t−1)....(t−n)dt
令 n=2k,u=t−k
R=bn+1hn+2∫−kk(u+k)(u+k−1)...u(u−k+1)(u−k)du
令
H(u)H(−u)=(u+k)(u+k−1)...(u−k+1)(u−k)=(−u+k)(−u+k−1)...(−u−k+1)(−u−k)=(−1)2k+1H(u)=−H(u)
所以 H(u) 是奇函数 ∫−kkH(u)=0
R=0
# 梯形公式的余项
设 f(x) 在 [a,b] 上由二阶连续导数
RT=(1+1)!h1+2∫01f(1+1)(ξ)(t−0)(t−1)dt=2h3∫01f′′(ξ)t(t−1)dt=−12h3f′′(η)
其中 h=b−a
# 辛普森公式的余项
设 f(x) 在 [a,b] 上有四阶连续导数
因为辛普森公式具有三次代数精度,所以只需将 f(x) 表示成某个三次插值多项式与其余项的和,然后再求积分即可知道辛普森公式的余项
设 p3(x) 是三次多项式且满足
p3(a)=f(a),p3(2a+b)=f(2a+b),p3(b)=f(b)p3′(2a+b)=f′(2a+b)
对于 Hermite 插值,如果插值多项式 Hn(x) 在 n+1 个节点(包括重复节点)上满足函数值和导数值条件,那么截断误差的一般形式为:
Rn(x)=f(x)−Hn(x)=(n+1)!f(n+1)(ξ)i=0∏n(x−xi)mi
其中:
- xi 是插值节点,mi 是节点 xi 的重数(函数值条件计为 1 次,导数值条件每增加一阶导数,重数加 1)。
- ξ 是依赖于 x 的某个点,位于包含 x 和所有插值节点的最小区间内。
三次 Hermite 插值多项式的截断误差为:
R3(x)=4!f(4)(ξ)(x−a)(x−2a+b)2(x−b)
所以
R=∫abf(x)dx−∫abp3(x)dx=∫abf(x)dx−61(b−a)[f(a)+4f(2a+b)+f(b)]=∫ab4!f(4)(ξ)(x−a)(x−2a+b)2(x−b)dx
积分中值定理:
设 f(x) 在区间 [a,b] 上连续,g(x) 在 [a,b] 上不变号,则存在一点 η∈[a,b],使得:
∫abf(x)g(x)dx=f(η)∫abg(x)dx.
说明:
- 连续性:f(x) 在闭区间 [a,b] 上连续,确保其能取到最大值、最小值及所有中间值。
- 不变号:g(x)≥0 或 g(x)≤0 恒成立,保证积分值的符号一致性。
- 几何意义:加权平均值 f(η) 是函数 f(x) 在权重 g(x) 下的 “代表值”。
因为 x∈[a,b],所以 (x−a)(x−b)≤0,所以 (x−a)(x−2a+b)2(x−b) 不变号
由积分中值定理得
R=4!f(4)(η)∫ab(x−a)(x−2a+b)2(x−b)dx=−901(2b−a)5f(4)(η)
# 复化求积
概念:将积分区间分成若干个小区间,在每个小区间上采用次数不高的插值多项式去替代被积函数,构造出相应得求积公式,然后再把它们加起来作为整个积分区间上的求积公式,就是复化求积
# 复化梯形
∫abf(x)dx=2h[f(a)+2i=0∑n−1f(xk)+f(b)]
![]()
# 复化辛普森公式
∫abf(x)dx=3h[f(a)+4k=1∑mf(x2k−1)+2k=1∑m−1f(x2k)+f(b)]
![]()
# 复化 Cotes 公式
![]()
# 复化求积的截断误差
# 复化梯形的截断误差
RT=−121nh3f′′(η),η∈[a,b]
# 复化辛普森公式的截断误差
RS=−90(n/2)h5f(4)(η),η∈[a,b]
# 步长的自动选取
小区间 [xi,xi+1],记小区间中点: x_{i+\frac{1}{2}}=\frac{x_i+x_{i+1}}
区间二分前、后的积分值分别记为 T_{i1},T_
Ti1Ti2T2n=2h[f(xi)+f(xi+1)]=2h/2[f(xi)+f(xi+21)]+2h/2[f(xi+21)+f(xi+1)]=21Ti1+2hf(xi+21)=i=0∑n−1Ti2=21i=0∑n−1Ti1+2hi=0∑n−1f(xi+21)=21Tn+2hi=0∑n−1f(xi+21)
# 龙贝格(Romberg)求积公式
复化梯形求积,积分区间分为 n 等分时的截断误差为:
I−Tn=−12h2(b−a)f′′(η)=−12h2∫abf′′(x)dx=−12h2[f′(b)−f′(a)]
其中 h=\frac{b-a}
显然
I−Tn∝h2
所以
I−T2n=41(I−Tn)
化简可得
I−T2n≈31(T2n−Tn)
叠加上误差,可得到比 T2n 更精确的积分值
Tˉ=T2n+31(T2n−Tn)=34T2n−31Tn
经化简得
34T2n−31Tn=S2n
化简过程
34T2n31TnTˉ=34⋅2h/2[f(a)+2i=0∑n−1f(xi+21)+2i=1∑n−1f(xi)+f(b)]=6h[2f(a)+4i=0∑n−1f(xi+21)+4i=1∑n−1f(xi)+2f(b)]=31⋅2h[f(a)+2i=1∑n−1f(xi)+f(b)]=6h[f(a)+2i=1∑n−1f(xi)+f(b)]=34T2n−31Tn=6h[f(a)+4i=0∑n−1f(xi+21)+2i=1∑n−1f(xi)+f(b)]=S2n
根据上述公式,我们可以总结出
T2n=2Tn+2hi=1∑n−1f(xi+21)
其中 h 表示二分前的步长,f(xi+21) 表示二分节点的值