Здесь есть две тонкости.Во-первых, вы случайно использовали «возвышение» и «высоту» для обозначения противоположности значения двух терминов в библиотеке PyEphem - поэтому вы называете точку на небе положением «высота / азимут», а не «высоту»./ azimuth ». Во-вторых, похоже, что PyEphem забыл предоставить простой способ преобразования дат из Джулиана в в свой собственный формат. Хотя есть функция julian_date()
, которая будетпойти в другом направлении, нам придется проделать небольшую работу, чтобы пойти в другом направлении, выяснив, для чего имя ephem
.
С учетом этих условий, я думаю, что этот сценарий можетответьте на ваш вопрос:
import ephem
az = 3.30084818 #rad
el = 0.94610742 #rad
lat = 34.64 #deg
lon = -103.7 #deg
alt = 35800.26 #m
ut = 2455822.20000367 #julian date
# Which Julian Date does Ephem start its own count at?
J0 = ephem.julian_date(0)
observer = ephem.Observer()
observer.lon = str(lon) # str() forces deg -> rad conversion
observer.lat = str(lat) # deg -> rad
observer.elevation = alt
observer.date = ut - J0
print observer.date
print observer.radec_of(az, el)
Является ли ответ, который он дает, правильным для данного наблюдения? Вот что печатает для меня сценарий:
2011/9/17 16:48:00
(9:16:24.95, -0:45:56.8)
Дайте мне знать, если это делает физическоесмысл этого конкретного наблюдения, или если одно из чисел здесь неверно и все еще нуждается в настройке!