Как рассчитать время восхода/захода звезд и объектов глубокого космоса с помощью Skyfield?

Я пытаюсь вычислить время подъема и установки для различных объектов с помощью библиотеки Skyfield . Хотя задача довольно проста и хорошо задокументирована для планет (используя функцию almanac.rising_and_setting), мне не слишком понятно, как это сделать со звездами и объектами глубокого космоса.

Кстати, как мне загрузить каталоги NGC?

Не полный ответ, но начните с .starlib.Star() и используйте .almanac.risings_and_settings()

Ответы (1)

Если у вас есть координаты восхождения и склонения для любого объекта, будь то звезда или что-то еще, вы можете создать поле неба, Starкоторое представляет его положение на небе:

https://rhodesmill.org/skyfield/stars.html#building-a-single-star-from-its-coordinates

Затем вы можете передать этот объект — barnardв примере кода по приведенной выше ссылке — точно almanac.rising_and_setting()так же, как вы бы передали планету. Код будет выглядеть как пример здесь:

https://rhodesmill.org/skyfield/almanac.html#risings-and-settings

— за исключением того, что ваш вызов будет выглядеть так:

f = almanac.risings_and_settings(eph, barnard, bluffton)

В настоящее время нет способа загрузить каталоги NGC — я никогда не смотрел, как они отформатированы в Интернете, и я еще не видел, чтобы участник Skyfield что-либо предлагал. Если у вас есть ссылка на ваш любимый онлайн-источник каталога NGC, мы могли бы взглянуть? Откройте вопрос, если вы нашли онлайн-каталог NGC и считаете, что Skyfield должен научиться его читать.