1.1.3  改进的欧拉法

更新于 2026年10月10日 版权声明
1.1.3 改进的欧拉法

对式(1-1)中的第1个式子在[xn,xn+1]上积分,可得:

图示

其中,n=0,1,…。用不同方式来近似上式中的积分运算,就会得到不同的递推公式。比如使用左端点计算矩形面积并取近似:

图示

然后用un和un+1近似代替u(xn)和u(xn+1),则式(1-23)变成:

un+1=un+hf(xn,un) (1-25)

这恰好就是欧拉法。若使用右端点计算矩形面积并取近似:

图示

然后用un和un+1近似代替u(xn)和u(xn+1),则:

un+1=un+hf(xn+1,un+1) (1-27)

得到的正是隐式欧拉法。若使用梯形的面积做近似:

图示

再用un和un+1近似代替u(xn)和u(xn+1),得:

图示

上式称为梯形公式(trapezoidalrule)。不难发现,它其实就是欧拉法和隐式欧拉法的平均。由于用梯形面积近似积分比用矩形面积近似积分的精度要高,所以梯形公式也要比欧拉法和隐式欧拉法的精度更高,证明如下:

假设式(1-29)等号右边有un=u(xn)、un+1=u(xn+1),并利用u′(x)=f(x,u),得:(https://www.daowen.com)

图示

将上式中的u′(xn+1)在xn处泰勒展开:

图示

将u(xn+1)在xn处泰勒展开:

图示

式(1-32)与式(1-31)相减得:

u(xn+1)-un+1=O(h3) (1-33)

因此,梯形公式的精度为2阶。

欧拉法虽然精度偏低,但它是显式的,可直接得到结果。而梯形公式是隐式的,虽然精度较高,却无法通过一步计算得到结果,若用迭代法计算,运算量非常大。综合这两种方法,可以相得益彰:先用显式却低精度的欧拉法计算得到一个粗略的预测值ūn+1,再将这个预测值ūn+1代入梯形公式进行修正,得到较高精度的结果un+1。这就是预测-校正法(predictor­corrector method),也称为改进的欧拉法。它的过程可表示如下:

图示

式(1-34)中,前一步为预测过程,后一步为校正过程。它也可以写成嵌套形式,即显式形式:

图示

或写成平均化的形式:

图示

显然,它的不同表达式——式(1-34)、式(1-35)、式(1-36)都是等价的,其精度是2阶,证明从略。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)