Matlab - Hacer un código de Gauss-seidel en matlab

 
Vista:
Imágen de perfil de Vanessa

Hacer un código de Gauss-seidel en matlab

Publicado por Vanessa (5 intervenciones) el 26/03/2015 06:03:39
Buenas noches, me han dejado como tarea pasar este código de jacobi de 3x3 a uno de gauss-seidel para una matriz de n x n, espero me puedan ayudar, ya que no entiendo muy bien como "cambiarlo" soy estudiante de 4° semestre de ing. química y estoy estudiando métodos numéricos. Les anexo el código, los últimos comentarios son las especificaciones que me pidieron, muchas gracias de ante mano.

%jacobi caso 3x3
A=[3 -0.2 -0.5;0.1 7 0.4;0.4 -0.1 10]
b=[8 -19.5 72.4]
%inicio
[n,n]=size(A);
tol=1e-3;
x0=zeros(1,3);
error=1;k=1;
while error > tol
k=k+1;
for i=1:n
for j=1;n
x(i)=(b(i)-A(i,j)*x0()-A(i,3)*x0(3))/A(i,i);
%x(2)=(b(2)-A(2,1)*x0(1)-A(2,3)*x0(3))/A(2,2);
%x(3)=(b(3)-A(3,1)*x0(1)-A(3,2)*x0(2))/A(3,3);
error=norm(x0-x);
end
end
str=sprintf('\n interación: %d',k);
disp(str)
[x error]
x0=x;
end
%tips:
%el doble for necesita un discriminante para i y j cuando son iguales
%suponiendo que el sistema es de 10x10, tengo a b1 y voy a pasar restando a
%todos los que no son x1.
%Hay que crear un acumulador:"parecido" al contador, pero va almacenando a
%i y a j, colocar en un contador llamado suma=suma+ "el que va a ir
%variando" y cuando termine toda la suma
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Vanessa

Hacer un código de Gauss-seidel en matlab

Publicado por Vanessa (5 intervenciones) el 27/03/2015 03:17:24
Por favor me urge mucho gracias de ante mano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar