第七章常微分方程数值解精选文档.ppt
《第七章常微分方程数值解精选文档.ppt》由会员分享,可在线阅读,更多相关《第七章常微分方程数值解精选文档.ppt(93页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第七章常微分方程数值解本讲稿第一页,共九十三页第七章第七章常微分方程的数值解法常微分方程的数值解法问题提出问题提出 倒葫芦形状容器壁上的刻度问题倒葫芦形状容器壁上的刻度问题.对于如图所示圆柱形状对于如图所示圆柱形状容器壁上的容积刻度容器壁上的容积刻度,可以利用圆柱体体积公式可以利用圆柱体体积公式其中直径其中直径D D为常数为常数.由于体积由于体积V V与相对于容器底部的任与相对于容器底部的任意高度意高度H H的函数关系明确的函数关系明确,因此在容器上可以方便地标因此在容器上可以方便地标出容器刻度出容器刻度,而对于几何形状不是规则的容器而对于几何形状不是规则的容器,比如倒比如倒葫芦形状容器壁上如
2、何标出刻度呢葫芦形状容器壁上如何标出刻度呢?下表是经过测量下表是经过测量得到部分容器高度与直径的关系得到部分容器高度与直径的关系.本讲稿第二页,共九十三页x1o根据上表的数据根据上表的数据,可以拟合出倒葫可以拟合出倒葫芦形状容器的图芦形状容器的图,建立如图所示的建立如图所示的坐标轴后坐标轴后,问题即为如何根据任意问题即为如何根据任意高度高度x x标出容器体积标出容器体积V V的刻度的刻度,由微由微元思想分析可知元思想分析可知H 0 0.2 0.4 0.6 0.8 1.0D 0.04 0.11 0.26 0.56 1.04 1.17其中其中x x表示高度表示高度,直径直径D D是高度是高度x x
3、的函数的函数,记为记为D(x),D(x),因此因此得到如下微分方程初值问题得到如下微分方程初值问题本讲稿第三页,共九十三页第七章第七章常微分方程的数值解法常微分方程的数值解法只要求解上述方程只要求解上述方程,就可求出体积就可求出体积V V与高度与高度x x之间的函数关之间的函数关系系,从而可标出容器壁上容积的刻度从而可标出容器壁上容积的刻度,但问题是但问题是(7.0)(7.0)中的中的函数函数D(x)D(x)无解析表达式无解析表达式,我们根本无法求出其解析解我们根本无法求出其解析解.怎样求解不能用解析方法求解的微分方程初制值怎样求解不能用解析方法求解的微分方程初制值问题问题,就是本章要讨论的重
4、点就是本章要讨论的重点.(7.0)本讲稿第四页,共九十三页第七章第七章常微分方程的数值解法常微分方程的数值解法7.1 7.1 引言引言 包含自变量、未知函数及未知函数的导数或微分的包含自变量、未知函数及未知函数的导数或微分的方程称为微分方程。在微分方程中方程称为微分方程。在微分方程中,自变量的个数只有自变量的个数只有一个一个,称为常微分方程。自变量的个数为两个或两个以称为常微分方程。自变量的个数为两个或两个以上的微分方程叫偏微分方程。微分方程中出现的未知函上的微分方程叫偏微分方程。微分方程中出现的未知函数最高阶导数的阶数称为微分方程的阶数。如果未知函数最高阶导数的阶数称为微分方程的阶数。如果未
5、知函数数y y及其各阶导数及其各阶导数都是一次的都是一次的,则称它是线性的则称它是线性的,否则称为非线性的。否则称为非线性的。本讲稿第五页,共九十三页 在高等数学中,对于常微分方程的求解,给出在高等数学中,对于常微分方程的求解,给出了一些典型方程求解析解的基本方法,如可分离变量了一些典型方程求解析解的基本方法,如可分离变量法、常系数齐次线性方程的解法、常系数非齐次线性法、常系数齐次线性方程的解法、常系数非齐次线性方程的解法等。但能求解的常微分方程仍然是有限的,方程的解法等。但能求解的常微分方程仍然是有限的,大多数的常微分方程是不可能给出解析解。大多数的常微分方程是不可能给出解析解。譬如譬如 这
6、个一阶微分方程就不能用初等函数及其积分来表这个一阶微分方程就不能用初等函数及其积分来表达它的解。达它的解。本讲稿第六页,共九十三页再如,方程再如,方程 的解的解 ,虽然有表可查虽然有表可查,但对于表但对于表上没有给出上没有给出 的值的值,仍需插值方法来计仍需插值方法来计算算本讲稿第七页,共九十三页从实际问题当中归纳出来的微分方程,通常主要依靠数值从实际问题当中归纳出来的微分方程,通常主要依靠数值解法来解决。本章主要讨论一阶常微分方程初值问题解法来解决。本章主要讨论一阶常微分方程初值问题(7.1)在区间在区间a x ba x b上的数值解法上的数值解法。可以证明可以证明,如果函数在带形区域如果函
7、数在带形区域 R=axb,R=axb,-y y内连续,且关于内连续,且关于y y满足李普希兹满足李普希兹(Lipschitz)(Lipschitz)条件,条件,即存在常数即存在常数L(L(它与它与x,yx,y无关无关)使使对对R内任意两个内任意两个 都成立都成立,则方程则方程(7.1)的解的解 在在 a,b 上存在且唯一。上存在且唯一。本讲稿第八页,共九十三页常微分方程表示方法常微分方程表示方法本讲稿第九页,共九十三页在微分方程中在微分方程中,自变量的个数只有一个自变量的个数只有一个,称为称为常微分方程常微分方程.自变量的个数为两个或两个以上的微分方程自变量的个数为两个或两个以上的微分方程叫偏
8、微分方程。叫偏微分方程。本讲稿第十页,共九十三页例如例如本讲稿第十一页,共九十三页当当x=0时时,y=1,可得可得c=1特解特解当当x=0时时,y=1,可得可得c=-1特解特解两边积分两边积分通解通解常微分方程解法回顾常微分方程解法回顾-本讲稿第十二页,共九十三页例:设降落伞从跳伞塔下落后,所受空气阻力与速度例:设降落伞从跳伞塔下落后,所受空气阻力与速度成正比,并设降落伞离开跳伞塔时(成正比,并设降落伞离开跳伞塔时(t=0)速度为)速度为零,求降落伞下落速度与时间的函数关系。零,求降落伞下落速度与时间的函数关系。解:设降落伞下落速度为解:设降落伞下落速度为v(t),降落伞在空中下落时,同时降落
9、伞在空中下落时,同时受到重力受到重力P与阻力与阻力R的作用,重力大小为的作用,重力大小为mg,方向与,方向与v一致;一致;阻力大小为阻力大小为kv(k为比例系数),方向与为比例系数),方向与v相反,从而降落相反,从而降落伞所受外力为伞所受外力为F=mg-kv根据牛顿第二定律根据牛顿第二定律F=ma(a为加速度),得函数为加速度),得函数v(t)应满足的方程为应满足的方程为按题意,初始条件为按题意,初始条件为分离变量后得分离变量后得两端积分两端积分考虑到考虑到mg-kv0即即或或将初始条件将初始条件代如入上式得代如入上式得于是所求特解为于是所求特解为本讲稿第十三页,共九十三页本讲稿第十四页,共九
10、十三页7.2数值方法的基本思想数值方法的基本思想 对常微分方程初值问题对常微分方程初值问题(7.1)式的数值解法,就是要式的数值解法,就是要算出精确解算出精确解y(x)y(x)在区间在区间 a,b 上的一系列离散节点上的一系列离散节点 处的函数值处的函数值 的近似值的近似值。相邻两个节点的间距。相邻两个节点的间距 称为步长,步称为步长,步长可以相等,也可以不等。本章总是假定长可以相等,也可以不等。本章总是假定h为定数,称为为定数,称为定步长定步长,这时节点可表示为,这时节点可表示为数值解法需要把连续性的问题加以离散化,从而求出数值解法需要把连续性的问题加以离散化,从而求出离散节点的数值解。离散
11、节点的数值解。本讲稿第十五页,共九十三页 对常微分方程数值解法的基本出发点就是离散化。对常微分方程数值解法的基本出发点就是离散化。其数值解法有两个基本特点,它们都采用其数值解法有两个基本特点,它们都采用“步进式步进式”,即求解过程顺着节点排列的次序一步一步地向前推进,即求解过程顺着节点排列的次序一步一步地向前推进,描述这类算法,要求给出用已知信息描述这类算法,要求给出用已知信息 计算计算 的递推公式。建立这的递推公式。建立这类递推公式的基本方法是在这些节点上用数值积分、类递推公式的基本方法是在这些节点上用数值积分、数值微分、泰勒展开等离散化方法,对初值问题数值微分、泰勒展开等离散化方法,对初值
12、问题中的导数中的导数 进行不同的离散化处理进行不同的离散化处理。本讲稿第十六页,共九十三页对于初值问题对于初值问题的数值解法,首先要解决的问题就是如何对微分方程的数值解法,首先要解决的问题就是如何对微分方程进行离散化,建立求数值解的递推公式。递推公式通进行离散化,建立求数值解的递推公式。递推公式通常有两类,一类是计算常有两类,一类是计算yi+1时只用到时只用到xi+1,xi和和yi,即前一即前一步的值,因此有了初值以后就可以逐步往下计算,此类方步的值,因此有了初值以后就可以逐步往下计算,此类方法称为单步法;其代表是法称为单步法;其代表是龙格龙格库塔法。另一类是计算库塔法。另一类是计算y yi+
13、1i+1时,除用到时,除用到x xi+1i+1,x,xi i和和y yi i以外,还要用到以外,还要用到,即前面,即前面k步的值,此类方法称为步的值,此类方法称为多步法多步法;其代表;其代表是亚当斯法。是亚当斯法。本讲稿第十七页,共九十三页7.3欧拉(欧拉(Euler)法)法7.3.1Euler公式公式 欧拉(欧拉(Euler)方法是解初值问题的最简单)方法是解初值问题的最简单的数值方法。初值问题的数值方法。初值问题的解的解y=y(x)y=y(x)代表通过点代表通过点 的一条称之为微的一条称之为微分方程的积分曲线。积分曲线上每一点分方程的积分曲线。积分曲线上每一点 的切线的斜率的切线的斜率 等
14、于函数等于函数 在这在这点的值。点的值。本讲稿第十八页,共九十三页Euler法的求解过程是法的求解过程是:从初始点从初始点P0(即点即点(x(x0 0,y,y0 0)出发出发,作积分曲线作积分曲线y=y(x)y=y(x)在在P0点上切线点上切线 (其斜率为其斜率为 ),),与与x=xx=x1 1直线直线相交于相交于P1点点(即点即点(x(x1 1,y,y1 1),),得到得到y y1 1作为作为y(xy(x1 1)的近似值的近似值,如上如上图所示。过点图所示。过点(x(x0 0,y,y0 0),),以以f(xf(x0 0,y,y0 0)为为斜率的切线方程为斜率的切线方程为 当当 时时,得得 这
15、样就获得了这样就获得了P P1 1点的坐标。点的坐标。本讲稿第十九页,共九十三页同样同样,过过点点P1(x x1 1,y,y1 1),),作积分曲线作积分曲线y=y(x)y=y(x)的切线的切线交直线交直线x=xx=x2 2于于P2点点,切线切线 的斜率的斜率 =直线方程为直线方程为当当 时时,得得 本讲稿第二十页,共九十三页当当 时时,得得由此获得了由此获得了P P2 2的坐标。重复以上过程的坐标。重复以上过程,就可获得一系列的就可获得一系列的点点:P P1 1,P P1 1,P Pn n。对已求得点对已求得点以以 =为斜率作直线为斜率作直线 取取本讲稿第二十一页,共九十三页 从图形上看从图
16、形上看,就获得了一条近似于曲线就获得了一条近似于曲线y=y(x)y=y(x)的折线的折线 。这样这样,从从x x0 0逐个算出逐个算出对应的数值解对应的数值解 本讲稿第二十二页,共九十三页通常取通常取 (常数常数),),则则Euler法的计算格式法的计算格式 i=0,1,n(7.2)还可用数值微分、数值积分法和泰勒展开法推导还可用数值微分、数值积分法和泰勒展开法推导EulerEuler格式。格式。以数值积分为例进行推导。以数值积分为例进行推导。将方程将方程 的两端在区间的两端在区间 上积分得,上积分得,选择不同的计算方法计算上式的积分项选择不同的计算方法计算上式的积分项 ,就会得到不同的计算公
17、式。就会得到不同的计算公式。(7.3)本讲稿第二十三页,共九十三页 公式推导本讲稿第二十四页,共九十三页 本讲稿第二十五页,共九十三页 用左矩形方法计算积分项用左矩形方法计算积分项 代入代入(7.3)(7.3)式式,并用并用y yi i近似代替式中近似代替式中y(xy(xi i)即可得到向前即可得到向前欧拉(欧拉(EulerEuler)公式)公式 由于数值积分的矩形方法精度很低,所以欧拉由于数值积分的矩形方法精度很低,所以欧拉(EulerEuler)公式当然很粗糙。)公式当然很粗糙。本讲稿第二十六页,共九十三页 本讲稿第二十七页,共九十三页例例7.1用欧拉法解初值问题用欧拉法解初值问题取步长取
18、步长h=0.2,h=0.2,计算过程保留计算过程保留4 4位小数位小数 解解:h=0.2,:h=0.2,欧拉迭代格式欧拉迭代格式 当当k=0,x1=0.2时,已知时,已知x0=0,y0=1,有,有y(0.2)y1=0.21(401)0.8当当k=1,x2=0.4时,已知时,已知x1=0.2,y1=0.8,有,有y(0.4)y2=0.20.8(40.20.8)0.6144当当k=2,x3=0.6时,已知时,已知x2=0.4,y2=0.6144,有,有y(0.6)y3=0.20.6144(4-0.40.6144)=0.4613本讲稿第二十八页,共九十三页例例7.2用用Euler法求初值问题法求初值
19、问题y=xy2y(0)=0的数值解的数值解(取取h=0.1n=5)解:解:f(x,y)=x-y2;x0=y0=0;h=0.1由由Euler法的递推公式得:法的递推公式得:yn+1=yn+0.1(xny2n)yn=0n=0,1,2,3,4,5由上式计算所得数据由上式计算所得数据n012345xn00.10.20.30.40.5yn000.010.029990.059990.0995本讲稿第二十九页,共九十三页二、隐式二、隐式Euler(尤拉尤拉)格式格式本讲稿第三十页,共九十三页7.3.2梯形公式梯形公式为了提高精度为了提高精度,对方程对方程 的两端在区间上的两端在区间上 积分得,积分得,改用梯
20、形方法计算其积分项,即改用梯形方法计算其积分项,即 (7.4)代入代入(7.4)(7.4)式式,并用近似代替式中即可得到梯形公式并用近似代替式中即可得到梯形公式 (7.5)由由于于数数值值积积分分的的梯梯形形公公式式比比矩矩形形公公式式的的精精度度高高,因因此此梯梯形公式(形公式(7.57.5)比欧拉公式)比欧拉公式(7.2)(7.2)的精度高一个数值方法。的精度高一个数值方法。本讲稿第三十一页,共九十三页(7.5)(7.5)式的右端含有未知的式的右端含有未知的y yi+1i+1,它是一个关于它是一个关于y yi+1i+1的函的函数方程数方程,这类数值方法称为这类数值方法称为隐式方法隐式方法。
21、相反地。相反地,欧拉法是欧拉法是关于关于y yi+1i+1的一个直接的计算公式,的一个直接的计算公式,这类数值方法称为这类数值方法称为显式方法。显式方法。本讲稿第三十二页,共九十三页例例7.3用梯形公式求下面初值问题的解用梯形公式求下面初值问题的解在在x=0.01上的值上的值y(0.01)y=yy(0)=1解:取解:取h=0.01,由梯形公式得由梯形公式得y=exe0.01=1.010050167本讲稿第三十三页,共九十三页7.3.3两步欧拉公式两步欧拉公式对方程对方程 的两端在区间上的两端在区间上 积分得积分得 (7.6)改用中矩形公式计算其积分项,即改用中矩形公式计算其积分项,即 代入上式
22、代入上式,并用并用y yi i近似代替式中近似代替式中y(xy(xi i)即可得到两步欧拉即可得到两步欧拉公式公式 (7.7)本讲稿第三十四页,共九十三页 前面介绍过的数值方法前面介绍过的数值方法,无论是欧拉方法无论是欧拉方法,还是梯形方法,它们都是单步法还是梯形方法,它们都是单步法,其特点是在计其特点是在计算算y yi+1i+1时只用到前一步的信息时只用到前一步的信息y yi i;可是公式可是公式(7.7)中除了中除了y yi i外外,还用到更前一步的信息还用到更前一步的信息y yi-1i-1,即调用了前两步的信息即调用了前两步的信息,故称其为两步欧拉公式故称其为两步欧拉公式本讲稿第三十五页
23、,共九十三页7.3.4欧拉法的局部截断误差欧拉法的局部截断误差衡衡量量求求解解公公式式好好坏坏的的一一个个主主要要标标准准是是求求解解公公式式的的精精度度,因此引入局部截断误差和阶数的概念。因此引入局部截断误差和阶数的概念。定定义义7.1在在yi准准确确的的前前提提下下,即即时时,用用数数值值方方法法计计算算yi+1的的误误差差,称称为为该该数数值值方方法法计计算算时时yi+1的的局局部截断误差。部截断误差。对于欧拉公式,假定对于欧拉公式,假定,则有,则有而将真解而将真解y(x)在在xi处按二阶泰勒展开处按二阶泰勒展开 因此有因此有 本讲稿第三十六页,共九十三页定定义义7.2数数值值方方法法的
24、的局局部部截截断断误误差差为为,则则称称这这种种数数值值方方法法的的阶阶数数是是P。步步长长(hN结束。结束。本讲稿第四十一页,共九十三页(2)改改进进欧欧拉拉法法的的流流程程图图 本讲稿第四十二页,共九十三页(3)3)程序实现程序实现(见附录见附录AA-15改进欧拉法计算常微改进欧拉法计算常微 分方程初值问题分方程初值问题)例例7.2 7.2 用改进欧拉法解初值问题用改进欧拉法解初值问题 区间为区间为 0,10,1,取步长取步长h=0.1h=0.1 解解:改进欧拉法的具体形式改进欧拉法的具体形式 本题的精确解为本题的精确解为 ,计算见计算见P P158158列表所示列表所示 本讲稿第四十三页
25、,共九十三页例例7.3对初值问题对初值问题 证明用梯形公式求得的近似解为证明用梯形公式求得的近似解为并证明当步长并证明当步长h h0 0时时,y,yn n收敛于精确解收敛于精确解证明证明:解初值问题的梯形公式为解初值问题的梯形公式为 整理成显式整理成显式 反复迭代反复迭代,得到得到 本讲稿第四十四页,共九十三页由于由于 ,有,有 证毕证毕 本讲稿第四十五页,共九十三页7.4 7.4 龙格龙格-库塔(库塔(Runge-KuttaRunge-Kutta)法)法7.4.1 7.4.1 龙格龙格-库塔库塔(Runge-Kutta)(Runge-Kutta)法的基本思想法的基本思想 Euler Eule
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第七 微分方程 数值 精选 文档
限制150内