Procedimientos numéricos
Ecuación diferencial de segundo orden
Resolver la ecuación diferencial de segundo orden
por procedimientos numéricos con las condiciones iniciales t=0, x=0, (dx/dt)=0, m=m0.
public class Particula extends RungeKutta{
double m0; //masa inicial
double k;
double alfa;
public Particula(double m0, double k, double alfa, double h){
super(h);
this.m0=m0;
this.k=k;
this.alfa=alfa;
}
public double f(double x, double v, double t){
double z=Math.pow(m0, 1-alfa)+k*(1-alfa)*x;
double y=-k*v*v/z+980; // en cm/s2
return y;
}
} |
Se establece el estado incial
Estado estado=new Estado(0.0, 0.0, 0.0);
Se crea un objeto de la clase derivada
Particula p=new Particula(m0, k, 2.0/3, 0.025);
Se llama a la función resolver que determina el estado del sistema en el instante t+h conocido el estado en el instante t
p.resolver(estado);![]()
