Procedimiento numérico
Resolver el sistema de ecuaciones diferenciales de segundo orden
-
Movimiento del cuerpo que está a una cierta distancia de la nave espacial
Las condiciones iniciales son x’=r0+h, y’=0, dx’/dt=0, dy’/dt=v0.
Siendo r0, el radio de la órbita de la nave espacial, y v0, su velocidad constante, h es la altura por encima o por debajo de la nave a la que se abandona un cuerpo inicialmente sujeto a la nave.
-
Movimiento de un cuerpo que se lanza desde la nave espacial con velocidad relativa u, haciendo un ángulo α con la dirección radial
Las condiciones iniciales son x’=r0, y’=0, dx’/dt=u·cosα, dy’/dt= u·sinα
public class Sistema extends RungeKutta{
final double GM=3.98866E14;
double vAngular;
public Sistema(double vAngular, double h){
super(h);
this.vAngular=vAngular;
}
public double f(double x, double y, double vx, double vy, double t){
double r=Math.sqrt(x*x+y*y);
double valor=2*vAngular*vy+vAngular*vAngular*x-GM*x/(r*r*r);
return valor;
}
public double g(double x, double y, double vx, double vy, double t){
double r=Math.sqrt(x*x+y*y);
double valor=-2*vAngular*vx+vAngular*vAngular*y-GM*y/(r*r*r);
return valor;
}
}
//Objetos de la clase Sistema Estado estado=new Estado(0.0, rNave, 0.0, v0x, v0y); Sistema sis=new Sistema(wNave, 10.0); //rutina que calcula la trayectoria paso a paso sis.resolver(valor); |
