Как получить время UTC эпохи в спутниковом TLE (двухстрочный элемент)?

Я хочу преобразовать время эпохи TLE в UTC. В данный момент меня меньше интересуют объяснения и история — я просто хочу знать количественно, с уверенностью, как конвертировать.

Я в замешательстве, потому что вижу ссылки на UT и JD на сайтах NASA и Celestrak, как показано ниже. Поскольку Джулиан Дейт в настоящее время опережает UT примерно на 68,184 секунды (а также на 0,5 дптр), я застрял.

Время эпохи в TLE используется как минимум двумя способами. Во-первых, это время, когда прогноз от TLE наиболее точен. Второй - (я думаю) это момент времени, соответствующий среднему значению аномалии в строке 2 TLE, которое в этом примере составляет 66,7566 градусов:

TLE = """
1 25544U 98067A   16031.25992506  .00006019  00000-0  97324-4 0  9994
2 25544  51.6430  25.8646 0006733  62.5910  66.7566 15.54344726983528
"""

мой вопрос: какова точная связь между временем эпохи в TLE и соответствующим временем в UTC?

Текущую разницу также можно показать с помощью Skyfield :

from skyfield.api import JulianDate

jd = JulianDate(utc=(2016,1,1))

print jd.tt, "days"
print jd.tt % 1, "day fraction"
print ((jd.tt % 1) - 0.5) * 24. * 3600, "seconds"

дает

2457388.50079 days
0.500789166894 day fraction
68.1840196252 seconds

на этой странице НАСА эта фракция называется «доля юлианских дней»:

НАСА TLE 2line.gif

Скриншот НАСА TLE

но на этой странице Celestrac говорится, что

Скриншот Celestrac TLE

«Обратите внимание, что день эпохи начинается в полночь UT (не в полдень) и что все времена измеряются в средних солнечных, а не в звездных единицах времени (ответ на наш третий вопрос)».

Я спрашивал здесь о преобразовании Python в компьютерное время: «секунды с начала эпохи».

Ответы (4)

Дано: 16031.25992506

16 соответствует 2016 году. Поскольку 1957 год был первым годом запуска спутников, 57 будет 1957 годом, а в 2057 году это может измениться, так как возникнет проблема.

31 означает 31-й день года (31 января).

.25992506 — дробный день от полуночи. Это означает 6,2382 часа, 14,292 минуты, 17,52 секунды, что в основном получается путем умножения сначала на 24, затем удаления часов, затем 60, затем удаления минут, затем снова 60, чтобы получить секунды.

Что касается високосных секунд, то они на самом деле не определены. НАСА заявило, что практикуемый стандарт :

На практике обычно используется время UTC, но високосные секунды перегружаются на первую секунду следующего дня.

Итак, суть в том, что это преобразование должно дать вам время в формате UTC. Високосные секунды раздражают, но время все равно должно быть UTC.

Слово "Юлиан" на странице НАСА - зачем оно там? Вы говорите, что десятичная дробь - это просто «доля дня» в UTC, верно? Почему они добавляют «Юлианский» к «Части дня»?
Юлианский относится к юлианскому календарю и относится к дню года. См. en.wikipedia.org/wiki/Julian_day .

Лучшее предположение о шкале времени, используемой в файлах TLE, взято из эпического отчета Revisiting Spacetrack Report #3 от Celestrak, который они разместили здесь:

https://celestrak.org/publications/AIAA/2006-6753/

Они взяли старое программное обеспечение SGP4, собрали все патчи и улучшения, которые смогли найти в десятках онлайн-версий и разошлись по разным лабораториям, и выпустили новую очищенную версию алгоритма (фактически ту, что использовалась в Skyfield).

В «Разделе E» отчета они предполагают, что время указано либо в формате UTC, либо в формате UT1, и заключают, что разница на самом деле не имеет значения, потому что SGP4 просто недостаточно точен в прогнозировании положения спутников на <1 секунду, чтобы это имело значение. (Разница между UTC и UT1 всегда меньше секунды.) Говорят:

Учет времени в SGP4 привязан к эпохе данных TLE. … Здесь предполагается, что в качестве системы времени используется UTC, но официальной документации не существует, а UTC в том виде, в каком оно определено в настоящее время, было введено только в 1972 году. UT1 требуется для расчета GMST для преобразований координат, обсуждаемых в приложении, но неизвестно, или UTC — это то, что требуется программному обеспечению, хотя в этой статье мы предполагаем UT1. Ошибка, связанная с аппроксимацией UT1 по UTC, находится в пределах теоретической неопределенности самой теории SGP4. За исключением расчета GMST, этот документ и код предполагают, что время должно быть реализовано как UTC.

Таким образом, вы можете игнорировать TAI, TT и TDB при работе со спутниками. Все времена, с которыми вы имеете дело, вероятно, будут UTC.

Это важно и высоко ценится. Хорошо бы держать эту информацию связанной с этими обсуждениями. Спасибо, что следите за Space SE и за Skyfield! Иметь доступ ко всему этому из нескольких строк скрипта на Python — это фантастика!

Термин «юлианский день» (или дата) имеет три очень разных значения. Для историков это обычно означает дату, которая выражена в юлианском календаре, а не в григорианском календаре. Например, 3 сентября 1752 года по юлианскому календарю совпадает с датой по григорианскому календарю 14 сентября 1752 года. Для астрономов это означает количество дней, прошедших с полудня (в какой-то временной шкале, обычно TT или UT) 1 января 4713 года до нашей эры ( Джулиан). Например, JD 2357569 относится к полудню по всемирному времени 14 сентября 1752 года.

Третье значение - это номер дня в году, где 1 означает 1 января. Это третье значение - это значение, подразумеваемое на цитируемой странице НАСА.

Ах я вижу! Итак, меня больше не смущает использование «Джулиан» на странице НАСА. Эпохи TLE указаны в формате UTC (в пределах секунды, как отмечалось выше). Спасибо!

Целестрак утверждает, что время UT.

"https://celestrak.org/columns/v04n03/#FAQ03"

UT — астрономическое (точнее, вращательное) время. Оно определяется наблюдениями, зависящими от вращения Земли, и условно связано с кажущимся звездным временем. Условные обозначения выбраны таким образом, чтобы UT синхронизировался с солнцем.

Военно-морская обсерватория США http://aa.usno.navy.mil/faq/docs/UT.php говорит о UT следующее:

В астрономии и навигации UT часто относится к определенному времени, называемому UT1, которое является мерой угла вращения Земли, наблюдаемого астрономически. На него влияют небольшие колебания вращения Земли. UT1 — это современная форма среднего солнечного времени на гринвичском меридиане. Время, которое может быть помечено как «Универсальное время» или «UT» в данных, предоставленных Департаментом астрономических приложений Военно-морской обсерватории США (например, в ежегодных альманахах), соответствует этому определению.

Однако в наиболее распространенном гражданском использовании UT относится к шкале времени, называемой «всемирным скоординированным временем» (сокращенно UTC), которая является основой всемирной системы гражданского времени.

Смещение между UT и UTC всегда находится в диапазоне от -0,9 до 0,9 секунды. UT работает медленнее, чем UTC, поэтому положительные дополнительные секунды (единственные, которые когда-либо использовались до сих пор) дают UT шанс наверстать упущенное. Когда UTC опережает UT более чем на 0,5 секунды, вставляется дополнительная секунда, после чего UT опережает UTC примерно на полсекунды. Не волнуйтесь, UTC наверстает упущенное примерно через девять месяцев. https://www.nist.gov/pml/time-and-frequency-division/atomic-standards/leap-second-and-ut1-utc-information

Правила, используемые NORAD для обновления TLE, заключаются в том, что, когда текущее положение спутника, основанное на последних измерениях, отличается от прогноза SPG4, основанного на последнем наборе опубликованных TLE, более чем на 5 километров, TLE обновляются. Точность прогнозов SPG4/TLE — еще одна тема.

Орбитальная кинематика игнорирует високосные секунды. Следует распространять положение спутника, используя секунды SI в SPG4. Если время между эпохой, указанной в TLE, и до-или-послесловием охватывает високосную секунду, пользователи должны иметь возможность учитывать это.

Спасибо! Ваш ответ как-то не соответствует этому ответу ?
Я думаю, что использование термина «Юлианский день» в описании TLE сбивает с толку и не нужно. 1.) Придерживайтесь термина «День года», где 31 декабря 2017 г., 00:00 HR — это день 0.0 2018 года. 2.) См. исходный пост для обработки високосных секунд. TLE и SPG4 игнорируют дополнительные секунды. Используйте их только для перевода эпохи из DoY в UT1 и перевода прогноза из UT1 в UTC для вашего приложения. FWIW, я проанализировал данные радара, полученные в результате столкновения спутника Космос со спутником Иридиум, и моя «постдикция» для точки ближайшего сближения составила 70 метров, используя мой подход.
Хорошо, спасибо! Да, «День года», безусловно, для меня более ясный/менее двусмысленный. fyi Каким будет понимание «общей картины» того, как отслеживаются орбиты спутников Земли? все еще нуждается в ответе, как и исправления «глубокого космоса» в SGP4; как это объясняет гравитацию Солнца и Луны? .
Для объекта, не привязанного к земле, среднее движение будет равно 0,0. TLE может моделировать только кеплеровы (эллиптические) орбиты. Звезда Человечества (жестокое неправильное название!) проходит над головой повсюду на Земле несколько раз в день. Увидеть его можно только ближе к сумеркам, когда спутник освещен солнцем, а солнце находится за горизонтом. Иди сюда: n2yo.com/?s=43166
Вы также должны оставить комментарий под другим постом, а не только здесь. Если вы внимательно посмотрите на то, что я там написал , и подумаете о математике, отрицательный знак в среднем движении сделает свое дело, по крайней мере, для гиперболических облетов. Я полагаю, что для этого есть даже пустое место; колонка 52. Я пока не уверен, что это такое открытое и закрытое дело.