yandexdataschool / satellite-collision-avoidance

RL for optimal satellite collision avoidance maneuvres
26 stars 7 forks source link

Сгенерировать одну опасную ситуацию #10

Closed kazeevn closed 6 years ago

IrinaPonomareva commented 6 years ago

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

на некоторый момент времени t_fix (который и есть момент столкновения - я выбираю элементы орбиты так, что в этот момент объекты в одной точке на широте экватора, у обоих орбит это перицентры - точки орбиты, ближайшие к Земле)

Объект 1 (наш, управляемый) большая полуось a 7800 км эксцентриситет e 0.001 наклонение i 1 градус долгота восходящего узла Omega 0 градусов аргумент перицентра omega 0 градусов время с момента прохождения перицентра 0 секунд (или истинная аномалия 0 градусов)

Объект 2 (угрожающий космический мусор) большая полуось a 7800 км эксцентриситет e 0.001 наклонение i 90 градус долгота восходящего узла Omega 0 градусов аргумент перицентра omega 0 градусов время с момента прохождения перицентра 0 секунд (или истинная аномалия 0 градусов)

Проверьте с визуализацией. Плоскости орбит должны быть перпендикулярны (одна чуть-чуть незаметно наклонена к экватору, другая через полюса). А объекты в момент столкновения проходят восходящий узел, т.е. находятся в плоскости экватора.

Теперь можно оттянуть время, например, на час назад от t_fix, и этот новый момент считать текущим, с угрозой будущего столкновения.

Примечание: Некоторые значения я выбираю малыми, но отличными от 0, чтобы нам сейчас не заморачиваться с "особыми" случаями. Например, если мы выберем идеально круговую орбиту (эксцентриситет 0), то неясно, какую точку у нее считать перицентром (ближней к Земле точкой орбиты). Поэтому проще взять малые ненулевые числа и быть уверенным, что все посчитается однозначно и недвусмысленно.