Anterior

Procedimiento numérico

Resolver el sistema de ecuaciones diferenciales de segundo orden

d 2 x' d t 2 2ω dy' dt ω 2 x'=G M r 3 x' d 2 y' d t 2 +2ω dx' dt ω 2 y'=G M r 3 y'

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.

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);
Anterior