首页 理论教育 高效解法:谱方法原理与实现

高效解法:谱方法原理与实现

时间:2023-10-31 理论教育 版权反馈
【摘要】:若使用右端点计算矩形面积并取近似:然后用un和un+1近似代替u和u,则:un+1=un+hf 得到的正是隐式欧拉法。不难发现,它其实就是欧拉法和隐式欧拉法的平均。欧拉法虽然精度偏低,但它是显式的,可直接得到结果。综合这两种方法,可以相得益彰:先用显式却低精度的欧拉法计算得到一个粗略的预测值ūn+1,再将这个预测值ūn+1代入梯形公式进行修正,得到较高精度的结果un+1。这就是预测-校正法,也称为改进的欧拉法。

高效解法:谱方法原理与实现

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

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

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

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

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

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

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

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

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

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

假设式(1-29)等号右边有un=u(xn)、un+1=u(xn+1),并利用u′(x)=f(x,u),得:(www.xing528.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阶,证明从略。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈