0计算方法及MATLAB实现简明讲义课件PPS8-1欧拉龙格法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第8章
常微分方程初值问题数值解法
8.1 引言
8.2 欧拉方法
8.3 龙格-库塔方法
8.4 单步法的收敛性与稳定性
8.5 线性多步法
8.1 引 言
考虑一阶常微分方程的初值问题
00(,),[,],
().y f x y x a b y x y '=∈=(1.1) (1.2)
如果存在实数 ,使得
121212(,)(,).,R f x y f x y L y y y y -≤-∀∈(1.3)
则称 关于 满足李普希茨(Lipschitz )条件, 称为 的李普希茨常数(简称Lips.常数). 0>L f y L f (参阅教材386页)
计算方法及MATLAB 实现 所谓数值解法,就是寻求解 在一系列离散节点
)(x y
<<<<<+121n n x x x x 上的近似值 .
,,,,,121+n n y y y y 相邻两个节点的间距 称为步长.
n n n x x h -=+1 如不特别说明,总是假定 为定数, ),2,1( ==i h h i 这时节点为 . )
,2,1,0(0 =+=i nh x x n 初值问题(1.1),(1.2)的数值解法的基本特点是采取 “步进式”.
即求解过程顺着节点排列的次序一步一步地向前推进.
00(,),[,],
().
y f x y x a b y x y '=∈=
描述这类算法,只要给出用已知信息 ,,,21--n n n y y y 计算 的递推公式.
1+n y 一类是计算
时只用到前一点的值 ,称为单步法. 1+n y n y 另一类是用到 前面 点的值
, 1+n y k 11,,,+--k n n n y y y 称为 步法.
k 其次,要研究公式的局部截断误差和阶,数值解 与 精确解 的误差估计及收敛性,还有递推公式的计算 稳定性等问题.
n y )(n x y 首先对方程 离散化,建立求数值解的递推 公式.
),(y x f y ='
8.2 简单的数值方法
8.2.1 欧拉法与后退欧拉法
积分曲线上一点 的切线斜率等于函数 的 值.
),(y x ),(y x f 如果按函数 在
平面上建立一个方向场,那么, ),(y x f xy 积分曲线上每一点的切线方向均与方向场在该点的方向相一致.
在 平面上,微分方程
的解 称 作它的积分曲线.
xy )(x y y =),(y x f y ='
基于上述几何解释,从初始点 出发, ),(000y x P 先依切线 在该点的方向推进到 上一点 ,然后再 1x x =1
P 从 依切线 的方向推进到 上一点 ,循此前进 1P 2x x =2
P 做出一条折线 (图8-1).
210P P P 图8-1
7
9
一般地,设已做出该折线的顶点 ,过 依 切线 的方向再推进到 ,显然两个顶点
的坐标有关系 ),(n n n y x P n
P ),(111+++n n n y x P 1
,+n n P P 11n n n n y y x x ++-=-反解,得
).
,(1n n n n y x hf y y +=+(2.1)
这就是著名的欧拉(Euler )方法. 欧拉法实际上是对常微分方程中的导数用差商近似,即
1()()n n y x y x h
+-≈直接得到的.
(,)d d n n x y y x =(,)
n n f x y 00(,),[,],().y f x y x a b y x y '=∈=1n n y y h +-=()(,())n n n y x f x y x '=
11
1(,)
n n n n y y hf x y +=+例
欧拉方法
13
若初值
已知,则依公式(2.1)可逐步算出 0y ),,(0001y x hf y y +=
),
,(1112y x hf y y +=).
,(1n n n n y x hf y y +=+(2.1)
例1 求解初值问题
⎪⎩⎪⎨
⎧=<<-
='
.
1)0(),
10(2y x y x y y (2.2)
解 欧拉公式的具体形式为
).
2(1
n
n
n n n y x y h y y -+=+取步长 ,计算结果见表8-1.
1.0=h 初值问题(
2.2)的解为 ,按这个解析式 子算出的准确值 同近似值 一起列在表8-1中,两者
相比较可以看出欧拉方法的精度不高.
x y 21+=)(n x y n y 1(,)
n n n n y y hf x y +=+12y x
=+
81()()0.1 1.1000 1.09540.6 1.5090 1.48320.2 1.1918 1.18320.7 1.5803 1.54920.3 1.2774 1.26490.8 1.6498 1.61250.4 1.3582 1.34160.9 1.7178 1.67330.5
1.4351
1.4142
1.0
1.7848
1.7321
n n
n n n
n x y y x x y y x -表计算结果对比 还可以通过几何直观来考察欧拉方法的精度.
假设 ,即顶点 落在积分曲线 上,那么,按欧拉方法做出的折线 便是 过点 的切线(图8-2). )(n n x y y =n
P )(x y y =1+n n P P )
(x y y =n
P