常微分方程数值解法欧拉法学习教案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第16页/共32页
第十七页,共32页。
梯形法的迭代(dié dài)计算和收敛性 收敛性
§1 Euler’s Method
y0 n1
yn
h
f (xn , yn )
y(k 1) n1
yn
h 2
f
(xn ,
yn )
f
( xn 1 ,
y(k) n1
)
y (k 1) n 1
yn 1
h 2
f
( xn1,
x
y(x) y0 f t, y t dt
说明(shuōmíng)
第6页/共32页
第七页,共32页。
§1 Euler’s Method
截断误差: 实际上,y(xn) yn, yn 也有误差,它对yn+1的误差也有影 响,见下图。但这里不考虑此误差的影响,仅考虑方法(fāngfǎ)或公式 本身带来的误差,因此称为方法(fāngfǎ)误差或截断误差。
[ yn hf (xn , yn )]
Rn+1 的主项(zhǔ xiànɡ) /* leading term*/
h2 2
y(xn )
O(h3 )
第7页/共32页
第八页,共32页。
§1 Euler’s Method
定义 若某算法的局部截断误差为O(hp+1),则称该算法有p
阶精度。
欧拉法具有
第14页/共32页
第十五页,共32页。
比较(bǐjiào)尤拉显式公式和隐式公式及其局部截断误差
§1 Euler’s Method
显式公式(gōngshì)
yn1 yn h f (xn , yn )
n 0, 1,...
Rn1
y(xn1)
yn1
h2 2
y(xn) O(h3)
隐式公式(gōngshì)
中点欧拉公式gngshmidpointformula假设则可以导出即中点公式也具有2需要2个初值y0和y1来启动递推过程这样的算法称为双步法doublestepmethod而前面qinmian的三种算法都是单步法singlestepmethodeulersmethod第22页共32页第二十三页共32页
h2 2
y xn
yn1
hf
y
xn1,
yn1
y
xn1
y
xn
hy xn h2 y xn
h3 2
y xn

y xn1
y xn hy xn
h2 2
y xn
h3 6
y xn
第12页/共32页
第十三页,共32页。
从而
§1 Euler’s Method
Rn1
y(xn1)
第17页/共32页
第十八页,共32页。
梯形法的简化计算 迭代计算量大,且难以预测迭代次 数。为 了控制 计算量 ,通常 只迭代 一次就 转入下 一点的 计算。 用显式 公式作 预测, 梯形公 式作校 正,得 到(dé dào)如下预测校正系统,也称为改 进尤拉 法:
§1 Euler’s Method
1 yn+1 2 yp yc
几何解释
尤拉法 A
Pn+1=(A+B)/2
梯形法
后退尤拉法 B
xn
x n+ 1
第20页/共32页
第二十一页,共32页。
§1 Euler’s Method
§1 Euler’s Method
Another point of view
dy f ( x, y) x [a, b] dx y(a) y0
§1 Euler’s Method
由于未知数 yn+1 同时出现在等式的两边,故称为隐式 /* implicit */ 欧拉公式(gōngshì),而前者称为显式 /* explicit */ 欧拉公式(gōngshì)。隐式公式(gōngshì)不能直接求解,一般 需要用Euler显式公式(gōngshì)得到初值,然后用Euler隐式 公式(gōngshì)迭代求解。因此隐式公式(gōngshì)较显式公式
第1页/共32页
第二页,共32页。
第2页/共32页
第三页,共32页。
第3页/共32页
第四页,共32页。
§1 欧拉方法(fāngfǎ) /* Euler’s Method */
y(xn1) y(xn ) hy(xn ) y(xn ) yn
y(xn1) yn1 yn h f (xn , yn )
yn1
hf
y
xn 1 ,
y
xn1
yn1
h2 2
y
xn
h3 3
y xn

1
hf
y
xn1
,
Rn1
h2 2
y xn
h3 3
y xn
1
hf
y
1
xn1,
1
hf
y
xn1,
h2
2
f
y
xn1,
1 (
1 x x2
)
1 x
第13页/共32页
第十四页,共32页。
§1 Euler’s Method
yn1 yn h f (xn1, yn1)
Rn1
y(xn1)
yn1
h2 2
y(xn) O(h3)
第15页/共32页
第十六页,共32页。
若将这两种方法进行算术平均,即可消除误差 的主要部分(bù fen)/*leading term*/ 而获得更高的精度,称为梯形法
§1 Euler’s Method
yn1 (k
)
在迭代公式中取极限,有
yn1 yn h f ( xn1, yn1 ) 因此yn(k1)的极限就是隐式方程的解
第10页/共32页
第十一页,共32页。
几何(jǐ hé)意义
y
设已知曲线上一点 Pn (xn , yn ),过该点 作弦线,斜率为(xn+1 , yn +1 ) 点的方 向场f(x,y)方向,若步长h充分(chōngfèn) 小,可用弦线和垂线x=xn+1的交点近 似曲线与垂线的交点。
改进(gǎijìn)欧拉法 /* modified
ESutelpe1r’:s先m用e显th式o欧d 拉*/公式作预测,算出 yn1 yn h f ( xn, yn)
Step 2: 再将yn1 代入隐式梯形公式的右边作校正,得到
yn1
yn
h[ 2
f
( xn, yn)
f
( xn1, yn1)]
第11页/共32页
第十二页,共32页。
隐式欧拉法的局部 由(jú微b分ù)中截值断定误理,差得:
§1 Euler’s Method
f xn1, yn1 f
xn1, y xn1
f
y
xn1
,
yn1
y
xn1
,
在yn1,y xn1 之间;
又 f
xn1, y xn1
y xn1
y xn hy xn
路的好办法哦
亦称为(chēnɡ wéi)欧拉折线法 第5页//共* 3E2页uler’s polygonal arc method*/
第六页,共32页。
显然,这种近似有一定误差, 而且步长越大,误差越大, 如何估计这种误差y(xn+1) yn+1 ?
§1 Euler’s Method
定义 在假设 yn = y(xn),即第 n 步计算是精确的前提下, 考虑公式或方法本身带来的误差: Rn = y(xn+1) yn+1 , 称为局 部截断误差 /* local truncation error */。
常微分方程数值(shùzí)解法欧拉法
会计学
1
第一页,共32页。
如何求解
解析解法:(常微分方程(wēi fēn fānɡ chénɡ)理论) 只能求解极少一类常微分方程(wēi fēn fānɡ chénɡ);实际中给 定的问题不一定是解析表达式,而是函数表,无法用解析解 法。
数值解法: 求解所有的常微分方程 计算解函数 y(x) 在一系列节点 a = x0< x1<…< xn= b
y(k ) n 1
)
f ( xn1, yn1 )
hL 2
y(k ) n 1
yn1
hL 2
k
1
y(0) n 1
yn1
当 h 2 时, hL 1,
L
2
y (k 1) n 1
yn1 (k
)
在迭代公式中取极限,有
h
yn1 yn 2 f ( xn , yn ) f ( xn1, yn1 ) 因此yn( k1)的极限就是隐式方程的解
局部截断误差的分析:由于假设yn = y(xn) ,即yn准确,因此分析局部 截断误差时将y(xn+1) 和 yn+1都用点xn上的信息来表示,工具:Taylor 展开。
欧拉法的局部(júbù)截断
R误n1差:y(xn1)
yn1
[ y(xn )
hy(xn )
h2 2
y(xn )
O(h3 )]
梯形(tīxíng)公式 /*
— 显、隐式两种算法(suàn fǎ)的
trapeyzno1 idyn
foh2r[mf (xun,layn
)*/
fБайду номын сангаас
(
xn1
,
平均 yn 1 )]
注:的确有局部截断误差 Rn1 y(xn1) yn1 O(h3 ) , 即梯形公式具有2 阶精度,比欧拉方法有了进步。 但注意到该公式是隐式公式,计算时不得不用到迭 代法,其迭代收敛性与欧拉公式相似。
§1 Euler’s Method
xn+1点向后差商近似导数
y( xn1 )
y(xn1) h
y(xn )
y(xn1) y(xn ) hy(xn1)
y(xn ) yn
y(xn1) yn1 yn h f (xn1, yn1)
隐式或后退(hòutuì)欧 拉公式
第9页/共32页
第十页,共32页。
yn1
yn
h 2
f
( xn ,
yn )
f
xn1,
yn
h
f
( xn ,
yn )
第18页/共32页
第十九页,共32页。
§1 Euler’s Method
注:此法亦称为预测-校正法 /* predictor-corrector method */。可以证明该算法具有 2 阶精度,同时可以看到它 是个单步递推格式,比隐式公式的迭代求解过程简单 (jiǎndān)。后面将看到,它的稳定性高于显式欧拉法 。
(gōngsyhìn()ky计1n01算)1复y杂ynn,但hh稳ff定((x性xnn好1,,yynn()k1) )
收敛性
y (k 1) n 1
yn1
h
f
( xn1,
y(k ) n 1
)
f ( xn1, yn1)
hL
y(k ) n 1
yn1
hL
k 1
y(0) n 1
yn1
hL 1,
y (k 1) n 1
其它(qítā)形式
yn +1
yn
h 2
f
(xn , yn )
f
( xn
h, yn
h
f (xn , yn ))

yn +1
1 2
yn hf (xn , yn ) yn hf (xn1, yn+1))
第19页/共32页
第二十页,共32页。

yp
yn
h
f
(xn ,
yn )
yc yn h f (xn1, yp )
Rn1
1
hf
y
xn1,
h2
2
f
y
xn1,
h2 2
y xn
h3 3
y xn
h2 2
y xn
h3 6
3
f
y
xn1,
y xn 2y xn
Rn1
h2 2
y xn o(h2)
隐式欧拉法的局部(júbù)截
断R误n差1 :y(xn1)
yn1
h2 2
y(xn) O(h3)
即隐式欧拉公式具有(jùyǒu) 1 阶精度。
(jùyǒu) 1 阶精度。 在第2章讨论牛顿插值公式时
介绍了差商的概念和性质, 各阶差商可以近似各阶导数,具有不同的精度,
且可以用函数值来表示(biǎoshì)。 上一章中数值微分的方法之一 就是用差商近似导数
在xn点用一阶向前 (xiànɡ qián)差商近似 一阶导数
y(xn )
y(xn1) h
§1 Euler’s Method
Pn+1
Pn
y(x)
xn
xn+1
x
见上图, 显然,这种近似也有一定误差,
如何估计这种误差y(xn+1) yn+1 ? 方法同上,基于Taylor展开估计局部截断误差。 但是注意,隐式公式中右边(yòu bian)含有f(xn+1 , yn +1 ) ,
由于yn +1不准确,所以不能直接用 y' (xn+1)代替f(xn+1 , yn +1 )
处的近似值 yi y( xi ) (i 1, ... , n) 节点间距 hi xi1 xi (i 0, ... , n 1) 为步长,通常采用等距节 点,即取 hi = h (常数)。 步进式:根据已知的或已求出的节点上的函数(hánshù)值 计算当前节点上的函数(hánshù)值,一步一步向前推进。 因此只需建立由已知的或已求出的节点上的函数(hánshù) 值求当前节点函数(hánshù)值的递推公式即可。
§1 Euler’s Method
Taylor展开(zhǎn kāi)法
yn1 yn h f (xn , yn )
--------Euler’s Method
n 0, 1,...
第4页/共32页
第五页,共32页。
几何(jǐ hé)意义
几何直观(zhíguān)是帮助 我们寻找解决一个问题的思
y(xn1) y(xn ) hy(xn )
y(xn )
Euler’s method
y(xn ) yn
y(xn1) yn1 yn h f (xn , yn ) 第8页/共32页
第九页,共32页。
➢ 欧拉公式(gōngshì)的改进 :
隐式欧拉法或后退(hòutuì)欧拉法 /* implicit Euler method or backward Euler method*/
相关文档
最新文档