Anterior

Raíces múltiples

Calcular las raíces de la ecuación trascendente en ω por el procedimiento del punto medio.

J 0 ( γω ) Y 0 ( γω Mg T 0 +1 ) Y 0 ( γω ) J 0 ( γω Mg T 0 +1 )=0γ=2 L g · T 0 Mg

public class Funcion extends Ecuacion{
    double p;
    public Funcion(double p){
      this.p=p;
    }
    public double f(double x){
      double z=Bessel.bessj0(x)*Bessel.bessy0(x*Math.sqrt(p+1))
-Bessel.bessy0(x)*Bessel.bessj0(x*Math.sqrt(p+1)); return z; } }

Calcula las raíces

public class Aplicacion {
           public static void main(String[] args) {
             double p=1.0;
		     double[] raices=new Funcion(p).hallarRaices(1, 600, 1);
                   System.out.print("Raíces de la ecuación");
                   for(int i=0; i<raices.length; i++){
                         System.out.print("  "+raices[i]);
                   }
                   System.out.println("");
} }

Integral definida

Calcular la integral por el procedimiento de Simpson

r n (z)= J 0 ( γ ω n Mg T 0 z L +1 ) J 0 ( γ ω n ) Y 0 ( γ ω n ) Y 0 ( γ ω n Mg T 0 z L +1 ) 0 L r n 2 (z)·dz

  double normaliza(){
    double z=integral(0.0, 1.0, 100);
    return z;
  }

   double integral(double a, double b, int n){
        if(n%2==1) n++;    //n es par 
        double h=(b-a)/n;
        double suma=f(a)+f(b);
        for(int i=1; i<n; i+=2){
            suma+=4*f(a+i*h);
        }
        for(int i=2; i<n; i+=2){
            suma+=2*f(a+i*h);
        }
        return (suma*h/3);
    }
  double f(double x){
      double z=onda(x);
      return (z*z);
  }
    double onda(double y){
      double arg=raices[iModo]*Math.sqrt(p*y/longitud+1);
      double z=Bessel.bessj0(arg)-Bessel.bessj0(raices[iModo])
*Bessel.bessy0(arg)/Bessel.bessy0(raices[iModo]); return z; }

Anterior