
Procedimientos numéricos
Integral elíptica
Periodo de un péndulo cuando su energía es menor que la máxima (e<1), se calcula la integral elíptica de primera especie
Cálculo del cociente P/P0 cuando se proporciona el dato de la amplitud θ0 de la oscilación.
//aplicación, periodo de un péndulo P/P0 double angulo=120.0; double k=Math.sin(angulo*Math.PI/360); double periodo=2*Eliptica.primera(Math.PI/2, k)/Math.PI; System.out.println(((double)Math.round(periodo*1000)/1000); |
Ecuación diferencial de segundo orden
Resolver la ecuación diferencial de segundo orden
con las condiciones iniciales: t=0, dθ/dt=0, θ=θ0
public class Oscilador extends RungeKutta{ double frecAngular; public Oscilador(double frecAngular, double h){ super(h); this.frecAngular=frecAngular; } public double f(double x, double v, double t){ return (-frecAngular*frecAngular*Math.sin(x)); } } } |
Integral definida
Cuando la energía total E del péndulo es mayor que el máximo valor de la energía potencial (e>1), el péndulo da vueltas completas.
Cálculo del cociente P/P0cuando se proporciona la energía e del péndulo, aplicando el procedimiento de Simpson
public class Funcion extends Simpson{ double energia; public Funcion(double energia){ this.energia=energia; } public double f(double x){ double y=1.0/Math.sqrt(2*energia-1.0+Math.cos(x)); return y; } } //objetos de la clase Funcion Funcion f=new Funcion(energia); double res=f.integral(1000)/(2*Math.PI*Math.sqrt(2)); System.out.println(res); |
