摘要: 运用物理学的方法和微积分的知识来建立数学模型,借促MATLAB软件,得到结果:在第60秒引擎刚关闭时,火箭的高度为9317.8米,速度为274m/s,加速度为132.7931m/s2;火箭达到最高点的时间为70.2s,高度为14604m.k的值估计为0.4904.
Abstract: Using physics and calculus knowledge to build a mathematical model, with the aid of MATLAB software, find the result: when the engine was shut down at the sixtieth second, the height of the rocket is 9317.8m, speed is 274 m/s, acceleration is 132.7931m/s2. When the rocket reached the highest point, the time is 70.2s, height is 14604m in the case that the estimated scale factork is 0.4904.
关键词: 火箭升空;牛顿第二定律;MATLAB软件
Key words: rocketing;Newton's second law;MATLAB software
中图分类号:G42文献标识码:A文章编号:1006-4311(2011)04-0227-02
1问题重述
火箭的质量为300千克(kg),携带900千克燃料并以15kg/s速率燃烧而产生恒定40000牛顿推力。同时受与速度的平方成正比,比例系数为k的空气阻力,在t时间时高度x(t),速度为v(t),取重力加速度g为9.8m/s2。
2问题假设
①空气的阻力f与速度平方v2成正比,比例系数为k;
②燃料以15千克/秒的速率燃烧,并产生40000牛顿的恒定推力;
③重力加速度g为9.8m/s2;
④火箭本身的质量为m1,剩下燃料的质量为m2;
⑤火箭运行的高度x(米)与时间t(秒)和速度v(米/秒)对应的关系,x(t)为火箭在t时的高度测有一组数据如下:
3模型求解
3.1 建立模型由物理学可知,在t时刻,火箭和燃料的质量为1200-15t;重力产生的阻力为(1200-15t)×9.8;空气阻力为kv2;那么,由牛顿第二定律可得
=;0 =t>60
由=v,可得到=;0 = t>60(2)
k= (3)
3.2 模型求解当0 t=10:20;
v=[[***********][**************]];
for i=3:10
a(i)=(1/12)*(v(i-2)-8*v(i-1)+8*v(i+1)-v(i+2));
end
a=[10 10 7.7500 7.667 6.25 2.5 2.833 4.3333 2.75 3.5 8.5]
将a的值代入(3)中,在matlab中可求得k=0.4904.
在(1)式中,由=x(2),得
=(4)
求解过程,编写m文件如下:
----------------------------------------------------------------
function xdot=wf(t,x) xspan=0:1:60;x0=[0 0]';
xdot=zeros(2,1) [t,x]=ode45('wf',xspan,x0);
xdot(1)=x(2) plot(t,x)
xdot(2)=[28240+147*t-0.4904*x(2).^2]/(1200-15*t) 结果为:
在命令窗口中执行: ans=1.0e+004 *
----------------------------------------------------------------
Columns 1 through 10
………………
Column 61
1.3807
0.0274
故在t=60s时,x(t)=1.3807*104,v(t)=0.0274*104m/s.
此时关闭引擎,t=60s,火箭推力为0时只受空气阻力与自身重力作用m1=300kg,所以加速度a===132.7931m/s2
火箭关闭引擎后(t>60)
=,转化为=
设=y(2),得微分方程组
=y(2),=(5)
求解过程,编写m文件如下:
----------------------------------------------------------------
function act=wf(t,y) vspan=60:0.2:74;
act=zeros(2,1); [t,y]=act(‘wf’,vspan,[13807 274]);
act(1)=y(2); 输出的结果:
act(2)=-[0.4904*y(2).^2/300+9.8] ans=1.0e+004*
在命令窗口中执行:
----------------------------------------------------------------
Columns 1 through 10
………………
1.4604
0.0000
由输出的结果可知道:当t=70.2时,y(1)=14604,y(2)=0,即此时的速度v=0m/s;而且此时火箭达到最大高度。
所以火箭升到最大高度所花的总时间T=70.2s。关闭引擎后,火箭上升到最大高度H=14604m。至此,问题得到解决。
参考文献:
[1]阳明盛,熊西文.MATLAB基础及数学软件.大连:大连理工大学出版社,2003,8.
[2]夏玮,李朝晖.控制系统仿真与实例详解.北京:人民邮电出版社,2008,10.
[3]胡祥青.大学物理.北京:北京师范大学出版社,2005,5.
摘要: 运用物理学的方法和微积分的知识来建立数学模型,借促MATLAB软件,得到结果:在第60秒引擎刚关闭时,火箭的高度为9317.8米,速度为274m/s,加速度为132.7931m/s2;火箭达到最高点的时间为70.2s,高度为14604m.k的值估计为0.4904.
Abstract: Using physics and calculus knowledge to build a mathematical model, with the aid of MATLAB software, find the result: when the engine was shut down at the sixtieth second, the height of the rocket is 9317.8m, speed is 274 m/s, acceleration is 132.7931m/s2. When the rocket reached the highest point, the time is 70.2s, height is 14604m in the case that the estimated scale factork is 0.4904.
关键词: 火箭升空;牛顿第二定律;MATLAB软件
Key words: rocketing;Newton's second law;MATLAB software
中图分类号:G42文献标识码:A文章编号:1006-4311(2011)04-0227-02
1问题重述
火箭的质量为300千克(kg),携带900千克燃料并以15kg/s速率燃烧而产生恒定40000牛顿推力。同时受与速度的平方成正比,比例系数为k的空气阻力,在t时间时高度x(t),速度为v(t),取重力加速度g为9.8m/s2。
2问题假设
①空气的阻力f与速度平方v2成正比,比例系数为k;
②燃料以15千克/秒的速率燃烧,并产生40000牛顿的恒定推力;
③重力加速度g为9.8m/s2;
④火箭本身的质量为m1,剩下燃料的质量为m2;
⑤火箭运行的高度x(米)与时间t(秒)和速度v(米/秒)对应的关系,x(t)为火箭在t时的高度测有一组数据如下:
3模型求解
3.1 建立模型由物理学可知,在t时刻,火箭和燃料的质量为1200-15t;重力产生的阻力为(1200-15t)×9.8;空气阻力为kv2;那么,由牛顿第二定律可得
=;0 =t>60
由=v,可得到=;0 = t>60(2)
k= (3)
3.2 模型求解当0 t=10:20;
v=[[***********][**************]];
for i=3:10
a(i)=(1/12)*(v(i-2)-8*v(i-1)+8*v(i+1)-v(i+2));
end
a=[10 10 7.7500 7.667 6.25 2.5 2.833 4.3333 2.75 3.5 8.5]
将a的值代入(3)中,在matlab中可求得k=0.4904.
在(1)式中,由=x(2),得
=(4)
求解过程,编写m文件如下:
----------------------------------------------------------------
function xdot=wf(t,x) xspan=0:1:60;x0=[0 0]';
xdot=zeros(2,1) [t,x]=ode45('wf',xspan,x0);
xdot(1)=x(2) plot(t,x)
xdot(2)=[28240+147*t-0.4904*x(2).^2]/(1200-15*t) 结果为:
在命令窗口中执行: ans=1.0e+004 *
----------------------------------------------------------------
Columns 1 through 10
………………
Column 61
1.3807
0.0274
故在t=60s时,x(t)=1.3807*104,v(t)=0.0274*104m/s.
此时关闭引擎,t=60s,火箭推力为0时只受空气阻力与自身重力作用m1=300kg,所以加速度a===132.7931m/s2
火箭关闭引擎后(t>60)
=,转化为=
设=y(2),得微分方程组
=y(2),=(5)
求解过程,编写m文件如下:
----------------------------------------------------------------
function act=wf(t,y) vspan=60:0.2:74;
act=zeros(2,1); [t,y]=act(‘wf’,vspan,[13807 274]);
act(1)=y(2); 输出的结果:
act(2)=-[0.4904*y(2).^2/300+9.8] ans=1.0e+004*
在命令窗口中执行:
----------------------------------------------------------------
Columns 1 through 10
………………
1.4604
0.0000
由输出的结果可知道:当t=70.2时,y(1)=14604,y(2)=0,即此时的速度v=0m/s;而且此时火箭达到最大高度。
所以火箭升到最大高度所花的总时间T=70.2s。关闭引擎后,火箭上升到最大高度H=14604m。至此,问题得到解决。
参考文献:
[1]阳明盛,熊西文.MATLAB基础及数学软件.大连:大连理工大学出版社,2003,8.
[2]夏玮,李朝晖.控制系统仿真与实例详解.北京:人民邮电出版社,2008,10.
[3]胡祥青.大学物理.北京:北京师范大学出版社,2005,5.