В пределах Skyfield, если у меня есть вектор (x, y, z) из центра Земли, как можно Я обратно конвертирую его в точку на «Небесной сфере» (т.е. прямое восхождение и склонение)?
Например, предположим, что у меня есть несколько точек на орбите телескопа вокруг Земли, и я хочу вычислить точное прямое восхождение и склонение направления нормали к орбите - по какой-либо причине.
Здесь можно пренебречь такими эффектами, как аберрация и гравитация - я просто хочу изменить направление в ICRF на прямое восхождение и склонение.
В псевдокоде:
from skyfield.api import load
import numpy as np
eph = load('de421.bsp')
ts = load.timescale()
now = ts.now()
vec = np.array([3141, 2718, 5820], dtype=float)
nvec = vec / np.sqrt((vec**2).sum()) # normalize for the heck of it
earth = eph['earth']
evec = earth.at(now).vector(vec) # pseudocode
print "It's pointing toward: ", evec.radec() # pseudocode