一个小型二级火箭初始重量为3000kg。一级总重1400kg其中1080kg燃料,二级1080 kg燃料。一级燃料用尽后一级整体抛弃,火箭引擎在二级燃料用尽时关闭。火箭竖直向上发射时燃料燃烧率为18kg/s,由此产生32000N的推力。设火箭上升时空气阻力正比于速度的平方,比例系数为0.4kg/m,求引擎关闭瞬间火箭的高度、速度﹑加速度,及火箭到达最高点时的高度和加速度,并画出高度﹑速度、加速度随时间变化的图形。数学建模的分析过程
时间: 2024-02-19 17:01:06 浏览: 185
小型火箭Matlab求解
1. 确定问题
本题是一个二阶微分方程的初值问题。具体而言,是一个质量随时间变化的火箭竖直向上运动的问题,考虑引擎开启和关闭时的不同状态,以及空气阻力对运动的影响。需要求解引擎关闭瞬间的高度、速度、加速度,以及火箭到达最高点时的高度和加速度,并画出高度、速度、加速度随时间变化的图形。
2. 建立模型
(1)确定变量
设时间为$t$,火箭总质量为$m$,高度为$h$,速度为$v$,加速度为$a$,燃料质量为$mf$。
(2)列出运动方程
在引擎开启时,火箭受到推力$F$的作用,同时受到空气阻力$k v^2$和重力$mg$的作用,所以有:
$$
m \frac{dv}{dt} = F - k v^2 - mg
$$
由于$m$和$F$都是随时间变化的,因此需要将它们表示为已知量和未知量的函数。考虑火箭在一级燃料用尽后,一级整体抛弃,二级引擎开启的情况。此时,火箭总质量为$m_1+m_2$,其中$m_1$为一级总重,$m_2$为二级总重减去燃料质量$mf_2$。此外,$F$为已知量,等于燃料燃烧率$\dot{m}$乘以推力系数$k$。因此,可以将$m$和$F$表示为:
$$
m = m_1 + m_2 - mf_1 - mf_2 \\
F = k \dot{m} t
$$
将它们代入运动方程中,得到:
$$
(m_1 + m_2 - mf_1 - mf_2) \frac{dv}{dt} = k \dot{m} t - k v^2 - (m_1 + m_2 - mf_1 - mf_2) g
$$
在二级燃料用尽时,火箭引擎关闭,$mf_2$不再变化,$a=0$。此时的状态即为引擎关闭瞬间的状态。因此,可以求解上述方程,得到引擎关闭瞬间的高度、速度、加速度。
在引擎关闭后,火箭只受到重力和空气阻力的作用,因此有:
$$
m \frac{dv}{dt} = -k v^2 - mg
$$
此时的运动方程是一个二阶非齐次线性微分方程,可以使用解析方法求解。求解后,即可得到火箭到达最高点时的高度和加速度。
3. 数值求解
考虑使用数值方法求解运动方程。具体而言,可以使用欧拉法或者龙格-库塔法等数值积分方法,对运动方程进行离散化求解。每一次时间步长内,需要计算当前时间步长内的燃料消耗、更新火箭总质量、计算当前加速度、计算当前速度和高度,并将结果存储在列表中。当二级燃料用尽时,即为引擎关闭瞬间的状态。此时,可以通过查找速度列表中的最大值,得到最大高度、最大速度和最大加速度。最后,可以使用matplotlib等工具,绘制出高度、速度和加速度随时间变化的图形。
4. 编写代码
根据上述分析,可以编写出求解该问题的代码。
阅读全文