¿Es posible detectar si las órbitas se cruzan o no y las posiciones donde se cruzan si se conocen los elementos keplerianos (2D)?

Tengo dos órbitas y conozco sus elementos keplerianos. ¿Es posible encontrar posiciones donde se cruzan dos órbitas si esas posiciones existen?

¿Es posible hacerlo si las naves espaciales están en órbitas de diferentes cuerpos: es decir, la órbita de una nave espacial alrededor del sol y la órbita de la nave espacial alrededor de la tierra, la órbita lunar y la órbita terrestre, la trayectoria hiperbólica del asteroide y la órbita de la nave espacial alrededor del planeta?

Lo necesito para crear un algoritmo para evitar colisiones de naves espaciales en 2D de arriba hacia abajo.

¿Qué significa "cruzar"? Si las órbitas son 2D (es decir, dibujadas en papel), entonces la intersección es lo mismo que el cruce, y sucede cuando tienen el mismo radio (excepto cuando se tocan perfectamente (se besan u osculan)). Sin embargo, ¿qué significa en 3D? ¿Tienen que estar exactamente en el mismo plano para cruzar? (es decir, 2D) o simplemente significa que cambia cuál está más cerca del centro?
"sucede cuando tienen el mismo radio" - sucede cuando tienen diferente excentricidad y eje semi-mayor.
"Sin embargo, ¿qué significa en 3D? ¿Tienen que estar exactamente en el mismo plano para cruzar?" Me refiero a detectar la intersección donde sea posible la colisión entre dos naves espaciales
Veo que estás pidiendo más que los puntos donde se cruzan las órbitas. ¿Realmente quieres saber sobre las conjunciones , que es cuando los dos objetos están en el punto de intersección al mismo tiempo? ¿Algo así como métodos o técnicas algorítmicas para encontrar conjunciones en conjuntos de elementos Keplerianos de alto N? o quizás ¿Cuál es el procedimiento numérico para encontrar el siguiente acercamiento más cercano entre dos cuerpos en órbitas keplerianas?
@uhoh Se puede resolver de diferentes maneras. Si tengo una lista de objetos que en este momento están cerca de mí y los puntos de intersección de la órbita de cada objeto, puedo verificar si ese punto está cerca de mí en el momento actual y si está cerca, puedo calcular en qué momento ese objeto pasa ese punto. Si voy a estar en otro lugar en ese momento, la colisión es imposible y no necesito evitarla.
Independientemente de cómo lo haga, se llama "detección de conjunción" y la parte más difícil es que los elementos orbitales para cada uno tienen una incertidumbre. Así que no hay un solo "punto de intersección". Por supuesto, matemáticamente, las posibilidades de que dos órbitas aleatorias se crucen exactamente son cero. El desafío es que ambas órbitas tienen incertidumbre en sus elementos, por lo que realmente tienes dos nubes de probabilidad que se cruzan entre sí. Te recomiendo que eches un vistazo a esas páginas enlazadas.

Respuestas (2)

Es posible encontrar intersecciones de órbitas alrededor de un mismo planeta a través de coordenadas polares

En vista polar, la órbita toma la forma :

r ( θ ) = a × ( 1 mi 2 ) 1 mi × porque ( θ ϕ )

Estamos buscando intersecciones, es decir r 1 = r 2 :

r 1 ( θ ) = r 2 ( θ )
a 1 × ( 1 mi 1 2 ) 1 mi 1 × porque ( θ ϕ 1 ) = a 2 × ( 1 mi 2 2 ) 1 mi 2 × porque ( θ ϕ 2 )
a 1 × ( 1 mi 1 2 ) × ( 1 mi 2 × porque ( θ ϕ 2 ) ) = a 2 × ( 1 mi 2 2 ) × ( 1 mi 1 × porque ( θ ϕ 1 ) )
a 1 × ( 1 mi 1 2 ) a 2 × ( 1 mi 2 2 ) = a 2 × ( 1 mi 2 2 ) × mi 1 × porque ( θ ϕ 1 ) + a 1 × ( 1 mi 1 2 ) × mi 2 × porque ( θ ϕ 2 )
Ahora esta larga ecuación se compacta.
Dejar A ser el lado izquierdo y B 1 y B 2 Sean los coeficientes delante de los cosenos:
A = a 1 × ( 1 mi 1 2 ) a 2 × ( 1 mi 2 2 )
B 1 = a 2 × ( 1 mi 2 2 ) × mi 1
B 2 = a 1 × ( 1 mi 1 2 ) × mi 2
La función toma forma:
A = B 1 × porque ( θ ϕ 1 ) + B 2 × porque ( θ ϕ 2 )
Ambos cosenos tienen la misma frecuencia, por lo que se pueden combinar :
B = B 1 2 + B 2 2 + 2 × B 1 × B 2 × porque ( ϕ 1 ϕ 2 )
Φ = a r C t gramo ( B 1 × porque ( ϕ 1 ) + B 2 × porque ( ϕ 2 ) B 1 × pecado ( ϕ 1 ) + B 2 × pecado ( ϕ 2 ) )
y obtenemos
A = B × pecado ( θ Φ )
A partir del cual θ = arcsen ( A B ) + Φ (arcsin puede obtener 0,1 o 2 raíces) De eso puedes obtener r = r ( θ ) y desde ambas coordenadas polares puede obtener la posición en la forma que necesite.


En cuanto a las "órbitas alrededor de diferentes cuerpos", generalmente se resuelve moviendo objetos "entre esferas de influencia" (piense en KSP), por lo que solo las órbitas del mismo cuerpo pueden colisionar.
De lo contrario, la colisión elipse-elipse probablemente se puede aproximar a través del rectángulo delimitador (si aún no lo rastrea para dibujar, se encuentra a través de la función cartesiana de elipse : el foco está en X = mi × a , y = 0 ; los límites del rectángulo están en X = ± a y y = ± a × 1 mi 2 , regrese a las coordenadas globales a través de la matriz de rotación y el desplazamiento de coordenadas del cuerpo)
Y la verificación de colisión rectángulo-rectángulo es AABB o 4x4 line_segment-line_segment checks.

FWIW, para dos planos alrededor del mismo primario, puedes encontrar la línea donde los planos se cruzan a partir del producto cruzado de las normales de los planos.
@PM2Ring ¿Qué aviones? ¿La pregunta no es sobre 2D?
Admito que no está del todo claro por la forma en que está escrita esta pregunta, pero por sus otras preguntas sobre este tema, estoy bastante seguro de que el OP quiere encontrar posibles colisiones. Sin embargo, están trabajando con una vista de arriba hacia abajo en 2D.
¿Funcionará este truco con la hipérbola y la intersección de la hipérbola?
@Robotex La intersección de coordenadas polares debería funcionar igual ... Supongo que puede haber un problema si la intersección está en el segundo arco "negativo" de la hipérbola -> deberá agregar una verificación que r ( θ ) > 0 al final

El lugar donde se cruzan las órbitas es solo una parte de la evaluación de la probabilidad de colisión. También tienes que saber el tiempo en el que las dos naves llegan al mismo punto. A menos que el cruce ocurra al mismo tiempo que ambas naves espaciales están allí, no puede ocurrir una colisión.

Por ejemplo, es perfectamente seguro colocar varios satélites en órbitas idénticas, pero separados unos de otros por una pequeña cantidad de tiempo. Esto es exactamente lo que se hace en muchas constelaciones operativas, la más extrema de las cuales es StarLink. Tienen sesenta satélites que comparten cada órbita, pero nunca colisionarán porque están igualmente espaciados alrededor del círculo y todos se mueven a la misma velocidad.

De manera similar, múltiples conjuntos de órbitas circulares pueden cruzarse entre sí de manera segura, siempre que los satélites en cada plano estén en fase correctamente. Por ejemplo, volviendo a elegir StarLink, seis círculos de sesenta satélites pueden cruzarse en un punto y mantener al menos 1 grado de separación entre ellos, si un círculo atraviesa el cruce a 0, 6, 12... grados de movimiento medio. , el siguiente en 1, 7, 13..., el siguiente en 2, 8, 14... etc. La forma estándar de diseñar uno de estos es la constelación Walker Star .

Diferentes ejes semi-mayores o diferentes excentricidades pueden causar colisiones por sí solos, dependiendo de la fase de tiempo. Ambos juntos no tienen que causarlo, dependiendo de los planos de la órbita y la fase temporal. Las órbitas en diferentes planos pueden cruzarse y, históricamente, han causado colisiones reales. El problema con la prevención de colisiones (también llamada evaluación de conjunciones) es que la ecuación de Kepler, que describe el comportamiento del tiempo, no se puede resolver analíticamente para órbitas no circulares. Por lo tanto, no puede evitar tener que hacer alguna solución numérica y rápidamente descubre que no puede predecir la probabilidad de una colisión real sin un buen propagador y una buena estimación de covarianza.

te las arreglaste para decir "esta pregunta es estúpida y su versión más compleja es imposible" y al mismo tiempo no respondiste la pregunta en sí... maravilloso
@NooneAtAll no, dije que esta pregunta está incompleta, pero estas son algunas de las otras cosas que debe considerar si desea crear una herramienta útil para usted.
Cierto, no puedes invertir la ecuación de Kepler METRO = mi mi pecado mi analíticamente. Pero si conoces el ángulo excéntrico mi de un punto de colisión potencial, entonces es fácil obtener la anomalía media METRO , y por lo tanto el tiempo que el cuerpo alcanza ese ángulo. Por supuesto, en realidad es más complicado porque los cuerpos y las naves espaciales reales del Sistema Solar no tienen elementos keplerianos invariables, y los elementos que tenemos no son precisos hasta las dimensiones de una nave espacial.
Parece que esta posición se puede encontrar resolviendo el sistema de dos ecuaciones de elipses. Y el tiempo se puede encontrar mediante la fórmula del período orbital porque conocemos la posición inicial y la posición de intersección.
Sí, eso funciona, pero solo si sus órbitas son en realidad elipses. Si tiene una nave espacial que orbita una Tierra no esférica, o una con variaciones de densidad (p. ej., océanos frente a montañas), o existe el Sol o la Luna, o tiene en cuenta la presión de la radiación solar o la resistencia al avance, o muchos otros efectos de la vida real, encontrará que las órbitas resultantes no son elipses y no se repiten exactamente, por lo que necesitará programar o aprender a usar un solucionador de ecuaciones diferenciales (casi cada uno de los cuales encontrará será un envoltorio alrededor de algún viejo Fortran) para determinar tanto las órbitas como los tiempos numéricamente.
@RyanC "encontrará que las órbitas resultantes no son elipses", no es un problema para mí. La nave cuenta con un algoritmo de compensación de perturbaciones por motor