Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Métodos Iterativos para Sistemas Lineales PDF
Métodos Iterativos para Sistemas Lineales PDF
4x − y + z = 7
4x − 8y + z = −21 (1)
−2x + y + 5z = 15
7+y−z
x = 4
21+4x+z
y = 8 (2)
15+2x−y
z = 5
7+yk −zk
xk+1 = 4
21+4xk +zk
yk+1 = 8 (3)
15+2xk −yk
zk+1 = 5
Vamos a comprobar que si empezamos con P0 = (x0 , y0 , z0 ) = (1, 2, 2), entonces la iteración (3)
parece converger a la solución (2, 4, 3).
1
N UNIVERSIDAD
PRIVADA DEL NORTE
7+2−1
x1 = 4 = 1,75
21+4+2
y1 = 8 = 3,375
15+2−2
z1 = 5 = 3,00
El nuevo punto P1 = (1 .75, 3.375, 3. 00) está más cerca de (2, 4, 3) que P0 . En la Tabla 1 se
muestra cómo los puntos {Pk } generados por la iteración (3) a (2, 4, 3).
k xk yk zk
0 1.0 2.0 2.0
1 1.75 3.375 3.0
2 1.84375 3.875 3.025
3 1.9625 3.925 2.9625
4 1.99062500 3.97656250 3.00000000
5 1.99414063 3.99531250 3.00093750
.. .. .. ..
. . . .
15 1.99999993 3.99999985 2.99999993
.. .. .. ..
. . . .
19 2.00000000 4.00000000 3.00000000
Este proceso se conoce como método de iteración de Jacobi y puede usarse para
resolver algunas clases de sistemas lineales. Tras 19 pasos, vemos que, al aplicarlo al sistema
(3), conseguimos 9 cifras decimales de aproximación (2 .00000000, 4.00000000, 3.00000000 ).
2
N UNIVERSIDAD
PRIVADA DEL NORTE
−2x + y + 5z = 15
4x − 8y + z = −21 (4)
4x − y + z = 7
−15+y+5z
x = 3
21+4x+z
y = 8
(5)
z = 7 − 4x + y
−15+yk +5zk
xk+1 = 3
21+4xk +zk
yk+1 = 8 (6)
7−4xk +yk
zk+1 = 5
Veamos que si empezamos con el punto P0 = (x0 , y0 , z0 ) = (1, 2, 2), entonces el proceso iterativo
(6) diverge.
k xk yk zk
0 1.0 2.0 2.0
1 -1.5 3.375 5.0
2 6.6875 2.5 16.375
3 34.6875 8.015625 -17.25
4 -46.617188 17.8125 -123.73438
5 -307.929688 -36.150391 211.28125
6 502.62793 -124.929688 1202.56836
.. .. .. ..
. . . .
3
N UNIVERSIDAD
PRIVADA DEL NORTE
−15+2+10
x1 = 2 = −1,5
21+4+2
y1 = 8 = 3,375
z1 = 7−4+2 = 5,00
El nuevo punto P1 = (−1 .5, 3.375, 5.00 ) está más lejos de la solución (2, 4, 3) que P0 . De hecho
el proceso iterativo (6) diverge como se muestra en la Tabla 2.
k xk yk zk
0 1.0 2.0 2.0
1 1.75 3.75 2.95
2 1.95 3.96875 2.98625
3 1.995625 3.99609375 2.99903125
.. .. .. ..
. . . .
8 1.99999983 3.99999988 2.99999996
9 1.99999998 3.99999999 3.00000000
10 2.00000000 4.00000000 3.00000000
4
N UNIVERSIDAD
PRIVADA DEL NORTE
Veamos que si empezamos con P0 = (x0 , y0 , z0 ) = (1, 2, 2), entonces el proceso iterativo (7)
converge a la solución (2, 4, 3).
7+2−2
x1 = = 1,75
4
21 + 4 (1,75) + 2
y1 = = 3,75
8
15 + 2 (1,75) − 3,75
z1 = = 2,95
5
El nuevo punto P1 = (1 .75, 3.75, 2.95 ) está más cerca de (2, 4, 3) que P0 y es mejor que el
punto obtenido en el ejemplo 1. En la Tabla 3 se muestra cómo los puntos {Pk } generados por
la iteración (7) convergen a (2, 4, 3).
A la vista de los ejemplos 2 y 3, se hace necesario disponer de algún criterio que determine
si el método iterativo de Jacobi converge. Para ello damos la siguiente definición.
N
X
|akk | > |akj | para k = 1, 2, . . . , N (8)
j=1,j6=k
Esto significa que en cada fila de la matriz, el tamaño del elemento que está en la diagonal
principal debe ser mayor que la suma de los tamaños de todos los demás elementos de la fila. La
matriz de los coeficientes del sistema lineal (1), en el ejemplo 1, es de diagonal estrictamente
dominante porque
5
N UNIVERSIDAD
PRIVADA DEL NORTE
Todas las filas verifican la relación (8) de la definición 1; por tanto, la matriz de los coeficientes
A del sistema lineal (1) es de diagonal estrictamente dominante.
La matriz de los coeficientes A del sistema lineal (4), en el ejemplo (2), no es de diagonal
estrictamente dominante, porque
Vamos a considerar ahora los procesos iterativos de Jacobi y Gauss-Seidel con mayor
generalidad. Supongamos que tenemos un sistema de ecuaciones lineales
(k) (k) (k) (k)
Sea Pk = x1 , x2 , . . . , xj , . . . , xN el k-ésimo punto obtenido, de manera que el siguiente
(k+1) (k+1) (k+1) (k+1)
punto es Pk+1 = x1 , x2 , . . . , xj , . . . , xN . El superı́ndice (k) de las coordenadas
de Pk nos permite identificar las coordenadas que pertenecen a dicho punto. Las fórmulas de
(k+1)
iteración usan la fila j-ésima de (9) para despejar xj como una combinación lineal de los
valores previamente obtenidos:
6
N UNIVERSIDAD
PRIVADA DEL NORTE
para j = 1, 2, . . . , N
En el método iterativo de Jacobi se usan todas las coordenadas del punto anterior en la
obtención de las coordenadas del punto nuevo, mientras que en el método iterativo de Gauss-
Seidel se emplean las coordenadas nuevas conforme se van generando:
para j = 1, 2, . . . , N
Teorema 1 (Método iterativo de Jacobi). Supongamos que A es una matriz de diagonal estric-
tamente dominante. Entonces el sistema de ecuaciones lineales AX = B tiene solución única
X = P . Además, el proceso iterativo dado por la fórmula (10) produce una sucesión de vectores
{Pk } que converge a P cualquiera que sea el vector de partida P0 .
Puede probarse que el método iterativo de Gauss-Seidel también converge cuando la matriz
A es de diagonal estrictamente dominante ası́ como para matrices simétricas definidas positivas.
Normalmente el método de Gauss-Seidel converge más rápidamente que el de Jacobi, por lo que
es el que se suele preferir. Se dan casos, sin embargo, en los que el método de Jacobi converge
pero el de Gauss-Seidel no.
function X=jacobi(A,B,P,delta,max1)
%Datos
% - A es una matriz invertible de orden NxN.
% - B es una matriz de orden Nx1.
% - P es una matriz de orden Nx1: el punto inicial.
7
N UNIVERSIDAD
PRIVADA DEL NORTE
function X=gseid(A,B,P,delta,max1)
%Datos
% - A es una matriz invertible de orden NxN.
% - B es una matriz de orden Nx1.
% - P es una matriz de orden Nx1: el punto inicial.
% - delta es la tolerancia para P.
% - max1 es el número máximo de iteraciones.
%Resultados
% - X es una matriz de orden Nx1:
% la aproximación a la solución de AX=B generada por el método
% iterativo de Gauss-Seidel
N=length(B);
for k=1:max1
8
N UNIVERSIDAD
PRIVADA DEL NORTE
for j=1:N
if j==1
X(1)=(B(1)-A(1,2:N)*P(2:N))/A(1,1);
elseif j==N
X(N)=(B(N)-A(N,1:N-1)*(X(1:N-1))’)/A(N,N);
else
% X contiene la aproximación k-ésima
% y P la k-1-ésima.
X(j)=(B(j)-A(j,1:j-1)*X(1:j-1)-A(j,j+1:N)*P(j+1:N))/A(j,j);
end
end
err=abs(norm(X’-P));
relerr=err/(norm(X)+eps);
P=X’;
if(err<delta)|(relerr<delta)
break
end
end
X=X’;
Índice
1. Método de iteración de Jacobi. 1