Skip to content

离散化误差与截断误差

Discretization error · Truncation error

区分连续问题的离散缺陷与离散解的全局误差,并说明一致性为何不能单独保证收敛。

形式陈述

设连续问题写成

Lu=g,

其中 u 属于连续函数空间。取离散参数 h>0 后,以有限维空间中的算子 Lh 和数据 gh 构造离散问题

Lhuh=gh.

限制算子 Rh 把连续函数的相关信息采样到离散空间,重构算子 Ph 则把离散向量解释为连续对象。二者不能省略:网格节点值、单元平均和有限元系数代表不同的数据,不能直接与 u 相减。

把精确连续解代入离散方程后留下的缺陷称为截断误差或一致性误差:

τh=Lh(Rhu)gh.

若在指定离散范数下 τh0,称离散格式与连续方程一致。具体领域有时会把缺陷除以一步长度或网格尺度后再命名为“局部截断误差”,所以引用阶数时必须同时写出采用的定义。

离散方程实际解出的 uh 与真解之间的全局离散误差可写为

eh=Phuhu,

或在离散空间中比较 uhRhu。它不等于局部缺陷。在线性情形,形式上有

uhRhu=Lh1τh,

因此只有当离散逆算子在所选范数中受到一致控制时,局部缺陷趋零才能推出全局误差趋零。这个控制通常被称为稳定性;一致性说明方程近似得对,稳定性说明局部缺陷不会被离散求解过程无限放大。

离散化误差还要与其他误差层分开。迭代求解器未把离散系统解到底,产生迭代误差;机器运算改变了离散算法,产生舍入误差;原始数据可能已有测量或表示误差。网格收敛只研究 h0 时离散模型逼近连续模型的行为,不自动覆盖这些误差。

直觉

连续问题像一条完整曲线,离散化只保留有限个观察位置或有限个基函数系数。截断误差问的是:如果把真正的曲线拿到这套有限规则上检查,它违背规则多少?全局误差问的是:真正解出有限规则后,再把所得对象放回连续世界,它离原曲线多远?

一条规则在每个局部都只犯小错,仍可能在传播过程中把这些小错累积或放大。反过来,一个局部阶数不高的规则也可能因结构稳定而给出可用的全局结果。因此“Taylor 展开剩余项很小”只是分析的开端,不是收敛结论。

例子与边界

前向差分用

Dh+f(x)=f(x+h)f(x)h

近似 f(x)。由Taylor 定理,若 f 在邻域内二阶可微,则存在 ξh 介于 xx+h 之间,使

Dh+f(x)f(x)=h2f(ξh).

f 一致有界时,该离散化的截断误差为 O(h)。这里的“截断”来自有限差分公式省略了更高阶变化,并不要求函数先写成一条收敛无穷级数。

有限精度下,差分分子还会相减两个接近的函数值。一个简化的总误差模型是

E(h)C1h+C2uh.

减小 h 起初会压低截断误差,继续减小时,舍入和函数求值误差经 1/h 放大,误差曲线便可能反弹。这个现象说明网格加密必须做 sweep 并报告误差定义,不能把“h 越小越好”当作无限成立的规则。

时间步进中还会出现另一层区别:一步从精确状态出发造成的局部误差常为 O(hp+1),在固定时间区间累计许多步后,全局误差通常只有 O(hp)。具体降阶需要稳定性和正则性条件,不能从局部指数直接抄到全局结论。

“截断误差”也不是机器把数值截到固定字长产生的误差。后者属于有限表示或舍入;若两者混用,就无法解释加密网格后误差先降后升的两种机制。

推论与应用

有限差分、数值求积、常微分方程步进和偏微分方程离散都应从本页复用“限制—离散算子—重构”的结构,再各自指定范数、光滑性和局部尺度。序列收敛提供 h0 的极限语言,但收敛阶还取决于误差怎样随 h 缩放。

实验报告至少应区分离散化误差、迭代残差和舍入平台期。若使用高精度参考解,也要说明它如何得到;若只比较相邻网格结果,则所得量是误差估计,不应未经额外论证就写成真误差。

参考资料
  • NIST Digital Library of Mathematical Functions, Chapter 3: Numerical Methods.
  • MIT OpenCourseWare, 18.330, Introduction to Numerical Analysis, finite-difference and error-analysis notes.
  • Lloyd N. Trefethen, Finite Difference and Spectral Methods for Ordinary and Partial Differential Equations, 1996.