可视化计算离线作业(4)

2020-02-22 10:55

一弹性小球,初始高度h=10m,向上初速度v0=15米每秒,与地面碰撞的速度衰减系数k=0.8,试计算任意时刻球的位置和速度。

dyd2y?v (32)高度与时间的关系:2??g, dtdt速度与时间关系:dv??g (33) dt对等式两边积分,有dv??gdt,(34) v?v0?gt

??y?yv10?0t?2gt2 由此可得数学方程: 第一次落地前:v?v01?gt y?h?vgt201t?2 T1?3.62s 第二次落地前:

v02??k(v01?gT1) v?v02?gt y?vgt202t?2 ( Tv2?202g (第三次落地前:

v03??k(v02?gT2) v?v03?gt y?vgt203t?2 T3?2v03g . . . . . .

第n次落地前:

v0n??k(v0(n?1)?gT(n?1)) v?v0n?gt y?vgt20m?2 (35) (36)

(37)

(38) 39) 40)

41)

42)

43) 44)

45)

46)

47)

48)

49)

(((((((( Tn?2v0n (50) g如用手工进行计算,计算量极大,利用MATLAB编程如下:

v0=15; %初速度 h=10; %初始高度 g=-9.8; %重力加速度 k=0.8; %衰减系数 T=0; %落地时间

for t=0:0.05:20 % 产生时间的行向量 v=v0+g*(t-T); %求速度 y=h+v0*(t-T)+g*(t-T)^2/2; %求高度 if y<=0 %循环判断条件 v0=-k*v; %衰减的速度 T=t; %求球每次落地所用时间 h=0; %将高度变零 end %选择结构结束

subplot(1,2,1); %选择1*2中的一号区

pause(0.1); %延缓

plot(1,y,'or','MarkerSize',10,'Markerface',[1,0,0]); %输出求球的运动图像 title('运动变化图'); %图形名称 axis([0,2,0,25]); %坐标控制

subplot(2,2,2); %选择2*2中的二号区 axis([0,20,-25,30]); %坐标控制 grid on; %不画网格线

plot(t,v,'*r','MarkerSize',2); %画球的速度曲线 xlabel('时间t'); %坐标轴说明 ylabel('速度v'); %坐标轴说明 title('速度变化趋势图'); %图形名称 hold on; %设置图形保持状态 subplot(2,2,4); %选择2*2中的四号区 axis([0,20,0,25]); %坐标控制 grid on; %不加网格线

plot(t,y,'*b','MarkerSize',2); %画球的位置曲线 xlabel('时间t'); %坐标轴说明 ylabel('高度y'); %坐标轴说明 title('位置变化图'); %图形名称 grid on %不加网格线 hold on %设置图形保持状态 end %循环结束

程序运行结果如图3所示。 4、对平抛运动的分析

将物体用一定的初速度沿水平方向抛出,不考虑空气的阻力,物体只在重力作用下所做的运动,叫做平抛运动。

竖直的重力与速度方向有夹角,做曲线运动;水平方向不受外力作用,是匀速运动,速度为Vo;竖直方向受重力作用,没有初速度,加速度为重力加速度g,是自由体运动。即做平抛运动的物体,在水平方向上由于不受力,将作匀速直线运动;在竖直方向上的物体的初速度为0.且只受到重力作用,物体做自由落体运动,加速度为g。

平抛运动的规律:

1、抛出t秒末的速度:

一抛出点为坐标原点,水平方向为x轴(正方向和初速度V0的方向相同),

竖直方向为y轴,正方向向下,则:

水平速度:Vx=Vo (51) 竖直分速度:Vy=gt (52)

22合速度:Vt= Vx?Vy (53)

tan?=Vygt= (54) VxVo运用MATLAB编程得到速度随时间的变化关系,程序如下:

图3 小球落地速度及位置曲线

t=0:0.01:10; %产生时间的行向量 Vt=-sqrt(10^2+9.8*t.^2); %求速度 plot(t,Vt); %输出速度曲线 title('物体速度随时间的变化'); % 图形名称

grid %加网格线

运行结果如图4所示。

2、平抛运动的物体在任意时刻t的位置坐标:

水平位移:x=Vot (55) 竖直位移:y=

12gt (56) 222合位移:s=x?y (57)

ygt= (58) x2Vo运用该公式,我们可以求得物体在任意时刻的坐标并找到物体所在位置后,再用平滑曲线把这些点连起来,就得到平抛运动的轨迹。

运用MATLAB 编程的到物体运动的曲线的程序如下: t=0:0.01:10; %产生时间行向量

tan?=

s=-sqrt((3*t).^2+(0.5*9.8*t.^2).^2); %求位移 plot(t,s,'r:'); %输出位移曲线 title('物体平抛运动轨迹'); %图形名称 grid %加网格线

运行结果如图5所示。

图4 平抛运动速度随时间变化关系

图5 物体平抛轨迹曲线

四、结论

从以上对抛体运动的分析可得出这些结论:

1、抛射体的射程与初速度和抛射角有关,在抛射角不变的情况下,射程随初速度的增大而增大,在抛射角不变的情况下,射程随抛射角的增大而增大,当抛射角达到四十五度时射程达到最大值,之后射程随着抛射角的增大而减小。

2、抛体运动的分析牵扯到很多复杂的推理与计算,MATLAB可以有效的解决这一问题,

MATLAB的数值计算和作图功能来模拟物理现象,减少了计算工作量,并且可以准确的得到计算结果,且绘制的图形使抽象的问题形象化。

MATLAB具有程序控制结构、函数调用、数据结构、输入输出、面向对象等程序语言特征,因此与传统编程语言一样,可以进行程序设计,而且简单易学,编程效率高。MATLAB以矩阵最为数据操作的基本单位,使得矩阵运算变得简捷、方便、高效,其还提供了十分丰富的数值计算函数、符号计算函数。用其绘图十分方便,还可对图形进行修饰和控制。 [参考文献]

[1] 刘卫国.MATLAB程序设计与应用 (第二版)[M].北京:高等教育出版社,2006.

[2] 同济大学数学系编.高等数学 (第六版) 上册[M].北京:高等教育出版社,2007.

[3]马文蔚.物理学(上册)(第四版)[M].北京:高等教育出版社,1999.


可视化计算离线作业(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:第三节 测量物质的密度

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: