
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);![]()