解决方案

Wolfram System Modeler:机枪后坐力可以把松鼠射多远——不可能飞行的真实物理学

你能用机枪作为向上的动力飞行吗?这就是兰德尔·门罗(Randall Munroe)在 What if? 的文章,“机关枪喷气背包”(https://what-if.xkcd.com/21/)中问的问题。事实证明你可以,因为有些机枪有足够的推力来举起自己的重量。在这篇文章中,我将探索向下射击机枪的动力学,并研究可以达到的实际力量、速度和高度。我还将重复 What if? 中的警告:千万不要在家里尝试这个。请使用我们的建模软件(https://www.wolfram.com/system-modeler/pricing/)。


顶部有松鼠的机枪

让我们从比人类更小的动物开始,从原始故事中的一只灰松鼠开始。把这只松鼠放在机关枪上,在全自动设置下向下射击,看看会发生什么。我将使用Wolfram System Modeler(https://www.wolfram.com/system-modeler/)对该系统的动力学进行建模。


机枪模型

上图显示了机关枪的模型。它包含受重力影响的有质量的子弹和枪组件。它们很容易通过组合内置机械组件来构建:


受地球引力影响的质量

弹匣组件更先进一些,因为它在每次射击时都会弹出子弹和弹壳。它通过获取整个弹匣的初始质量并减去弹药筒的质量乘以发射的射击次数来实现这一点,该射击次数由射击计数器组件给出。

将它与松鼠的简单模型、地面位置传感器和碰撞检测器结合起来,当一切都在地面上碰撞时停止模拟,我现在有了一个完整的模型。


为了获得良好的模拟,我需要为不同组件的模型填充参数。我将使用灰松鼠,它通常重约 0.5 公斤(约 1.1 磅)。


然后我需要一些我们机枪的数据。我将使用随处可见的 AK-47 突击步枪。以下是这款步枪的一些基本数据:


枪产生的推力可以通过子弹的质量、子弹离开枪口时的速度以及开枪的频率来计算:


然后,我可以估计用于实际推动子弹穿过枪管的每个射击间隔的百分比。我将假设枪管中的平均速度等于最终速度的一半:


然后可以使用推力计算这段短时间内的力:


现在我有了让松鼠在机枪上飞行所需的所有参数:


现在我们用枪中的一颗子弹来模拟机枪上的松鼠:


随着时间的推移,看到高度,我得出结论,松鼠达到了大约 9 厘米(3.5 英寸)的高度,飞行时间仅为 0.27 秒。


换一种方式:


这并没有让松鼠离地很远。明显的解决方案是什么呢?用枪发射更多子弹。标准弹匣有 30 发子弹:


这给出了近 5.8 秒的飞行时间,松鼠达到了令人眼花缭乱的 17.6 米(58 英尺)的高度。好吧,这对人类来说会令人头晕目眩;对于松鼠来说,可能没那么可怕。


哈,现在我们到达了某个地方:


我已经证明松鼠可以用机关枪飞行。让我们继续讨论人类,直接使用标准弹匣大小,30 发子弹:


一把枪不足以将一个人抬得很远。我需要更多的枪。让我们使用从 1 到 80 的枪数进行参数扫描:


这显示了一些有趣的模式。50支枪及以上的效果很容易解释。更多的枪意味着更多的力量,这意味着更高的飞行。不过,使用 15 支和 32 支枪的模拟更有趣一些。让我们仔细看看 15 支枪的场景。红点表示射击间隔,这意味着枪每 0.1 秒发射一发子弹:


你可以看到飞行器设法稍微起飞,再次开始下降,再次发射,但随后下降到比它所获得的高度更远的地方。您还可以查看随时间变化的速度:


第一次射击时,飞船以零速度开始,静止在地面上。它的速度急剧增加,但在下一次射击之前,速度下降到零以下。这意味着在一个射击周期中,即使枪内还有子弹,速度也会有净损失,最终导致坠落。然后它可以从静止在地面上重新开始,上下跳跃。


32 支枪的场景展示了另一种行为。开始看起来类似于使用 15 支枪时的行为,它会获得一定的高度,但随后会因为在每个射击周期中失去净速度而回落。但随后在 2.5 秒左右,它开始升高高度,直到所有弹药在 3 秒时用完。

如果您查看随着时间的推移弹匣的质量,可以解释这一点:


您可以看到,在每次射击时,弹匣都会减轻重量,因为它会弹出一颗子弹和一个弹壳。一段时间后,这使得整个飞行器足够轻,可以升高高度。这表明每个机枪可以携带多少子弹并且仍然能够飞行,这是您可以改变的另一个有趣参数。假设我创建了自己的自定义弹匣,让我们尝试使用以下 AK-47 弹匣尺寸飞行:


因为更多的枪意味着更多的力量,所以我会使用大量的枪,1000支:


当使用 1000 支枪时,每支枪带 165 发子弹并不是一个好主意:


这是因为如果你携带太多子弹,枪支就会变得太重而无法获得任何高度。既然我已经找到了一个合理的(如果尝试用机枪飞行有什么合理的话)可以携带的子弹数量,让我们看看在改变枪支数量时达到的高度。我希望有了更多的枪支,我们将获得更高的高度和飞行时间。


这是使用不同数量的枪达到的最大高度:


事实证明,大幅增加枪支数量(从 1,500 到 5000 万)只会略微增加所达到的顶部高度。这是因为随着枪支数量的增加,每把枪承载的人的部分减少,直到每把枪只承载自己的重量加上很少的额外质量。这使得整个飞行器在没有任何额外重量的情况下接近与单枪相同的最大高度,并且添加更多的枪不会带来更多优势。

最后,你可以用 AK-47 制造的最好的机枪喷气背包由至少约 5,000 挺机枪组成,每挺装有 145 发子弹。

使用机枪可以飞多高