Síndrome Kessler - Computacion1

Transcripción

Síndrome Kessler - Computacion1
Síndrome Kessler
Elías Barrio y Eva Bernal
7 Febrero 2014
Breve introducción teórica:
Basura espacial:
Todo objeto artificial sin utilidad que orbita la Tierra: cohetes, satélites viejos, restos
de explosiones o restos de cohetes como polvo...
La basura espacial se ha convertido en una preocupación cada vez mayor en estos
últimos años, puesto que las colisiones a velocidades orbitales pueden ser altamente
perjudiciales para el funcionamiento de los satélites y pueden también producir aún
más basura espacial en un proceso llamado síndrome de Kessler.
Síndrome Kessler (consultor de la NASA Donald J. Kessler)
Propone la situación en la que exista tanta basura espacial en la órbita baja terrestre
que unos fragmentos colisionen con otros con una frecuencia considerable. Y que esta
frecuencia aumentase debido al efecto dominó. Gracias al cual, si dos masas
suficientemente grande colisionan crearían una basura adicional como resultado de la
colisión.
La basura espacial es muy difícil de tratar directamente, debido a las altas velocidades
en sus órbitas y el pequeño tamaño de la mayoría de la metralla basura. Eso haría la
recuperación y la eliminación extremadamente difícil e improbable. La mayoría de la
basura en órbita baja de la tierra sucumbiría eventualmente a la resistencia del aire en
la extremadamente tenue alta atmósfera, pero el proceso requeriría cientos o miles de
años.
PROGRAMA
(MATLAB)
El programa de simulación del síndrome Kessler estará compuesto por las siguientes
funciones llamadas desde el programa principal. A continuación procedemos a explicar
el comportamiento de cada una de ellas.
Funciones:
I. Función start.
Input: n = número total de fragmentos que constituyen la basura espacial que vamos a
considerar como tiempo inicial.
Cuerpo: A cada fragmento en el tiempo inicial, t0, le asigne aleatoriamente el valor de
su masa, posición y velocidad.
Output: Masa(mass), posición (r0) y velocidad(v0) en t0.
II. Función verlet.
Input: force = fuerza gravitatoria F = -(GMm/r2) ur.
mass= vector que indica la masa de cada fragmento.
r0 = posición inicial de cada fragmento.
v0= velocidad inicial de cada fragmento.
dt = intervalo temporal de integración
tmax =tiempo final de integración
Output: r : posición en función del tiempo de cada fragmento.
III. Función derivative para derivar la posición respecto del tiempo y obtener la
velocidad en función del tiempo de cada fragmento.
IV. Función collisionChecking.
input : masa y posición y velocidad en función del tiempo de cada fragmento.
Cuerpo : dividiremos el espacio en celdas y requeriremos que para cada instante y
celda compruebe si coinciden dos fragmentos en una celda. En el caso de que no
exceda la capacidad de cálculo de 'matlab', consideraremos las celdas tan pequeñas
como nuestra definición de colisión. Es decir, la sección eficaz, del choque. Nuestro
objetivo será que el programa detecte la primera colisión.
output: Por un lado, los fragmentos que no colisionan, mantendrán sus trayectorias y
velocidades en función del tiempo además de su masa. Es decir, el ouput de estos
fragmentos será igual al input (ya calculado en las funciones anteriores). Por otro lado
que devuelva qué fragmentos colisionan, sus velocidades, así como su posición y el
instante de tiempo de la colisión.
V. Función inelasticCollision.
input: Los datos obtenidos en la función ' collisionChecking ' referentes a la colisión.
Masas, posiciones, velocidad y tiempo concreto de la colisión.
Cuerpo : Queremos que el programa, mediante un criterio de fragmentación (que
dependa de la magnitud de la velocidad de cada fragmento) y de la conservación de
momento lineal, obtenga los fragmentos (número y masa de cada uno de ellos). Así
como sus velocidades después de la colisión.
Output: masa (mass), posición (rc2) y velocidad(vc2) de cada fragmento después de la
colisión.
VI. Llamada desde el programa principal a verlet para obtener las trayectorias en
función del tiempo de cada fragmento después de la colisión (del output de la función
anterior).
VII. Llamada a la función derivative para obtener la velocidad en función del tiempo de
cada fragmento.
VIII. Unificar arrays de la posición, masa y velocidad de cada fragmento. Por un lado los
fragmentos de basura espacial inicial que no han sufrido colisión como los que han
surgido a raíz de de ésta.
PROGRAMA PRINCIPAL
Compilación de las funciones en el mismo orden en que han sido descritas y
representación de las trayectorias de los fragmentos. Como el 'síndrome Kessler'
estudia el efecto dominó que generan las colisiones, nos gustaría iterar el programa,
de forma que los outputs de la función VIII pasen a ser los inputs de la IV sucesivas
veces.
No hemos especificado problemas o limitaciones que pudieran surgir debido a las
limitaciones de 'matlab' ya que requeriremos que el programa realice numerosos
cálculos. Una de estas posibles situaciones, sería que nos encontremos con un número
demasiado elevado de fragmentos que bloquearían la capacidad de cálculo de Matlab.
Intentaremos dar una salida a este posible problema.
No se ha desarrollado el cuerpo de las funciones II y III por tratarse de funciones
estudiadas durante el transcurso de la asignatura.
Primera entrega (21 de Febrero 2014):
La entrega del hito parcial será programar las funciones start, verlet y derivative que
generan el modelo e integran las trayectorias, e incluso llegar a empezar la función
collisionChecking.

Documentos relacionados