欢迎来到天天文库
浏览记录
ID:39506369
大小:647.60 KB
页数:37页
时间:2019-07-04
《《常微分方程数值解》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第9章常微分方程数值解法9.1引言实际中,很多问题的数学模型都是微分方程。我们可以研究它们的一些性质。但是,只有极少数特殊的方程有解析解。对于绝大部分的微分方程是没有解析解的。常微分方程作为微分方程的基本类型之一,在自然界与工程界有很广泛的应用。很多问题的数学表述都可以归结为常微分方程的定解问题。很多偏微分方程问题,也可以化为常微分方程问题来近似求解。本章讨论常微分方程的数值解法9.1Euler方法对于一个常微分方程:通常会有无穷个解。如:因此,我们要加入一个限定条件。通常会在端点出给出,如下面的初值问题:为了使解存在唯一,
2、一般,要加限制条件在f上,要求f对y满足Lipschitz条件:要计算出解函数y(x)在一系列节点a=x03、方程出发,建立求格点函数的差分方程。这个方程应该满足:A、解存在唯一;B、稳定,收敛;C、相容数值方法,主要研究步骤②,即如何建立差分方程,并研究差分方程的性质。这种方法,称为数值离散方法。求的是在一系列离散点列上,求未知函数y在这些点上的值的近似。我们的目的,就是求这个格点函数为了考察数值方法提供的数值解,是否有实用价值,需要知道如下几个结论:①步长充分小时,所得到的数值解能否逼近问题的真解;即收敛性问题②误差估计产生得舍入误差,在以后得各步计算中,是否会无限制扩大;稳定性问题做等距分割,利用数值微分代替导数项,建立差分方4、程。1、向前差商公式所以,可以构造差分方程称为局部截断误差。显然,这个误差在逐步计算过程中会传播,积累。因此还要估计这种积累欧拉法定义在假设yi=y(xi),即第i步计算是精确的前提下,考虑的截断误差Ri=y(xi+1)yi+1称为局部截断误差/*localtruncationerror*/。定义若某算法的局部截断误差为O(hp+1),则称该算法有p阶精度。欧拉法的局部截断误差:欧拉法具有1阶精度。欧拉公式的改进:隐式欧拉法/*implicitEulermethod*/向后差商近似导数x0x1))(,()(1101x5、yxfhyxy+)1,...,0(),(111-=+=+++niyxfhyyiiii由于未知数yi+1同时出现在等式的两边,不能直接得到,故称为隐式/*implicit*/欧拉公式,而前者称为显式/*explicit*/欧拉公式。一般先用显式计算一个初值,再迭代求解。隐式欧拉法的局部截断误差:即隐式欧拉公式具有1阶精度。例5.1用欧拉法求初值问题当h=0.02时在区间[0,0.10]上的数值解。方程真解:nxnyny(xn)n=y(xn)-yn001.00001.0000010.020.98200.98250.00056、20.040.96500.96600.000530.060.94890.95030.001440.080.93360.93540.001850.100.91920.9230.0021梯形公式/*trapezoidformula*/—显、隐式两种算法的平均注:有局部截断误差,即梯形公式具有2阶精度,比欧拉方法有了进步。但注意到该公式是隐式公式,计算时不得不用到迭代法,其迭代收敛性与欧拉公式相似。中点欧拉公式/*midpointformula*/中心差商近似导数x0x2x1假设,则可以导出即中点公式具有2阶精度。需要2个初值7、y0和y1来启动递推过程,这样的算法称为双步法/*double-stepmethod*/,而前面的三种算法都是单步法/*single-stepmethod*/。方法显式欧拉隐式欧拉梯形公式中点公式简单精度低稳定性最好精度低,计算量大精度提高计算量大精度提高,显式多一个初值,可能影响精度使用梯形公式计算时,常采用Euler方法提供迭代初值,则梯形法的迭代公式为:分析迭代过程的收敛性,可得于是有梯形方法虽然提高了精度,但算法复杂,在应用迭代公式进行实际计算的时候,每迭代一次,都要重新计算函数值,而迭代又要反复进行若干次,计算8、量很大,而且往往难以预测。为了控制计算量,通常只迭代一两次就转入下一步计算,从而简化算法。改进欧拉法/*modifiedEuler’smethod*/Step1:先用显式欧拉公式作预测,算出),(1iiiiyxfhyy+=+Step2:再将代入隐式梯形公式的右边作校正,得到1+iy)],
3、方程出发,建立求格点函数的差分方程。这个方程应该满足:A、解存在唯一;B、稳定,收敛;C、相容数值方法,主要研究步骤②,即如何建立差分方程,并研究差分方程的性质。这种方法,称为数值离散方法。求的是在一系列离散点列上,求未知函数y在这些点上的值的近似。我们的目的,就是求这个格点函数为了考察数值方法提供的数值解,是否有实用价值,需要知道如下几个结论:①步长充分小时,所得到的数值解能否逼近问题的真解;即收敛性问题②误差估计产生得舍入误差,在以后得各步计算中,是否会无限制扩大;稳定性问题做等距分割,利用数值微分代替导数项,建立差分方
4、程。1、向前差商公式所以,可以构造差分方程称为局部截断误差。显然,这个误差在逐步计算过程中会传播,积累。因此还要估计这种积累欧拉法定义在假设yi=y(xi),即第i步计算是精确的前提下,考虑的截断误差Ri=y(xi+1)yi+1称为局部截断误差/*localtruncationerror*/。定义若某算法的局部截断误差为O(hp+1),则称该算法有p阶精度。欧拉法的局部截断误差:欧拉法具有1阶精度。欧拉公式的改进:隐式欧拉法/*implicitEulermethod*/向后差商近似导数x0x1))(,()(1101x
5、yxfhyxy+)1,...,0(),(111-=+=+++niyxfhyyiiii由于未知数yi+1同时出现在等式的两边,不能直接得到,故称为隐式/*implicit*/欧拉公式,而前者称为显式/*explicit*/欧拉公式。一般先用显式计算一个初值,再迭代求解。隐式欧拉法的局部截断误差:即隐式欧拉公式具有1阶精度。例5.1用欧拉法求初值问题当h=0.02时在区间[0,0.10]上的数值解。方程真解:nxnyny(xn)n=y(xn)-yn001.00001.0000010.020.98200.98250.0005
6、20.040.96500.96600.000530.060.94890.95030.001440.080.93360.93540.001850.100.91920.9230.0021梯形公式/*trapezoidformula*/—显、隐式两种算法的平均注:有局部截断误差,即梯形公式具有2阶精度,比欧拉方法有了进步。但注意到该公式是隐式公式,计算时不得不用到迭代法,其迭代收敛性与欧拉公式相似。中点欧拉公式/*midpointformula*/中心差商近似导数x0x2x1假设,则可以导出即中点公式具有2阶精度。需要2个初值
7、y0和y1来启动递推过程,这样的算法称为双步法/*double-stepmethod*/,而前面的三种算法都是单步法/*single-stepmethod*/。方法显式欧拉隐式欧拉梯形公式中点公式简单精度低稳定性最好精度低,计算量大精度提高计算量大精度提高,显式多一个初值,可能影响精度使用梯形公式计算时,常采用Euler方法提供迭代初值,则梯形法的迭代公式为:分析迭代过程的收敛性,可得于是有梯形方法虽然提高了精度,但算法复杂,在应用迭代公式进行实际计算的时候,每迭代一次,都要重新计算函数值,而迭代又要反复进行若干次,计算
8、量很大,而且往往难以预测。为了控制计算量,通常只迭代一两次就转入下一步计算,从而简化算法。改进欧拉法/*modifiedEuler’smethod*/Step1:先用显式欧拉公式作预测,算出),(1iiiiyxfhyy+=+Step2:再将代入隐式梯形公式的右边作校正,得到1+iy)],
此文档下载收益归作者所有