2019 年 7 月 22 日 — Kyle A. Pearson 的客座文章
引言在 18 世纪早期,物理学家和天文学家热切地测试着艾萨克·牛顿新发现的万有引力定律以及约翰内斯·开普勒的行星运动定律。天文学家厄本·勒维耶和约翰·库奇·亚当斯在 18 世纪对天王星进行了多次观测,以检验这些理论。他们独立得出结论,天王星的轨道偏离了他们根据开普勒定律的计算结果。天王星在其轨道上的某些点上加速然后减速,即使它远离木星和土星的引力势。这两位天文学家提出,天王星所经历的扰动是由于我们太阳系中的另一个天体造成的。那个天体后来被证明是海王星,在预测之前是未知的。同样的探测轨道扰动的技术可以应用于系外行星,以便发现新的行星(见下图)。然而,将数据与扰动模型匹配需要测试数千个 N 体模拟,以找到扰动体的最佳拟合参数。与使用这种蛮力方法相比,机器学习允许更有效地估计在参数空间中搜索的位置。然后,可以使用更广泛的分析(例如,使用嵌套采样)从最终的不确定性和参数推导出后验分布。
from nbody.simulation import generate, analyze, report
from nbody.tools import mjup,msun,mearth
if __name__ == "__main__":
# units: Msun, Days, au
objects = [
{'m':1.12},
{'m':0.28*mjup/msun, 'P':3.2888, 'inc':3.14159/2, 'e':0, 'omega':0 },
{'m':0.988*mjup/msun, 'P':7, 'inc':3.14159/2, 'e':0, 'omega':0 },
{'m':0.432*mjup/msun, 'P':12, 'inc':3.14159/2, 'e':0, 'omega':0 },
]
# year long integrations, timestep = 1 hour
sim_data = generate(objects, 365, 365*24)
# collect the analytics of interest from the simulation
ttv_data = analyze(sim_data)
# plot the results
report(ttv_data, savefile='report.png')
代码应生成类似于下图的输出
2019 年 7 月 22 日 — Kyle A. Pearson 的客座文章
引言在 18 世纪早期,物理学家和天文学家热切地测试着艾萨克·牛顿新发现的万有引力定律以及约翰内斯·开普勒的行星运动定律。天文学家厄本·勒维耶和约翰·库奇·亚当斯在 18 世纪对天王星进行了多次观测,以检验这些理论。他们独立得出结论,天王星的轨道偏离了他们根据开普勒定律的计算结果。天王星在其轨道上的某些点上加速然后减速,即使它远离木星和土星的引力势。这两位天文学家提出,天王星所经历的扰动是由于我们太阳系中的另一个天体造成的。那个天体后来被证明是海王星,在预测之前是未知的。同样的探测轨道扰动的技术可以应用于系外行星,以便发现新的行星(见下图)。然而,将数据与扰动模型匹配需要测试数千个 N 体模拟,以找到扰动体的最佳拟合参数。与使用这种蛮力方法相比,机器学习允许更有效地估计在参数空间中搜索的位置。然后,可以使用更广泛的分析(例如,使用嵌套采样)从最终的不确定性和参数推导出后验分布。