Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Grupo
6 S 11
Materia
Mtodos Numricos
Docente
Garca Nieva Jorge
Programa :
Mtodo de Jacobi
Alumnos
Avalos Arias Odet
Carreo Martnez Jos Mauro Alejandro
Gonzlez Martnez Diana Jacqueline
Ramrez Escutia Nubia
NDICE
INTRODUCCIN ................................................................................................................ 3
DESARROLLO .................................................................................................................... 4
CODIGO ............................................................................................................................... 7
CONCLUSIN ..................................................................................................................... 9
BIBLIOGRAFA ................................................................................................................ 10
INTRODUCCIN
El algoritmo toma su nombre del matemtico alemn Carl Gustav Jakob Jacobi.
Autor muy prolfico, contribuy en varios campos de la matemtica, principalmente
en el rea de las funciones elpticas, el lgebra, la teora de nmeros y las
ecuaciones diferenciales.
DESARROLLO
Al ejecutar el programa este pide que insertemos los valores de nuestra funcin,
en este caso fue:
9x+5y-3z=3
x-4y+2z=2
2x+3y-7z=1
CODIGO
import java.io.*;
public class Jacobi {
public static void main(String[] args) throws IOException {
BufferedReader
entrada=
new
BufferedReader
InputStreamReader(System.in));
double x00 = 0, y00 = 0, z00 = 0, r0=0;
double x01 = 0, y01 = 0, z01 = 0, r1=0;
double x02 = 0, y02 = 0, z02 = 0, r2=0;
System.out.println(" Metodo De Jacobi \n");
System.out.println("Introduzca lo valores \n");
System.out.println("Introduzca el dato [0][0]=");
x00=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [0][1]=");
y00=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [0][2]=");
z00=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [0][3]=");
r0=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [1][0]=");
x01=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [1][1]=");
y01=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [1][2]=");
z01=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [1][3]=");
r1=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [2][0]=");
x02=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [2][1]=");
y02=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [2][2]=");
z02=Double.parseDouble(entrada.readLine());
System.out.println("Introduzca el dato [2][3]=");
r2=Double.parseDouble(entrada.readLine());
System.out.println("Tu Ecuacion Es ");
7
(new
double y1 =r1/y01;
int i=2;
int d=10;
double z1 =r2/z02;
double e;
System.out.println("INTERACIONES \n");
System.out.println("x1 ="+x1);
System.out.println("y1 ="+y1);
System.out.println("z1 ="+z1);
System.out.println("\t\tTABLA \n");
System.out.println("i\tX\t\t\tY\t\t\t\tZ\t\t\tE\n");
System.out.println("0\t0\t\t\t0\t\t\t\t0\t\t\t1\n");
System.out.println("1\t"+x1+"\t"+y1+"\t"+z1+"\t1\n");
do{
double x=(r0+(y00*-1*y1)+(z00*-1*z1))/x00;
double y=(r1+(x01*-1*x1)+(z01*-1*z1))/y01;
double z=(r2+(x02*-1*x1)+(y02*-1*y1))/z02;
e=Math.sqrt(Math.pow((x-x1), 2)+Math.pow((y-y1), 2)+Math.pow((z-z1), 2));
System.out.println(+i+"\t"+x+"\t"+y+"\t"+z+"\t"+e+"\n");
i++;
x1=x;y1=y;z1=z;
}while (i<=d || e<=ef );
System.out.println("\tCOMPROBACION\n");
double resx,resy,resz;
resx=x00*(x1)+(y00*(y1)+(z00*z1));
resy=x01*(x1)+(y01*(y1)+(z01*z1));
resz=x02*(x1)+(y02*(y1)+(z02*z1));
System.out.println("Comprobacion
de\t"+x00+"x\t"+y00+"y\t"+z00+"z
\t=
"+resx);
System.out.println("Comprobacion
de\t"+x01+"x\t"+y01+"y\t"+z02+"z
\t=
"+resy);
System.out.println("Comprobacion
de\t"+x02+"x\t"+y02+"y\t"+z01+"z
\t=
"+resz);
}
}
CONCLUSIN
Procedimientos que en papel podan ser algo laboriosos, en cdigo maquina nos
obligaban a aumentara el uso de variables y lneas de cdigo que al final
terminaban haciendo mucho mas complejo todo nuestro programa.
Lo anterior nos obligo a investigar otros caminos, como por ejemplo la formula
euclidiana para encontrar el error, ya que esta frmula es mucho ms sencilla que
como la que vimos en clase.
BIBLIOGRAFA
http://es.wikipedia.org/wiki/M%C3%A9todo_de_Jacobi
http://es.wikipedia.org/wiki/Carl_Gustav_Jakob_Jacobi
http://es.wikipedia.org/wiki/Geometr%C3%ADa_euclidiana
10