常微分方程的数值解及实验精选PPT.ppt
《常微分方程的数值解及实验精选PPT.ppt》由会员分享,可在线阅读,更多相关《常微分方程的数值解及实验精选PPT.ppt(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、常微分方程的数值解常微分方程的数值解及实验及实验第1页,此课件共69页哦1 引言引言 在常微分方程中,我们已经掌握了一些典型方程的解法。但许多形式的方程只能用数值方法求近似解,也就是求在某些点上满足一定精度的近似解。现以求一阶常微分方程初值问题(41)第2页,此课件共69页哦 在区间a,b上的解为例,介绍数值方法的基本思想。设f(x,y)在带形区域 R:axb,-y+上为x,y的连续函数,且对任意的y满足李普希茨(Libusize)条件 f(x,y1)-f(x,y2)Ly1-y2 (42)其中(x,y1)、(x,y2)R,L为正常数。在求初值问题(41)的数值解时,我们通常采用离散化方法(数值
2、微分、数值积分、泰勒展式等),求在自变量x的离散点 a=x0 x1x2xn=b 第3页,此课件共69页哦图 4.1第4页,此课件共69页哦 上的准确解y(x)的近似值 y0,y1,y2,yn 常取离散点x0,x1,x2,xn为等距,即 x i+1-xi=h,i=0,1,2,n-1 h称为步长。图41表示为初值问题(41)在n+1个离散点上的准确解y(x)的近似值。第5页,此课件共69页哦2 欧拉法和改进的欧拉法欧拉法和改进的欧拉法 2.1 欧拉法(折线法)若将函数y(x)在点xi处的导数y(xi)用差商来表示,即第6页,此课件共69页哦 再用yi近似地代替y(xi),则初值问题(41)就化为(
3、43)式(43)就是所求的欧拉公式。欧拉公式有很明显的几何意义。我们知道初值问题(41)中的微分方程的解是xoy平面上的一簇积分曲线,这簇积分曲线上任意点(x,y)?的斜率为f(x,y),而初值问题(41)的解是过点(x0,y0)的一条特定的积分曲线。第7页,此课件共69页哦 例1 用欧拉法求初值问题的数值解(取h=0.1)。解 因为故由欧拉计算公式(43)得(44)第8页,此课件共69页哦 表 41 第9页,此课件共69页哦 图 4.2 第10页,此课件共69页哦 图 4.3 第11页,此课件共69页哦 2.2 改进的欧拉法 欧拉法虽然形式简单,计算方便,但比较粗糙,精度也低。特别当y=y(
4、x)?的曲线曲率较大时,欧拉法的效果更差。为了达到较高精度的计算公?式,对欧拉法进行改进,将在一点(xi,yi)的切线斜率f(xi?,yi)用两点的平均斜率来代替,即 第12页,此课件共69页哦 代入(43)式得(45)这样得到的点列仍为一折线,只是用平均斜率来代替原来一点处的斜率。式(45)称为改进的欧拉公式。第13页,此课件共69页哦 不难发现,欧拉公式(43)是关于yi+1的显式?,只要已知yi,经一次计算可立即得到yi+1的值;而改进的欧?拉公式(45)中的yi+1以隐式给出,且yi+1含在函数f(xi+1,yi+1)中,因此?,通常用迭代法求解。具体做法是:先用欧拉公式(43)?求出
5、一个y(0)i+1作为初始近似,然后再用改进的欧拉公式(45)进行迭代,即第14页,此课件共69页哦 直到满足(为预给精度)取 再转到下一步计算。这里必须特别说明,因为初值问题(41)满足李普 希茨条件第15页,此课件共69页哦 当h足够小时,可使得 于是有当k时,有qk0,故公式(46)收敛。第16页,此课件共69页哦 2.3 预估校正法 改进的欧拉公式在实际计算时要进行多次迭代,因而计算量较大。所谓预估校正法,就是先用(43)式算出yi+1的预估值y(p)i+1,然后再用(45)式进行一次迭代便得到校正值y(c)i+1,即(47)预估:校正:并取 第17页,此课件共69页哦 虽然式(47)
6、仅迭代一次,但因进行了预先估计,故精度却有较大的提高。在实际计算时,还常常将式(47)写成下列形式:(48)第18页,此课件共69页哦 2.4误差估计 初值问题(41)的等价积分方程为(49)若对式(49)右端的积分采用各种不同的近似计算方法,就可以得到初值问题(41)的各种不同的数值解法。例 如积分采用左矩形公式第19页,此课件共69页哦 图 4.4 第20页,此课件共69页哦 用yi、yi+1分别代替y(xi)、y(xi+1)便得到欧拉公式(43)。若积分采用梯形公式 在进行误差分析时,我们假设yi=y(xi),考虑用yi+1代替y(x i+1)而产生慕囟衔蟛睿康氖俏伺卸吓拉公式和改进的欧
7、拉公式的精确度。设初值问题(41)的准确解为y=y(x),则利用泰勒公式 第21页,此课件共69页哦 1.欧拉公式的截断误差 由式(43)知(411)第22页,此课件共69页哦 比较式(410)和(411)得(412)2.改进的欧拉公式的截断误差 由式(45)知(413)第23页,此课件共69页哦 对(49)式右端的积分采用梯形公式并根据梯形公式的误差可得到(414)其中(xi,xi+1),比较式(413)和(414)得(415)第24页,此课件共69页哦 因此 第25页,此课件共69页哦 所以,改进的欧拉公式的截断误差为O(h3),也即改进的欧拉法为二阶的。可以验证,预估校正公式(47)与改
8、进的欧拉公式的截断误差相同,均为O(h3)。这里略去证明。例 2求解初值问题 第26页,此课件共69页哦 解 现分别用欧拉公式和改进的欧拉公式进行计算。这里欧拉公式的具体形式为 其解析解为 第27页,此课件共69页哦 表 42 第28页,此课件共69页哦3 龙格库塔法龙格库塔法 3.1 泰勒级数展开法 我们还是假设yi=y(xi),利用泰勒级数展开求y(xi+1)。式(410)就是y(xi+1)的泰勒展开式,若取右端前有限项作为y(xi+1)的近似值,就可得到计算y(xi+1)的各种不同截断误差的数值公式。例 如,取前两项可得到第29页,此课件共69页哦 y(xi+1)y(xi)+hy(xi)
9、=y(xi)+hf(xi,y(xi)=yi+hf(xi,yi)若取前三项,可得到截断误差为O(h3)的公式 第30页,此课件共69页哦 这里 y(xi)=f(xi,y(xi)y(xi)=fx(xi,y(xi)+fy(xi,y(xi)y(xi)=fx(xi,y(xi)+f(xi,y(xi)fy(xi,y(xi)类似地,若取前k项作为y(xi+1)的近似值,便得到截断误差为O(hk)的数值计算公式。这些公式的计算必须依赖于求y(xi)的k阶导数,除非f(x,y)足够简单,否则直接用泰勒展开法求解较为复杂。但是泰勒级数展开法的基本思想是许多数值方法的基础。第31页,此课件共69页哦 3.2 龙格库塔
10、法 前面已经知道,初值问题(41)等价于 龙格库塔法的基本思想是:用f(x,y)在几个不同点的数值加权平均来代替f(xi+h,y(xi+h)的值,而使截断误差的阶尽可能高。第32页,此课件共69页哦 1.二阶龙格库塔公式 将预估校正公式(48)改写成更一般的形式(416)适当选取%、1、2%的值,使截断误差y(x i+1)-y i+1的阶数尽可能高。这里仍假定yi=y(xi),显然 第33页,此课件共69页哦 2.四阶龙格库塔公式 二阶龙格库塔公式是由使用在两个不同点上的函数值的线性组合而得到的。同样,我们用四个不同点上的函数值的线性组合就可得到四阶龙格库塔公式。设 yi+1=yi+h(1k1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微分方程 数值 实验 精选 PPT
限制150内