实验3“微分方程”实验

上传人:飞*** 文档编号:47840662 上传时间:2018-07-05 格式:PDF 页数:8 大小:738.05KB
返回 下载 相关 举报
实验3“微分方程”实验_第1页
第1页 / 共8页
实验3“微分方程”实验_第2页
第2页 / 共8页
实验3“微分方程”实验_第3页
第3页 / 共8页
实验3“微分方程”实验_第4页
第4页 / 共8页
实验3“微分方程”实验_第5页
第5页 / 共8页
点击查看更多>>
资源描述

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

1、开课学院:数统学院实验室: DS1402实验时间 :2015 年 4 月 3日课程名称数学实验实验项目名称微分方程实验项目类型验证演示综合设计其他指导教师龚劬成绩一、实验目的及意义1 归纳和学习求解常微分方程( 组)的基本原理和方法;2 掌握解析、数值解法,并学会用图形观察解的形态和进行解的定性分析;3 熟悉 MATLAB 软件关于微分方程求解的各种命令;4 通过范例学习建立微分方程方面的数学模型以及求解全过程;通过该实验的学习,使学生掌握微分方程( 组) 求解方法(解析法、欧拉法、梯度法、改进欧拉法等) ,对常微分方程的数值解法有一个初步了解,同时学会使用MATLAB 软件求解微分方程的基本

2、命令,学会建立微分方程方面的数学模型。这对于学生深入理解微分、积分的数学概念,掌握数学的分析思维方法,熟悉处理大量的工程计算问题的方法是十分必要的。二、实验内容1 微分方程及方程组的解析求解法;2 微分方程及方程组的数值求解法欧拉、欧拉改进算法;3 直接使用MATLAB 命令对微分方程( 组) 进行求解 ( 包括解析解、数值解) ;4 利用图形对解的特征作定性分析;5 建立微分方程方面的数学模型,并了解建立数学模型的全过程。三、实验步骤1开启软件平台MATLAB ,开启 MATLAB 编辑窗口;2根据微分方程求解步骤编写M文件3保存文件并运行;4观察运行结果( 数值或图形 ) ;5根据观察到的

3、结果和体会写出实验报告。四、实验要求与任务根据实验内容和步骤,完成以下实验, 要求写出实验报告(实验目的问题数学模型算法与编程计算结果分析、检验和结论)基础实验1求微分方程的解析解, 并画出它们的图形,y= y + 2x, y(0) = 1, 0x1; 程序:(1)dsolve(Dy=y+2*x,y(0)=1,x) (2)function f=fun1(x,y) f=y+2*x; x,y=ode23(fun1,0,1,1) plot(x,y); xlabel(x);ylabel(y); hold on; ezplot(-2*x- 2+3*exp(x) ) 结果:ans = -2*x-2+3*e

4、xp(x) x = 0 0.0800 0.1800 0.2800 0.3800 0.4800 0.5800 0.6800 0.7800 0.8800 0.9800 1.0000 y = 1.0000 1.0899 1.2316 1.4094 1.6268 1.8881 2.1980 2.5615 2.9842 3.4725 4.0331 4.1546 3Rossler微分方程组:当固定参数b=2, c=4 时,试讨论随参数a由小到大变化(如a(0,0.65)而方程解的变化情况function r=sy3d3(t,x) global a; global b; global c; r(1,1)=-

5、x(2)-x(3); r(2,1)=x(1)+a*x(2); r(3,1)=b+x(3)*(x(1)-c); )(cxzbzayxyzyxend global a; global b; global c; b=2; c=4; for a=0:0.02:0.65 a t,x=ode45(sy3d3,0,200,0,0,0); subplot(1,2,1); plot(t,x(:,1),r,t,x(:,2),g,t,x(:,3),b); title(x(红色 ),y(绿色 ),z( 篮色 ) 随 t 变化情况 );xlabel(t); subplot(1,2,2); plot3(x(:,1),x(

6、:,2),x(:,3); title(x,y,z三维曲线图 ) xlabel(x);ylabel(y);zlabel(z); pause end 实验结果:分析:由图像可以看出随着a 的值越来越大x y z的值随着 t 的增大越来越离散化。4.Apollo卫星的运动轨迹的绘制程序:function a=apollo(t,x) u=1/82.45;u1=1-u;r1=sqrt(x(1)+u)2+x(3)2);r2=sqrt(x(1)-u1)2+x(3)2); a(1,1)=x(2); a(2,1)=2*x(4)+x(1)-u1*(x(1)+u)/r13-u*(x(1)-u1)/r23; a(3,

7、1)=x(4); a(4,1)=-2*x(2)+x(3)-u1*x(3)/r13-u*x(3)/r23; end x0=1.2;0;0;-1.04935751;%x0(i)对应与 xi 的初值options=odeset(reltol,1e-8);%精度要求为10-8 t,y=ode45(apollo,0,20,x0,options); plot(y(:,1),y(:,3) title(Appollo卫星运动轨迹 ) xlabel(X) ylabel(Y) 运行结果:11 33 121 33 1212222 121()()2,2,1/82.45,1,(),()(0)1.2, (0)0, (0)

8、0, (0)1.04935751xxxyxrryyyxyrrrxyrxyxxyy应用实验一、实验内容一个圆柱形的容器,内装350 升的均匀混合的盐水溶液。如果纯水以每秒14 升的速度从容器顶部流入,同时,容器内的混合的盐水以每秒10.5升的速度从容器底部流出。开始时,容器内盐的含量为7 千克。求经过时间t后容器内盐的含量。 二、问题分析 考虑到盐在不同浓度的水内的扩散情况,由于容器体积为350L 而纯水进入 和混合盐水流出的速度都不足15L/s 所以可以忽略盐在不同浓度的水内的扩散至 均匀的时间。 计算每个微小时间变化后的盐的含量与变化前盐的含量之间的关系,建立方 程,然后利用 MATLAB

9、进行求解 三、数学模型的建立与求解( 一般应包括模型、求解步骤或思路,程序放在后面的附录中 ) 用 y(t )表示容器内t 时刻的盐的含量,用T(t )表示容器内t 时刻的水的总量,用Y 表示盐水流出的速度, 用 C代表纯水流入的速度, 时间变化 t 后容器内盐的含量为y (t+ t ) 。考虑在内流出的盐水的为Yt, 则其流出的盐为y(t)/T(t)*Yt 则可建模为 : y(t+ t )=y(t)-y(t)/T(t)*Yt 取 t 趋近于 0;得到微分方程:y(t)+dy=y(t)-y(t)*Y*dt/(T(t0)+(c-y)t) 其中 Y=10.5L/S C=14L/S T(t0)=35

10、0 四、实验结果及分析y = 7000000/(t + 100)3 五、附录(程序等)y=dsolve(Dy=-10.5*y/(350+3.5*t),y(0)=7) t=linspace(0,300,1000); y =7000000./(t+100).3; plot(t,y) title(盐的质量随时间的变化的函数); xlabel(x);ylabel(y); 总结与体会(1) 方程的求解分为数值解和解析解,解析解适用范围较小。(2) 使用 ode 函数的时候不管有几个未知数几阶导数一定要按照顺序来写(3)ode 函数求解数值解的时候还有options可以给得到的解进行处理,使得更加精确。(4) 微分方程问题的分析思路一定要清晰,在研究过程中可以适当记录 教师签名 年月日

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

当前位置:首页 > 行业资料 > 其它行业文档

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