受空气阻尼的抛体运动课程设计1_第1页
受空气阻尼的抛体运动课程设计1_第2页
受空气阻尼的抛体运动课程设计1_第3页
受空气阻尼的抛体运动课程设计1_第4页
受空气阻尼的抛体运动课程设计1_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、 # 湖南工业大学课程设计资料袋理学院(系、部)20112012学年第一学期课程名称计算物理指导教师廖湘萍职称教授学牛姓名.张丽佳专业班级应用物理081班学号08411200125利用Matlab研究受空气阻尼的抛体运动成绩起止日期2011年丄月_2&日2011年乙月丄日目录清单序号材料名称资料数量备注1课程设计任务书2课程设计说明书3课程设计图8张456湖南工业大学课程设计任务书20112012学年第1学期学院(系、部)应用物理学专业081班级课程名称:计算物理一、设计题目利用Matlab研究受空气阻尼的抛体运动二、完成期限:自2011年11月28日至2011年12月2日共1周内容及任务1、

2、分析抛体运动所受空气阻力的三种情况,写出质点运动的微分方程;2、用龙格-库塔方法求解质点运动的微分方程;3、画出粒子的空间轨迹和速度随时间变化的彗星图,找出轨迹的最高点,到达最高点的时间和速度。进度安排起止日期工作内容11-11-28分析抛体运动所受空气阻力的三种情况,写出质点运动的微分方程。11-11-29设计计算流程图11-11-30根据计算流程图设计计算程序11-12-1对设计的程序进行调试和优化11-12-2写出课程设计的总结实验报告主要参考资料陈锺贤.计算物理学M.哈尔滨:哈尔滨工业大学出版社,2001:37-49王沫然.Matlab与科学计算M.北京:电子工业出版社,2003:21

3、9-229.石辛民,郝整清基于MATLAB的实用数值计算M北京:清华大学出版社,北京交通大学出版社,2006.141-142.指导教师(签字):年月日系(教研室)主任(签字):年月日 (软件工程)设计说明书(利用Matlab研究受空气阻尼的抛体运动)起止日期:2011年11月28日至2011年12月2日学生姓名张丽佳班级081学号08411200125成绩指导教师(签字)理学院(部)2011年12月31日课程设计内容课题研究的背景和意义在力学中涉及许多复杂的计算问题,例如非线性问题,对其求解有时是很困难的,甚至是不可能的。MATLAB正是处理非线性问题的很好的工具,既能进行数值计算,又能绘制有

4、关曲线,非常方便。在理论力学和普通物理学的范围内,一般说来,抛射体的运动可看作是质点的运动,在假定空气阻力可以忽略或阻力至于速度的一次放成正比的情况下,用解析法能够很容易的求解运动方程,但这种假定,只有在被抛射出的物体运动速度很低时才能近似成立。经典力学原理基本上沿着两条路线进行。一条是基于牛顿运动定律,在静力分析中,主要遵循力学平衡原理,加上组成结构材料的本构关系和应变,位移的几何协调关系可以导出微分方程。另一条是基于功、能原理,它以能量原理(如最小势能原理,虚位移原理等)为基础,可以导出需要求解的积分方程。不管是解微分方程还是积分方程,均需求出函数y=f(x),使之满足方程并在边界上满足边

5、界条件。对于简单问题可以求得其解析解。但物理学中的实际问题是很复杂的,往往很难求的其实用的解析解,因此,应用计算机得到其数值解成了可行的解决问题的途径。常用的数值方法有差分法、有限元法、加权残值法、边界元法登。这些解法通常都有大量的矩阵运算以及其他数值运算。MATLAB具有强大的科学计算功能,这使得人们可以用它来代替传统的编程语言。在计算要求相同的情况下,使用MATLAB编程,工作量会大大减少。例如,采用MATLAB编制自由振动的子程序时只需要调用两个函数:求逆矩阵的inv函数及求特征值和特征向量的eig函数。课题研究的内容我们根据课程设计的要求与实现目的,制定了如下的设计步骤:首先,根据题目

6、所给的条件,我们易列出牛顿运动方程。根据是分析抛体运动所受空气阻力的三种情况(后面程序部分给出),可以写出质点运动的微分方程。将质点运动的矢量方程分解在平面正交坐标轴上面后,可以分解出4个标量方程。再次,得到了阻尼运动的方程后,接下就是如何去解出方程,根据经典理论物理的牛顿运动分析方法固然可以解出,但是步骤繁琐,易出错。本课题的中心是利用matlab来解决阻尼抛体运动,当然想到用建立模型的方法去求解。本课题中我们想到采用龙格-库塔方法求解质点运动的微分方程。最后,根据微分方程的函数形式,利用ode45命令解出本题的结果。利用所得到的结果,我们可以利用该模型进行模拟其它类似阻尼运动的复杂运动的轨

7、迹。所以本课题的内容要求画出粒子的空间轨迹和速度随时间变化的彗星图,找出轨迹的最高点,到达最高点的时间和速度。所需的设备和组员第一阶段:(11月28日)分析抛体运动所受空气阻力的三种情况,写出质点运动的微分方程。第二阶段:(11月29日)设计计算流程图第三阶段:(11月30日)根据计算流程图设计计算程序第四阶段:(12月1日)对设计的程序进行调试和优化第五阶段:(12月2日)写出课程设计的总结实验报告所用软件:matlab6.5所用语言:matlab语言所需设备:PC电脑一台组员:刘进萍姜拱星黄秦波熊先平张丽佳四:程序设计Matlab中龙格-库塔(Runge-Kutta)方法原理龙格-库塔(R

8、unge-Kutta)方法是一种在工程上应用广泛的高精度单步算法。由于此算法精度高,采取措施对误差进行抑制,所以其实现原理也较复杂。该算法是构建在数学支持的基础之上的。龙格库塔方法的理论基础来源于泰勒公式和使用斜率近似表达微分,它在积分区间多预计算出几个点的斜率,然后进行加权平均,用做下一点的依据,从而构造出了精度更高的数值积分计算方法。如果预先求两个点的斜率就是二阶龙格库塔法,如果预先取四个点就是四阶龙格库塔法。一阶常微分方程可以写作:y=f(x,y),使用差分概念。(Yn+l-Yn)/h=f(Xn,Yn)推出(近似等于,极限为Yn)Yn+l=Yn+h*f(Xn,Yn)另外根据微分中值定理,

9、存在Ovtv1,使得Yn+1=Yn+h*f(Xn+th,Y(Xn+th)这里K=f(Xn+th,Y(Xn+th)称为平均斜率,龙格库塔方法就是求得K的一种算法。利用这样的原理,经过复杂的数学推导(过于繁琐省略),可以得出截断误差为0(25)的四阶龙格库塔公式:K1=f(Xn,Yn);K2=f(Xn+h/2,Yn+(h/2)*K1);K3=f(Xn+h/2,Yn+(h/2)*K2);K4=f(Xn+h,Yn+h*K3);Matlab设计的流程图3.源程序函数functionf=znxpfun(t,y)globalmdef=y(2);.-d/m*y(2)*(y(2).人2+y(4).人2)人(e/

10、2);.X4);.-9.8-d/m*y(4)*(y(2).A2+y(4).A2)A(e/2);程序globalmdem=l;b=0,0.2,0.2;p=0,0,l;%-8PH(7&px=4.6;4.5;4.5;%A;m7xpApy=3.5;1.8;0.4;%A;m7ypAstrdd1=无阻尼;strdd2=v;strdd3=W;figurefori=l:3%A.K?d)Ae/hA7d=b(i);e=p(i);%J?-8&7bt,y=ode45(znxpfun,0:0.01:10,0,3,0,5);Hi=max(y(:,3)%XTi=t(find(y(:,3)=Hi)%U)?+5/oM:-fvx

11、Oi=y(find(y(:,3)=Hi),2)%5oM:(Bsubplot(2,1,1)%JA2axis(06-702);%A?pAF6holdon%A2Ixlabel(x);ylabel(y);%x,yh7Ajcomet(y(:,1),y(:,3);%yl7rfXsubplot(2,1,2)axis(01004)holdonxlabel(t);ylabel(dx/dt)text(px(i),py(i),strddi);%P?;mA9dA=UbZej;mcomet(t,y(:,2)%(B*-fA2end4.图形讨论图形的物理意义:由上图可以看出,当抛体运动所受空气阻力为零时,从yx图可知,其可

12、以分解为水平方向的匀速直线运动与竖直方向的自由落体运动。由Vxt图可知,水平方向速度不变。当所受空气阻力与速度v成正比时,由Vxt图可知,水平速度不断减少。当所受空气阻力与v的平方成正比时,水平位移很快就保持不变,而由Vxt图可知水平速度急剧降为零,与事实相符。五总结通过此次课程设计,使我更加扎实的掌握了有关Matlab在物理计算方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。过而能改,善莫大焉。在课程设计过程中,我们不断发现错误,

13、不断改正,不断领悟,不断获取。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!课程设计诚然是一门专业课,给我很多专业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间。同时,设计让我感触很深。使我对抽象的理论有了具体的认识。通过这次课程

14、设计,我掌握了测试;熟悉了Matlab运行环境和如何编写Matlab语言,了解了项目开发的基本思想和概念。我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,

15、可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,但可喜的是最终都得到了解决。实验过程中,也对团队精神的进行了考察,让我们在合作起来更加默契,在成功后一起体会喜悦的心情。果然是团结就是力量,只有互相之间默契融洽的配合才能换来最终完美的结果。此次设计也让我明白了思路即出路,有什么不懂不明白的地方要及时请教或上网查询,只要认真钻研,动脑思考,动手实践,就

温馨提示

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

最新文档

评论

0/150

提交评论