好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

基于matlab抛体运动的分析.pdf

11页
  • 卖家[上传人]:n****
  • 文档编号:88910971
  • 上传时间:2019-05-13
  • 文档格式:PDF
  • 文档大小:279.60KB
  • / 11 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 基于基于 MATLABMATLAB 抛体运动的分析抛体运动的分析 作者:昊学长作者:昊学长 本文将采用 MATLAB 对抛体运动中的有阻尼抛体运动和无阻尼抛 体运动的运动轨迹进行分析 一一、、理论分析理论分析 我们研究的抛体运动为斜抛运动,设物体斜抛的初速度为 0 v,重 力加速度为 g,在无阻尼抛体运动中,我们不计空气阻力, 在无阻尼抛体运动中,物体的斜抛运动是水平方向的匀速直线运 动和竖直上抛运动的合运动,物体的运动方程为        2 0 0 2 1 sin cos gttvy tvx   消除 t 可得轨迹方程   2 2 0 2 cos2 tan v gx xy 令0y,可得水平射程 g v X 2sin 2 0  在有阻尼抛体运动中,设阻尼系数为 b,物体质量为 m,我们近似认 y x O v0 θ v0x v0y 为阻力 F 只与速度v的量值成正比,即bvF 抛体在xy平面内运动,其运动的微分方程为          y y x x bvmg dt dv m bv dt dv m 设当0t, 0xx vv , 0yy vv ,对上式进行一次积分后,得到                b mg ev b mg vy evvx m bt m bt yy xx 0 0   再进行一次积分,并设0t,0x,0y,则得                                  t b mg e b mv b gm y e b mv x m bt m bt y x 1 1 0 2 2 0 消除 t,得到轨道方程为     tan cos sin cos,sin ln 0 0 0 0 0000 0 0 2 2 0 0 0                      v v v v vvvv bxmv mv b gm x v v bv mg y x y xy x x x y x  即                    bxmv mv b gm x bv mg y x x x0 0 2 2 0 lntan 二、二、程序设计程序设计 (1)初速度 0 v 相同,θ不同,有阻尼与无阻尼的比较 clear v0=10; g=9.8; m=5; b=0.2; theta=15:15:75; th=theta*pi/180; x1=linspace(0,11,1000); x2=linspace(0,11,1000); [TH,X1]=meshgrid(th,x1); [TH2,X2]=meshgrid(th,x2); Y1=X1.*tan(TH)-g*X1.^2/v0^2/2./cos(TH).^2; Y2=(m.*g./b./v0./cos(TH2)+tan(TH2)).*X2-m.^2.*g./b.^2.*log(m.*v0.*cos(TH)./… (m.*v0.*cos(TH)-b.*X2)); plot(x1,Y1(:,1),x2,Y2(:,1)) hold on plot(x1,Y1(:,2),x2,Y2(:,2)) hold on plot(x1,Y1(:,3),x2,Y2(:,3)) hold on plot(x1,Y1(:,4),x2,Y2(:,4)) hold on plot(x1,Y1(:,5),x2,Y2(:,5)) hold on axis([0 11 0 5]) title('有阻力与无阻力的抛体运动,初速度相同θ不同') xlabel('x/m') ylabel('y/m') grid on 01234567891011 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 有 阻 力 与 无 阻 力 的 抛 体 运 动 , 初 速 度 相 同 θ不 同 x/m y/m (2)初速度θ相同, 0 v 不同,有阻尼与无阻尼的比较 clear theta=45; g=9.8; m=5; b=0.2; v0=10:10:50; th=theta*pi/180; x1=linspace(0,260,1000); x2=linspace(0,220,1000); [V0,X1]=meshgrid(v0,x1); [V02,X2]=meshgrid(v0,x2); Y1=X1.*tan(th)-g*(X1.^2)./V0.^2/2/cos(th).^2; Y2=(m.*g./b./V02./cos(th)+tan(th)).*X2-m.^2.*g./b.^2.*log(m.*V02.*cos(th)./… (m.*V02.*cos(th)-b.*X2)); plot(x1,Y1(:,1),x2,Y2(:,1)) hold on plot(x1,Y1(:,2),x2,Y2(:,2)) hold on plot(x1,Y1(:,3),x2,Y2(:,3)) hold on plot(x1,Y1(:,4),x2,Y2(:,4)) hold on plot(x1,Y1(:,5),x2,Y2(:,5)) hold on axis([0 270 0 65]) title('有阻力与无阻力的抛体运动,θ相同初速度不同') xlabel('x/m') ylabel('y/m') grid on 050100150200250 0 10 20 30 40 50 60 有 阻 力 与 无 阻 力 的 抛 体 运 动 , θ相 同 初 速 度 不 同 x/m y/m (3)在 0 v 、θ相同的情况下,改变阻尼系数 b 的情况 clear theta=45; g=9.8; m=5; b=1:4; v0=10; th=theta*pi/180; x=linspace(0,9); [B,X]=meshgrid(b,x); Y=(m*g./B/v0/cos(th)+tan(th)).*X-m.^2.*g./B.^2.*log(m.*v0.*cos(th)./… (m.*v0.*cos(th)-B.*X)); figure plot(x,Y(:,1)) hold on plot(x,Y(:,2)) hold on plot(x,Y(:,3)) hold on plot(x,Y(:,4)) hold on axis([0 9 0 2.5]) title('v0、θ相同,改变 b(阻尼系数)的情况') xlabel('x/m') ylabel('y/m') grid on 0123456789 0 0.5 1 1.5 2 2.5 v0、 θ相 同 , 改 变 b( 阻 尼 系 数 ) 的 情 况 x/m y/m (4)在 0 v 、θ相同的情况下,改变质量 m 的情况 clear theta=45; g=9.8; m=1:4; b=0.2; v0=10; th=theta*pi/180; x=linspace(0,15,1000); [M,X]=meshgrid(m,x); Y=(M*g./b/v0/cos(th)+tan(th)).*X-M.^2.*g./b.^2.*log(M.*v0.*cos(th)./… (M.*v0.*cos(th)-b.*X)); plot(x,Y(:,1)) hold on plot(x,Y(:,2)) hold on plot(x,Y(:,3)) hold on plot(x,Y(:,4)) hold on axis([0 15 0 3]) title('v0、θ相同,改变 m(质量)的情况') xlabel('x/m') ylabel('y/m') grid on 012345678910 0 0.5 1 1.5 2 2.5 3 v0、 θ相 同 , 改 变 m( 质 量 ) 的 情 况 x/m y/m (5)在 0 v 、θ相同的情况下,我们发现当 45的时候,射程最大, 所以程序设计如下: clear v0=10; g=9.8; b=0.2; theta=15:15:75; th=theta*pi/180; x=linspace(0,11,1000); [TH,X]=meshgrid(th,x); Y=X.*tan(TH)-g*X.^2/v0^2/2./cos(TH).^2; plot(x,Y(:,1)) hold on plot(x,Y(:,2)) hold on plot(x,Y(:,3)) hold on plot(x,Y(:,4)) hold on plot(x,Y(:,5)) hold on axis([0 11 0 5]) xlabel('x/m') ylabel('y/m') thm=asin(max(sin(2*th)))/2; text((v0^2*sin(2*thm)/g)/2,v0^2*sin(thm)^2/2/g,'h=2.5510m','FontSize', 12) text(v0^2*sin(2*thm)/g-0.5,-0.4,'Sm=10.2041m','FontSize',12) text(8,3,'θm=pi/4','FontSize',12) grid on 01234567891011 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 x/m y/m h=2.5510m Sm=10.2041m θm=pi/4 三、三、心得体会心得体会 此次程序设计, 是用 MATLAB 研究抛体运动的有阻尼与无阻尼的运 动轨迹,看似简单,实际操作时候却一点都不简单,我在设计中遇到 很多问题,其中让我印象最深刻的就是在代码的输入时,由于对代码 的不熟悉,所以输入的代码显得冗长,后来经过大量查找资料,才把 代码精简到现在的程度,另外,还有在设计有阻尼抛体运动时候,对 于阻尼系数与运动轨迹存在什么样的关系并不了解, 在推导运动方程 的时候遇到障碍,后来是参考了周衍柏的《理论力学》一书,才完成 了有阻尼抛体运动的分析理解。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.