Моделирование перелета АМС

Автор ZOOR, 11.09.2023 12:59:09

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

ZOOR

Вопрос очень простой.

Предположим запрограммирована задача четырех тел (Солнце, Земля, Луна, АМС) в гелиоцентрической декартовой СК.
Представление чисел в стандартном double (разряд знака, 11-разрядная экспонента, 52-разрядная мантисса).
Интегрирование Рунге-Куттом 4 порядка с фиксированным шагом 60с. Интервал неделя.

Наинтегрируется что путное или всё в ошибку вычислений упрется?
Я зуб даю за то что в первом пуске Ангары с Восточного полетит ГВМ Пингвина. © Старый
Если болит сердце за народные деньги - можно пойти в депутаты. © Neru - Старому

Serge V Iz

Цитата: ZOOR от 11.09.2023 12:59:09Наинтегрируется что путное или всё в ошибку вычислений упрется?
Есть простой способ проверить:

выполнить то же уменьшенным, а потом ещё раз уменьшенным шагом,

или

 выполнить то же Эйлером 2 и какими-нибудь Рунге7/8.

(С потолка, из приблизительных соображений) Если это пассивный участок и не с самой поверхности Земли, то вполне точно должно получаться. Если активный -- за 60 секунд типичными средствами выведения можно довольно много наделать, в том числе, промахов. )

Олег

#2
Цитата: ZOOR от 11.09.2023 12:59:09Наинтегрируется что путное или всё в ошибку вычислений упрется?
Интегрируется.
Шаг 60 сек - это даже лишнее, такой шаг когда близко к Земле или Луне. А уже на расстоянии в неск. радиусов достаточно и минут 10..30 например. Плюс вблизи Земли надо учитывать сжатие ( хотя бы J2 ).
Проблемы могут быть -
 - давление света. Это можно посчитать, но надо знать, каким боком сейчас АМС к Солнцу. Если она не шар.
 - масконы . Но это уже на окололунной орбите.

Я как-то написал кучу кода на Дельфы, методом Эрмита ( всякие пробовал, этот у меня точнее получился ), он из Р-К происходит, только в нем еще и рывок считается ( производная ускорения ).
Я проверял по Солн. системе ( Солнце, 8 планет, Луна) , считал на год и сравнивал с DE/LE405 .
Ошибки - у Меркурия неск. сотен км, у Земли, Луны , Венеры, Мрса - десятки км, Юпитер и пр. - единицы км. Причем, при снижении шага менее 0.05 суток точность уже не растет.

PS Это без всякой астродинамики, без двигателей. Только движение под действием гравитации.
PPS Данные - Double, переход на Extended практически не дает прироста точности, хотя что интересно и быстродействие не снижает.

Олег

Цитата: ZOOR от 11.09.2023 12:59:09в гелиоцентрической
Исходные данные можно в любой задать.
Можно Солнце вектор положения скорости = (0,0,0,0,0,0), можно Землю . Все равно используются в вычислениях разности векторов.
Для проверки можно посчитать, как движется барицентр системы. Должен по 1-му закону Исаака нашего Ньютона - прямолинейно равномерно. Или стоять на месте, если исходные данные в барицентрической заданы.

ZOOR

Цитата: Олег от 11.09.2023 15:27:02Исходные данные можно в любой задать.
Можно Солнце вектор положения скорости = (0,0,0,0,0,0), можно Землю . Все равно используются в вычислениях разности векторов.
О!
Спасибо
Я зуб даю за то что в первом пуске Ангары с Восточного полетит ГВМ Пингвина. © Старый
Если болит сердце за народные деньги - можно пойти в депутаты. © Neru - Старому

Олег

Я вот отсюда брал - ссыла
Там правда опечатки нашел в методе Эрмита.
Там и про Р-К есть.

Serge V Iz

Есть (открытый-бесплатный) такой пакет OpenModelica.

В нем можно в естественной форме записать уравнения вида X' = F(X) и оттуда же получить (если надо забрать в свой проект) отлаженный и проверенный процедурный вычисляющий код, в котором будет сам метод интегрирования, и корректное решение алгебраических/матричных частей. Высокие порядки методов интегрирования там тоже есть, но для такого рода систем они, имхо, не сильно нужны.

Serge V Iz

Или вот, от бауманцев, вроде бы  :D

Если задача укладывается в уже готовые форматы, то вообще очень просто: https://help.simintech.ru/index.html?q=/10_biblioteki_blokov/ballistika_ka/DIR_raschet_dvizheniya_ka.html

Туман Андромедов

#8
Цитата: ZOOR от 11.09.2023 12:59:09Наинтегрируется что путное
Да.
И вполне можно делать автовыбор шага интегрирования. Я пробовал Рунге-Кутты 4го порядка, Рунге-Кутты-Мерсона, Рунге-Кутты-Фильберга. С контролем потери точности по скорости или координате. Если настроить критерии потери точности для каждого из шести вариантов так, чтобы в конце (например в периселении пролётной окололунной гиперболы) получать одинаковый вектор, то у меня получилось что самый быстрый (меньше всего холостых циклов уполовиневания шага и самый большой шаг для участков вдали от сферы действия второй планеты,  например для задачи Земля-Луна) - Рунге-Кутты-Мерсона с контролем точности по координате.
Но численный метод - это важно, конечно, но самое главное -  модели ускорений  (числа гармоник потенциала планет и Солнца), если нужно - то да, и световое давление. И модели движения планет.
Тут полностью зависит от цели расчёта. Если нужно "в первом приближении" найти нужную траекторию перелёта и дату пуска чтобы около планеты-цели иметь нужную конечную орбиту, то, в принципе, движение планет можно задавать известными степенными рядами по аргументу "юлианская дата". Это максимально быстрый способ.

Олег

Цитата: Туман Андромедов от 11.09.2023 20:12:27модели ускорений  (числа гармоник потенциала планет и Солнца)
Это про гармоники от полярного сжатия ?
Эти гармоники только для пролетов вблизи, и только для сильно сжатых , типа Земли и Юпитера. У Юпитера - для галилеевых спутников они существенно влияют. У Земли - выше ГСО гармоники нужны только для сверхточных вычислений, там уже световое давление больше влияет.
Солнце наверное можно считать круглым, даже на Меркурий существенно не влияет, у Меркурия эффекты ОТО больше, чем несферичность Солнца.

Олег

Цитата: Туман Андромедов от 11.09.2023 20:12:27известными степенными рядами по аргументу "юлианская дата"
Представляете число 2460199.35613426 в 7-й например степени. Изза лишних разрядов точность уплывет. Лучше не от JD, а от долей года с какого-то момента, например от J2000.0
Типа t = (JD- 2451545) / 365.25

Туман Андромедов

Цитата: Олег от 11.09.2023 20:31:43Это про гармоники
Мы же ведь не знаем с Вами подробностей модели ZOOR. Может он уравнения движения для Луны и Земли интегрирует. 
Я, наверное, не очень точно сформулировал тезис о том, что при всей важности численного метода, математическая модель важнее.
А так-то я с Вами полностью согласен, что модель потенциалов должна быть адекватна целям расчётов. Тут кто-бы спорил, только не я.

Туман Андромедов

Цитата: Олег от 11.09.2023 20:36:56Лучше не от JD
Конечно лучше. Есть ряды для MJD. Если только этот способ определения координат планеты автор модели вообще сочтёт возможным.

Олег

Цитата: Туман Андромедов от 11.09.2023 21:24:30Может он уравнения движения для Луны и Земли интегрирует.
Я так делал, для проверки метода. Но для АМС лучше векторы положения и скорости планет брать например из DE/LE 405 ( или 431, какая там свежая) , а интегрировать только саму АМС.
Там, в этих DE/LE и даются коэффициенты Чебышева на некоторые периоды. В качестве аргумента - дней от начала периода.

PS Если не АМС, а что-то массивное, типа страшной черной дыры, влетевшей в Солн. систему, тогда всех надо считать.

SONY

Я вижу, что народ тут "прошаренный" собрался...
Если возьмётесь реально интереса ради что-то моделировать, можете одну конкретную задачку решить?

Пусть у нас есть АМС, которая запущенна к Луне по такой же траектории, по какой запустили Луну-25. Речь о той траекторию, которую задал разгонный блок Фрегат.
В отличие от Луны-25 эта АМС оборудована ЭРД с очень малой тягой. Можно считать, что двигатель создаёт стабильное ускорение в 0,00002 м/с2. Далее несколько вопросов:
- можно ли при таком ускорении в принципе совершить все необходимые коррекции и в итоге выйти на окололунную орбиту?
- какова минимальная delta-V всех коррекций и выхода на стабильную* окололунную орбиту? Орбита может быть круговой, вытянутой эллиптической, полярной, экваториальной, прямой, ретроградной - не важно. Лишь бы она была стабильна* и delta-V выхода на неё была минимально возможной. Какова будет вот эта орбита, на которую проще всего выйти?
- какова минимальная delta-V всех коррекций и выхода на стабильную* окололунную орбиту с наклонением 86°? Орбита может быть круговой или вытянутой эллиптической - это не важно. Лишь бы она была стабильна*, с наклонением 86° и delta-V выхода на неё была минимально возможной. Какова будет эта орбита, на которую проще всего выйти?
- какова минимальная delta-V всех коррекций и выхода на низкую круговую окололунную орбиту с высотой 100 км и наклонением 86°?

* - под стабильностью подразумевается, что космический аппарат на протяжении как минимум десяти лет не покинет окололунное пространство и не врежется в Луну. Если при этом параметры орбиты будут постепенно изменяться - не важно.

Олег

Цитата: SONY от 11.09.2023 22:00:25можете одну конкретную задачку решить?

Пусть у нас есть АМС, которая запущенна к Луне по такой же траектории, по какой запустили Луну-25. Речь о той траекторию, которую задал разгонный блок Фрегат.
В отличие от Луны-25 эта АМС оборудована ЭРД с очень малой тягой. Можно считать, что двигатель создаёт стабильное ускорение в 0,00002 м/с2.
Нет, я только с мертвыми телами . То есть просто небесная механика, без астродинамики. Могу только мгновенно добавить некий вектор скорости, в какой-то момент. А встроить  реактивную тягу в интегратор - мне кажется довольно муторно, для меня по крайней мере.
Кстати, траекторию отлета - где точные данные ? В смысле начальных условий на JD TT = .. векторы pos = (X,Y,Z), vel = (vX,vY,vZ) в системе J2000.0.
И для стабильной орбиты - масконы учитывать ? Если учитывать, то это одной гармоникой J2 не обойдешься, как для Земли . Их как-то встраивать в интегратор, это проблема.

Serge V Iz

Цитата: Олег от 11.09.2023 22:18:00Могу только мгновенно добавить некий вектор скорости, в какой-то момент
А много маленьких векторов в много последовательных моментов?

Вопрос чисто теоретический -- чтобы это имело смысл, нужно изобрести функцию, которая будет вертеть этой тягой в ходе полёта оптимальным, или просто достаточно хорошим образом. Не перебирать же все возможные. )

Наименьший квадрат

Цитата: SONY от 11.09.2023 22:00:25Я вижу, что народ тут "прошаренный" собрался...
Если возьмётесь реально интереса ради что-то моделировать, можете одну конкретную задачку решить?
С такой тягой лучше ковылять на Луну с какого-нить ГСО. А с гиперболической орбиты, которую сделал Фрегат, с такой тягой вряд ли получится хоть что-то окололунное.
"Всё будет как по маслу. Вначале каждый вечер пение, потом в сортирах замёрзнут трубы, потом лопнет котёл в паровом отоплении и так далее. Крышка Калабухову!" (с)

SONY

Цитата: Наименьший квадрат от 11.09.2023 23:01:57С такой тягой лучше ковылять на Луну с какого-нить ГСО. А с гиперболической орбиты, которую сделал Фрегат, с такой тягой вряд ли получится хоть что-то окололунное.
С ГСО это заведомо просто дикая delta-V, никак не менее 1,5 км/с даже на "какую придётся" орбиту.
Орбита, которую задал Фрегат, не была гиперболической.
Вы не можете просматривать это вложение.
Фрегат вывел АМС на вытянутую эллиптическую орбиту, 343x400001 км. Ну, по крайней мере, сам он на этой орбите оказался (объект 2023-118B в самом низу страницы).
Для сравнения попутные CubeSat миссии Artemis 1 болтаются на 532x377388 км - очень близко. И мы знаем, что те самые попутные CubeSat в том числе предполагали выход на орбиту за счёт ионного двигателя и двигателя электроспрей, т.е. с очень низкой тягой.

SONY

Цитата: Олег от 11.09.2023 22:18:00Могу только мгновенно добавить некий вектор скорости, в какой-то момент.
Такой перелёт я и сам могу прикинуть без сложного моделирования. Тут весь вопрос именно в малой тяге...
Цитата: Олег от 11.09.2023 22:18:00Кстати, траекторию отлета - где точные данные ? В смысле начальных условий на JD TT = .. векторы pos = (X,Y,Z), vel = (vX,vY,vZ) в системе J2000.0.
Таких нету. Но мы знаем, что 11 августа 2023 года аппарат вышел на орбиту с высотой 343x400001 км и наклонением 49,9 градуса, причём 16 августа 2023-го года апогей орбиты оказался над Луной. Полагаю, что этих данных достаточно чтобы вычислить траекторию.
Цитата: Олег от 11.09.2023 22:18:00И для стабильной орбиты - масконы учитывать ? Если учитывать, то это одной гармоникой J2 не обойдешься, как для Земли . Их как-то встраивать в интегратор, это проблема.
Ну, допустим, не учитываем. Для высокой орбиты (а орбита с минимальной delta-V перелёта явно будет очень высокой) они должны иметь незначительное влияние, а орбита 100 км из последнего вопроса - "замороженная".