计算方法B.裴玉茹.08.数值微分与积分(3)

  • 数值分析课本第 5 章(数值微分与积分) + PPT(数值微分与积分方法)

数值微分与积分方法

3. 龙贝格积分

  • 为了提高求定积分的精度,我们可以通过添加数据进行扩展
  • 龙贝格积分是对复合梯形法则应用外推的结果
    • 理查德森外推
  • 梯形法则的特殊性,误差没有奇数阶的导数,一次利用外推能够提高两阶精度
    • 抵消了
  • 梯形法则误差

abf(x)dx=h2(y0+ym+2i=1m1yi)+c2h2+c4h4+

描述

  • 需要近似的积分:M=abf(x)dx
  • 近似公式 Rj,1 表示使用步长为 hj 的复合梯形法则,hj 定义如下

hj=ba2j1

梯形法则

  • 给出复合梯形法则的递推形式
  • 原始梯形法则

R1,1=h12(f(a)+f(b))

  • 区间分为等长两段,使用复合梯形法则

R2,1=h22(f(a)+f(b)+2f(a+b2))=12R1,1+h2f(a+b2)

  • 归纳证明

Rj,1=12Rj1,1+hji=12j2f(a+(2i1)hj)

证明

  • 将两个小区间合并为一个大区间

Rj+1,1=12hj+1i=12j(f(a+(i1)hj+1)+f(a+ihj+1))=14hj(i=12j1(f(a+2(i1)hj+1)+f(a+2ihj+1)+2f(a+(2i1)hj+1)))=14hj(i=12j1(f(a+(i1)hj)+f(a+ihj)+2f(a+(2i1)hj+1)))=12Rj,1+14hj(i=12j1(2f(a+(2i1)hj+1)))=12Rj,1+hj+1(i=12j1(f(a+(2i1)hj+1)))

外推

  • 第 2 列是第 1 列的外推
  • 第 3 列是第 2 列的外推
  • Ri,j 是对 Ri1,j1 外推的结果

  • 根据理查德森外推的形式

Q2nF(h/2)F(h)2n1

  • 梯形法则精度是 1,是 2 阶近似

R2,2=22R2,1R1,1221=41R2,1R1,1411

R3,3=24R3,2R2,2241=42R2,1R1,1421

  • 一般化

Rj,k=4k1Rj,k1Rj1,k14k11

  • 外推结果 Rj,2 是辛普森法则
    • 精度为 3,是 4 阶近似
    • 可以看看 R2,2 既是辛普森法则,也是 R1,1 外推的结果
  • 最佳近似 Rj,j
    • 何时停止,Rj,jRj1,j1 的差距小于指定值

算法

4. 自适应积分

  • 固定步长的问题
    • 小步长对应更小的截断误差,对于给定容差我们可以通过误差公式确定步长 h
      • 但是公式中可能包含高阶导数,高阶导数可能无法计算,导致无法确定步长
    • 函数变化有的地方很缓,不需要很高的精度,有些地方变化陡,需要较高的精度
      • 不同地方精度需求不一致
  • 自适应步长

思路

  • 我们对当前区间使用梯形法则近似,然后进一步缩短步长,使用两个梯形近似
  • 计算这两次计算的误差之差,判断是否可以接受
  • 如果可以接受,则结束;如果不能接受,则进一步细分

推导

  • 3倍标准

  • 定理 5.1:加权中值

算法

高阶自适应积分

  • 辛普森法则替换梯形法则
  • 15 倍误差

5. 高斯积分

  • n 阶的牛顿-科特斯公式的精度为 nn 为奇数)和 n+1n 为偶数)
    • 但是这是均匀分布节点的情况下
  • 调整节点的位置,用于提高精度
  • 高斯积分精度:2n+1

正交多项式

  • abpi(x)pj(x)dx

  • 多项式基

    • 正交 线性无关

  • 多项式正交集合根定理

勒让德多项式

pi(x)=12ii!didxi[(x21)i]

  • pi(x),0in 在区间 [1,1] 上正交
  • 证明:暴算

高斯积分

  • 高斯积分把节点放置在勒让德多项式的根的位置上

  • Li(x)拉格朗日插值多项式

高斯积分的精度

  • 2n1

证明

  • 高斯积分的函数记作 f(x)
  • P(x) 为至多 2n1 阶的多项式,那么使用多项式长除法表示

P(x)=S(x)pn(x)+R(x)

  • pn(x)n勒让德多项式S(x)R(x) 均为小于 n 阶的多项式
  • 设插值点为 xi(1in),那么有 pn(xi)=0
  • P(xi)=S(xi)pn(xi)+R(xi)=R(xi)
  • 因此高斯积分的插值多项式插值了 R(x)
    • 其实 f(x) 就是 R(x)

11f(x)dx=11R(x)dx

  • S(x) 可以表示为 n1 阶勒让德多项式集合的线性组合,由正交性

11S(x)pn(x)dx=0

  • 那么

11P(x)dx=11S(x)pn(x)dx+11R(x)dx=11R(x)dx=11f(x)dx

区间变换

  • 一般问题积分区间为 [a,b],需要变换到 [1,1]

abf(x)dx=11f((ba)t+b+a2)ba2dt