跳转至

7.4.5 误差分析与精度改进

理解欧拉方法的累积误差特性,认识减小步长可以提高精度但增加计算量

定义

欧拉方法的误差分析是指对数值求解微分方程过程中产生的误差进行定量评估和控制的方法。欧拉方法在每一步都会产生两种误差:(1) 局部截断误差(Local Truncation Error):在单一步骤中由泰勒级数截断产生的误差,对于欧拉方法约为 \(O(h^2)\);(2) 全局误差(Global Error):从初始点到某一点的累积误差,约为 \(O(h)\)。其中 \(h\) 是步长。减小步长 \(h\) 可以显著降低误差,但会增加计算步数和计算量。误差与步长的关系遵循 \(E \approx C \cdot h\)(其中 \(C\) 是常数),因此步长减半可使全局误差约减半。

核心公式

  • \(["\)y_{n+1} = y_n + h \cdot f(x_n, y_n)\(", "\)\text{局部截断误差} = \frac{y''(\xi)}{2}h^2, \quad \xi \in (x_n, x_{n+1})\(", "\)\text{全局误差} \approx \frac{M}{2L}(e^{L(x-x_0)} - 1) \cdot h\(", "\)\text{误差界} \leq \frac{hM}{2L}(e^{L(x_n-x_0)} - 1)\(", "\)\text{步数} = N = \frac{x_f - x_0}{h}\("]\)

易错点

  • ⚠️ 混淆局部截断误差和全局误差的阶数:局部截断误差是 \(O(h^2)\),但全局误差是 \(O(h)\),因为误差会在多步中累积
  • ⚠️ 错误地认为减小步长总是最优选择:虽然减小步长能降低误差,但会大幅增加计算量,在实际应用中需要在精度和计算效率之间权衡
  • ⚠️ 忽视初值条件对误差的影响:全局误差不仅取决于步长,还取决于微分方程的性质(如Lipschitz常数 \(L\))和初值的精度
  • ⚠️ 在计算误差界时错误地应用公式:学生常常忘记误差界是关于步长 \(h\) 的函数,而不是关于步数 \(N\) 的直接函数