gpt4 book ai didi

python - 日心位置

转载 作者:行者123 更新时间:2023-12-01 04:46:35 24 4
gpt4 key购买 nike

有没有办法用 Brandon Rhodes 的 Python 程序 Skyfield 计算日心行星坐标(经度和纬度)?

如果我只这样做:

水星(utc=(1980, 1, 1)).ecliptic_latlon()

我得到一个重心物体,因此纬度和经度与日心值不匹配。

我尝试过:太阳(utc=(1980, 1, 1)).observe(木星)但这会引发错误:

skyfield/relativity.py:128: RuntimeWarning: invalid value encountered in true_divide
ehat = pe / emag
skyfield/relativity.py:144: RuntimeWarning: divide by zero encountered in double_scalars
fac1 = 2.0 * GS / (C * C * emag * AU_M * rmass)

使用Python 3.4,skyfield 0.4,de423

谢谢!

最佳答案

使用 Python 3.4 和 Skyfield 0.4,我能够运行:

from skyfield.api import sun, jupiter
p = sun(utc=(1980, 1, 1)).observe(jupiter)
lat, lon, d = p.ecliptic_latlon()
print(lat)
print(lon)

并得到结果:

01deg 00' 46.7"
+151deg 19' 21.7"

我想知道在您的情况下,是什么使引用的方程返回被零除的值?顺便说一句,你的方法是正确的 - 日心位置是从太阳测量的,而不是从太阳系中部测量的,所以你做的事情完全正确!

如果您可以在 Skyfield 源代码中错误行的正上方添加一个 print 语句,那么看看分母中的哪些值对您而言为零将会很有趣!

关于python - 日心位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29270934/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com