坎巴拉吧 关注:25,721贴子:96,472
  • 17回复贴,共1

【求助】我哪里算错了?下坠公式

只看楼主收藏回复

假设一飞船在月球自由落体,初速度v=368,高度h=2020000,加速度0.166g,求下坠时间。
我的解法是 h=vt+at^2/2
那么t=1366
可是进了ksp实际模拟一下,却发现实际下落时间远远大于1366。
我哪里搞错了?


IP属地:广西1楼2024-03-18 03:48回复
    首先,这个公式是自由落体公式没错,但是,这个公式有一个隐藏的前提,重力加速度是恒定的情况(这适用于高中的题目中)。
    而在 KSP 中,位于 Mun 高度 202 0000 (即 202 万米) 时,飞船所受到的实际重力加速度要远远小于0.166g,从这个高度落到地面的过程中,飞船受到的重力加速度会随着高度下降产生显著的变化,此时使用这个公式进行计算是不适用的。具体要怎么计算,需要等你以后学到了二阶微分方程(《高等数学》内容)后,可以再回来探讨这个问题。


    IP属地:广西2楼2024-03-18 06:28
    收起回复
      哥们整复杂了,
      而且最佳着陆高度是确定的:
      “在不撞山的情况下,尽可能飞的足够低”。
      最优着陆曲线,是通过控制俯仰来保证竖直速度为0时,尽可能消除水平速度,这个对任意载具都适用。
      (当然实际这么飞肯定得撞山,得改改,拉高减速高度,保留一定竖直速度,具体情况根据实际地形改动。)
      在刚开始,离心力会提供竖直方向上抵抗重力的力,所以开始降落时的推比是可以小于1的。
      随着燃料消耗,后期推比逐渐增大,这时可以分更多力用来抵抗重力,弥补因为环绕速度降低而提供的离心力。


      IP属地:湖南来自Android客户端3楼2024-03-19 05:59
      收起回复
        你少加了一个公式,F=G*m1*m2/r²。
        g并不是常数,0.166g是地表引力,你可以通过代入mun的半径R和质量计算出引力常数G,然后通过高度h和mun半径相加得出公式中的距离r,两边消掉飞船质量m2,即可得飞船处于高度h时,所受的重力加速度g=G*m1/(h+R)²,是一个反比例函数。
        通过对这个函数积分你可以计算出每个高度横向速度为0时落地时的速度,也就是着陆最少Dv值,把这个最少Dv在着地前一瞬间完全输出,你着陆速度一定是0
        然而现实情况你的推进器出力减速需要时间,减速的这段时间重力同样作用,所以着陆Dv会略大于最小Dv,其约等于最小Dv+推进器工作时长*地表重力。
        同时,由于人力和机械操作存在误差,例如时间和角度无法100%精确对应,这个值还要预留一部分冗余使得着陆更安全,一般按经验值要加10%以上。
        在游戏里最简便的办法就是保存,然后横向减速至横向速度为0,自由落体,查看着陆时的速度即可快速的知道最小Dv。
        顺带一提的是,为了进一步节省燃料,你实际着陆一般不是垂直落地,而是抛物线落地,最省Dv的办法是一个端点在着陆点,另一端在星球对面的抛物线,即在着陆点的180度对面的轨道上进行横向减速使得轨道与着陆点相切。这其中涉及到计算更为复杂,涉及矢量计算,就不在这里讲了。


        IP属地:广西来自Android客户端4楼2024-03-22 12:25
        收起回复