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: en el instante adimensional τ=0, y=y0, dy/dτ=0. El imán parte del reposo desde la posición adimensional y0.
public class Sistema extends RungeKutta{
double k;
public Sistema(double k, double h){
super(h);
this.k=k;
}
public double f(double x, double vx, double t){
return(-1-fuerza(x, vx));
}
public double fuerza(double x, double vx){
int n=(int)x;
double temp=0.0;
for(int j=n-4; j<=n+5; j++){
temp+=(x-j)*(x-j)/((1+(x-j)*(x-j))*(1+(x-j)*(x-j))*(1+(x-j)*(x-j)) |
Se establece el estado incial
Estado estado=new Estado(0.0, 10.0, 0.0);
Se crea un objeto de la clase derivada
Sistema sis=new Sistema(parametro, 0.005);
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
sis.resolver(estado);![]()
