20115394王福临数学实验作业微分方程_第1页
20115394王福临数学实验作业微分方程_第2页
20115394王福临数学实验作业微分方程_第3页
20115394王福临数学实验作业微分方程_第4页
20115394王福临数学实验作业微分方程_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、重 庆 大 学学 生 实 验 报 告实验课程名称 数学实验 开课实验室 DS1401 学 院 计算机 年级 2011 专业班 计科6班 学 生 姓 名 王福临 学 号 20115394 开 课 时 间 至 学年第 学期总 成 绩教师签名开课学院、实验室:ds1401 实验时间 : 2013/4/7课程名称数学实验实验项目名 称微分方程实验项目类型验证演示综合设计其他指导教师何光辉成 绩一、实验目的及意义1 归纳和学习求解常微分方程(组)的基本原理和方法;2 掌握解析、数值解法,并学会用图形观察解的形态和进行解的定性分析;3 熟悉MATLAB软件关于微分方程求解的各种命令;4 通过范例学习建立微

2、分方程方面的数学模型以及求解全过程; 通过该实验的学习,使学生掌握微分方程(组)求解方法(解析法、欧拉法、梯度法、改进欧拉法等),对常微分方程的数值解法有一个初步了解,同时学会使用MATLAB软件求解微分方程的基本命令,学会建立微分方程方面的数学模型。这对于学生深入理解微分、积分的数学概念,掌握数学的分析思维方法,熟悉处理大量的工程计算问题的方法是十分必要的。二、实验内容1 微分方程及方程组的解析求解法;2 微分方程及方程组的数值求解法欧拉、欧拉改进算法;3 直接使用MATLAB命令对微分方程(组)进行求解(包括解析解、数值解);4 利用图形对解的特征作定性分析;5 建立微分方程方面的数学模型

3、,并了解建立数学模型的全过程。三、实验步骤1开启软件平台MATLAB,开启MATLAB编辑窗口; 2根据微分方程求解步骤编写M文件3保存文件并运行;4观察运行结果(数值或图形);5根据观察到的结果和体会写出实验报告。四、实验要求与任务根据实验内容和步骤,完成以下实验,要求写出实验报告(实验目的问题数学模型算法与编程计算结果分析、检验和结论)基础实验1、求微分方程的解析解, 并画出它们的图形, 1) y(4)= y, y(0)=y(0)=2,y(0)=y(0)=1代码如下:y=dsolve('D4y=y','y(0)=2,Dy(0)=2,D2y(0)=1,D3y(0)=1

4、','x')y =3/2*exp(x)+1/2*sin(x)+1/2*cos(x)ezplot('3/2*exp(x)+1/2*sin(x)+1/2*cos(x)',-5,5);2) x3y+x2y-4xy=3x2 y(0.1)=y(0.1)=2,y(0.1)=1,代码如下:y=dsolve('(x3)*D3y+(x2)*D2y-4*x*Dy=3*x2','y(0.1)=2,Dy(0.1)=2,D2y(0.1)=1') y = 1/68*(11*17(1/2)+51)*(x+10-2*17(1/2)/exp(1/20*(-

5、1+17(1/2)/x)/(-1+17(1/2)*x*exp(1/2*(-1+17(1/2)/x*t)+1/68*(11*17(1/2)-51)*(2*17(1/2)+x+10)/exp(-1/20*(1+17(1/2)/x)/(1+17(1/2)*x*exp(-1/2*(1+17(1/2)/x*t)-3/4*x*t+2-7/16*x2-17/40*xezplot('1/68*(11*17(1/2)+51)*(x+10-2*17(1/2)/exp(1/20*(-1+17(1/2)/x)/(-1+17(1/2)*x*exp(1/2*(-1+17(1/2)/x*t)+1/68*(11*17

6、(1/2)-51)*(2*17(1/2)+x+10)/exp(-1/20*(1+17(1/2)/x)/(1+17(1/2)*x*exp(-1/2*(1+17(1/2)/x*t)-3/4*x*t+2-7/16*x2-17/40*x',-5,5)2、用向前欧拉公式和改进的欧拉公式求方程 y=y-2x/y, y(0)=1的数值解(0x 1 , h=0.1)要求编写程序。1、分析:解:(1)解析解法得到其精确解:(2) 向前欧拉法: 迭代公式为 ,其中(3)改进欧拉法: 迭代公式为,其中2、Matlab编码x1(1)=0;y1(1)=1;y2(1)=1;h=0.1;for k=1:1

7、0x1(k+1)=x1(k)+h;y1(k+1)=(1-h)*y1(k)+2*h*x1(k)/y1(k);y2(k+1)=(1+h)*y2(k)+(h*h)/2-h*x1(k)/y2(k)-h*(x1(k)+h)/(y2(k)+h); endx=0:0.1:1;y=(2*x+1).(1/2); x1=x1(1:11),y=y(1:11),y1=y1(1:11),y2=y2(1:11),plot(x,y,x1,y1,'k:',x1,y2,'r-') 显示图像及结果:x1 = 0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0

8、.7000 0.8000 0.9000 1.0000y = 1.0000 1.0954 1.1832 1.2649 1.3416 1.4142 1.4832 1.5492 1.6125 1.6733 1.7321y1 = 1.0000 0.9000 0.8322 0.7971 0.7926 0.8143 0.8557 0.9103 0.9731 1.0402 1.1092y2 = 1.0000 1.0959 1.1847 1.2679 1.3468 1.4222 1.4948 1.5653 1.6340 1.7016 1.7683图中,蓝色曲线是精确解,红色曲线是向前欧拉法曲线,黑色曲线是改进

9、后欧拉法曲线3、水的流出时间一横截面积为常数A,高为H的水池内盛满水,由池底一横截面积为B的小孔放水。设水从小孔流出的速度为v = (2gh)0.5,求在任意时刻的水面高度和将水放空所需的时间。解: 模型假设: 1. 由于水池横截面积为常数A,假设水池为规则的形状,放水口在水池最低处。 2.假设在一段极微小的时间间隔dt内,水池的高度变化速率以及放水口的排水速率是一个不变化的定值。 3.放水速率仅与水池高度有关。 4.水池在放水过程中没有漏水的现象。 5.假设外界环境适宜,在常温下。 定义符号说明:A 水池横截面积 H 水池的高度 B 放水小孔横截面积 v 水从小孔流出的速度 t 时间 h 在

10、时刻t的水面高度 水在一段时间内从小孔流出保持水平前进时所经过的距离 水面高度的变化值 模型建立:根据题意画出示意图,如右图(a)设t时刻的水面高度为h 时的水面高度为有等量关系:如右图(a)中由水面a降到水面b所流去的水量等于从小孔流出的水量。则有关系: 模型求解 (a)两边除以取极限: 求极限转化为微分形式: 因为由题目知小孔流出的速度为 =所以有: 初始条件当t=0时,h=H 它是一个可分离变量的方程。解方程得:移相 两边取积分 求积分得 整理得 最后得: 所以得到水面高度与时间的函数关系:当h=0时,水池里的水流空,则水流空所需时间为: 当 时, h还是为0最终得到的水面高度h与时间t

11、的函数关系为:(即任意时刻的水面高度)则水流空所需时间为: 模型分析与检验: 通过以上方法,我们得到了h随时间t变化的函数关系,当t的取值范围为: 时, t满足函数,该函数是个二次函数,当 时,h=0; 我们就会得到h随时间t变化的大致的关系图:具体化,将数字代入,表达模型:可设H=8; B=1; A=6; g=10;得到函数图为:Matlab代码:H=8;B=1;A=6;g=10;t=0:0.1:A/B*sqrt(2*H/g);h=(sqrt(H)-B/(2.*A).*sqrt(2.*g).*t).*(sqrt(H)-B/(2.*A).*sqrt(2.*g).*t);plot(t,h)xla

12、bel('时间t');ylabel('高度h');title('高度与时间的关系图')对模型进行检验,通过具体实验,来检验模型的正确性。模型中 ,但在实际生活中放水时v是否为呢?我们通过流体力学来证明此问题:证明:因为我们知道流体中满足伯努利方程: 图中 AB两点之间为一条流线根据上图得: 得到 所以小孔防水的速度 由于实际中,只与高度有关,由此我就可以设计一下实验。 实验设计如图: 实验材料:水池,水,塞子,秒表,尺子,笔测量的水池横截面积A为 0.195349 池底一横截面积B为 0.00080384 水池高H为 0.16 m g 取 9.8

13、 实验:准备一个装满水的水池,水池底下有个排水口,开始时是用塞子塞住的,准备就绪了,将塞住迅速拔出,水开始流了,同时开始记时,水池高度分为几段,然后标记出来,当水面到达标记的高度时,记一下时间,分段计时,然后得出数据。我们通过三次实验得出的数据取平均值。通过三次测量,我们得到的数据取平均值,得到下表:时间t (s) 0.00 2.93 6.32 10.14 14.01 18.24 22.52 29.26 41.9高度h(m) 0.16 0.14 0.12 0.10 0.08 0.06 0.04 0.02 0.00二次多项式函数拟合的法方程:拟合的方程为 通过计算得: =0.1605 =-0.0

14、0692 =0.00092数据处理通过Matlab来进行二次拟合:Matlab 代码:x=0.00 2.93 6.32 10.14 14.01 18.24 22.52 29.26 41.9; y=0.16 0.14 0.12 0.10 0.08 0.06 0.04 0.02 0.00;n=2;p=polyfit(x,y,n);xi=linspace(0,40,100);z=polyval(p,xi); plot(x,y,'o',xi,z,'k:')legend('原始数据','2阶曲线')运行结果:p =0.0001 -0.006

15、9 0.1605 运行得到的二次拟合图为: 所以得到的拟合方程为: 则它的高度与时间的关系为:而理论上的方程为:=0.000083 =0.00729 H=0.1600则 理论上的方程高度与时间的关系图为:Matlab的代码:H=0.16;B=0.00080384;A=0.195349;g=9.8;x=0:0.1:A/B*sqrt(2*H/g);y=(sqrt(H)-B/(2.*A).*sqrt(2.*g).*x).*(sqrt(H)-B/(2.*A).*sqrt(2.*g).*x);plot(x,y)拟合方程:实际方程:拟合曲线的均方误差:=0.0002753实验值基本符合理论值,实验图与理论

16、图相近。由于实验的过程测量工具简陋,误差比较大,通过计算实验值与理论值的相对误差约为:5%误差分析:误差造成的原因有,看到水面到达指定高度时的反应时间产生的误差,测量面积,高度时的也存在误差,其他阻力因素产生的误差。 模型的评价与改进1、 模型的优点 通过具体的实验,证明模型的可靠性,使模型与实际更加得贴近。 模型建立在对一些数据分析和具体证明的基础上,同时又对数据进行了科学的处理,提高了它的精确性。2、 模型的缺点 该模型忽视了其他因素,模型具有一定局限性。 实验过程使用的测量工具简陋,实验结果有一定误差。 改进可使用精准的测量工具来进行实验,考虑其他因素对水流的影响,这样可提高模型的精确性。 总结: 我们得到的水面高度h与时间t的函数关系为:(即任意时刻的水面高度)水流空所需时间为: 该模型是在所有因素都是考虑在普通环境下建立起来的,所用数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论