Расчет положения звезды на небе, PyEphem - PullRequest
3 голосов
/ 29 июля 2011

У меня трудности с поиском текущих координат (RA, DEC) для звезды в небе.В сети я нашел только один урок, как использовать библиотеку ephem: http://asimpleweblog.wordpress.com/2010/07/04/astrometry-in-python-with-pyephem/

Как я понял, мне нужно:

  1. создать наблюдателя
telescope = ephem.Observer()
telescope.long =  ephem.degrees('10')
telescope.lat = ephem.degrees('60')
telescope.elevation = 200
  1. Создать тело Звезда объекта здесь - проблема, у меня есть только (RA, DEC) координаты звезды

  2. Рассчитатьпозиция по .calculate (now ())

  3. по новым координатам найти высоту

Еще один вопрос о точности этой библиотеки, насколько она точнаявляется?Я сравнил juliandate и звездное время между этой программой и kstars, выглядит очень похоже.

и это http://www.jgiesen.de/astro/astroJS/siderealClock/

PS!Или может быть кто-то может порекомендовать лучшую библиотеку для этих целей.

Ответы [ 2 ]

6 голосов
/ 29 июля 2011

Я полагаю, вы ищете FixedBody?

telescope = ephem.Observer()
telescope.long =  ephem.degrees('10')
telescope.lat = ephem.degrees('60')
telescope.elevation = 200
star = ephem.FixedBody()
star._ra = 123.123
star._dec = 45.45
star.compute(telescope)
print star.alt, star.az

Я не знаю о точности;pyephem использует тот же код, что и xephem, и, например, положения планет задаются округленными вниз решениями VSOP87 (точность лучше, чем 1 угловая секунда);kstars использует полное решение VSOP.Но это действительно будет зависеть от вашей потребности;Например, не надейтесь на то, что ваш телескоп слепо направляет, для этого есть лучшие решения.

3 голосов
/ 02 сентября 2011
star = ephem.FixedBody(ra=123.123, dec=45.45)

в моем случае создание фиксированного тела не работает, должно быть

star = ephem.FixedBody()
star._ra = ephem.hours('10:10:10')
star._dec = ephem.degrees('10:10:10')
...