Hello 天文

偏心率只是比1多一点,为什么不能都当成抛物线?

让轨道从略闭合走到略开放,比较同一时刻的位置。

行星与太阳系小天体

一本轨道报告写e=0.999,另一本写1.001。两者看起来都很长,但一个仍属椭圆,另一个属于双曲线。我们保留这点差别,真正求出近日点前后的位置。

打开互动课程 →

先猜一下

e=0.999和e=1.001都可以直接当成e=1而不损失信息吗?

查看答案与解释

不可以 — 闭合与开放性质不同,位置差还会随时间积累。

再把体验和科学连起来

不要把“很接近1”直接写成1

e在1的两侧对应不同轨道:小于1仍是极扁椭圆,大于1是双曲线。很小差异可能积累成不同位置。

e<1、e=1、e>1须区分

用抛物线解作起点

原书第35章从接近的抛物线解出发,再用Landgraf/Stumpff级数修正。

g=(1−e)/(1+e)

迭代直到稳定

每轮先累加级数,再解一次三次方程;超过迭代次数或项过大必须报告不收敛。

外层级数迭代 + 内层Barker型求根

拿独立两体解作对照

用椭圆或双曲线方程独立求根,与近抛物线算法核对。不能把所有小差异都当作显示误差。

r=q(1+e)/(1+e cosν)

先求g与抛物线初值,再在外层累计Stumpff修正、内层解Barker型方程,直到收敛。末式只把ν换成r,不能替代前面的迭代;本课范围和失败处理见下方。

试一试

保持q和天数不变,依次选0.98、1、1.02。结果由原书迭代计算,并与独立两体求根比较。

动手看一遍 →

符号不用背

g
(1−e)/(1+e)
s
tan(ν/2)
迭代残差
候选答案代回方程剩余的误差

算法、精度与适用范围

实现印刷页245–247的式35.1及Landgraf程序双层迭代。最多50项/50轮,项超过10000或无法收敛则明确失败,不偷偷换算法。独立conicReference用稳定的小量级数与二分法解椭圆/双曲线方程作验证,UI展示位置差。原书六组练习覆盖q=.1,e=.987,t=254.9等,测试范围可大于UI。AA+ CalculateTrueAnomalyAndRadius实现的是另一展开式,因此不要求两者逐位相等。

我的理解检查

e稍大于1属于?

双曲线 — 理想两体模型中e>1为双曲线。

级数不收敛时应该?

明确报告失败 — 不能把数值失败伪装成合法星历。

本课有无把AA+的另一个近似分支当成完全同一算法?

没有 — 本课实现原书Landgraf主迭代,使用独立两体解核验;AA+另用近抛物线展开式。

接近临界值不等于可以抹掉差异。算法要保留轨道类型,也要能识别不收敛。

Jean Meeus · Astronomical Algorithms, 2nd ed. · 第 35 章

行星与太阳系小天体 · 全部互动课程