常微分方程的差分方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章 常微分方程的差分方法
一、教学目标及基本要求
通过对本节课的学习,使学生掌握常微分方程、常微分方程方程组的数值解法。
二、教学内容及学时分配
本节课主要介绍常微分方程的数值解法。具体内容如下:
讲授内容:欧拉公式、改进的欧拉公式。
三、教学重点难点
1.教学重点:改进的欧拉公式、龙格库塔方法、收敛性与稳定性。
2. 教学难点:收敛性与稳定性。
四、教学中应注意的问题
多媒体课堂教学为主。适当提问,加深学生对概念的理解。
五、正文
基于数值积分的求解公式:欧拉公式、改进的欧拉公式 引 言
1.主要考虑如下的一阶常微分方程初值问题的求解:
00()(,)()y x f x y y x y '=⎧⎨=⎩
微分方程的解就是求一个函数y=y(x),该函数满足微分方程并且符合初值条件。
2. 例如微分方程:
xy'-2y=4x ;初始条件: y(1)=-3。
于是可得一阶常微分方程的初始问题
24(1)3y y x y ⎧'=+⎪⎨⎪=-⎩。
显然函数y(x)=x 2-4x 满足以上条件,因而是该初始问题的微分方程的解。
3. 但是,只有一些特殊类型的微分方程问题能够得到用解析表达式表示的函数解,而大量的微分方程问题很难得到其解析解,有的甚至无法用解析表达式来表示。因此,只能依赖于数值方法去获得微分方程的数值解。
4. 微分方程的数值解:
设微分方程问题的解y(x)的存在区间是[a,b],初始点x 0=a ,将[a,b]进行划分得一系列节点x 0 , x 1 ,...,x n ,其中a= x 0< x 1<…< x n =b 。y(x)的解析表达式不容易得到或根本无法得到,我们用数值方法求得y(x)在每个节点x k 的近似值y(x k ),即 y≈y(x k ),这样y 0 , y 1 ,...,y n 称为微分方程的数值解。
如果计算y n 时,只利用y n-1,称这种方法为单步法;如果在计算y n 时不仅利用y n-1,而且还要利用y n-2, y n-3,…, y n-r ,则称这种方法为r 步方法,也称多步法。 §5.1 欧拉方法
§5.1.1 欧拉格式
方程()(,)n n n y x f x y '=中,1()()()n n n y x y x y x h
+-'≈ 1()()(,())n n n n y x y x hf x y x +≈+⇒1(,)n n n n y y hf x y +=+
称为解一阶常微分方程初值问题的欧拉公式,也称显示欧拉公式。
欧拉公式的几何意义非常明显,因为微分方程的解在xoy 平面上表示一族积分曲线。用欧拉公式求数值解的几何意义如图:
容易验证,该折线各个顶点的纵坐标(1,2...)n y n =就是欧拉公式算得的近似值解,所以,欧拉方法又称为折线法。
算例:P98
可以看出误差随着计算在积累。
Euler 法的特点和误差
特点:(1)单步方法;(2) 显式格式;(3)局部截断误差为
()2h ο。 局部截断误差:当()n n y y x =时,由()n y x 按照欧拉方法计算来的1+n y 的误差称为局部截断误差。即,11)(++-n n y x y 是局部截断误差。
按泰勒展开()()()()2112n n n y x y x hy x h y ξ+'''=++
欧拉法得:()
1,n n n n y y hf x y +=+ 因此,局部截断误差是()2h ο。
如果局部截断误差是1()p O h +,称这种数值方法是p 阶的。欧拉方法显然是一阶的。 一阶的含义:
常微分方程的解为b ax x y +=)(时,若第n 步精确,即)(n n x y y =前提下,欧拉公式能准确求解)(1+n x y 。
)
()()()())
(,()(),(11'1+++=+=++=++=+=+=+=n n n n n n n n n n n n n x y b ax b h x a ah b ax x hy x y x y x hf x y y x hf y y
§5.1.2 隐式欧拉格式 在对微分方程初值问题进行离散化时,如果用向后差商1()()n n y x y x h
+-代替方程111()(,())n n n y x f x y x +++'=中的1()n y x +',并用近似值1n y +表示1()n y x +,n y 表示()n y x ,得: ),(111++++=n n n n y x hf y y
称为隐式欧拉公式,或后退的欧拉公式,它是关于1n y +的一个函数方程,其计算远比显式公式难但稳定性好。
欧拉公式1(,)n n n n y y hf x y +=+是关于n y 的直接计算公式,称为显式的。隐式欧拉公式的
右端含未知数1n y +,是关于1n y +的方程。
)()(2
))()()(()()()(2
)()()
()()())
(,()()(3''22'''3''2'
1'11111h o x y h h o x hy x y h x y h o x y h x hy x y x hy x y x y x y x hf x y x y T n n n n n n n n n n n n n n n +-=++--+++=--=--=++++++ 无论向前或向后差商,它们具有相同精度,都是一阶方法。
§5.1.3 两步欧拉格式 以中心差商11()()2n n y x y x h
+--替代方程()(,)n n n y x f x y '=中导数项,得 112(,)n n n n y y hf x y +-=+
显式或隐式欧拉公式都是单步法,计算1n y +只用到前一步信息n y ,上式除用到n y ,还用到1n y -,用到前面两步信息,故称两步欧拉公式。
按泰勒公式展开
)
(2)()())
(,(2)()('11111n n n n n n n n x hy x y x y x y x hf x y x y T --=--=-+-++ )()(6
)(2)()()(4'''3''2'1h o x y h x y h x hy x y x y n n n n n ++++=+ )()(6)(2)()()(4'''3''2'
1h o x y h x y h x hy x y x y n n n n n +-+-=- )()(3)(2)()(4'''3'
111h o x y h x hy x y x y T n n n n n +=--=-++ 两步欧拉法截断误差为3
()O h ,是二阶方法。
§5.2 改进的欧拉方法
§5.2.1 梯形格式
对方程(,)y f x y '=两端从n x 到1n x +求积分,得