MathLabs
定理已证明

欧拉法的整体误差界

命题陈述

设f(t,y)f(t,y)关于yy是利普希茨连续的,利普希茨常数为LL,且精确解在[t0,T][t_0, T]上满足∣y′′(t)∣≤M|y''(t) | \le M。那么步长为hh、共nn步之后的整体误差en=y(tn)−yne_n = y(t_n) - y_n满足∣en∣≤hM2L(eL(tn−t0)−1)|e_n| \le \frac{hM}{2L}\left(e^{L(t_n-t_0)}-1\right)。

为什么成立?

每一步欧拉法都会因把泰勒级数截断到一次项而产生大小为O(h2)O(h^2)的局部误差,而到达固定时刻TT大约需要(T−t0)/h(T-t_0)/h步,这些局部误差可能不断累积。该定理说明这种累积并不严重:利普希茨条件保证微小的局部误差不会以快于指数的速度被放大,因此整体误差只降为关于步长的一阶量O(h)O(h)——比局部误差低一阶,这是单步法的典型规律。

证明思路

把一步中产生的局部误差写成用泰勒展开推进的精确解与欧拉更新之差。泰勒定理给出对某个介于tnt_n与tn+1t_{n+1}之间的ξn\xi_n有y(tn+1)=y(tn)+hf(tn,y(tn))+h22y′′(ξn)y(t_{n+1}) = y(t_n) + h f(t_n, y(t_n)) + \frac{h^2}{2} y''(\xi_n)成立,于是局部截断误差为τn=h22y′′(ξn)\tau_n = \frac{h^2}{2} y''(\xi_n),由假设∣y′′(t)∣≤M|y''(t) | \le M可知它被h2M2\frac{h^2 M}{2}所界定。

从这个精确的泰勒展开中减去欧拉更新yn+1=yn+hf(tn,yn)y_{n+1} = y_n + h f(t_n, y_n)。记en=y(tn)−yne_n = y(t_n) - y_n,两边之差给出en+1=en+h[f(tn,y(tn))−f(tn,yn)]+τne_{n+1} = e_n + h\left[f(t_n, y(t_n)) - f(t_n, y_n)\right] + \tau_n。利普希茨条件把方括号中的项界定为L∣en∣L|e_n|,于是∣en+1∣≤(1+hL)∣en∣+h2M2|e_{n+1}| \le (1+hL)|e_n| + \frac{h^2 M}{2}。

由于e0=0e_0 = 0(初值是精确的),用归纳法展开这个递推式,利用等比数列求和公式得到∣en∣≤h2M2∑k=0n−1(1+hL)k=hM2L[(1+hL)n−1]|e_n| \le \frac{h^2M}{2}\sum_{k=0}^{n-1}(1+hL)^k = \frac{hM}{2L}\left[(1+hL)^n - 1\right]。最后,由于对任意实数xx都有1+x≤ex1+x\le e^x,所以(1+hL)n≤eLhn=eL(tn−t0)(1+hL)^n \le e^{Lhn} = e^{L(t_n-t_0)},这就把上界变成了∣en∣≤hM2L(eL(tn−t0)−1)|e_n| \le \frac{hM}{2L}\left(e^{L(t_n-t_0)}-1\right)——恰好是所要证明的不等式,并且当tnt_n固定时显然是O(h)O(h)。

用到此定理的主题

分步证明

该定理暂无分步证明。

参考文献

  1. J. C. Butcher (2016). Numerical Methods for Ordinary Differential Equations
  2. E. Hairer, S. P. Norsett, G. Wanner (1993). Solving Ordinary Differential Equations I: Nonstiff Problems