微分方程数值解实验

上传人:ni****g 文档编号:455814976 上传时间:2023-11-11 格式:DOC 页数:26 大小:394.50KB
返回 下载 相关 举报
微分方程数值解实验_第1页
第1页 / 共26页
微分方程数值解实验_第2页
第2页 / 共26页
微分方程数值解实验_第3页
第3页 / 共26页
微分方程数值解实验_第4页
第4页 / 共26页
微分方程数值解实验_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《微分方程数值解实验》由会员分享,可在线阅读,更多相关《微分方程数值解实验(26页珍藏版)》请在金锄头文库上搜索。

1、微分方程数值解课程设计报告 班级:_ 姓名: _ 学号: _ 成绩: 6月 21 日 目 录一、摘 要1二、常微分方程数值解22.1 4阶Runge-Kutta法和Adams4阶外插法的基本思路22.2 算法流程图22.3 用matlab编写源程序22.4 常微分方程数值解法应用举例4三、 常系数扩散方程的典型差分格式63.1 有限差分法的基本思路63.2 算法流程图73.3 用matlab编写源程序73.4 有限差分法应用举例8四、 椭圆型方程的五点差分格式104.1 五点差分法的基本思路104.2 算法流程图114.3 用matlab编写源程序114.4 五点差分法应用举例12五、 自我总

2、结16六、参照文献16一、摘 要自然界与工程技术中的诸多现象,可以归结为微分方程定解问题。其中,常微分方程求解是微分方程的重要基本内容。但是,对于许多的微分方程,往往很难得到甚至不存在精确的解析体现式,这时候,数值解提供了一种较好的解决思路。,针对于此,本文对常微分方程数值解法进行了简朴研究,重要讨论了某些常用的数值解法,如欧拉法、改善的欧拉法、RungeKutta措施、Adams法以及椭圆型方程、抛物型方程的有限差分措施等,通过具体的算例,结合MATLAB求解画图,初步给出了一般常微分方程数值解法的求解过程。同步,通过对多种措施的误差分析,让人们对多种措施的特点和合用范畴有一种直观的感受。核

3、心词:微分方程数值解、MATLAB 二、常微分方程数值解2.1 基本思路常微分方程数值解法(numerical methods forordinary differential equations)计算数学的一种分支.是解常微分方程各类定解问题的数值措施.既有的解析措施只能用于求解某些特殊类型的定解问题,实用上许多很有价值的常微分方程的解不能用初等函数来表达,常常需规定其数值解.所谓数值解,是指在求解区间内一系列离散点处给出真解的近似值.这就促成了数值措施的产生与发展.常微分方程初值问题的数值解法是求方程(1)的解在点列上的近似值,这里是到的步长,一般略去下标记为。 (1) 典型的措施是一种四

4、阶的措施,它的计算公式是: (2)措施的长处是:单步法、精度高,计算过程便于变化步长,缺陷是计算量较大,每迈进一步需要计算四次函数值。在用龙格库塔措施时,要注意的选择要合适,太大,会使计算量加大,太小,较大,也许会使误差增大。因此选择合适的很重要。我们要在考虑精度的基本上,选择合适的。2.2 算法环节2.2.1、四阶龙格库塔(R-K)措施流程图:输入待求微分方程、求解的自变量范畴、初值以及求解范畴内的取点数等。拟定求解范畴内的步长k = 取点数?否求解:求解并输出:是结束算法2.2.2、Adams4阶外插法流程图:输入待求微分方程、求解的自变量范畴、初值以及求解范畴内的取点数等。拟定求解范畴内

5、的步长k = 取点数?否求解: 求解并输出:是结束算法2.2.3、实例求解流程:输入求解的自变量范畴求出待求简朴微分方程的真值解用MATLAB自带函数ode45求解待求微分方程结束用自编函数Adams4阶外插法措施求解待求微分方程开始2.3 用matlab编写源程序Matlab程序源代码:-定义Rk4.m文献-function dy = Rk4 (x,y) dy=zeros(3,1); dy(1)=10*(-y(1)+y(2); dy(2)=28*y(1)-y(2)-y(1)*y(3); dy(3)=y(1)*y(2)-8*y(3)/3; end-定义Adams4.m文献-function x

6、,y,z=adams4(x1,y1,z1,x2,y2,z2,x3,y3,z3,h)%Adams外插法kfy=0;ksy=0;kty=0;kfz=0;ksz=0;ktz=0; kfx=10*(y3-x3); %eval_r(abx);kfy=x3*(28-z3)-y3;%eval_r(aby);kfz=x3*y3-8/3*z3; %eval_r(abz); ksx=10*(y2-x2); ksy=x2*(28-z2)-y2;ksz=x2*y2-8/3*z2; ktx=10*(y1-x1 ); kty=x1*(28-z1)-y1;ktz=x1*y1-8/3*z1; x=x3+h/12*(23*kf

7、x-16*ksx+5*ktx);y=y3+h/12*(23*kfy-16*ksy+5*kty);z=z3+h/12*(23*kfz-16*ksz+5*ktz);end-定义exe11.m文献-t,y=ode45(Rk4,0,30,12,2,9)suptitle(Runge-Kutta4阶法) %总标题subplot(2,2,1);plot(t,y(:,1);grid on;legend(x有关t 的变化关系图,1);xlabel(t,FontSize,14);ylabel(x,FontSize,14);subplot(2,2,2);plot(t,y(:,2);grid on;legend(y有

8、关t 的变化关系图,1);xlabel(t,FontSize,14);ylabel(y,FontSize,14);subplot(2,2,3)plot(t,y(:,3);grid on;legend(z有关t 的变化关系图,1);xlabel(t,FontSize,14);ylabel(z,FontSize,14);subplot(2,2,4)plot3(y(:,1),y(:,2),y(:,3);grid on;legend(x,y,z的空间关系图,1);xlabel(x,FontSize,14);ylabel(y,FontSize,14);zlabel(y,FontSize,14);view

9、(40,60); %锁定同样的视图,便于比较-定义exe12.m文献-a=1:1:3000;b=1:1:3000;c=1:1:3000;t=1:1:3000;x1=5; y1=5; z1=10; x2=7.83; y2=14.30; z2=12.34;x3=15.32; y3=22.87; z3=28.07;for i=1:1:3000 x,y,z=adams4(x1,y1,z1,x2,y2,z2,x3,y3,z3,0.01);a(i)=x;b(i)=y;c(i)=z;x1=x2;y1=y2;z1=z2;x2=x3;y2=y3;z2=z3;x3=x;y3=y;z3=z;fprintf(x=%f

10、y=%fz=%fn,x,y,z);%显示迭代值end suptitle(Adams4阶外插法) %总标题subplot(2,2,1);plot(t,a);grid on; legend(x有关t 的变化关系图,1);xlabel(t,FontSize,14);ylabel(x,FontSize,14);subplot(2,2,2);plot(t,b);grid on; legend(y有关t 的变化关系图,1);xlabel(t,FontSize,14);ylabel(y,FontSize,14);subplot(2,2,3);plot(t,c);grid on; legend(z有关t 的变

11、化关系图,1);xlabel(t,FontSize,14);ylabel(z,FontSize,14);subplot(2,2,4)plot3(a,b,c);grid on; legend(x,y,z的空间关系图,1);xlabel(x,FontSize,14);ylabel(y,FontSize,14);zlabel(y,FontSize,14);view(40,60);%锁定同样的视图,便于比较-2.4 常微分方程数值解法应用举例题目:MIT的气象学家洛仑兹(E.Lorenz)在1963年研究大气对天气的影响时,提出了Lorenz方程: 其中,此方程初值问题的解存在且唯一。当时,Loren

12、z方城有两个不稳定的不动点,和,一种不稳定的不动点。当时,和都变成不稳定的。此时,存在混沌和一种奇怪吸引子。解:由于时,和都变成不稳定的。此时,存在混沌和一种奇怪吸引子。因此我们取来专门研究该现象。运用Matlab程序计算:命令窗口输入:Runge-Kutta4阶法: exe11Adams4阶外插法: exe12成果输出:由于迭代次数的关系,成果数据量很大,故这里以图片来展示成果。Runge-Kutta4阶法成果:Adams4阶外插法成果:三、 常系数扩散方程的典型差分格式3.1 有限差分法的基本思路用有限差分法解常系数扩散方程有加权隐式差分格式其中,当时为Crank-Nicolson格式,当时为向后差分格式,当时为向前差分格式。加

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号