第五章:常微分方程数值解法第一节欧拉法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
method or backward Euler method*/
§1 Euler’s Method
xn+1点向后差商近似导数
y ( xn 1 ) y ( xn ) y( xn 1 ) h y ( xn 1 ) y ( xn ) hy( xn 1 )
y ( xn ) yn y ( xn 1 ) yn 1 yn h f ( xn 1 , yn 1 )
解的存在唯一性(“常微分方程”理论):只要 f (x, y) 在[a, b] R1 上连续,且关于 y 满足 Lipschitz 条件,即存在与 x, y 无关的常数 L 使 | f ( x, y ) f ( x, y ) | L | y y |
1 2 1 2
对任意定义在 [a, b] 上的 y1(x) 和 y2(x) 都成立,则上述IVP存 在唯一解。
h2 又 f xn 1 , y xn 1 y xn 1 y xn hy xn y xn 2 yn 1 hf y xn 1 , yn 1 y xn 1 y xn 3 h hy xn h 2 y xn y xn 2 而 h2 h3 y xn 1 y xn hy xn y xn y xn 2 6
显然,这种近似有一定误差, 而且步长越大,误差越大, 如何估计这种误差y(xn+1) yn+1 ?
定义 在假设 yn = y(xn),即第 n 步计算是精确的前提下,考 虑公式或方法本身带来的误差: Rn = y(xn+1) yn+1 , 称为局部 截断误差 /* local truncation error */。
2
1 1 hf y xn 1 ,
1 hf y xn 1 , h
f x
y
n 1
,

2
பைடு நூலகம்
1 ( 1 x x 2 ) 1 x
§1 Euler’s Method
2 3 2 h h 2 Rn1 1 hf y xn1 , h f y xn1 , y xn y xn 3 2 h2 h3 y xn 3 f y xn1 , y xn 2 y xn 2 6 h2 Rn1 y xn o(h2 ) 2
y( xn ) O(h3 )
定义 若某算法的局部截断误差为 O(hp+1),则称该算法有 p 阶精度。 欧拉法具有 1 阶精度。
§1 Euler’s Method
在第2章讨论牛顿插值公式时 介绍了差商的概念和性质, 各阶差商可以近似各阶导数,具有不同的精度, 且可以用函数值来表示。 上一章中数值微分的方法之一 就是用差商近似导数 在xn点用一阶向前差 商近似一阶导数
注:的确有局部截断误差 Rn1 y( xn1 ) yn1 O(h ) , 即梯形公式具有2 阶精度,比欧拉方法有了进步。但 注意到该公式是隐式公式,计算时不得不用到迭代 法,其迭代收敛性与欧拉公式相似。
3
梯形法的迭代计算和收敛性 0 yn 1 yn h f ( xn , yn ) ( k 1) h (k ) y y f ( x , y ) f ( x , y n n n n 1 n 1 ) n 1 2
§1 Euler’s Method
y Pn+1 Pn y(x)
xn
xn+1
x
见上图, 显然,这种近似也有一定误差,
如何估计这种误差y(xn+1) yn+1 ? 方法同上,基于Taylor展开估计局部截断误差。 但是注意,隐式公式中右边含有f(xn+1 , yn +1 ) , 由于yn +1不准确,所以不能直接用 y' (xn+1)代替f(xn+1 , yn +1 )
§1 Euler’s Method
从而 Rn 1 y ( xn 1 ) yn 1 hf y xn 1 , y xn 1 yn 1 h2 h3 y xn y xn 2 3 即 1 hf x , R y n 1 n 1 h2 h3 y xn y xn 2 3
梯形法的简化计算
§1 Euler’s Method
迭代计算量大,且难以预测迭代次数。为了控制计算量,通常只迭代 一次就转入下一点的计算。用显式公式作预测,梯形公式作校正,得到如
第五章 常微分方程数值解
/* Numerical Methods for Ordinary Differential Equations */
待求解的问题:一阶常微分方程的初值问题 /* Initial-Value Problem */:
dy f ( x, y) dx y ( a ) y0 x [a , b ]
yn1 yn h f ( xn , yn )
n 0, 1,...
--------Euler’s Method
几何意义
几何直观是帮助我们寻 找解决一个问题的思路 的好办法哦 亦称为欧拉折线法
/* Euler’s polygonal arc method*/
§1 Euler’s Method
隐式或后退欧拉公式
0 yn 1 yn h f ( xn , yn ) ( k 1) (k ) y y h f ( x , y n n 1 n 1 ) n 1 收敛性
由于未知数 yn+1 同时出现在等式的两边,故称为隐式 /* implicit */ 欧拉公式,而前者称为显式 /* explicit */ 欧拉公 式。隐式公式不能直接求解,一般需要用Euler显式公式 得到初值,然后用Euler隐式公式迭代求解。因此隐式公 式较显式公式计算复杂,但稳定性好
y( xn ) O(h3 )
§1 Euler’s Method
若将这两种方法进行算术平均,即可消除误差 的主要部分/*leading term*/ 而获得更高的精度,称为梯形法
梯形公式 /* trapezoid formula */
— 显、隐式两种算法的平均
h yn 1 yn [ f ( xn , yn ) f ( xn 1 , yn 1 )] 2
§1 欧拉方法 /* Euler’s Method */
§1 Euler’s Method
y ( xn 1 ) y ( xn ) hy ( xn ) y ( xn ) yn y ( xn 1 ) yn 1 yn h f ( xn , yn )
Taylor展开法
y ( xn 1 ) y ( xn ) hy ( xn )
Euler’s method
y ( xn 1 ) y ( xn ) y( xn ) h
y ( xn ) yn y ( xn 1 ) yn 1 yn h f ( xn , yn )
欧拉公式的改进: 隐式欧拉法或后退欧拉法 /* implicit Euler
§1 Euler’s Method
( k 1) (k ) yn y h f ( x , y 1 n 1 n 1 n 1 ) f ( xn 1 , yn 1 )
hL y
(k ) n 1
yn 1 hL
k 1
(0) yn 1 yn 1
( k 1) hL 1, yn yn 1 (k ) 1
欧拉法的局部截断误差: 3 h2 Rn1 y( xn1 ) yn1 [ y ( xn ) hy ( xn ) 2 y ( xn ) O(h )]
Rn+1 的主项
/* leading term */
[ yn hf ( xn , yn )]
h2 2
节点间距 hi xi 1 xi (i 0, ... , n 1) 为步长,通常采用等距节点, 即取 hi = h (常数)。 步进式:根据已知的或已求出的节点上的函数值计算 当前节点上的函数值,一步一步向前推进。因此只需 建立由已知的或已求出的节点上的函数值求当前节点 函数值的递推公式即可。
如何求解
解析解法:(常微分方程理论) 只能求解极少一类常微分方程;实际中给定的问题不一 定是解析表达式,而是函数表,无法用解析解法。 数值解法: 求解所有的常微分方程 计算解函数 y(x) 在一系列节点 a = x0< x1<…< xn= b 处的近似值
yi y( xi ) (i 1, ... , n)
§1 Euler’s Method
收敛性
y
( k 1) n 1
yn 1
h (k ) f ( xn 1 , yn 1 ) f ( xn 1 , yn 1 ) 2
k 1
h hL (k ) (0) L yn 1 yn 1 y n 1 yn 1 2 2 2 hL ( k 1) 当 h 时, 1, yn yn 1 ( k ) 1 L 2 在迭代公式中取极限,有 h yn 1 yn f ( xn , yn ) f ( xn 1 , yn 1 ) 2 (k ) 因此yn 的极限就是隐式方程的解 1
说明
§1 Euler’s Method
截断误差: 实际上,y(xn) yn, yn 也有误差,它对yn+1的误差 也有影响,见下图。但这里不考虑此误差的影响,仅考虑方 法或公式本身带来的误差,因此称为方法误差或截断误差。
局部截断误差的分析:由于假设yn = y(xn) ,即yn准确,因此 分析局部截断误差时将y(xn+1) 和 yn+1都用点xn上的信息来表 示,工具:Taylor展开。


隐式欧拉法的局部截断误差: Rn1 y( xn1 ) yn1 h2 y( xn ) O(h3 )
2
即隐式欧拉公式具有 1 阶精度。
§1 Euler’s Method
比较尤拉显式公式和隐式公式及其局部截断误差
显 式 yn1 yn h f ( xn , yn ) n 0, 1,... 公 3 h2 R y ( x ) y y ( x ) O ( h ) 式 n1 n1 n1 n 2 隐 yn1 yn h f ( xn1 , yn1 ) 式 h2 公 Rn1 y( xn1 ) yn1 2 式
§1 Euler’s Method
隐式欧拉法的局部截断误差:
由微分中值定理,得 f xn 1 , yn 1 f xn 1 , y xn 1 f y xn 1 , yn 1 y xn 1 ,
在yn 1,y xn 1 之间;
在迭代公式中取极限,有 yn 1 yn h f ( xn 1 , yn 1 )
(k ) 因此yn 的极限就是隐式方程的解 1
几何意义
设已知曲线上一点 Pn (xn , yn ),过该 点作弦线,斜率为(xn+1 , yn +1 ) 点的 方向场f(x,y)方向,若步长h充分小, 可用弦线和垂线x=xn+1的交点近似 曲线与垂线的交点。
相关文档
最新文档