Documentos de Académico
Documentos de Profesional
Documentos de Cultura
error = x=x
i
Fin Mientras
Imprimir Tabla
Fin Proceso
% **************alternativo ***********************
function y=Gauss_Seidel(A,b,x,tol)
% Este programa resuelve un sistema de ecuaciones lineales
% por el Mtodo iterativo de Gauss-Seidel
% A es la matriz del sistema
% b es el trmino independiente
% x las iteraciones iniciales
% tol es la tolerancia
Clc
[m,n]=size(A);
if m~=n
disp('La matriz es no cuadrada')
return
end
for i=1:m
if A(i,i)==0
disp('elementos diagonales son nulos')
return
end
end
y=x;
% Proceso de iteracin
for k=1:20
y(1)=(B(1)-A(1,2:n)*x(2:n))/A(1,1);
for i=2:n-1
y(i)=(B(i)-A(i,1:i-1)*y(1:i-1)A(i,i+1:n)*x(i+1:n))/A(i,i);
end
y(n)=(B(n)-A(n,1:n-1)*y(1:n-1))/A(n,n);
if max(abs(y-x))< tol
disp('
RESULTADOS FINALES
')
fprintf('\t Nmero de iteraciones=%2i\n',k)
return
end x=y;
end