我正在尝试获取外行星的位置,而我只是想确保我的代码正确。
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正确的方法吗?
答案 0 :(得分:2)
我不知道Skyfield调用那么好但是当我想验证我使用它的前身pyephem获得的计算时,我通常会去JPL的Horizon网站。它非常自我解释如何在其界面中设置相同的参数。您获得的结果通常会略有不同,但足够接近以确定您是否在正确的轨道上。
网址为https://ssd.jpl.nasa.gov/horizons.cgi
使用土星的重心非常好。如果使用行星的中心,你得到的结果只会在arcseconds中有所不同,如果是这样的话。土星系统(行星+卫星)的重心无论如何都可能位于行星内部,因为它的质量远大于它的卫星。