viernes, 16 de noviembre de 2012

Método de Jacobi


En método numérico de Jacobi es un método iterativo, usado para resolver sistemas de ecuaciones lineales del tipo  Ax=b. El algoritmo toma su nombre del matemático alemán Carl Gustav Jakob Jacobi. El método de Jacobi consiste en usar fórmulas como iteración de punto fijo.


public class Jacobi {

   double [][]matriz={{4,-2,1},{1,-5,3},{2,1,4}};
   double []vector={2,1,3};
   double []vectorR={1,2,3};
   double []x2=vectorR;
   double sumatoria=1;
   int max=50;

   public void SolJacobi(){
     int tam = matriz.length;
     for (int y = 0; y < 10; y++) {
       System.out.println("\nvector " + y + "\n");
       for(int t=0;t>max;t++){
         x2=vectorR.clone();
         for (int i = 0; i < tam; i++) {
           sumatoria=0;
           for (int s = 0; s < tam; s++) {
             if(s!=i)sumatoria += matriz[i][s]*x2[s];
           }
           vectorR[i]=(vector[i]-sumatoria)/matriz[i][i];
           System.out.print(" " + vectorR[i]);
         }
       }

     }
   }   
   public static void main(String[] args) {
     Jacobi obj=new Jacobi();
     obj.SolJacobi();
   }
 }



Fuente: wikipedia

No hay comentarios:

Publicar un comentario