你少加了一个公式,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度对面的轨道上进行横向减速使得轨道与着陆点相切。这其中涉及到计算更为复杂,涉及矢量计算,就不在这里讲了。