Орбитальный пропагатор с возмущением J2 имеет большую ошибку по сравнению с простым двухчастичным пропаготором.

Я разработал орбитальный пропагатор, принимая во внимание возмущение J2 в соответствии с формулировкой, как показано: уравнение ускоренияс Рунге-Кутта 4-го порядка, временной шаг 1 секунда в качестве интегратора. Состав, как показано:

Формулировка

При J2 = 0,0010826, Re = 6,378137E+6 и mu = 3,986004418000000e+14.

Впоследствии я попытался сравнить его точность распространения по орбите с пропагатором SGP4, а также с пропагатором 2 Body, и обнаружил, что ошибка положения между «SGP4» и «Orbit Propagator with J2» намного больше по сравнению с ошибкой положения между «SGP4». " и "2 Кузовной пропагатор".

Вот некоторые детали моделирования распространения по орбите:

  1. TLE, используемый для распространителя SGP4:введите описание изображения здесь

  2. Продолжительность распространения 16 часов

  3. Поскольку выход SGP4 находится в кадре TEME, он был преобразован в кадр J2000 при сравнении ошибки распространения.

  4. Начальное положение и скорость для «орбитального пропагатора с J2» и «2-х корпусного пропагатора» получаются из выходных данных начального положения и скорости SGP4, преобразованных в систему координат J2000.

  5. SGP4 — это функция из набора инструментов Matlab Aerospace.

Ошибка положения в декартовых координатах по отношению к J2000, как показано:Икс у г

У меня сложилось впечатление, что распространение по орбите с учетом возмущения J2 должно быть более точным по сравнению с распространителем 2 Body, и поэтому мне интересно, не ошибся ли я где-нибудь? Или есть вероятность, что введение возмущения J2 вызовет больше ошибок? Любая помощь/совет/обмен, основанный на вашем опыте, очень ценится!

Прохладный! Просто мысль; что произойдет, если вы измените знак вашего Дж 2 ? Какой знак у Земли J2? Вы также можете сравнить свои уравнения ускорения с моими. Проблема с выражениями гравитационного потенциала заключается в том, что могут быть вариации мультипликативного фактора от одного источника к другому, что может привести к путанице в расчетах, если кто-то не будет очень внимательно читать и проверять промежуточные шаги.
Вы не показали свой код, поэтому нет никакого способа сказать правду. Одна вещь, которую вы, возможно, делаете неправильно, — это использование рамы J2000. Кадр ECEF наклоняется к J2000 из-за прецессии и нутации. Хотя вам не нужно моделировать вращение Земли при моделировании земной гравитации с помощью J2, вам необходимо моделировать прецессию и нутацию Земли.
@uhoh Посмотрите на уравнения ОП. Дж 2 очевидно, должно быть безразмерным. Дж 2 положителен, безразмерен и имеет значение около 10 3 , 0,0010826359, если быть точным.
Спасибо за ваше предложение. Я добавил свою формулировку и некоторую дополнительную информацию. Поскольку я не являюсь экспертом в этой области, я уделю немного больше времени изучению моделирования прецессии и нутации Земли и посмотрю, смогу ли я уменьшить ошибку.
Кажется, в вашем поправочном члене для гравитации с J2 (первое уравнение) есть ошибка. (a/r) возводится в квадрат дважды.
@NgPh Я совершенно уверен, что выражение для гравитационного ускорения верное. Обычно так не пишут, но это правильно. Более типичное выражение для возмущения J<sub>2</sub> (например, уравнение (3) в этой магистерской диссертации ) имеет вид
п "=" 3 2 мю Дж 2 а 2 р 5 ( ( 5 г 2 р 2 1 ) ( Икс Икс ^ + у у ^ ) + ( 5 г 2 р 2 3 ) г г ^ )
@NgPh Ошибка в потенциале не воспроизводится в уравнениях гравитационного ускорения.
Вы показали нам свой код. Вы тестировали его? Хороший модульный тест — посмотреть, сможете ли вы воспроизвести гравитационное ускорение на поверхности Земли. Вы можете получить некоторые значения, необходимые для такого модульного теста, из этого ответа на Physics.SE . В этом ответе не учитываются полярный радиус, который легко определить с учетом экваториального радиуса и уплощения, а также изменить мю исключить массу атмосферы, что не так просто, но все же выполнимо. Всегда хорошо проводить модульное тестирование кода.
@ Дэвид Хаммен, понятно. Итак, 1-е уравнение (для потенциала В Дж 2 ) неверно, но уравнения для г я верны (с чем я согласен).
К вашему сведению, обычно мы публикуем блок кода в виде текста, а не в виде снимка экрана. Это по нескольким причинам. Просто скопируйте свой код, убедитесь, что он имеет отступ не менее четырех пробелов, и вставьте его, как я сделал здесь .
На ваших графиках ошибок 2body и SGP4 я заметил, что ошибки, кажется, колеблются около 0. Это странно для меня, поскольку J2 заставит вашу плоскость орбиты прецессировать. Я ожидаю, что ошибка оси X будет расти линейно. Вы уверены в своем графике?

Ответы (1)

Спасибо всем за помощь и советы!

После некоторого устранения неполадок я обнаружил, что большая ошибка положения «пропагатора орбиты с возмущением J2» связана с плохим начальным положением и скоростью.

По-видимому, начальное положение и скорость во время эпохи TLE, сгенерированные с помощью набора инструментов MATLAB Aerospace SGP4, отличаются на несколько километров, отсюда и большая ошибка распространения, когда она используется в «пропагаторе орбиты с возмущением J2».

Я загрузил код SGP4 Дэвида Вальядо отсюда, эталонный код SGP4 , и использую исходный PV, сгенерированный из него, для «распространителя орбиты с возмущением J2», а также «распространителя 2Body». Сравнение ошибок положения по всем трем осям показано ниже:

Икс у г

Особая благодарность доктору STGoh из NUS STAR.

Поздравляю, хорошая работа!
@uhoh, есть ли у нас какие-либо сведения о том, что отображаемые числовые результаты верны?
@NgPh Кроме того, распространение по орбите не является «правильным», но если 2 тела + J2 согласуются с SGP4 в течение 48 часов в пределах нескольких километров, это чертовски хорошо! Уже известно, что TLE + SGP4 подходит только для скорости около 2 километров в день ( space.stackexchange.com/a/29817/12102 и space.stackexchange.com/a/29783/12102 ). Он содержит коэффициенты до (я думаю) 6-й или 8-й порядок гравитации, но численно не распространяется вообще. Вместо этого он просто развивает средние элементы орбиты. Таким образом, мы не знаем, какая часть из показанных крошечных разногласий связана с одним из них.
@ууу, тогда очень плохо. Только ОП понял проблему. Только ОП может понять решение. Только ОП может создавать графики. Этот вопрос и ответ на него не имеют никакой ценности для сообщества Space SE. Хотя, если кто-то принимает отображаемые числовые результаты ОП за чистую монету, он может делать выводы (на свой страх и риск).
@NgPh Ну, я бы не стал предполагать, что другие читатели могут почерпнуть из работы ОП, но все, что я могу сказать, это добро пожаловать в Stack Exchange! Если ОП хочет, чтобы кто-то проверил их работу, они могут опубликовать новый вопрос.
@uho, я просто хотел предупредить, что результаты не поддаются проверке, не делайте поспешных выводов (например, J2-только соответствует SPG4 до x дней).
@NgPh Этот пост был предназначен для того, чтобы выяснить, почему «распространитель орбиты с возмущением J2» имеет большую ошибку по сравнению с простым «распространителем с двумя телами», использующим SGP4 в качестве базовой линии. Насколько я понимаю, учет возмущения J2 должен давать лучшую точность по сравнению с 2 корпусом. И ответом на это было то, что я использовал начальное положение и скорость, отличающиеся на несколько километров, отсюда и большая ошибка распространения. Численная точность «пропагатора орбиты с возмущением J2» вообще не обсуждалась и даже не упоминалось о каких-либо выводах о характеристиках.
Вы наблюдали необъяснимые результаты и спросили SE, почему. Позже вы обнаружили несоответствие в настройках. Я согласен с вами, что достаточно закрыть исходный вопрос, независимо от ваших новых результатов . Я согласен с тем, что не должен делать никаких выводов на основе новых результатов (не делаю). Тем не менее, они, похоже, демонстрируют тенденцию к тому, что положение 2тела приближается к положению SGP4 каждый орбитальный период. Кроме того, в последнем наборе результатов амплитуда «колебаний» 2body, кажется, растет быстрее. Потрудитесь объяснить, почему?
@uhoh, моя концепция такого места, как SE, - это обмен знаниями. Было бы грустно, если бы Stack Exchange использовался как место для отладки чьего-то кода. Методы проверки/отладки, избегания известных ловушек в определенном программировании/рассуждении... с другой стороны, являются знаниями.
@NgPh, когда мы публикуем вопросы, это часто (но не всегда) происходит потому, что мы просто не знаем ответа. Возможно, 1% вопросов о моделировании орбиты здесь оказываются чем-то простым (я вспоминаю один исправленный конический вопрос, где ОП просто забыл включить гравитацию Марса в точке исправления). Мы не знаем заранее, будет ли вопрос относиться к этому 1% варианту или нет. ОП поступил правильно. Они выяснили, в чем проблема, это не было проблемой орбитальной механики, поэтому они написали краткий ответ, чтобы сообщить всем, что происходит. Вопрос закрыт.
@NgPh "... Было бы грустно, если бы Stack Exchange использовался как место для отладки чьего-то кода..." Да, если бы 30% всех вопросов касались отладки кода, это нужно было бы решить. Но нет ничего печального в разовом явлении. У вас нет оснований продолжать просить их предоставить вам что-то еще. Если вам действительно интересно узнать, что такое SGP4, двухкорпусный или двухкорпусный + J2, то опубликуйте новый вопрос SE об орбитальной механике , добавьте сюда ссылку для фона и пусть кто-нибудь ответит. Это лучше, чем преследовать совершенно нового пользователя и потенциально заставлять его чувствовать себя нежеланным.
@ChiaJiunWei эта цепочка комментариев немного необычная и совсем не типичная для Space SE; Я думаю, вы можете смело игнорировать это. Добро пожаловать в космос! :-)
@uhoh, у меня нет полномочий определять, какие комментарии являются «необычными». Но если вы имели в виду, что я пренебрежительно отнесся к тому, что сделал ОП, то вы ошибаетесь. Если вы предполагаете, что я оспариваю правильность новых результатов ОП, вы ошибаетесь. Если вы думаете, что я прошу объяснений, вы глубоко ошибаетесь. Я не люблю полемику, поэтому я останавливаюсь здесь, заключая, что мы с вами не разделяем одинакового мнения о том, как работает SE, и это нормально для меня.