
Procedimientos numéricos
Sistema de dos ecuaciones diferenciales de segundo orden
Resolver el sistema de dos ecuaciones diferenciales de segundo orden
con las condiciones iniciales:en el instante t=0, la posición inicial es x0, y0, y parte del reposo
public class Oscilador extends RungeKutta2{ double cte_masa; double lonMuelle; double lonEquilibrio; Oscilador(double cte_masa, double lonMuelle, double lonEquilibrio, double h){ super(h); this.cte_masa=cte_masa; this.lonMuelle=lonMuelle; this.lonEquilibrio=lonEquilibrio; } public double f(double x, double y, double vx, double vy, double t){ double lonActual=Math.sqrt((lonEquilibrio-y)*(lonEquilibrio-y)+x*x); return (-cte_masa*(lonActual-lonMuelle)*x/lonActual); } public double g(double x, double y, double vx, double vy, double t){ double lonActual=Math.sqrt((lonEquilibrio-y)*(lonEquilibrio-y)+x*x); return (cte_masa*(lonActual-lonMuelle)*(lonEquilibrio-y) |
