Введение
Моя цель - выполнить название этого вопроса и получить координаты Земли (latitude, longitude)
из кеплеровских координат (w, Ohm, i, a, e, M)
. Моя идея состоит в том, чтобы найти космический объект (астероид или что-то в этом роде) и провести от него прямую линию, уходящую прямо в Землю. Затем нанесите его на карту с указанием широты и долготы.
Это самая первая попытка в этой теме, и каждый бит информации более чем приветствуется (хотя, пожалуйста, не заставляйте меня читать 100 страниц, будьте конкретны, это «летний проект по самообучению программированию», где я изучаю данные и науку благодаря заранее)
Источники знаний
Для кеплеровских переменных я взял их отсюда
в этом случае я использовал переменные Ceres :
M = 77.44; //Mean
e = 0.0760; //Eccentricity
a = 2.7691; //Smj axis
i = 10.59; //inclination
w = 73.59; //perigee
Ohm = 80.80; //node
Для формул я использовал их из старой публикации НАСА , где я использовал эти формулы:
Декартово решение:
--Formulas--
x = a*((cos(E)-e)*(cos(w)*cos(Ohm)-sin(w)*sin(Ohm)*cos(i))+(((1-e^2)^(1/2))*sin(E))*(-sin(w)cos(Ohm)-cos(w)*sin(Ohm)*cos(i)));
y = a*((cos(E)-e)*(cos(w)*sin(Ohm)+sin(w)*cos(Ohm)*cos(i))+(((1-e^2)^(1/2))*sin(E))*(-sin(w)sin(Ohm)+cos(w)*sin(Ohm)*cos(i)));
z = a*((cos(E)-e)*(sin(w)*sin(i))+((1-e^2)^(1/2))*sin(E)*(cos(w)*sin(i)))
из чего я получил следующие результаты:
--RESULTS--
x = 1.35824;
y = -2.6455
z = -0.7783;
затем перейдите к расчету широты с помощью:
--Formulas--
radius = sqrt(x^2 + y^2 + z^2)
latitude = cotan(z/(sqrt(x^2+y^2)))
из чего я получил следующие результаты:
--RESULT--
radius = 3.0739;
latitude = -3.7332;
Проблема
У меня такое чувство, что я что-то напутал или неправильно понял на пути к своей цели, и результат, с которым я столкнулся, неверен. По крайней мере, для широты, по долготе я не буду рассчитывать, если моя широта неверна. (Зачем тратить время на неправильные цифры и предположения?)
Цель
Чтобы иметь возможность преобразовывать эти переменные в широту и долготу для картографического представления Земли.
Примечания
Похожие вопросы
Расчет координат по параметрам базы данных малых тел JPL?
Что это за алгоритм для расчета векторов состояния орбиты?
Земная долгота/широта под спутником (декартовы координаты) в определенную эпоху
--Formulas-- radius = sqrt(x^2 + y^2 + z^2) latitude = cotan(z/(sqrt(x^2+y^2)))
Собственно, ссылка у вас показывает
Это функция арктангенса, а не котангенса. Для фигур, которые вы показываете, арктангенс будет или
Тем не менее, в документе нет ничего о положении Земли, поэтому я предполагаю, что все элементы орбиты должны быть привязаны к Земле (или к телу, на котором вы хотите найти подспутниковую точку). Но данные, которые у вас есть для Цереры, выглядят гелиоцентрическими. Вам понадобится что-то еще, чтобы найти геоцентрические углы.
Subprogram PVOE
орбиты спутников вокруг Земли , поэтому вы смешиваете яблоки и апельсины. Чтобы получить широту и долготу Цереры (обращающейся вокруг Солнца) относительно Земли, вам потребуется еще несколько шагов. Первым будет вычисление x, y, z
Земли, затем вам нужно будет рассчитать вращение Земли в определенный момент времени, прежде чем получить долготу.
Чайтанья Мандала
Грег Миллер