本文由手写笔记《高级数值分析》扫描件的 LaTeX 转录稿改写而来,忠实保留原稿的文字与公式。
2.1 数值积分概述
2.1.1 机械求积公式
设
I(f)=∫abf(x)dx.
机械求积公式用有限个节点上的函数值近似积分:
In(f)=i=0∑nAif(xi),Rn(f)=I(f)−In(f).
若对所有次数不超过 m 的多项式 p 都有 Rn(p)=0,则称该求积公式具有 m 阶代数精度(或代数精度为 m)。求积公式的稳定性可表述为:对任意 ε>0,存在 δ>0,使得
∣f(xi)−f(xi)∣≤δ(i=0,…,n)⟹∣In(f)−In(f)∣≤ε.
此外,求积公式的收敛性定义为
n→∞limRn(f)=0.
若各节点误差满足 ∣f(xi)−f(xi)∣≤δ,则有更具体的稳定性估计
∣In(f)−In(f)∣≤δi=0∑n∣Ai∣.
当 Ai≥0(所有求积系数非负)时,称该求积公式具有正性;正性通常保证了对节点函数值扰动的稳定响应。
2.1.2 插值型求积公式
取节点 x0,…,xn,以 Lagrange 插值多项式近似 f:
f(x)≈Ln(x)=i=0∑nf(xi)ℓi(x),ℓi(x)=j=i∏xi−xjx−xj.
积分得到插值型求积公式
In(f)=i=0∑nAif(xi),Ai=∫abℓi(x)dx.
其余项为
Rn(f)=∫abf(x)dx−i=0∑nAif(xi)=(n+1)!1∫abf(n+1)(ξx)Wn+1(x)dx,
其中
Wn+1(x)=i=0∏n(x−xi).
2.1.3 Newton–Cotes 求积公式
低阶 Newton–Cotes 公式为
∫abf(x)dx≈2b−a[f(a)+f(b)](n=1),
以及
∫abf(x)dx≈6b−a[f(a)+4f(2a+b)+f(b)](n=2).
当 Newton–Cotes 公式的阶数继续增加时,误差并不一定单调减小;高阶情形可能出现 Runge 现象,通常 n≥8 时数值稳定性变差甚至不收敛。
2.2 Gauss 求积
Gauss 型求积公式写为
∫abρ(x)f(x)dx≈i=1∑nAif(xi),
其中节点 xi 取为关于权函数 ρ 的 n 次正交多项式 pn 的零点。由于
∫abρ(x)p(x)pn(x)dx=0,degp≤n−1,
n 点 Gauss 公式具有 2n−1 阶代数精度。令
ℓi(x)=j=i∏xi−xjx−xj,Ai=∫abρ(x)ℓi(x)dx.
若 f∈C2n[a,b],则 Gauss 求积误差为
Rn(f)=(2n)!f(2n)(ξ)∫abρ(x)pn2(x)dx,ξ∈(a,b).
若采用笔记中的 n+1 个节点记号 x0,…,xn,则相应地写成
In(f)=i=0∑nAif(xi),degIn=2n+1,
并且 Gauss 节点的充要条件是
∫abρ(x)q(x)Wn+1(x)dx=0,q∈Pn,Wn+1(x)=i=0∏n(x−xi).
此时误差也可写为
Rn(f)=(2n+2)!f(2n+2)(ξ)∫abρ(x)Wn+12(x)dx.
2.2.1 Gauss–Legendre 求积
在 [−1,1] 上取 ρ(x)=1。两点 Gauss–Legendre 公式为
∫−11f(x)dx≈f(−31)+f(31),
三点公式为
∫−11f(x)dx≈95f(−53)+98f(0)+95f(53).
区间 [a,b] 可通过线性变换
t=b−a2(x−2a+b),[a,b]⟶[−1,1]
化为标准区间上的 Gauss–Legendre 求积。
2.2.2 含奇异性与权函数的积分
对于
I=∫abf(x)dx,f(x)=(x−a)pg(x),
可将 g(x) 在奇异点附近作 Taylor 展开,分解为可解析积分的部分与光滑余项,再分别计算:
g(x)=k=0∑p−1k!g(k)(a)(x−a)k+(x−a)pr(x),
从而将 f 分解为显式可积的奇异项与光滑函数 r(x):
I=∫abf(x)dx+∫abh(x)dx.
这种处理把奇异部分显式积分,而对剩余光滑函数使用常规求积公式。
对于带权积分
I=∫0+∞e−xf(x)dx,
可使用 Gauss–Laguerre 求积。三点 Gauss–Laguerre 节点为
x0=2−2,x1=2,x2=2+2,
(来自 L3(x) 的零点),从而
I≈42+2f(2−2)+21f(2)+42−2f(2+2).
2.3 振荡积分与 Filon 型方法
考虑振荡积分
∫abg(x)sin(mx)dx,∫abg(x)cos(mx)dx.
Filon 型方法用插值多项式 s(x)≈g(x),并对 s(x)sin(mx) 或 s(x)cos(mx) 作解析积分。以余弦积分为例,分部积分得到
∫abs(x)cos(mx)dx=[ms(x)sin(mx)+m2s′(x)cos(mx)−m3s′′(x)sin(mx)]ab+m31∫abs(3)(x)sin(mx)dx.
同理,正弦积分满足
∫abs(x)sin(mx)dx=[−ms(x)cos(mx)+m2s′(x)sin(mx)+m3s′′(x)cos(mx)]ab−m31∫abs(3)(x)cos(mx)dx.
当 m 较大时,积分余项很小,可以忽略;在每个小区间 [xi,xi+1] 上还可用
s(3)(x)≈hMi+1−Mi
作近似,其中 h=xi+1−xi。
2.4 高维数值积分
对区域
D={(x,y)∣a≤x≤b, c(x)≤y≤d(x)},
二重积分可写成累次积分
I=∬Df(x,y)dxdy=∫ab[∫c(x)d(x)f(x,y)dy]dx.
令
T(x)=∫c(x)d(x)f(x,y)dy.
对内层积分使用 Simpson 公式,记
hy(x)=d(x)−c(x),my(x)=2c(x)+d(x),
则
T(x)≈6hy(x)[f(x,c(x))+4f(x,my(x))+f(x,d(x))].
再对外层积分使用 Simpson 公式,令
hx=b−a,mx=2a+b,
可得
I=∫abT(x)dx≈6hx[T(a)+4T(mx)+T(b)].