jueves, 12 de mayo de 2016

Metodo de Newton Raphson en Java

A continuación se presenta el método de Newton-Raphson escrito en Java, consta de dos archivos (clases), la clase newton que  tiene los métodos y atributos para calcular la raiz de la ecuación y la clase demonewton que ejecuta el programa.
  1. clase newton
public class newton {
   int i=0;
    double x[]=new double[50];
   double e=10;
 
   newton(double aprox_i){
   
       x[0]=aprox_i;
   
   }
   
   double f(double x)
   {
       double fx;
       fx=Math.exp(-x)-x;
       return fx;
   
   
   }
   
   double fp(double x)
   {
   
       double fpx;
       fpx=-Math.exp(-x)-1;
       return fpx;
   }
   
   
    double calcRaiz()
    {
    i=0;
        while(e>0.0001)
        {
            x[i+1]=x[i]-(f(x[i])/fp(x[i]));
            e=Math.abs((x[i+1]-x[i])/x[i+1]);
            e=e*100;
            System.out.println(“raiz=”+x[i]+”  Error=”+e);
            System.out.println(“\n”);
            i++;
        }
    
        return(x[i]);
    }
    
    
}
2. Clase demonewton
/**
 Elaborado por Juan Arellano
 */
import java.util.*;
public class DemoNewton {
    public static void main(String args[])
    {
        Scanner lee=new Scanner(System.in);
        System.out.println(“Introduce un valor para la aproximación=>”);
        double x=lee.nextDouble();
        newton n1=new newton(x);
       double r=n1.calcRaiz();
        System.out.println(“Raiz=”+r);
    }}