当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

华南农业大学:《数值分析》 第七章 常微分方程的数值解法

资源类别:文库,文档格式:PPT,文档页数:73,文件大小:1.84MB,团购合买
引言 只含有一个未知数的微分或导数的方程称为常微分方程 (Ordinary Differential Equation),形如f 一个常微分方程如果有解,则有无数个解,称为通解 (General Solution);其中的某一个确定的解称为特解 (Particular Solution). 考虑初值问题
点击下载完整版文档(PPT)

第七章常微分方程的数值解法 §1引言 只含有一个未知数的微分或导数的方程称为常微分方程 ( Ordinary Differential Equation),形如∫(x,y,y)=0 个常微分方程如果有解,则有无数个解,称为通解 ( General solution);其中的某一个确定的解称为特解 ( Particular Solution) 考虑初值问题 y(o)=yo

第七章 常微分方程的数值解法 §1 引言 只含有一个未知数的微分或导数的方程称为常微分方程 (Ordinary Differential Equation),形如 f x y y ( , , ) 0.  = 一个常微分方程如果有解,则有无数个解,称为通解 (General Solution);其中的某一个确定的解称为特解 (Particular Solution). 考虑初值问题 0 0 ( , ) ( ) y f x y y x y   =   =

定理7.1(初值问题解的存在唯一性) 设f(x,y)在D={sxsb,-0<y<+上有定义且连续,同 时满足李普希兹条件 ∫(x,y)-∫(x,y)sLy-y|,(x,y,(x,y)eD 其中L为李普希兹常数,则初值问题(7.1)的解存在且唯一, 并且解y(x)连续可微。 定理72如果f(xy)满足李普希兹条件,则初值问题是稳定的。 仅有少数常微分方程可求解析解,大部分只能求数值解, 即求出在区间[ab上若干离散点a=x<x1<x2<…<xn=b 处函数值的近似值y1,y2,…,yn 本章介绍求解常微分方程(组)的常用数值方法

定理7.1(初值问题解的存在唯一性) 设f(x,y)在 上有定义且连续,同 时满足李普希兹条件 其中L为李普希兹常数,则初值问题(7.1)的解存在且唯一, 并且解y(x)连续可微。 D a x b y =   −   + { , } * * * f x y f x y L y y x y x y D ( , ) ( , ) , ( , ), ( , ) −  −  定理7.2 如果f(x,y)满足李普希兹条件,则初值问题是稳定的。 本章介绍求解常微分方程(组)的常用数值方法。 仅有少数常微分方程可求解析解,大部分只能求数值解, 即求出在区间[a,b]上若干离散点 处函数值的近似值 0 1 2 n a x x x x b =     = 1 2 , , , . n y y y

§2泰勒级数法( Taylor Series Method) 素勒展开式 h h y(x+h)=y(x)+y(x)+y(x)+…+y(x)+O(h) 对于初值问题 y'=f(,y) 考虑其解y=y(x)在初值点x0处的p阶泰勒多项式 y(x)=y(x)+1y(x)+n;y"(x)+…+n1y(x)

§2 泰勒级数法(Taylor Series Method) 泰勒展开式 对于初值问题 0 0 ( , ) ( ) y f x y y x y   =   = 2 ( ) 1 ( ) ( ) ( ) ( ) ( ) ( ) 1! 2! 2! p h h h p p y x h y x y x y x y x O h + + = + + + + +   考虑其解y=y(x)在初值点x0处的p阶泰勒多项式 2 ( ) 0 0 0 0 0 ( ) ( ) ( ) ( ) ( ) 1! 2! 2! p h h h p y x h y x y x y x y x +  + + + +   1 y x( )y1 =

h y=y(x)+y(x)+y”(x)+…+myP(xn) 2! 2! 其中 y'(x)=f(x,y)= y(o=f(o, yo)=fo y(x)=+ ax a y→y(x)=(f+f 将上述各阶导数值代入*式,即得y1的值; 再以(x1y1为起点,建立x1点的 Taylor多项式,计算出y2如此 继续,依次通过 h, h p n+1 n 2 n 可求出数值解,y2…,y2

2 ( ) 1 0 0 0 0 ( ) ( ) ( ) ( ) 1! 2! 2! p h h h p y y x y x y x y x = + + + +   其中 0 0 y x y ( ) = y x f x y ( ) ( , ) = 0 0 ( ) ( ) x y y x f f f  = +   0 0 0 0 y x f x y f ( ) ( , ) =  ( ) f f y x y x y     = +     将上述各阶导数值代入*式,即得y1的值; 再以(x1 ,y1 )为起点,建立x1点的Taylor多项式,计算出y2 ,如此 继续,依次通过 可求出数值解 1 2 , , , . n y y y 2 ( ) 1 1! 2! 2! p p n n n n n h h h y y y y y + = + + + +  

例1取步长h=01,用二阶泰勒多项式求解初值问题 (0≤X≤ y(0)=1 解: ∴+ p) 2! 2! 由于y=y2,故有y”=(yy=2yy=2y3 于是,相应的二阶泰勒多项式的迭代式为 hh n+1 +y2+02y=yn+0.1y2+0001 2 由初值x=0,y0=1开始迭代,计算结果为

例1 取步长h=0.1,用二阶泰勒多项式求解初值问题 解: 由于 2 1 (0 ) (0) 1 2 y y x y   =     = 2 ( ) 1 1! 2! 2! p p n n n n n h h h y y y y y + = + + + +   2 y y  = , 3 故有 y y y y y     = =  = ( ) 2 2 , 于是,相应的二阶泰勒多项式的迭代式为 2 2 3 1 2 1! 2! n n n n h h y y y y + = + + 2 3 0.1 0.001 n n n = + + y y y 由初值x0=0,y0=1开始迭代,计算结果为

0.1 0.2 0.3 04 0.5 yn111000124689142174166262197087 yx)1111250042671666720000 (此初值问题的解析解为y=-) 定义71假定yn=y(xn,在此前提下用某种数值方法精确计算得到 yn+1,称Rn+y(xn+)yn+为该数值方法的局部截断误差。 定义72若数值方法的局部截断误差为Rn=O(hP+),则称该方法 具有p阶精度或p阶方法,其中p为正整数 结论展开至p阶的泰勒级数法具有p阶精度

xn 0.1 0.2 0.3 0.4 0.5 yn 1.11000 1.24689 1.42174 1.66262 1.97087 y(xn ) 1.11111 1.25000 1.42857 1.66667 2.00000 (此初值问题的解析解为 1 .) 1 y x = − 定义7.1 假定yn=y(xn ), 在此前提下用某种数值方法精确计算得到 yn+1, 称 Rn+1=y(xn+1)-yn+1 为该数值方法的局部截断误差。 定义7.2 若数值方法的局部截断误差为 Rn+1=O(hp+1), 则称该方法 具有p阶精度或p阶方法,其中p为正整数。 结论 展开至p阶的泰勒级数法具有p阶精度

§3基于数值微分公式的方法 y'=f(, y) 对于初值问题 中的微分方程, 使用向前差商数值微分公式y(xn)≈ 由于y(xn)=f(x,y(x),故有y(xn)-y(x)≈f(xn,y(x) 用近似值yn代替y(xn),得 n+1 f(r,, yu) 整理即得y(xn)≈yn+h:f(xn,yn) 局部截断误差R的2 欧拉( Euler)公式:yn+1=y y(sn)=O(h), x<5

§3 基于数值微分公式的方法 对于初值问题 中的微分方程, 0 0 ( , ) ( ) y f x y y x y   =   = 使用向前差商数值微分公式 1 ( ) ( ) ( ) n n n y x y x y x h + −   由于 1 ( ) ( ) ( , ( )) n n n n y x y x f x y x h + − y x f x y x ( ) ( , ( )), n n n = 故有  用近似值 yn 代替 y x( ) n ,得 1 ( ) ( , ) n n n n y x y f x y h + − = 整理即得 1 ( ) ( , ) n n n n y x y h f x y +  +  欧拉(Euler)公式: 1 ( , ) n n n n y y h f x y + = +  局部截断误差 2 2 1 1 ( ) ( ), 2 n n n n n h R y O h x x   + + = =   

y'=f(, y) 对于初值问题 中的微分方程, 使用向后差商数值微分公式y(xn+)≈ V(n+D)-y(xn) 得后退欧拉公式:yn1=yn+h·f(xn1,yn) y(n)=O(h), 局部截断误差Rn+=29 x <sn xn+ 对上述两种公式进行平均,得梯形公式(改进的欧拉公式): h yn1=yn+[f(xn2yn)+f(xn+1,y) 局部截断误差Rn=2)=0h),xn<5n<xn

对于初值问题 中的微分方程, 0 0 ( , ) ( ) y f x y y x y   =   = 使用向后差商数值微分公式 1 1 ( ) ( ) ( ) n n n y x y x y x h + + −   得后退欧拉公式: 1 1 1 ( , ) n n n n y y h f x y + + + = +  局部截断误差 2 2 1 1 ( ) ( ), 2 n n n n n h R y O h x x   + + = − =    对上述两种公式进行平均,得梯形公式(改进的欧拉公式): 1 1 1 [ ( , ) ( , )] 2 n n n n n n h y y f x y f x y + + + = +  + 局部截断误差 3 3 1 1 ( ) ( ), 2 n n n n n h R y O h x x   + + = − =   

欧拉(Eue)公式:y=y+h·f(x,yn) 显式法 后退欧拉Eue公式:yn=yn+hf(xn1,yn) 梯形公式:ynm1=yn+f(xn,yn)+f(xn1,yn 隐式法 隐式法的求解方法(以梯形公式为例) mn 1=yn+h f(n,yn) y)=yn+=[f(xnyn)+f(x-1,y(1)(k=0, 反复迭代,直至满足精度要求1-y1<E为止,将y 作为xn1点的数值解

后退欧拉(Euler)公式: 1 1 1 ( , ) n n n n y y h f x y + + + = +  梯形公式: 1 1 1 [ ( , ) ( , )] 2 n n n n n n h y y f x y f x y + + + = +  + 欧拉(Euler)公式: 1 ( , ) n n n n y y h f x y + = +  ——显式法 隐 式 法 隐式法的求解方法(以梯形公式为例) ( 1) ( ) 1 1 1 [ ( , ) ( , )] ( 0,1,2, ) 2 k k n n n n n n h y y f x y f x y k + + + + = +  + = (0) 1 ( , ) n n n n y y h f x y + = +  反复迭代,直至满足精度要求 为止,将 作为xn+1点的数值解。 ( 1) ( ) 1 1 k k n n y y  + + + −  ( 1) 1 k n y + +

§4龙格一库塔法( Runge- Kutta method) 在泰勒级数法当中 h h2 V(xn)+y(x,)+ay(n) 考虑用f(xy)在不同点的值的线性组合来代替其中的导数项。 以二阶龙格一库塔公式为例。二阶泰勒展式为 h ym=y(rn)+h f(rn, y(xn))+(r+ffm() 假定上式等价于yn1=yn+ck+C2k2 其中 ∫k=hf(xn,y k2=h·f(xn+h,yn+k1) 参数c12C2,1,A待定,要求方法达到二阶精度

§4 龙格-库塔法(Runge-Kutta Method) 在泰勒级数法当中 考虑用f(x,y)在不同点的值的线性组合来代替其中的导数项。 以二阶龙格-库塔公式为例。二阶泰勒展式为 假定上式等价于 其中 2 ( ) 1 ( ) ( ) ( ) ( ) 1! 2! ! p p n n n n n h h h y y x y x y x y x p + = + + + +   2 1 ( ) ( , ( )) ( ) 2 ! (*) n n n n x y n h y y x h f x y x f f f + = +  + +  n n 1 1 1 2 2 y y c k c k + = + + 1 2 1 1 1 ( , ) ( , ) n n n n k h f x y k h f x h y k    =   =  + +  参数 c c 1 2 1 1 , , ,   待定,要求方法达到二阶精度

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共73页,可试读20页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有