Как определить правильный знак истинной аномалии для предсказания положения (вращение по часовой стрелке/против часовой стрелки)?

Я рассчитал параметры кеплеровской орбиты космического корабля по положению/скорости, используя следующие формулы: https://drive.google.com/file/d/11KhEdFboZCPUjfibtjHaDBWtUTNmJxFA/view?usp=sharing

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

Итак, от какого параметра орбиты зависит знак истинной аномалии? Как я могу определить, когда я должен использовать истинную аномалию со знаком минус?

Ответы (1)

Истинная аномалия ( ф ) всегда измеряется в направлении движения по орбите; если в вашей 2D-симуляции космический корабль движется против часовой стрелки, то истинная аномалия также измеряется против часовой стрелки от перицентра и наоборот.

В двумерном моделировании знак удельного значения углового момента час "=" р × в определяет, является ли орбита проградной (против часовой стрелки) или ретроградной (по часовой стрелке).

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

Для двумерного представления, где е Икс и е у являются x- и y-компонентами вектора эксцентриситета , а ось x указывает в опорном направлении, мы имеем следующее:

2D Спец. Анг. Импульс Орбита реж. 2D аргумент периапсиса Угол от опорного направления
час "=" р × в > 0 Повышение ю "=" а р с т а н 2 ( е у , е Икс ) ф + ю
час "=" р × в < 0 Ретроградный ю "=" 2 π а р с т а н 2 ( е у , е Икс ) ( ф + ю )

Опять же, обратите внимание, что это для 2D-моделирования. В трехмерном моделировании вы должны рассматривать удельный угловой момент как вектор, прямое/ретроградное определяется знаком скалярного произведения удельного углового момента и оси z, а требуемые повороты более сложны.

Хммм, я попробовал r⃗ ×v⃗ >0, и это не сработало. Может быть, я ошибся в своих расчетах
Я думаю, что, возможно, неправильно понял, о чем вы спрашивали изначально, и изменил ответ, исходя из предположения, что вы хотите знать направление орбиты.
@Robotex У вас есть аргумент перицентра в ваших расчетах, или мне нужно добавить, как он связан с вектором эксцентриситета?
«Мне нужно добавить, как это связано с вектором эксцентриситета?» - да, будет приятно
@Robotex В Stack Exchange мы используем MathJax , чтобы правильно отображать все виды математики. Например, $\mathbf{r} \times $\mathbf{r} > 0$урожаи
р × в > 0
и $\vec{r} \times $\vec{v} > 0$дает
р × в > 0
@notovny Большое спасибо, вы очень помогли. Я также обнаружил ошибку в своем расчете: я использовал скалярное произведение вместо векторного для расчета импульса (в 2D это также скаляр), поэтому не могу использовать его для определения направления движения. Сейчас все нормально.