Vous êtes sur la page 1sur 7

Simulación: Cálculo de órbitas

Índex
1 Introducción al problema 2

2 Implementación numérica 3

3 Resultados y conclusiones 4

1
1 Introducción al problema
Muchos principios en fı́sica que se aplican a una partı́cula sobre la que actúa una determinada fuerza,
pueden ser aplicados a un sistema de éstas al que denominamos campo. Uno de los campos más cono-
cidos, sobretodo desde el punto de vista clásico, es el campo gravitatorio. En éste campo se representa
principalmente la gravedad, y se entiende como una alteración del espacio alrededor de los cuerpos. Des-
arrollando desde la segunda ley de Newton, podemos obtener la fuerza que una masa provoca sobre otra,
y a partir de esta obtener las trayectorias que describen los cuerpos mientras interaccionan.
m1 m2
F⃗ = −G u⃗ (1)
⃗ 2 12
r12
En nuestro problema vamos a estudiar la interacción que hay entre 3 cuerpos en los que varia m y x.
Para ello necesitaremos resolver un sistema de tres ecuaciones diferenciales de segundo orden, dado que
lo estudiaermos en dos dimensiones, habrá dos ecuaciones por cuerpo, una en el eje x y otra en el y. El
sistema queda:

1. Cuerpo 1:
d2 x1 −GM2 GM3
2
= 3
(x1 − x2 ) − (x1 − x3 ) (2)
dt r2 r3 3
d2 y1 −GM2 GM3
= (y1 − y2 ) − (y1 − y3 ) (3)
dt2 r2 3 r3 3
2. Cuerpo 2:
d2 x2 −GM1 GM3
= (x2 − x1 ) − (x2 − x3 ) (4)
dt2 r1 3 r2 3
d2 y2 −GM1 GM3
= (y2 − y1 ) − (y2 − y3 ) (5)
dt2 r1 3 r2 3
3. Cuerpo 3:
d2 x3 −GM1 GM2
= (x3 − x1 ) − (x3 − x2 ) (6)
dt2 r3 3 r2 3
d2 y3 −GM1 GM2
2
= 3
(y3 − y1 ) − (y3 − y2 ) (7)
dt r3 r2 3
En éste caso tomamos x1 , x2 , x3 , y1 , y2 , y3 , que son las posiciones determinadas de cada cuerpo en
un cierto instante de tiempo; las velocidades para cada eje y cuerpo; un tiempo máximo de cálculo; las
masas de los cuerpos y unas determinadas iteraciones h, como datos del problema a introducir en el pro-
grama. Dependiendo del valor de estos datos nuestro problema evolucionará de una determinada manera.

Las distáncias r para cada cuerpo quedan definidas como:



r1 = (x1 − x2 )2 + (y1 − y2 )2 (8)

r2 = (x2 − x3 )2 + (y2 − y3 )2 (9)

r3 = (x3 − x1 )2 + (y3 − y1 )2 (10)
Buscaremos la resolución del problema a partir del método de Runge-Kutta 4, obteniendo los valores de
posición de cada cuerpo en los dos ejes, y haremos plots para estudiar el recorrido que siguen al interac-
cionar entre ellos.
Lo que podemos esperar, como hipótesis general, es que los cuerpos menos masivos describan un movi-
miento alrededor de los más masivos, de manera que podamos ver órbitas circulares o de tipo elı́ptica.

2
2 Implementación numérica
Como hemos comentado, utilizaremos el método de Runge-Kutta 4, que se basa en la discretización del
tiempo con un parámetro denominado iteración. La relación existente entre el tiempo y éste parámetro
viene dada por la expresión:
tk+1 = tk + h (11)
El método toma lugar una vez determinadas las variables que se quieren estudiar, mencionadas en el
apartado anterior.
Éste método requiere de un sistema de fórmulas de recurrencia para poder ser aplicado. Definiendo:
dx
= vx (12)
dt
dvx
= f (x, y, vx , vy , t) (13)
dt
De manera que nuestro sistema tendrá las ecuaciones siguientes para Runge-Kutta 4:

l1 = hf (x, y, vx , vy , t) (14)

1 1 1 1 1
l2 = hf (x + k1 , y + q1 , vx + l1 , vy + m1 , t + h) (15)
2 2 2 2 2
1 1 1 1 1
l3 = hf (x + k2 , y + q2 , vx + l2 , vy + m2 , t + h) (16)
2 2 2 2 2
l4 = hf (x + k3 , y + q3 , vx + l3 , vy + m3 , t + h) (17)
k1 = hvx (18)
1
k2 = h(vx + l1 ) (19)
2
1
k3 = h(vx + l2 ) (20)
2
k4 = h(vx + l3 ) (21)
1
x(t + h) = x(t) + (k1 + 2k2 + 2k3 + k4 ) (22)
6
1
vx (t + h) = vx (t) + (l1 + 2l2 + 2l3 + l4 ) (23)
6
Ahora determinaremos las fórmulas de recurrencia para el eje y, que son similares a estas, pero variando
la nomenclatura para que no haya fallos en el sistema, debido a la codependéncia.
dy
= vy (24)
dt
dvy
= g(x, y, vx , vy , t) (25)
dt
m1 = hg(x, y, vx , vy , t) (26)
1 1 1 1 1
m2 = hg(x + k1 , y + q1 , vx + l1 , vy + m1 , t + h) (27)
2 2 2 2 2
1 1 1 1 1
m3 = hg(x + k2 , y + q2 , vx + l2 , vy + m2 , t + h) (28)
2 2 2 2 2
m4 = hg(x + k3 , y + q3 , vx + l3 , vy + m3 , t + h) (29)
q1 = hvy (30)
1
q2 = h(vy + m1 ) (31)
2

3
1
q3 = h(vy + m2 ) (32)
2
q4 = h(vy + m3 ) (33)
1
y(t + h) = y(t) + (q1 + 2q2 + 2q3 + q4 ) (34)
6
1
vy (t + h) = vy (t) + (m1 + 2m2 + 2m3 + m4 ) (35)
6
Una de las ventajas de usar éste método frente a otros es su pequeño error total acumulado, dado que es
del orden O(h4 ), bastnate poco significativo si lo comparamos con métodos que aunque sean más simples,
perjudican al resultado final del problema.

3 Resultados y conclusiones
Tras haber realizado varios experimentos con el programa, destacamos los siguientes realizados, por la
calidad de resultados obtenida y por ser los que más nos llamaban la atención.

Para empezar, nos hemos basado en cuerpos celestes, como los del sistema solar, para estudiar la ca-
lidad del programa en cuanto ha resultados y estudiar si la interacción entre los cuerpos se aproxima a la
realidad. Hemos de tener en cuenta que como estamos estudiando la interacción entre tres cuerpos, los
resultados no saldrán 100% igual a los reales, es decir, no encontraremos la estabilidad del sistema solar
dado que en el sistema solar por ejemplo, interaccionan más cuerpo entre si, y el por lo tanto el sistema
de ecuaciones a resolver tendria más variables y habria que tener en cuenta todos los cuerpos.
Un punto a tener en cuenta es que para que salgan soluciones estacionarias en las órbitas, hay que usar
perı́odos de tiempo máximo proporcionales a las iteraciones del programa, debido a que si no, el programa
peta y los resultados serán completamente inestables.

Antes de empezar a experimentar con cuerpos con una diferéncia masiva considerable, estudiamos el
sistema clásico de Sol-Tierra-Luna. Situándose el Sol en el centro del sietam, con una velocidad nula
tanto en eje x y eje y. Los cuerpos de la Tierra y la Luna, tomando sus datos reales de masa, se deter-
minan con velocidades distintas pero ambas del mismo orden, 108 , ejecuntándose con un tiempo máximo
de 104 s e iteraciones de 0,01. En la siguiente imagen podemos ver que su aproximación al sistema real
es bastante buena ya que podemos ver que ambos cuerpos orbitan alrededor del Sol, y además el ter-
cer cuerpo que representa a la Luna, orbita alrededor de la Tierra, cuerpo 2. Esto se manifiesta en una
aproximación estacionaria para un tiempo que podrı́amos expresar como indeterminado, dado a su orden.

Figura 1: Evolución del sistema Sol-Tierra-Luna.

4
Si por ejemplo trasteamos un poco con el programa variando los parámetros iniciales como la masa
lunar y la velocidad de ésta respecto a la Tierra, podemos observar que se conservan las órbitas elı́pticas
y estacionarias, per sin embargo, no conservas el hecho de que la Luna orbite alrededor de la Tierra.
Esto quiere decir que en la vida real, la Luna no orbitarı́a alrededor de la Tierra si su diferencia másica
fuera abismal y el resto de cuerpos celestes no intervinieran en el campo de fuerzas, dado que aquı́ no los
tenemos en cuenta.

Figura 2: Evolución del sistema Sol-Tierra-Luna con datos distintos a los del sistema real.

Por ejemplo, cuando comentábamos que el tiempo máximo y las iteraciones debı́an ser proporcionales
para que el programa funcionáse, se debı́a a que si habı́a una diferencia numérica muy grande entre el
tiempo máximo y las iteraciones, a partir de cierto valor el programa no tendrı́a la poténcia suficiente
para procesar esa cantidad de datos, y a partir de ciertos valores dejarı́an de procesarse. Tal que la
solución no serı́a estacionaria.

Figura 3: Evolución del sistema Sol-Tierra-Luna bajo una diferencia grande entre tiempo máximo e
iteración.

5
En este caso, la Luna orbita alrededor de la Tierra, y ambos alrededor del Sol, pero a causa de la dife-
rencia comentada anteriormente, el programa a partir de ciertos valores no se procesan más datos. Al no
ver órbitas cerradas o estacionarias, evidenciamos que el programa ha sufrido un çrash”, es decir, ha peta-
do. Si la diferencia fuera mucho mayor a la de en éste caso, el programa directamente no compilaria y no
daria ningún dato, debido a que los ordenadores tienen un lı́mite en capacidad de procesamiento de datos.

Finalmente para concluir con las experiéncias se ha determinado un sistema peculiar,formado por Sol-
Júpiter-Marte, todos con diferencias masivas considerables. En cuanto a velocidades, hemos cogido
valores del orden de 105 para Júpiter y Marte, dado que son los que mejores representaciones gráficas
nos permetı́an visualizar en éste caso. Estos orbitan elı́pticamente alrededor del Sol de una forma casi
perfecta. Y un hecho bastante impresionante es que debido a la diferencia de masas entre Júpiter y
Marte, el pequeño planeta rojo describe una órbita helicoidal alrededor de Júpiter.

Figura 4: Evolución del sistema Sol-Júpiter-Marte.

En conclusión, podemos ver que es posible crear un programa que determine la trayectoria orbital que
describen diferentes cuerpos al interaccionar entre si. Éste sistema es un sistema de tres cuerpos, per per-
fectamente podrı́a hacerse un programa para n cuerpos, si la capacidad de computación y procesamiento
de datos del ordenador lo permite. Ésta trayectoria ha sido aproximada medinte un método numérico,
el de Runge-Kutta 4, que quizá aunque sea un poco complicado y existan métodos más sencillos como
el de Euler, es el más idóneo dado su pequeño error acumulativo y a su mayor precisión. Vemos pues
que siempre tiene que haber una proporción numérica entre el tiempo máximo y la iteración para que el
programa no sufra ningún çrash”y obtengamos buenos resultados.

Vous aimerez peut-être aussi