天空找到外行星

时间:2017-05-18 23:56:11

标签: python skyfield

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

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正确的方法吗?

1 个答案:

答案 0 :(得分:2)

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

网址为https://ssd.jpl.nasa.gov/horizons.cgi

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