1

我正在尝试获取外行星的位置,我只是想确保我的代码是正确的。

lon = 45.138967
lat = -93.342730

ts = load.timescale()
t = ts.now()
print(t.utc_jpl())

planets = load('de422.bsp')

body = planets['SATURN_BARYCENTER']
earth = planets['Earth']

myLocation = earth + Topos(lat, lon)
apparent = myLocation.at(t).observe(body).apparent()

alt, az, distance = apparent.altaz()
print(alt.degrees)
print(az.degrees)
print(distance)

使用 SATURN_BARYCENTER 是正确的方法吗?

4

1 回答 1

2

我不太了解 skyfield 调用,但是当我想验证使用其前身 pyephem 获得的计算时,我通常会访问 JPL 的 Horizo​​n 网站。它非常不言自明如何在其界面中设置相同的参数。您获得的结果通常会略有不同,但足够接近以验证您是否走在正确的轨道上。

网址是https://ssd.jpl.nasa.gov/horizo​​ns.cgi

使用土星的重心非常好。如果你使用行星的中心,你得到的结果只会在角秒内有所不同,如果那样的话。土星系统(行星+卫星)的重心可能无论如何都位于行星内部,因为它的质量比它的卫星大得多。

于 2017-05-19T00:37:15.413 回答