数值解法的分类 数值解法一般分为: (1)单步法:在计算时,只用到xn+1,xn 和yn,即前一步的值 (2)多步法:计算ym时,除用到xn1,xn和 y以外,还要用x,和yn2(p=1,2…,k,k>0),即前 k步的值。 单步法和多步法都有显式和隐式方法之分。显式 和隐式的单步法可以分别写成: Vn+=yn+ho(x,, ym,h) yn+=n+hg(x, yn, Vm+l,h) 对多步法来说,显式和隐式方法具有相同的意义。 Back 2004-12-13
2004-12-13 6 数值解法的分类 数值解法一般分为: (1)单步法:在计算 时,只用到 , 和 ,即前一步的值。 n x n+1 y n y n +1 x (2)多步法:计算 时,除用到 , 和 以外,还要用 和 ,即前 k步的值。 n+1 y n p y − n+1 x n x n y n p x − ( p =1,2L, k; k > 0) 单步法和多步法都有显式和隐式方法之分。显式 和隐式的单步法可以分别写成: yn+1 = yn + hφ(xn,yn , h) yn+1 = yn + hφ(xn,yn , yn+1, h) 对多步法来说,显式和隐式方法具有相同的意义。 Back
§92 Euler方法 显式欧拉(Euer)方法 设节点为xn=x0+mh(n=0,2,…,n),欧拉方法的计 算公式 vm=y, +hf (x, y,) (n=0,1, 2, 这是一种最简单的显式单步方法,该方法可以通 过不同的途径获得 1、差商法 用两点差商公式)2代替导数y(x),再用y1 表示y(x)的近似值,则得到 n+1 =f(xn2yn)(n=0,2…) 2004-12-13 7
2004-12-13 7 §9.2 Euler方法 一、显式欧拉(Euler)方法 设节点为 ,欧拉方法的计 算公式 xn = x0 + nh(n = 0,1,2,L,n) yn+1 = yn + hf(xn,yn)(n = 0,1,2,L) 这是一种最简单的显式单步方法,该方法可以通 过不同的途径获得。 ( , )( 0,1,2, ) 1 = = L + − f x y n h y y n n n n 1、差商法 用两点差商公式 代替导数 ,再用 表示 的近似值,则得到 n n n n x x y x y x − − + + 1 1 ( ) ( ) n y ( ) n y x ( ) n y′ x
显式欧拉(Euer)方法(续) 2、 Taylor,展开法 假设在n附近把y(x)展成 Tayler级数 v(r,+h=y(xn)+hy(xn)+y(xn)+ 取h的线性部分,并用y表示y(xn)的近似值,得 mn+1=yn +hf(n, yn(n=0, 1, 2, . 3、数值积分法 对微分方程两端从xn到xn1积分,得等价的积分方程 y(rm+1)=y(rn)+ f(t,y(t)dt 对右端的积分部分采用左矩形公式近似即得Euer公式。 Remark: Taylor,展开法与数值积分法是构造微分方程 数值解的两类主要的方法 2004-12-13
2004-12-13 8 显式欧拉(Euler)方法 (续) 假设在xn 附近把y(x)展成Tayler级数 + = + + ''( ) +L 2 ( ) ( ) '( ) 2 n n n n y x h y x h y x hy x 取h的线性部分,并用yn表示 y(xn ) 的近似值,得 ( , )( 0,1,2, ) yn+1 = yn + hf xn yn n = L 2、Taylor展开法 3、数值积分法 ∫ + + = + 1 ( ) ( ) ( , ( )) 1 nnxx y xn y xn f t y t dt 对微分方程两端从xn到xn+1积分,得等价的积分方程 对右端的积分部分采用左矩形公式近似即得Euler公式。 Remark:Taylor展开法与数值积分法是构造微分方程 数值解的两类主要的方法
欧拉(Euer)方法的几何意义 Eule方法有明显的几何意义。y 如右图所示,一阶常微分方 程初值问题的解曲线x过P0y)y2)) 点Px)。从P出发以 f(xo3yo)为斜率作一直线段, 2 与x=x1相交于点P1(x13y1), 显然有y=y0+6(x030 xo=0 x1 x x3 同理,再由P1出发以x11)为斜率作一直线段,与x=x2 相交于点P2(x22),显然有y2=y1+b(x1y1)。这样一直做 下去,得到一条折线PP1P2……,作为y(x)的近似曲线 因此,Eule方法又称为 Euler折线法, 2004-12-13
2004-12-13 9 欧拉(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方法又称为Euler折线法
隐式Euer方法和 Euler方法的改进 若在等价积分方程 V(n+p=y(x,+ f(t, y(t)dt 中将积分用右矩形公式 f(x)ax≈(b-a)f(b) (b-a)2,(m∈(a2b) 代入,有 y(xn+)≈y(xn)+f(xn+1,y(xn+1),n=0,1,2, 从而得到yn1≈yn+hf(xn1,yn1),n=0,2 上式是一个隐式的单步方法,称为隐式欧拉法或后退 的欧拉法。利用此方法,每一步都要把上式作为yn+1 的一个方程来求解。从数值积分的误差分析,很难期 望隐式欧拉法比显式欧拉法更精确 2004-12-13
2004-12-13 10 二、隐式Euler方法和Euler方法的改进 y x y x f t y t dt n n x x n ) ( n) ∫ ( , ) + + = + 1 ( ( ) 1 中将积分用右矩形公式 ( ) ,( ( , )) 2 '( ) 2 b a a b f f x dx b a f b b a ≈ − − − ∈ ∫ η η ( ) ( ) ( ) 代入,有 y(xn+1) ≈ y(xn ) + hf (xn+1, y(xn+1)),n = 0,1,2,K 若在等价积分方程 从而得到 yn+1 ≈ yn + hf (xn+1, yn+1),n = 0,1,2,K 上式是一个隐式的单步方法,称为隐式欧拉法或后退 的欧拉法。利用此方法,每一步都要把上式作为yn+1 的一个方程来求解。从数值积分的误差分析,很难期 望隐式欧拉法比显式欧拉法更精确