T4 Gauss Seidel
T4 Gauss Seidel
T4 Gauss Seidel
Table of Contents
Solución de x en Ax=b :............................................................................................................................................1
Algoritmo: Método de Gauss Seidel......................................................................................................................... 4
Utilizando los scripts de programación vistos en clase, resuelve los siguientes Sistemas de Ecuaciones
Lineales, completando este LiveScript. Considera una Tolerancia Porcentual Prefijada de :
Solución de x en Ax=b :
• Inicializa 'A' 'b' & valor inicial de 'x' complementando el código para cada de los sistemas de
ecuaciones:
Revisa los mensajes de los comentarios para orientarte respecto al código Matlab a incluir.
1
Iteration1 :
x = 3×1
0.0833
5.5833
2.8205
Iteration2 :
x = 3×1
-0.1373
3.9351
3.7589
Iteration3 :
x = 3×1
0.6658
3.2115
3.9632
Iteration4 :
x = 3×1
0.9318
3.0357
3.9965
Iteration5 :
x = 3×1
0.9896
3.0042
4.0002
Iteration6 :
x = 3×1
0.9990
3.0001
4.0002
Iteration7 :
x = 3×1
1.0000
2.9999
4.0000
Iteration8 :
x = 3×1
1.0000
3.0000
4.0000
Iteration9 :
x = 3×1
1.0000
3.0000
4.0000
Iteration10 :
x = 3×1
1.0000
3.0000
4.0000
Iteration11 :
x = 3×1
1.0000
3.0000
4.0000
Solution of the system:
x = 3×1
1.0000
3.0000
4.0000
Iterations Total:11
2
% Inicializa A, b y el vector X.
% Inicializa la Tolerancia Porcentual Prefijada.
Iteration1 :
x = 4×1
0.6000
2.3273
-0.9873
0.8789
Iteration2 :
x = 4×1
1.0302
2.0369
-1.0145
0.9843
Iteration3 :
x = 4×1
1.0066
2.0036
-1.0025
0.9984
Iteration4 :
x = 4×1
1.0009
2.0003
-1.0003
0.9998
Iteration5 :
x = 4×1
1.0001
2.0000
-1.0000
1.0000
Iteration6 :
x = 4×1
1.0000
2.0000
-1.0000
1.0000
Iteration7 :
x = 4×1
1.0000
2.0000
-1.0000
1.0000
Solution of the system:
x = 4×1
1.0000
2.0000
-1.0000
1.0000
Iterations Total:7
3
• Comprueba tu solución utilizando la función nativa de la inversa y/o el operador \ de Matlab:
X1= A1\b1
X1 = 3×1
1.0000
3.0000
4.0000
X2 = 4×1
1.0000
2.0000
-1.0000
1.0000
function GaussSeidel(A,b,x,tol)
%% PARAMETROS:
%% A=Matriz de coeficientes del sistema de ecuaciones
%% b=Vector de resultados del sistema de ecuaciones
%% x=Vector solución inicial
%% tol=Tolerancia Porcentual Prefijada
n=size(x,1);
normVal=Inf;
itr=0;
while normVal>tol
x_old=x;
for i=1:n
sigma=0;
for j=1:i-1
4
sigma=sigma+A(i,j)*x(j);
end
for j=i+1:n
sigma=sigma+A(i,j)*x_old(j);
end
x(i)=(1/A(i,i))*(b(i)-sigma);
end
display([strcat('Iteration ',num2str(itr+1),' :')])
x
itr=itr+1;
normVal=norm(x_old-x);
end
Ejercicio manual.-
Resuelve a mano el primer sistema de ecuaciones lineales aplicando el método de Gauss Seidel incluyendo tu
demostración de porque este método sí ofrece solución.Agrega tu solución a continuación (puedes mostrarla
con una imagen de tu cuaderno o utilizar el editor de ecuaciones de Matlab). Realiza 3 iteraciones solamente.
Solución:
5
6