用Matlab仿真探究摆角对单摆周期影响.doc

用Matlab仿真探究摆角对单摆周期影响.doc

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

用Matlab仿真探究摆角对单摆周期影响 摘要:本文通过Matlab仿真验证小角摆动是简谐振动,并利用数值法求解微分方程,画出不同摆角下单摆的振动图像,定性分析,得出大角摆动时单摆周期随角度的变化情况。 关键字:单摆周期 摆角大小 0.引言 单摆是生活中常见的一种简单物理模型,物理学中所讨论的单摆是一种理想化的模型,也称数学摆。它由一根不可伸缩的细线(质量不计),一端固定,另一端悬挂一质量为m的小球(视为质点),且摆角小于5度的振动系统。对于这种理想单摆的周期,不随摆角大小的改变而改变。但当单摆摆角大于5度时,理想单摆的周期公式不再适用,本文通过建立物理模型,在忽略空气阻力的前提下,用Matlab进行大角摆动的模拟,画出震动图像,研究大角摆动时摆角对周期的影响。 1.建立物理模型 根据单摆的理想条件,摆线不可伸长且质量忽略不计,空气阻力忽略不计.设摆线长度为l,摆球质量为m,重力加速度为g,摆球离开平衡位置的角度为对摆球做受力分析如有图所示 =- (1-1) 其中 假定位移很小,,即小角摆动。则式1-1可表示为 (1-2) 大角摆动时,仍为1-1式,该式为非线性方程,为方便起见,将用y来表示,该式又可以写为下列一阶微分方程组 ; (1-3) 2.用Matlab方程求解 2.1小角摆动 用Matlab求解式1-1,其结果为 y =theta0*cos(1/l^(1/2)*g^(1/2)*t) (2-1) 即 (2-2) 由式2-1可以看出,当小角摆动时为简谐振动。其周期为: T= (2-3) 取摆长l=1,重力加速度g=9.8,摆角,利用Matlab求解式1-1,取步长为0.1的点作图,与应用式1-2求出解析解并绘图,将两图象放在一起比较如下图1所示 图1 小角摆动 图1中曲线为求解式1-2所得图像,而离散点为求解式1-1所得,观察图像可得两方程的解几乎吻合,可以说明当较小时( ),两方程的解几乎相等,故周期公式此时较为准确,即单摆周期不随摆角变化而变化。 上述结论仅仅适用于摆角 很小时(),当摆角很大时, 不再成立,式1-1与式1-2的解不再相近,故周期公式(2-3)不再成立。下面我们继续讨论摆角比较大时的单摆运动规律。 2.2大角摆动 用Matlab求解式1-1,前面已经提到为方便起见用式1-3表示。利用数值法求解微分方程,用Matlab分别绘制,,时的振动图像,如下图2所示 图2 大角摆动 观察图2中不同摆角的振动图像,可以看出摆角时,周期最小,摆角时,周期最大。从而得出大角摆动时,单摆周期并不像小角摆动时一样,不随摆角变化,而是大角摆动周期随着摆角的增大而增大。 结语:对于类似单摆的运动问题,我们需要求解非线性微分方程,然而对于非线性微分方程又很难求出解析解,所以可以应用Matlab求出数值解,再加以分析,从而得出单摆的运动规律。本文通过计算、作图验证了小角摆动是时单摆的振动周期公式是正确的,得出小角摆动周期不随摆角的改变而改变;对于大角摆动,本文则通过数值解并绘图,定性得到大角摆动时,单摆周期随着摆角的增大而增大。 参考文献: [1]钞曦旭,MATLAB及其在大学物理课程中的应用[M],西安:陕西师范大学出版社,2006 [2]陈怀琛,MATLAB及其在理工课程中的应用指南(第三版)[M],西安:陕西电子科技大学出版社,2007 附录 clear,clc y=dsolve(D2y+g/l*y=0,y(0)=theta0,Dy(0)=0,t) l=1;g=9.8;theta0=5/180*pi;t=(0:0.01:2)*pi; y=eval(y); plot(t,y,t,0) clear,clc y=dsolve(D2y+g/l*y=0,y(0)=theta0,Dy(0)=0,t) l=1;g=9.8;theta0=5/180*pi;t=(0:0.1:10); y=eval(y); [t,u1]=ode45(fangcheng,[0:0.1:10],[5/180*pi,0],[]); plot(t,u1(:,1),r*,t,y,b-,t,0,k-); hold on l=1;g=9.8; [t1,u1]=ode45(fangcheng,[0:0.01:10],[pi/12,0],[]); [t2,u2]=ode45(fangcheng,[0:0.01:10],[pi/6,0],[]); [t3,u3]=ode45(fangcheng,[0:0.01:10],[pi/3,0],[])

文档评论(0)

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

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

1亿VIP精品文档

相关文档