实验八 求解常微分方程的初值问题

实验八 求解常微分方程的初值问题

ID:38697794

大小:106.50 KB

页数:5页

时间:2019-06-17

实验八 求解常微分方程的初值问题_第1页
实验八 求解常微分方程的初值问题_第2页
实验八 求解常微分方程的初值问题_第3页
实验八 求解常微分方程的初值问题_第4页
实验八 求解常微分方程的初值问题_第5页
资源描述:

《实验八 求解常微分方程的初值问题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、山西大学计算机与信息技术学院实验报告姓名学号专业班级2011级计算机科学与技术课程名称计算方法实验日期2013.12.04成绩指导教师批改日期实验名称实验七求解常微分方程的初值问题一、实验目的:用欧拉方法、改进的欧拉方法和四阶龙格-库塔方法求解常微分方程的初值问题,并比较各种方法优缺点。二、实验方法:(1)欧拉方法(2)改进的欧拉方法(3)四阶经典龙格-库塔方法三、实验内容:用欧拉方法、改进的欧拉方法和四阶经典龙格-库塔方法求解常微分方程的初值问题的数值解(取h=0.1),并将计算结果与准确解进行比较。四、实验程序(1)欧拉方法#include

2、dio.h>#includedoublefunction1(doublex){returnpow((1+x*x),3/2);}doublefunction2(doublex,doubley){return(2.0/3.0)*x*pow(y,-2.0);}intmain(){doublex0=0.0;doubley0=1;doublex1;doubley1;doubleh=0.1;while(x0<1){x0=x0+0.1;y1=y0+h*function2(x0,y0);printf("当x0为%6.6f时,y0=%6.6f",x

3、0-0.1,y0);y0=y1;}return0;}(2)改进的欧拉方法#include#includedoublefunction2(doublex,doubley){return(2.0/3.0)*x*pow(y,-2.0);}intmain(){doublex0=0.0;doubley0=1;doubleT1,T2;doublex1;doubley1;doubleh=0.1;while(x0<=1){T1=y0+h*function2(x0,y0);T2=y0+h*function2(x0+h,T1);y1=(

4、T1+T2)/2;printf("当x0为%6.6f时,y0=%6.6f",x0,y0);x0=x0+0.1;y0=y1;}return0;}(3)四阶经典龙格-库塔方法#include#include#include#includeintmain(){doublex0=0,y0=1.0,h=0.2,b=1;doublek1,k2,k3,k4,x1,y1;inti=0;intn;doublef(doublex,doubley);n=(int)((b-x0)/h);for(i=

5、1;i<=n;i++){x1=x0+h;k1=f(x0,y0);k2=f(x0+h/2.0,y0+h*k1/2.0);k3=f(x0+h/2.0,y0+h*k2/2.0);k4=f(x0+h/2.0,y0+h*k3/2.0);y1=y0+h*(k1+k2*2.0+k3*2.0+k4)/6.0;y0=y1;x0=x1;printf("%f,%f",x0,y0);}return0;}doublef(doublex,doubley){return(2.0/3*x)*pow(y,-2.0);}五、实验结果:欧拉公式:改进的欧拉公式:四阶龙格库塔:六、

6、结果分析:欧拉方法和龙格-库塔方法都是将微分方程离散化为差分方程求解,是步进式方法,欧拉方法由于精度低,在实际中很少使用,但由于公式简单,直观,对学习其他方法有启示作用。四阶龙格-库塔公式由于精度高,易于编程,因此得到了广泛应用。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。