Cómo calcular la distancia actual entre dos planetas [duplicado]

Me gustaría agregar una función a una de mis aplicaciones que calcule la distancia actual entre la Tierra y Marte (o cualquier otro planeta, para el caso). Mis búsquedas en Google me han llevado a estadísticas de distancias promedio (ya que la órbita de un planeta es elíptica y, por lo tanto, la distancia puede variar mucho), así como a artículos sobre las leyes de movimiento planetario de Kepler y más. También he visto algunas menciones de HORIZONTES , pero al revisarlo no vi nada que cumpliera con mis preguntas.

No he encontrado ninguna lectura que describa explícitamente cómo calcular la distancia actual entre dos planetas. Entonces, ¿cómo se hace esto?

Explique su respuesta y los pasos necesarios para que pueda entender mejor. El pseudocódigo es bienvenido.

¡Gracias!

Respuestas (1)

Hay muchas maneras diferentes de hacerlo.

Una forma es usar los elementos keplerianos y sus tasas obtenidas del sitio web JPL Solar System Dynamics para determinar las coordenadas cartesianas de los planetas en el plano de la eclíptica en un momento dado. La información y los datos para permitir el cálculo de las posiciones aproximadas de los planetas se proporcionan en el documento "Elementos keplerianos para las posiciones aproximadas de los planetas principales" de EM Standish.

Entonces para cada uno de los planetas, i , tenemos las coordenadas de posición en la forma

r i = [ X i y i z i ]
Dado que todas estas coordenadas se dan en el mismo marco de referencia, el vector de desplazamiento del planeta i al planeta j se puede obtener de
r i j = [ X i j y i j z i j ] = [ X j X i y j y i z j z i ]
y la distancia entre el planeta i y j se puede calcular usando
r i j = r i j = X i j 2 + y i j 2 + z i j 2
El método descrito en el documento para obtener las coordenadas de la eclíptica es muy fácil de implementar en software.