计算方法课件7
- 格式:pdf
- 大小:535.79 KB
- 文档页数:79
近似积分项,再分别用yn,yn+1代替y(xn)和y(xn+1),即 可得到梯形公式 可得到梯形公式: h yn 1 yn [ f ( xn , yn ) f ( xn 1 , yn 1 )], n 0,1,2, 2 该方法也是一种隐式的单步方法。对该方法, 从n=0开始计算,每步都要求解yn+1的一个方程。一 般来说 这是一非线性方程 般来说,这是 非线性方程,可迭代计算如下: 可迭代计算如下:
2012/4/9 2
引言(续) 若f(x,y)在区域D= a x b,y R上连续,且 关于y满足 李普希兹(Lipschitz p )条件, 即存在常 数L,使
f ( x , y1 ) f ( x , y 2 ) L y1 y 2 ,
对 G内任两个 y1 , y2 均成立,其中L是与x,y无 关 的常数 则上面的初值问题存在唯一解 的常数,则上面的初值问题存在唯 解,且解是 且解是 连续可微的。 Remark:在f(x,y)对y可微的情况下,若偏导数有界, 可微的情况下 若偏导数有界 f ( x, y ) L max 则可取 ,此时有
三、单步法的局部截断误差和阶
设一般的单步法为: 显式公式:yn 1 yn h(xn,yn,h) 隐式公式:yn 1 yn h(xn,yn,yn 1,h) 设 y n 为数值方法的精确值,y( xn)为微分方程的 精确解。
en y(xn) yn 为某一数值方法在 xn处的整体截 定义1: 断误差。 断误差 Remark:整体截断误差不仅与 xn 这步的计算有关,而 且与前面所有点的计算的误差累计有关 为了简化误 且与前面所有点的计算的误差累计有关。为了简化误 差分析,我们着重分析计算中的某一步。对一般的显 式单步法 有如下定义: 式单步法,有如下定义:
hL y
(s) n 1
y n 1
故当 hL 1 时该迭代法收敛到隐式Euler公式的解 yn+1 ,其中L为Lipschitz常数.
2012/4/9
11
梯形公式
为了得到更精确的方法,在等价的积分方程中用 梯形公式
b
a
3 ba (b a) f(x)dx [ f(a) f(b) ] f ' ' ( ), (a, b) 2 12
2012/4/9 8
二、Euler公式的改进
若在等价积分方程 xn1 y ( xn 1) y(xn) f(t,y (t ))dt 中将积分用右矩形公式
xn
b
a
代入,有 从而得到
f ' ( ) f(x)dx d ( b a) f ( b) (b a ) 2 , ( (a, b)) 2
取h的线性部分,并用 y n表示 y ( xn ) 的近似值,得
yn 1 yn hf ( xn , yn )( n 0,1,2, )
3、数值积分法
积分 得等价的积分方程 对微分方程两端从xn到xn+1积分,得等价的积分方程 对右端的积分部分采用左矩形公式近似即得Euler公式。 Remark:Taylor展开法与数值积分法是构造微分方程 数值解的两类主要的方法。
f ( x, ) f ( x, y1 ) f ( x, y2 ) ( y1 y2 ) L y1 y2 , 介于y1与y2之间。 y
( x , y ) D
y
此时Lipschitz连续条件显然成立。这是验证该条件 连续条件显然成立 这是验证该条件 的最简便的方法。 2012/4/9 3
2012/4/9
4
引言(续) 数值解法一般分为: (1)单步法:在计算 yn 1时,只用到 x n 1 ,x n 和 y n,即前一步的值。 (2)多步法:计算 )多步法 计算 yn 1 时,除用到 时 除用到 xn 1 , xn 和 yn以外,还要用 xn p 和 yn p ( p 1,2 , k ; k 0) ,即前 k步的值。 步的值 单步法和多步法都有显式和隐式方法之分。显式 和隐式的单步法可以分别写成: 和隐式的单步法可以分别写成 yn 1 yn h(xn,yn , h) yn 1 yn h(xn,yn , yn 1 , h) 对多步法来说,显式和隐式方法具有相同的意义。
2012/4/9 12
梯形公式(续)
[0] yn f ( xn , y n ) 1 y n hf [ s 1] h [s] yn 1 yn [ f ( xn , y n ) f ( xn 1 , yn 1 )] 2
, s 0,1,2,
[0] 再用 n 1,再用
y ( xn 1 ) y ( xn ) hf ( xn 1 , y ( xn 1 )), n 0,1,2,
yn 1 yn hf ( xn 1 , yn 1 ), ) n 0,1,2,
上式是 个隐式的单步方法,称为隐式Euler公式或后 上式是一个隐式的单步方法,称为隐式 退的Euler公式。利用此公式,每一步都要把上式作为 yn+1的 的一个方程来求解。从数值积分的误差分析,很 个方程来求解。从数值积分的误差分析,很 难期望隐式Euler公式比显式Euler公式更精确。
1、差商法 差商法
用两点差商公式 代替导数y( xn ) ,再用 y n 表示 y ( xn ) 的近似值,则得到
2012/4/9 6
y ( xn 1 ) y ( xn ) xn 1 xn
显式Euler公式(续)
2、Taylor展开法 假设在xn 附近把y(x)展成Taylor y 级数
y dy ( f x,y) y dx y a) y0 (
在区间[a,b]上的数值解法。
这些问题多数情况下求不出解析解,只能用近似 的方法求解。常用的近似方法有两类。一类称为 近似解析法,如级数解法,逐次逼近法等。另 近似解析法,如级数解法,逐次逼近法等。另一 类称为数值解法,它可以给出解在一些离散点上 的近似值。
[s] y y 其中介于 n 1 与 n 1 之间。
yn 1 y
[ s 1] n 1
hL s 1 [0] ( ) y n 1 yn 1 0( s ) 2
[s]
即为s趋于, yn 1 yn 1。
2012/4/9 14
Euler-梯形预估校正公式
2012/4/9 5
§7.2 Euler方法及其改进
一、显式Euler公式
(n 0, 1, 2,) ,欧拉方法的计 设节点为 xn x0 nh 算公式 yn 1 yn hf(xn,yn)(n 0, 1, 2, )
这是一种最简单的显式单步方法,该方法可以通 这是 种最简单的显式单步方法 该方法可以通 过不同的途径获得。
2012/4/9
( s 1) (s) 为 yn y 1 n 1 (
10
隐式Euler公式(续)
由于f(x,y)关于y满足Lipschitz条件,故有
( s 1) (s) yn y h f ( x , y n 1 n 1 n 1 ) f ( x n 1 , y n 1 ) 1
y 使用上式时,先用第 使用上式时 先用第一式计算出 式计算出yn+1的近似值 [ s1] [ s] [s] y y 第二式反复进行迭代,得到数列yn1s0 ,用 n1 n1 来控制是否继续进行迭代 其中为允许误差。把满足要 来控制是否继续进行迭代,其中 为允许误差 把满足要 [ s 1] 求的 yn 1 作为y(xn+1)的近似值yn+1,类似地可得出yn+2, yn+3,…。
实用中,h 取得较小时,为了简化计算,梯形公式第二 式只迭代一次就结束,得到Euler-梯形预估校正公式:
[0] yn 1 y n hf ( xn , y n ) h [0] y y [ f ( x , y ) f ( x , y n 1 n n n n 1 n 1 )] 2
Remark:这是一种显示的单步方法。有时为了计 算方便 常将上式改写成 算方便,常将上式改写成:
h yn 1 yn 2 ( K1 K 2 ) K1 f ( x n , y n ) K f ( x h, y hK ) n n 1 2
2012/4/9 16
其中第一式称为预估算式,第二式称为校正算式。
2012/4/9
15
Euler-梯形预估校正公式(续) 若将Euler-梯形预估校正公式中的第一式带入第二 式 得 式,得
h yn 1 yn [ f ( xn , y n ) f ( xn 1 , yn hf ( xn , yn ))] 2
2012/4/9 7
Euler方ቤተ መጻሕፍቲ ባይዱ的几何意义
Euler方法有明显的几何意义。 如右图所示 如右图所示,一阶常微分方 阶常微分方 程初值问题的解曲线y(x)过 点P0(x0,y0)。从 从P0出发以 f(x0,y0)为斜率作一直线段, 与x=x1相交于点P1(x1,y1), 显然有y1=y0+hf(x0,y0)。 同理,再由P1出发以f(x1,y1)为斜率作一直线段,与x=x2 相交于点P2(x2,y2),显然有 显然有y2=y1+hf(x1,y1)。这样一直做 这样 直做 下去,得到一条折线P0P1P2……,作为y(x)的近似曲线。 因此 显示Euler 因此,显示 E l 公式又称为Euler E l 折线法。 折线法
2012/4/9
13
梯形公式(续)
1 当f(x,y)关于y满足Lipschitz条件时,且步长h满足 2 hL 1
时,上述迭代过程是收敛的。这是因为:
[ s 1] n 1
h [s] yn 1 y f(xn 1,yn 1) f(xn 1,yn 1 ) 2 h f ( ) hL [s] [s] [s] [0] ( yn 1 yn ) y y y y y y 1 n 1 n 1 n 1 n 1 n 1 n 1 2 y 2