matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程

matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程

ID:44023241

大小:242.00 KB

页数:7页

时间:2019-10-18

matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程_第1页
matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程_第2页
matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程_第3页
matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程_第4页
matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程_第5页
matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程_第6页
matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程_第7页
资源描述:

《matlab改进欧拉法与四阶龙格库塔求解一阶常微分方程》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、姓名:樊元君学号:2012200902日期:2012.11.06一、实验目的掌握MATLAB语言、C/C++语言编写计算程序的方法、掌握改进欧拉法与四阶龙格-库塔求解一阶常微分方程的初值问题。掌握使用MATLAB程序求解常微分方程问题的方法。二、实验内容1、分别写出改进欧拉法与四阶龙格-库塔求解的算法,编写程序上机调试出结果,要求所编程序适用于任何一阶常微分方程的数值解问题,即能解决这一类问题,而不是某一个问题。实验中以下列数据验证程序的正确性。求,步长h=0.25。2、实验注意事项的精确解为,通过调整步长,观察结果的精度的变化7

2、三、程序流程图:●改进欧拉格式流程图:7●四阶龙格库塔流程图:四、源程序:●改进后欧拉格式程序源代码:function[]=GJOL(h,x0,y0,X,Y)formatlongh=input('h=');x0=input('x0=');y0=input('y0=');disp('输入的范围是:');X=input('X=');Y=input('Y=');n=round((Y-X)/h);i=1;x1=0;yp=0;yc=0;fori=1:1:nx1=x0+h;7yp=y0+h*(-x0*(y0)^2);%yp=y0+h*(y0-

3、2*x0/y0);%yc=y0+h*(-x1*(yp)^2);%yc=y0+h*(yp-2*x1/yp);%y1=(yp+yc)/2;x0=x1;y0=y1;y=2/(1+x0^2);%y=sqrt(1+2*x0);%fprintf('结果=%.3f,%.8f,%.8f',x1,y1,y);endend●四阶龙格库塔程序源代码:function[]=LGKT(h,x0,y0,X,Y)formatlongh=input('h=');x0=input('x0=');y0=input('y0=');disp('输入的范围是:');X

4、=input('X=');Y=input('Y=');n=round((Y-X)/h);i=1;x1=0;k1=0;k2=0;k3=0;k4=0;fori=1:1:nx1=x0+h;k1=-x0*y0^2;%k1=y0-2*x0/y0;%k2=(-(x0+h/2)*(y0+h/2*k1)^2);%k2=(y0+h/2*k1)-2*(x0+h/2)/(y0+h/2*k1);%k3=(-(x0+h/2)*(y0+h/2*k2)^2);%k3=(y0+h/2*k2)-2*(x0+h/2)/(y0+h/2*k2);%k4=(-(x1)*(

5、y0+h*k3)^2);%k4=(y0+h*k3)-2*(x1)/(y0+h*k3);%y1=y0+h/6*(k1+2*k2+2*k3+k4);%y1=y0+h/6*(k1+2*k2+2*k3+k4);%x0=x1;y0=y1;y=2/(1+x0^2);%y=sqrt(1+2*x0);%fprintf('结果=%.3f,%.7f,%.7f',x1,y1,y);endend7五、运行结果:改进欧拉格式结果:7四阶龙格库塔结果:步长分别为:0.25和0.1时,不同结果显示验证了步长减少,对于精度的提高起到很大作用,有效数字位数明显

6、增加。7六、实验小结:通过这次实验学习,首先第一点对改进欧拉格式和四阶龙格库塔的原理推导有了深入的理解,改进欧拉格式采用(预报+校正)模式得到较精确的原函数数值解;而四阶龙格库塔则采用多预报几个点的斜率值,采用加权平均作为平均斜率的近似值的思想达到更高精度的数值解,二阶龙格库塔的特例就是改进后的欧拉格式。七、思考题:如何对四阶龙格-库塔法进行改进,以保证结果的精度。答:可以通过计算结果的精度处理步长来保证结果的精度。(1)步长折半。对于给定精度,如果某次计算结果精度,,反复将步长减半,直到,这时的可作为结果。(2)步长加倍。对于给

7、定精度,如果某次计算结果精度,,反复将步长加倍,直到,这时的可作为结果。7

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

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

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