最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

数值计算方法后退欧拉法,龙格库塔法(三阶,四阶方法)

来源:动视网 责编:小OO 时间:2025-09-29 02:57:25
文档

数值计算方法后退欧拉法,龙格库塔法(三阶,四阶方法)

数值计算方法实验课测验作业——微分方程求解的后退欧拉法,龙格库塔法(三阶,四阶方法)日期:2011-06-17一、实验目的1.学习matlab的使用方法。2.掌握常微分方程的几种数值解法:后退欧拉法,龙格库塔法三阶方法,龙格库塔法四阶方法。3.比较各方法的数值解及误差,了解各方法的优缺点。二、实验题目给定的初值问题y′=-y+x+2,0≤x≤1y(0)=-1,取精确解y(x)=exp(-x)+x按(1)后退欧拉法,步长h=0.003,h=0.1;(2)龙格库塔法三阶方法,步长h=0.1;(3)
推荐度:
导读数值计算方法实验课测验作业——微分方程求解的后退欧拉法,龙格库塔法(三阶,四阶方法)日期:2011-06-17一、实验目的1.学习matlab的使用方法。2.掌握常微分方程的几种数值解法:后退欧拉法,龙格库塔法三阶方法,龙格库塔法四阶方法。3.比较各方法的数值解及误差,了解各方法的优缺点。二、实验题目给定的初值问题y′=-y+x+2,0≤x≤1y(0)=-1,取精确解y(x)=exp(-x)+x按(1)后退欧拉法,步长h=0.003,h=0.1;(2)龙格库塔法三阶方法,步长h=0.1;(3)
数值计算方法实验课测验作业——微分方程求解的后退欧拉法,龙格库塔法(三阶,四阶方法)

日期: 2011-06-17

     一、    实验目的

1.   学习matlab的使用方法。

2.   掌握常微分方程的几种数值解法:后退欧拉法,龙格库塔法三阶方法,龙格库塔法四阶方法。

3.  比较各方法的数值解及误差,了解各方法的优缺点。

    二、     实验题目

给定的初值问题

  y′=-y+x+2,0≤x≤1

y(0)=-1,

取精确解 y(x)=exp(-x)+x

按   (1) 后退欧拉法,步长h=0.003, h=0.1;

         (2) 龙格库塔法三阶方法,步长h=0.1;

         (3) 龙格库塔法四阶方法,步长h=0.1;

求在节点xk=1+0.1k (k=1,2,3……10)处的数值解及误差比较各方法的优缺点。

    三、   实验原理

1.对于后退欧拉法:

利用Yn+1 = Yn + 1/2*K1 + 1/2*K2①    n = 1, 2, 3……

K1 = hf(Xn, Yn)         ②    

   K2 = hf(Xn + h, Yn + K1) ③    三式可以完成计算

需要将微分方程表达式和精度计算表达式作为两个函数保存在m文件里并在程序中调用:

①微分方程(oulei_wf)

function z=oulei_wf(x,y)

z=-y+x+2

end

②精确解计算(ouleij_q)

function z=ouleij_q(x)

z=exp(-x)+x

end

2.对于龙哥库塔三阶:

利用Yn+1 = Yn + h/6(K1 + 4K2 + K3 )    ①      

              K1 = f(Xn, Yn)                  ②       

              K2 = f(Xn + 1/2*h, Yn +( h/2)*K1)  ③         

    K3= f(Xn + h, Yn - K1+2*h*k2)    ④     四式可以完成计算

 

3.对于龙哥库塔四阶:

利用Yn+1 = Yn + 1/6(K1 + 2K2 + 2K3 +K4)  ①      

              K1 = hf(Xn, Yn)                  ②       

              K2 = hf(Xn + 1/2*h, Yn + 1/2*K1)   ③       

    K3 = hf(Xn + 1/2*h, Yn + 1/2*K2)   ④       

    K4 = hf(Xn + h, Yn + K3)          ⑤     四式可以完成计算

四、 实验内容

由上述实验原理叙述的后退欧拉法,龙哥库塔三阶,龙哥库塔四阶几种常微分方程数值解法分别对已给定的初值问题进行求解,比较各方法的数值解及误差,了解各方法的优缺点。

五、实验结果

1. 对于后退欧拉法:

①若>>h=0.1;

 y=-1;

 x=1;

for i=1:20

k1=h*oulei_wf(x,y);

k2=h*oulei_wf(x+h,y+k1);

y=y+0.5*k1+0.5*k2

x=x+h;

z=ouleij_q(x)

t=y-z

end

z = 4,z = 3.7000,y = -0.6150

z = 1.4329, z =1.4329, t = -2.0479

z =3.7150, z =3.4435, y = -0.2571

z =1.5012, z =1.5012, t =-1.7583

z =3.4571, z = 3.2114, y =0.0763

z =1.5725, z =1.5725, t =-1.4962

z =3.2237, z = 3.0013, y =0.3876

z =1.66, z =1.66, t =-1.2590

z =3.0124,z =2.8112,y =0.6788

z =1.7231,z =1.7231,t =-1.0444

z =2.8212,z = 2.6391,y =0.9518

z =1.8019,z =1.8019,t =-0.8501

z = 2.82,z =2.4834,y =1.2084

z =1.8827,z =1.8827, t =-0.6743

z =2.4916,z =2.3425, y =1.4501

z =1.9653,z =1.9653, t =-0.5152

2.对于龙哥库塔三阶:

   ①若>> clear all

h=0.1;

 y=-1;

 x=1;

for i=1:25;

k1=oulei_wf(x,y);

k2=oulei_wf(x+h/2,y+k1*(h/2));

k3=oulei_wf(x+h,y-k1*h+k2*(2*h));

y=y+(k1+4*k2+k3)*(h/6);

x=x+h;

z=ouleij_q(x);

t=abs(y-z);

A=[x y z t]

end

z = 4,z = 3.8500,z = 3.7300,z =1.4329

A = 1.1000   -0.6145    1.4329    2.0474

z =3.7145z=3.5788z = 3.4702z =1.5012

A = 1.2000   -0.2562    1.5012    1.7574

z =3.4562z =3.3334z =3.2351z =1.5725

A = 1.3000    0.0776    1.5725    1.4950

z = 3.2224z =3.1113z =3.0224z =1.66

A = 1.4000    0.31    1.66    1.2575

z = 3.0109z = 2.9104z =2.8299z =1.7231

A =1.5000    0.6804    1.7231    1.0427

z =2.8196z =2.7286z =2.6558z =1.8019

A = 1.6000    0.9536    1.8019    0.8483

z =2.z =2.51z =2.4982z =1.8827

A = 1.7000    1.2103    1.8827    0.6724

z =2.47z =2.4152z =2.3556z =1.9653

A =1.8000    1.4521    1.9653    0.5132

z =2.3479z =.2805z =2.2266z =2.0496

A =1.9000    1.6803    2.0496    0.3692

3. 龙哥库塔四阶:

>> clear all

h=0.1;

 y=-1;

 x=1;

for i=1:25;

k1=oulei_wf(x,y);

k2=oulei_wf (x+h/2,y+k1*(h/2));

k3=oulei_wf (x+h/2,y+k2*(h/2));

k4=oulei_wf (x+h,y+h*k3);

y=y+(k1+2*k2+2*k3+k4)*(h/6);

x=x+h;

z=ouleij_q(x);

t=abs(y-z);

A=[x y z t]

end

z =4z =3.8500z =3.8575z =3.7142z =1.4329

A =1.1000   -0.6145    1.4329    2.0474

z =3.7145z =3.5788z =3.5856z =3.4560z =1.5012

A =1.2000   -0.2562    1.5012    1.7574

z =3.4562z =3.3334z =3.3395z =3.2222z =1.5725

A =1.3000    0.0775    1.5725    1.4950

z =3.2225z =3.1113z =3.1169z =3.0108z =1.66

A =1.4000    0.30    1.66    1.2576

z =3.0110z =2.9104z =2.9154z =2.8194z =1.7231

A =1.5000    0.6804    1.7231    1.0427

z =2.8196z =2.7286z =2.7332z =2.63z =1.8019

A =1.6000    0.9536    1.8019    0.8483

z =2.z =2.51z =2.5682z =2.46z =1.8827

A =1.7000    1.2102    1.8827    0.6724

z =2.48z =2.4153z =2.4190z =2.3479z =1.9653

A =1.8000    1.4520    1.9653    0.5133

z =2.3480z =2.2806z =2.2840z =2.2196z =2.0496

A =1.9000    1.6803    2.0496    0.3693

z =2.2197z =2.1587z =2.1618z =2.1035z =2.1353

A =2.0000    1.    2.1353    0.2390

z =2.1036z =2.0485z =2.0512z =1.9985z =2.2225

A =2.1000    2.1014    2.2225    0.1211

z =1.9986z =1.9487z =1.9512z =1.9035z =2.3108

A =2.2000    2.29    2.3108    0.0144

六、实验结果分析

1.对于欧拉法,步长越小,精度越高,而产生的误差越小。总体来说,欧拉法的优点是形式简单,计算方便,缺点是总的运算精度比较低。而且随着x的增大,误差值也越来越大。根据欧拉公式的截断误差计算,欧拉法是一阶方法。

2.对于改进欧拉法,其基本特征与欧拉法相似,也是步长越小,精度越高,误差越小。优点是精度相对欧拉法来说较高,截断误差为O(h^3),缺点是比欧拉法计算量大。根据欧拉改进法公式的截断误差计算,欧拉改进法是二阶方法。

3.对于龙格—库塔法,优点是精度更高,同样的步长下精度比欧拉法高的多,误差更小 ,截断误差为O(h^5),故龙格—库塔法是四阶方法。缺点是每步都要计算四次微分值。

4.综上,选取方法时,可综合考虑精度要求和复杂度控制要求等实际需要,从而选择适当的方法求解。

文档

数值计算方法后退欧拉法,龙格库塔法(三阶,四阶方法)

数值计算方法实验课测验作业——微分方程求解的后退欧拉法,龙格库塔法(三阶,四阶方法)日期:2011-06-17一、实验目的1.学习matlab的使用方法。2.掌握常微分方程的几种数值解法:后退欧拉法,龙格库塔法三阶方法,龙格库塔法四阶方法。3.比较各方法的数值解及误差,了解各方法的优缺点。二、实验题目给定的初值问题y′=-y+x+2,0≤x≤1y(0)=-1,取精确解y(x)=exp(-x)+x按(1)后退欧拉法,步长h=0.003,h=0.1;(2)龙格库塔法三阶方法,步长h=0.1;(3)
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top