利用Matlab研究受空气阻尼的抛体运动 应用物理学专业课程设计.doc

利用Matlab研究受空气阻尼的抛体运动 应用物理学专业课程设计.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用Matlab研究受空气阻尼的抛体运动 应用物理学专业课程设计

湖南工业大学 课 程 设 计 资 料 袋 理 学院() ~ 2012 学年第 学期 课程名称 学生姓名 专业班级 题 目 成 绩 年 月 日 ~年 月 日 序号 材 料 名 称 备 注 1 课程设计任务书 2 课程设计说明书 3 课程设计图 8张 4 5 6 课程设计任务书 20—2012 学年第 学期 理学院 学院(系、部) 应用物理学 专业 081 班级 课程名称: 设计题目:完成期限:自 年 月 日至 年 月 日共 周 11-11-28 分析抛体运动所受空气阻力的三种情况,写出质点运动的微分方程。 11-11-29 设计计算流程图 11-11-30 根据计算流程图设计计算程序 11-12-1 对设计的程序进行调试和优化 11-12-2 写出课程设计的总结实验报告 主 要 参 考 资 料 [1] 陈锺贤.计算物理学[M].哈尔滨:哈尔滨工业大学出版社,2001:37-49 [2] 王沫然.Matlab与科学计算[M].北京:电子工业出版社,2003:219-229. [3] 石辛民,郝整清.基于MATLAB 的实用数值计算〔M〕.北京:清华大学出版社,北京交通大学出版社,2006.141-142. 指导教师(签字): 年 月 日主任(签字): 年 月 日 () 设计说明书 () 起止日期: 年 月 日 至 年 月 日 学生姓名 班级 成绩 指导教师(签字) 年 月 日 .课题研究的背景和意义 .课题研究的内容 第一阶段(月日)第二阶段(月日)第三阶段:(月日)第四阶段:(月日)第五阶段:(月日)Matlab中龙格-库塔(Runge-Kutta)方法原理龙格-库塔(Runge-Kutta)方法是一种在工程上应用广泛的高精度单步算法。由于此算法精度高,采取措施对误差进行抑制,所以其实现原理也较复杂。该算法是构建在数学支持的基础之上的。龙格库塔方法的理论基础来源于泰勒公式和使用斜率近似表达微分,它在积分区间多预计算出几个点的斜率,然后进行加权平均,用做下一点的依据,从而构造出了精度更高的数值积分计算方法。如果预先求两个点的斜率就是二阶龙格库塔法,如果预先取四个点就是四阶龙格库塔法。一阶常微分方程可以写作:y=f(x,y),使用差分概念。 (Yn+1-Yn)/h= f(Xn,Yn)推出(近似等于,极限为Yn) Yn+1=Yn+h*f(Xn,Yn) 另外根据微分中值定理,存在0t1,使得 Yn+1=Yn+h*f(Xn+th,Y(Xn+th)) 这里K=f(Xn+th,Y(Xn+th))称为平均斜率,龙格库塔方法就是求得K的一种算法。 利用这样的原理,经过复杂的数学推导(过于繁琐省略),可以得出截断误差为O(h^5)的四阶龙格库塔公式: 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); 2.Matlab设计的流程图 3.源程序 函数 function f=znxpfun(t,y) global m d e f=[y(2);... -d/m*y(2)*(y(2).^2+y(4).^2)^(e/2);... y(4);... -9.8-d/m*y(4)*(y(2).^2+y(4).^2)^(e/2)]; 程序 global m d e m=1;b=[0,0.2,0.2];p=[0,0,1]; %-8PH(7 px=[4.6;4.5;4.5]; % ;m7xp py=[3.5;1.8;0.4]; % ;m7yp strdd{1}=无阻尼; strdd{2}=v; strdd{3}=v^2; figure for i=1:3 %.K?d)e/hA7\ d=b(i); e=p(i); %J?-8 7b [t,y]=ode45(znxpfun,[0:0.01:10],[0,3,0,5]); H{i}=max(y(:,3)) %X T{i}=t(find(y(:,3)==H{i})) %U \)?+5/oM:f vx0{i}=y(find(y(:,3)==H{

您可能关注的文档

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档