
Procedimiento numérico
Ecuación diferencial de segundo orden
Resolver la ecuación diferencial de segundo orden
por procedimientos numéricos con las condiciones iniciales t=0, θ=0, dθ/dt=0
public class Bloque extends RungeKutta{ final double mBloque=1.0; double mBala; final double G=9.8; final double radio=1.0; int fuerza; public Bloque(double mBala, int fuerza, double h){ super(h); this.mBala=mBala; this.fuerza=fuerza; } public double f(double x, double v, double t){ double den=mBala*Math.sin(x)*Math.sin(x)+mBloque; double y=fuerza*Math.cos(x)-mBala*radio*v*v*Math.sin(2*x)/2- |
Se establece el estado incial
Estado estado=new Estado(0.0, 0.0, 0.0);
Se crea un objeto de la clase derivada
Bloque b=new Bloque(mBala, fuerza, 0.0002);
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
b.resolver(estado);
