从天空中的(方位角,仰角)中找到(ra,dec)

问题描述 投票:1回答:1

我在地球上有一个定向天线,我想知道它在ra,dec坐标中指向的位置。我想使用新的Skyfield库,因为pyephem不再开发了。

在地球上计算我的topos位置很容易:

planets = load('de421.bsp')
earth = planets['earth']
paris = earth + Topos('48.839059 N', '2.310147 E')

但是后来我无法弄清楚如何从这一点开始指示az,alt夫妇。我已经看过from_altaz方法,但我无法让它工作。

如果我从一个topos尝试它:

antenna = paris.from_altaz(alt_degrees=41.1,az_degrees=180)

Traceback (most recent call last):
  File "./compute.py", line 13, in <module>
    antenna = paris.from_altaz(alt_degrees=41.1,az_degrees=180)
AttributeError: 'VectorSum' object has no attribute 'from_altaz'

我所有不同的试验都产生错误......

我怎么能设法做到这一点?

谢谢!

astronomy skyfield
1个回答
1
投票

您尝试使用的from_altaz功能来自position_lib。由于这是针对固定物体和移动物体(随时间而变化),因此它是时间的函数。因此,您需要使用observer函数指定.at的时间。

from skyfield import api

ts = api.load.timescale()
planets = api.load('de421.bsp')
earth = planets['earth']

antenna = earth + api.Topos('48.839059 N', '2.310147 E')

t = ts.now()
direction = antenna.at(t).from_altaz(alt_degrees=41.1, az_degrees=180)

ra, dec, distance = direction.radec()
print(ra)
print(dec)

这导致:

04h 43m 26.56s -00deg 05'39.5

© www.soinside.com 2019 - 2024. All rights reserved.