SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES
0.1. Métodos iterativos para sistemas lineales
0.1.1. Método de Jacobi
Denición Se dice que una matriz A = (aij) ∈ Rn×n
es diagonalmente estrictamente dominante
cuando
|akk| 
n
X
j=1
j6=k
|akj| , para k = 1, 2, · · · , n.
A =






12 3 1 1 0
1 −15 −4 3 2
2 3 30 3 5
4 2 1 −36 5
8 −1 1 1 13






|12|  |3| + |1| + |1| + |0| = 5
|−15|  |1| + |−4| + |3| + |2| = 10
|30|  |2| + |3| + |3| + |5| = 13
|−36|  |4| + |2| + |1| + |5| = 12
|13|  |8| + |−1| + |1| + |1| = 11
La matriz A es una matriz diagonalmente dominante por las.
B =






12 3 1 1 0
1 −15 −4 3 2
2 3 3 3 5
4 2 1 −36 5
8 −1 1 1 13






|12|  |3| + |1| + |1| + |0| = 5
|−15|  |1| + |−4| + |3| + |2| = 10
|3| ≤ |2| + |3| + |3| + |5| = 13
|−36|  |4| + |2| + |1| + |5| = 12
|13|  |8| + |−1| + |1| + |1| = 11
La matriz B no es una matriz diagonalmente dominante por las, la tercera la de B no satisface
la denición.
Consideremos el sistema lineal
a11x1 + a12x2 + . . . + a1nxn = b1
a21x1 + a22x2 + . . . + a2nxn = b2
.
.
.
.
.
.
...
.
.
.
an1x1 + an2x2 + . . . + annxn = bn
deniendo
A =



a11 . . . a1n
.
.
.
...
.
.
.
an1 . . . ann


 , x =



x1
.
.
.
xn


 , b =



b1
.
.
.
bn



donde A ∈ Rn×n
, b ∈ Rn
y la incógita x ∈ Rn
. Se puede escribir de manera compacta
Ax = b
Descomponiendo la matriz A : A = AL + AD + AU
donde
AL =







0 0 0 . . . 0
a21 0 0 . . . 0
a31 a32 0 0
.
.
.
...
...
.
.
.
an1 an2 . . . an,n−1 0







,
1 1
A. Canhoa Q.
AU =








0 a12 a13 . . . a1n
0 0 a23 . . . a2n
0 0 0
.
.
.
.
.
.
.
.
.
... an−1,n
0 0 . . . 0 0








AD = diag(A) = diag(a11, a22, · · · , ann)
Reemplazando A = AD + (A − AD) en Ax = b se obtiene
(AD) x + (A − AD) x = b.
Deniendo la sucesión xk

por
ADxk+1
= b − (A − AD) xk
,
se obtienen la iteraciones del método de Jacobi
xk+1
= A−1
D b − A−1
D (A − AD) xk
, k = 0, 1, 2, · · ·
Deniendo d := A−1
D b y J := −A−1
D (A − AD) las iteraciones de Jacobi están dadas por
xk+1
= Jxk
+ d, k = 0, 1, 2, · · ·
Se cumplen
A−1
D = diag(
1
a11
,
1
a22
, · · · ,
1
ann
).
Criterio para parar
Si pk : Axk+1
− b 2
 tol ∧
kxk+1
−xk
k2
kxk+1k2
 err se acepta a xk+1
como una solución apróximada
de Ax = b con una tolerancia tol y un error relativo apróximado menor que err.
Convergencia del método iterativo de Jacobi
TEOREMA Supongamos que A es una matriz diagonal estrictamente dominante. Entonces el
sistema de ecuaciones lineales Ax = b tiene solución única b
x. Además, el respectivo proceso iterativo
de Jacobi converge a b
x para cualquier punto inicial x(0)
.
Ejemplo Solucionar el siguiente sistema lineal por el método dede Jacobi con una tolencia de
10−12
y un error aproximado menor a 10−10
.
−x1 −2x2 +30x3 +10x4 = 10
20x1 +7x2 −x3 −2x4 = 6
−6x1 +12x2 −2x3 +2x4 = −4
3x1 −2x2 +8x3 −20x4 = −1
Solución Reordenando
−x1 −2x2 +30x3 +10x4 = 10 −→ Ecuación 3
20x1 +7x2 −x3 −2x4 = 6 −→ Ecuación 1
−6x1 +12x2 −2x3 +2x4 = −4 −→ Ecuación 2
3x1 −2x2 +8x3 −20x4 = −1 −→ Ecuación 4
de modo que la matriz de coecientes sea diagonalmente dominante para asegurar la convergencia.
2 2
A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES
Se obtiene el sistema lineal
20x1 +7x2 −x3 −2x4 = 6
−6x1 +12x2 −2x3 +2x4 = −4
−x1 −2x2 +30x3 +10x4 = 10
3x1 −2x2 +8x3 −20x4 = −1
Este sistema lineal se puede en forma matricial Ax = b, donde
A =




20 7 −1 −2
−6 12 −2 2
−1 −2 30 10
3 −2 8 −20



 , b =




6
−4
10
−1



 , x =




x1
x2
x3
x4




La matriz A es diagonalmente dominante y se asegura la convergencia del método de Jacobi.
En este caso para AD = diag (20, 12, 30, −20) se tiene A−1
D = diag 1
20 , 1
12 , 1
30 , − 1
20

.
Luego se obtienen
d = A−1
D b =




1
20 0 0 0
0 1
12 0 0
0 0 1
30 0
0 0 0 − 1
20










6
−4
10
−1






=





3
10
−1
3
1
3
1
20





J = −A−1
D (A − AD)
= −




1
20 0 0 0
0 1
12 0 0
0 0 1
30 0
0 0 0 − 1
20








0 7 −1 −2
−6 0 −2 2
−1 −2 0 10
3 −2 8 0




=





0 − 7
20
1
20
1
10
1
2 0 1
6 −1
6
1
30
1
15 0 −1
3
3
20 − 1
10
2
5 0





.
Las iteraciones de Jacobi están dadas por






xk+1
1
xk+1
2
xk+1
3
xk+1
4






=






0 − 7
20
1
20
1
10
1
2 0 1
6 −1
6
1
30
1
15 0 −1
3
3
20 − 1
10
2
5 0












xk
1
xk
2
xk
3
xk
4






+





3
10
−1
3
1
3
1
20





, k = 0, 1, 2, · · ·
En este caso se tiene tol = 10−12
y err = 10−10
. Eligiendo el punto inicial x0
= x0
1, x0
2, x0
3, x0
4
T
=
(0, 0, 0, 0)
T
.
3 3
A. Canhoa Q.
Para k = 0:





x1
1
x1
2
x1
3
x1
4





=





0 − 7
20
1
20
1
10
1
2 0 1
6 −1
6
1
30
1
15 0 −1
3
3
20 − 1
10
2
5 0










x0
1
x0
2
x0
3
x0
4





+





3
10
−1
3
1
3
1
20





=





0 − 7
20
1
20
1
10
1
2 0 1
6 −1
6
1
30
1
15 0 −1
3
3
20 − 1
10
2
5 0











0
0
0
0






+





3
10
−1
3
1
3
1
20





=




0,3
−0,3333333333333333
0,3333333333333333
0,05




Ax1
− b 2
=




20 7 −1 −2
−6 12 −2 2
−1 −2 30 10
3 −2 8 −20








x1
1
x1
2
x1
3
x1
4



 −




6
−4
10
−1




2
= 5,650467040677061
x1
− x0
2
kx1k2
=
x1
− 0 2
kx1k2
= 1
p1 : Ax1
− b 2
 10−12
∧
kx1
−x0
k2
kx1k2
 10−10
5,650467040677061  10−12
∧ 1  10−10
Se tiene que p1 es falso (F) =⇒!Continuar!
Para k = 1:






x2
1
x2
2
x2
3
x2
4






=





0 − 7
20
1
20
1
10
1
2 0 1
6 −1
6
1
30
1
15 0 −1
3
3
20 − 1
10
2
5 0











x1
1
x1
2
x1
3
x1
4






+






3
10
−1
3
1
3
1
20






=




0,4383333333333334
−0,1361111111111111
0,3044444444444444
0,2616666666666667




4 4
A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES
Ax2
− b 2
=




20 7 −1 −2
−6 12 −2 2
−1 −2 30 10
3 −2 8 −20








x2
1
x2
2
x2
3
x2
4



 −




6
−4
10
−1




2
= 1,909758161277995
x2
− x1
2
kx2k2
=




x2
1
x2
2
x2
3
x2
4



 −




x1
1
x1
2
x1
3
x1
4




2
÷




x2
1
x2
2
x2
3
x2
4




2
= 0,5280333473199539
p2 : Ax2
− b 2
 10−12
∧
kx2
−x1
k2
kx2k2
 10−10
1,909758161277995  10−12
∧ 0,5280333473199539  10−10
Se tiene que p2 es falso (F) =⇒!Continuar!
Para k = 2:





x3
1
x3
2
x3
3
x3
4





=





0 − 7
20
1
20
1
10
1
2 0 1
6 −1
6
1
30
1
15 0 −1
3
3
20 − 1
10
2
5 0










x2
1
x2
2
x2
3
x2
4





+





3
10
−1
3
1
3
1
20





=






0,3890277777777778
−0,107037037037037
0,2516481481481481
0,2511388888888889






Ax3
− b 2
=




20 7 −1 −2
−6 12 −2 2
−1 −2 30 10
3 −2 8 −20








x3
1
x3
2
x3
3
x3
4



 −




6
−4
10
−1




2
= 0,7934545871864997
x3
− x2
2
kx3k2
=




x3
1
x3
2
x3
3
x3
4



 −




x2
1
x2
2
x2
3
x2
4




2
÷




x3
1
x3
2
x3
3
x3
4




2
= 0,1461195290862629
p3 : Ax3
− b 2
 10−12
∧
kx3
−x2
k2
kx3k2
 10−10
0,7934545871864997  10−12
∧ 0,1461195290862629  10−10
5 5
A. Canhoa Q.
Se tiene que p3 es falso (F) =⇒!Continuar!
k xk
1 xk
2 xk
3 xk
4 pk
0 0,0000000000 0,0000000000 0,0000000000 0,0000000000 −
1 0,3000000000 −0,3333333333 0,3333333333 0,0500000000 F
2 0,4383333333 −0,1361111111 0,3044444444 0,2616666667 F
3 0,3890277778 −0,1070370370 0,2516481481 0,2511388889 F
.
.
.
.
.
.
32 0,3831761485 −0,1357403625 0,2617997305 0,2257703507 F
33 0,3831761485 −0,1357403625 0,2617997305 0,2257703507 V
donde pk : Axk
− b 2
 10−12
(tol) ∧
kxk
−xk−1
k2
kxkk2
 10−10
(err) .
En la tabla se presentan los resultados con 10 decimales por motivos de espacio. Se obtiene
x =




x1
x2
x3
x4



 =




0,38317614846365
−0,13574036246684
0,26179973054022
0,22577035073234




T
,
que es una solución (apróximada) del sistema lineal dado con una tolerancia tol = 10−12
y un error
relativo menor que err = 10−10
.
A continuación se presenta la implementación en Octave/MATLAB del método de Jacobi.
function [xk, k] = jacobi01(A, b, tol, err)
% Funcion en Octave/MATLAB para el método de Jacobi
% Autor : Alessandri Canchoa Q. - Fecha : Agosto - 2020
% Entrada : A : Matriz nxn
% b : Parte derecha (vector nx1)
% tool : Tolerancia (Ejemplo: tool = 1e-14; )
% err : Error (Ejemplo: tool = 1e-14; )
% Salida :
% xk : Solución aproximada de Ax = b
k = 0; xk = zeros(size(b)); PARAR = 0;
Ad_1 = diag(1./diag(A)); J = - Ad_1*(A-diag(diag(A))); d = Ad_1*b;
n = length(b);
while ~PARAR
xk1 = J*xk+d;
PARAR = norm(A*xk1-b) tol  norm(xk1-xk)/(eps+norm(xk1)) err;
if PARAR, pk ='V'; else pk = 'F'; end;
k = k+1; xk = xk1;
end
end
end
A continuación se presenta la aplicación de la implementación del método de Jacobi para el
ejemplo precedente.
 A = [20, 7, −1, −2; −6, 12, −2, 2; −1, −2, 30, 10; 3, −2, 8, −20]; b = [6; −4; 10; −1]; err = 1e −
12; tol = 1e − 10;
 [xk, k] = jacobi01(A, b, tol, err)
xk =
0,3831761484636145
6 6
A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES
−0,1357403624670241
0,2617997305402249
0,225770350732207
Se obtiene la aproximación
x =




x1
x2
x3
x4



 :=




0,3831761484636145
−0,1357403624670241
0,2617997305402249
0,225770350732207



 .
Ejemplo Aplicando el método de Jacobi resuelva el siguiente sistema lineal con una tolerancia
de 10−13
y con error relativo apróximado menor que 10−12
. Convergen estas iteraciones?.
−x1 −2x2 +3x3 +10x4 = 10
2x1 +7x2 −x3 −2x4 = 6
−6x1 +x2 −2x3 +2x4 = −4
3x1 −2x2 +18x3 −10x4 = −1
Solución Reordenando de modo que la matriz de coecientes sea diagonalmente dominante
−x1 −2x2 +3x3 +10x4 = 10 −→ Ecuación 4
2x1 +7x2 −x3 −2x4 = 6 −→ Ecuación 2
−6x1 +x2 −2x3 +2x4 = −4 −→ Ecuación 1
3x1 −2x2 +18x3 −10x4 = −1 −→ Ecuación 3
Se obtiene el sistema lineal
−6x1 +x2 −2x3 +2x4 = −4
2x1 +7x2 −x3 −2x4 = 6
3x1 −2x2 +18x3 −10x4 = −1
−x1 −2x2 +3x3 +10x4 = 10
donde la matriz de coeciente del sistema lineal
A =




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10




es diagonalmente dominante, lo que asegura la convergencia del método.
El sistema lineal se puede expresar de la siguiente manera.
−6x1 = −4 − x2 −2x3 +2x4

7x2 = 6 − 2x1 −x3 −2x4

18x3 = −1 − 3x1 −2x2 −10x4

10x4 = 10 − −x1 −2x2 +3x3

x1 = 1
6 (x2 − 2x3 + 2x4 + 4)
x2 = 1
7 (6 − 2x1 + x3 + 2x4)
x3 = 1
18 (−1 − 3x1 + 2x2 + 10x4)
x4 = 1
10 (10 + x1 + 2x2 − 3x3)
7 7
A. Canhoa Q.
Se obtiene la iteraciones de Jacobi
xk+1
1 = 1
6 4 + xk
2 − 2xk
3 + 2xk
4

xk+1
2 = 1
7 6 − 2xk
1 + xk
3 + 2xk
4

xk+1
3 = 1
18 −1 − 3xk
1 + 2xk
2 + 10xk
4

xk+1
4 = 1
10 10 + xk
1 + 2xk
2 − 3xk
3

k = 0, 1, 2, · · ·
En este caso se tiene tol = 10−13
y err = 10−12
. Eligiendo el punto inicial x0
= x0
1, x0
2, x0
3, x0
4
T
=
(0, 0, 0, 0)
T
.
Para k = 0:
x1
=





x1
1
x1
2
x1
3
x1
4





=





1
6 4 + x0
2 − 2x0
3 + 2x0
4

1
7 6 − 2x0
1 + x0
3 + 2x0
4

1
18 −1 − 3x0
1 + 2x0
2 + 10x0
4

1
10 10 + x0
1 + 2x0
2 − 3x0
3






=




0,6666666666666666
0,8571428571428571
−0,05555555555555555
1,0000000000000000




Ax1
− b 2
=




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10








x1
1
x1
2
x1
3
x1
4



 −




−4
6
−1
10




2
= 37,69766498840785
x1
− x0
2
kx1k2
=
x1
− 0 2
kx1k2
= 1
p1 : Ax1
− b 2
 10−12
∧
kx1
−x0
k2
kx1k2
 10−10
37,69766498840785  10−12
∧ 1  10−10
Se tiene que p1 es falso (F) =⇒!Continuar!
Para k = 1:x2
= x2
1, x2
2, x2
3, x2
4
T
8 8
A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES





x2
1
x2
2
x2
3
x2
4





=





1
6 4 + x1
2 − 2x1
3 + 2x1
4

1
7 6 − 2x1
1 + x1
3 + 2x1
4

1
18 −1 − 3x1
1 + 2x1
2 + 10x1
4

1
10 10 + x1
1 + 2x1
2 − 3x1
3






=




1,161375661375661
0,9444444444444443
0,4841269841269841
1,254761904761905




Ax2
− b 2
=




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10








x2
1
x2
2
x2
3
x2
4



 −




−4
6
−1
10




2
= 49,55035823176086
x2
− x1
2
kx2k2
=




x2
1
x2
2
x2
3
x2
4



 −




x1
1
x1
2
x1
3
x1
4




2
÷




x2
1
x2
2
x2
3
x2
4




2
= 0,3876434901238091
p2 : Ax2
− b 2
 10−12
∧
kx2
−x1
k2
kx2k2
 10−10
49,55035823176086  10−12
∧ 0,3876434901238091  10−10
Se tiene que p2 es falso (F) =⇒!Continuar!.
Para k = 2:
x3
=





x3
1
x3
2
x3
3
x3
4





=





1
6 4 + x2
2 − 2x2
3 + 2x2
4

1
7 6 − 2x2
1 + x2
3 + 2x2
4

1
18 −1 − 3x2
1 + 2x2
2 + 10x2
4

1
10 10 + x2
1 + 2x2
2 − 3x2
3






=




1,080952380952381
0,9529856386999244
0,5529100529100529
1,15978835978836




9 9
A. Canhoa Q.
Ax3
− b 2
=




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10








x3
1
x3
2
x3
3
x3
4



 −




−4
6
−1
10




2
= 48,00494692281107
x3
− x2
2
kx3k2
=




x3
1
x3
2
x3
3
x3
4



 −




x2
1
x2
2
x2
3
x2
4




2
÷




x3
1
x3
2
x3
3
x3
4




2
= 0,07378284549337086
p3 : Ax3
− b 2
 10−12
∧
kx3
−x2
k2
kx3k2
 10−10
48,00494692281107  10−12
∧ 0,07378284549337086  10−10
Se tiene que p3 es falso (F) =⇒!Continuar!.
Para k = 3:
x4
=





x4
1
x4
2
x4
3
x3
4





=





1
6 4 + x3
2 − 2x3
3 + 2x3
4

1
7 6 − 2x3
1 + x3
3 + 2x3
4

1
18 −1 − 3x3
1 + 2x3
2 + 10x3
4

1
10 10 + x3
1 + 2x3
2 − 3x3
3






=




1,027790375409423
0,9586545729402871
0,5144998740236836
1,132819349962207




Ax4
− b 2
=




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10








x4
1
x4
2
x4
3
x3
4



 −




−4
6
−1
10




2
= 46,65926499962391
x4
− x3
2
kx4k2
=




x4
1
x4
2
x4
3
x3
4



 −




x3
1
x3
2
x3
3
x3
4




2
÷




x4
1
x4
2
x4
3
x3
4




2
= 0,0379000500510232
p4 : Ax4
− b 2
 10−12
∧
kx4
−x3
k2
kx4k2
 10−10
46,65926499962391  10−12
∧ 0,0379000500510232  10−10
Se tiene que p4 es falso (F) =⇒!Continuar!.
 A = [−6, 1, −2, 2; 2, 7, −1, −2; 3, −2, 18, −10; −1, −2, 3, 10]; b = [−4; 6; −1; 10];  err = 1e−13; tol =
10 10
A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES
Se obtiene la aproximación
x =




x1
x2
x3
x4



 :=




1,036450477626934
0,96053293112117
0,5128205128204818
1,141905480140777



 .
0.1.2. Método de Gauss- Seidel
Reemplazando A = (AL + AD + AU ) en Ax = b se obtiene
(AL) x + (AD) x + (AU ) x = b.
Deniendo la sucesión xk

por
(AL) x(k+1)
+ (AD) x(k+1)
= b − (AU ) x(k)
,
ó
ADx(k+1)
= b − (AU ) x(k)
− (AL) x(k+1)
,
se obtienen la iteraciones del método de Gauss-Seidel
x(k+1)
= A−1
D

b − (AU ) x(k)
− (AL) x(k+1)

.
Para la i-ésima ecuación
ai1x1 + ai2x2 + · · · + ai,i−1xi−1 + aiixi + ai.i+1xi+1 + · · · + ainxn = bi
i−1
X
j=1
aijxj + aiixi = bi −
n
X
j=i+1
ai.jxj
i−1
X
j=1
aijx
(k+1)
j + aiix
(k+1)
i = bi −
n
X
j=i+1
ai.jx
(k)
j
Iteraciones del método de Gauss-Seidel:
x
(k+1)
i =
1
aii

bi −
n
X
j=i+1
ai.jx
(k)
j −
i−1
X
j=1
aijx
(k+1)
j

 ,
i = 1, 2, · · · , n, k = 0, 1, 2, 3, · · ·
En Octave o en MATLAB esto se puede implementar como sigue
Para cada k = 0, 1, 2, 3, · · ·
z = xk;
for i=1:n
J = [1:i-1,i+1:n];
z(i) = (b(i)-A(i,J)*z(J))/A(i,i);
end
11 11
A. Canhoa Q.
xk1 = z;
Ejemplo Aplicando el método de Gauss- Seidel resuelva el siguiente sistema lineal con una
tolerancia de 10−12
y con error relativo apróximado menor que 10−10
. Convergen estas iteraciones?.
−6x1 +x2 −2x3 +2x4 = −4
2x1 +7x2 −x3 −2x4 = 6
3x1 −2x2 +18x3 −10x4 = −1
−x1 −2x2 +3x3 +10x4 = 10
Solución En este caso la matriz de coecientes es diagonalmente dominante (no es necesario
reordenar), lo que asegura la convergencia del método.
−6x1 = −4 − x2 + 2x3 − 2x4
2x1 +7x2 = 6 + x3 + 2x4
3x1 −2x2 +18x3 = −1 + 10x4
−x1 −2x2 +3x3 +10x4 = 10
Deniendo la sucesión xk

por
−6xk+1
1 = −4 − xk
2 + 2xk
3 − 2xk
4
2xk+1
1 + 7xk+1
2 = 6 + xk
3 + 2xk
4
3xk+1
1 − 2xk+1
2 + 18xk+1
3 = −1 + 10xk
4
−xk+1
1 − 2xk+1
2 + 3xk+1
3 + 10xk+1
4 = 10
Se obtienen las iteraciones de Gauss-Seidel
xk+1
1 = 1
6 4 + xk
2 − 2xk
3 + 2xk
4

xk+1
2 = 1
4 6 − 2xk+1
1 + xk
3 + 2xk
4

xk+1
3 = 1
18 −1 − 3xk+1
1 + 2xk+1
2 + 10xk
4

xk+1
4 = 1
10 10 + xk+1
1 + 2xk+1
2 − 3xk+1
3

, k = 0, 1, 2, · · ·
Las iteraciones de Gauss - Seidel se puede expresar como sigue
xk+1
=




xk+1
1
xk+1
2
xk+1
3
xk+1
4



 =




1
6 4 + xk
2 − 2xk
3 + 2xk
4

1
7 6 − 2xk+1
1 + xk
3 + 2xk
4

1
18 −1 − 3xk+1
1 + 2xk+1
2 + 10xk
4

1
10 10 + xk+1
1 + 2xk+1
2 − 3xk+1
3

,



 , k = 0, 1, 2, 3, · · ·
En este caso se tiene tol = 10−13
y err = 10−12
. Eligiendo el punto inicial x0
= x0
1, x0
2, x0
3, x0
4
T
=
(0, 0, 0, 0)
T
Para k = 0 :
x1
=





x1
1
x1
2
x1
3
x1
4





=





1
6 4 + x0
2 − 2x0
3 + 2x0
4

1
7 6 − 2x1
1 + x0
3 + 2x0
4

1
18 −1 − 3x1
1 + 2x1
2 + 10x0
4

1
10 10 + x1
1 + 2x1
2 − 3x1
3

,





=




0,6666666666666666
0,6666666666666667
−0,09259259259259259
1,227777777777778




12 12
A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES
Ax1
− b 2
=




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10








x1
1
x1
2
x1
3
x1
4



 −




−4
6
−1
10




2
= 12,93314984384709
x1
− x0
2
kx1k2
=
x1
− 0 2
kx1k2
= 1
p1 : Ax1
− b 2
 10−12
∧
kx1
−x0
k2
kx1k2
 10−10
12,93314984384709  10−12
∧ 1  10−10
Se tiene que p1 es falso (F) =⇒!Continuar!
Para k = 1:
x2
=





x2
1
x2
2
x2
3
x2
4





=






1
6 4 + x1
2 − 2x1
3 + 2x1
4

1
7 6 − 2x2
1 + x1
3 + 2x1
4

1
18 −1 − 3x2
1 + 2x2
2 + 10x1
4

1
10 10 + x2
1 + 2x2
2 − 3x2
3

,






=




1,217901234567901
0,8467372134038802
0,5176415833823242
1,135845091122869




Ax2
− b 2
=




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10








x2
1
x2
2
x2
3
x2
4



 −




−4
6
−1
10




2
= 1,589267936419437
x2
− x1
2
kx2k2
=




x2
1
x2
2
x2
3
x2
4



 −




x1
1
x1
2
x1
3
x1
4




2
÷




x2
1
x2
2
x2
3
x2
4




2
= 0,4368158048050132
p2 : Ax2
− b 2
 10−12
∧
kx2
−x1
k2
kx2k2
 10−10
1,589267936419437  10−12
∧ 0,4368158048050132  10−10
Se tiene que p2 es falso (F) =⇒!Continuar!.
13 13
A. Canhoa Q.
Para k = 2:
x3
=





x3
1
x3
2
x3
3
x3
4





=





1
6 4 + x2
2 − 2x2
3 + 2x2
4

1
7 6 − 2x3
1 + x2
3 + 2x2
4

1
18 −1 − 3x3
1 + 2x3
2 + 10x2
4

1
10 10 + x3
1 + 2x3
2 − 3x3
3

,





=




1,013857371480828
0,9659452889523436
0,5138205208161606
1,140428638693703




Ax3
− b 2
=




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10








x3
1
x3
2
x3
3
x3
4



 −




−4
6
−1
10




2
= 0,1436320843703214
x3
− x2
2
kx3k2
=




x3
1
x3
2
x3
3
x3
4



 −




x2
1
x2
2
x2
3
x2
4




2
÷




x3
1
x3
2
x3
3
x3
4




2
= 0,1258969717203631
p3 : Ax3
− b 2
 10−12
∧
kx3
−x2
k2
kx3k2
 10−10
0,1436320843703214  10−12
∧ 0,1258969717203631  10−10
Se tiene que p3 es falso (F) =⇒!Continuar!.
Continuando para k = 16:
x17
=





x17
1
x17
2
x17
3
x17
4





=





1
6 4 + x16
2 − 2x16
3 + 2x16
4

1
7 6 − 2x17
1 + x16
3 + 2x16
4

1
18 −1 − 3x17
1 + 2x17
2 + 10x16
4

1
10 10 + x17
1 + 2x17
2 − 3x17
3

,





=




1,036450477626949
0,9605329311211662
0,512820512820514
1,141905480140774




14 14
A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES
Ax17
− b 2
=




−6 1 −2 2
2 7 −1 −2
3 −2 18 −10
−1 −2 3 10








x17
1
x17
2
x17
3
x17
4



 −




−4
6
−1
10




2
= 1,754191728143227e − 13
x17
− x16
2
kx17k2
=




x17
1
x17
2
x17
3
x17
4



 −




x16
1
x16
2
x16
3
x16
4




2
÷




x17
1
x17
2
x17
3
x17
4




2
= 0
p17 : Ax4
− b 2
 10−12
∧
kx17
−x16
k2
kx17k2
 10−10
1,754191728143227e − 13  10−12
∧ 0  10−10
Se tiene que p17 es verdadero (V ) =⇒!Parar!.
En la iteración k = 17 se obtiene la aproximación
x =




x1
x2
x3
x4



 =




1,036450477626949
0,9605329311211662
0,512820512820514
1,141905480140774



 .
En un ejemplo ya se ha visto que para solucionar el mismo sistema lineal con la misma tolerancia
y la misma cota supeior del error relativo aproximado con el método de Jacobi se requieren k = 28
iteraciones.
Una implementación más general esta dado por
function [xk, k] = gauss_seidel(A, b, n, tol, err)
% Función en MATLAB para el método de Gauss-Seidel
% Autor : Alessandri Canchoa Q. - Fecha :02/08/2020
% Entrada : A : Matriz nxn
% b : parte derecha (vector nx1)
% tool : Tolerancia (Ejemplo: tool = 1e-14; )
% err : Cota del error relativo apróximado (Ejemplo: tool = 1e-14; )
% Salida :
% xk : Raíz aproximada de Ax = b
k = 0; xk = zeros(size(b)); xk1 = xk; PARAR = 0;
while ~PARAR
z = xk;
for i=1:n
J = [1:i-1,i+1:n];
z(i) = (b(i)-A(i,J)*z(J))/A(i,i);
end
xk1 = z;
PARAR = norm(xk1-xk) err  norm(A*xk1-b) tol;
xk = xk1;
k = k + 1;
15 15
A. Canhoa Q.
end
end
 A = [−6, 1, −2, 2; 2, 7, −1, −2; 3, −2, 18, −10; −1, −2, 3, 10]; b = [−4; 6; −1; 10]; n = 4; err = 1e−13; tol
xk = 1.036450477626949 0.9605329311211662 0.512820512820514 1.141905480140774 k = 17
Se obtiene la aproximación
x =




x1
x2
x3
x4



 :=




1,036450477626949
0,9605329311211662
0,512820512820514
1,141905480140774



 .
16 16

Mais conteúdo relacionado

Semelhante a Metodos_Iterativos_Print_I2020.pdf

Semelhante a Metodos_Iterativos_Print_I2020.pdf (20)

Números complejos
Números complejosNúmeros complejos
Números complejos
 
Alg alfa
Alg alfaAlg alfa
Alg alfa
 
PRE CALCULO N°9 ESAN
PRE CALCULO N°9 ESANPRE CALCULO N°9 ESAN
PRE CALCULO N°9 ESAN
 
Matrices
Matrices Matrices
Matrices
 
Ejercicios resueltosmate
Ejercicios resueltosmateEjercicios resueltosmate
Ejercicios resueltosmate
 
Semana 1 cs
Semana 1 csSemana 1 cs
Semana 1 cs
 
Leyes de exponentes whatsmath
Leyes de exponentes whatsmathLeyes de exponentes whatsmath
Leyes de exponentes whatsmath
 
Resolución de sistema de ecuaciones cuadráticas
Resolución de sistema de ecuaciones cuadráticasResolución de sistema de ecuaciones cuadráticas
Resolución de sistema de ecuaciones cuadráticas
 
Examen matemáticas radicales y ecuaciones 4º eso
Examen matemáticas radicales y ecuaciones  4º esoExamen matemáticas radicales y ecuaciones  4º eso
Examen matemáticas radicales y ecuaciones 4º eso
 
PRODCUTOS NOTABLES.pdf
PRODCUTOS NOTABLES.pdfPRODCUTOS NOTABLES.pdf
PRODCUTOS NOTABLES.pdf
 
Ejercicios resueltosmate
Ejercicios resueltosmateEjercicios resueltosmate
Ejercicios resueltosmate
 
ceros-resum.pdf
ceros-resum.pdfceros-resum.pdf
ceros-resum.pdf
 
Solucion examen 13 junio 2016 latex
Solucion examen 13 junio 2016 latexSolucion examen 13 junio 2016 latex
Solucion examen 13 junio 2016 latex
 
Metodo del punto fijo y de newton rapshon
Metodo del punto fijo y de newton rapshonMetodo del punto fijo y de newton rapshon
Metodo del punto fijo y de newton rapshon
 
Biseccion
BiseccionBiseccion
Biseccion
 
Ceros resum
Ceros resumCeros resum
Ceros resum
 
Ecuaciones de expone
Ecuaciones de exponeEcuaciones de expone
Ecuaciones de expone
 
ANDRE (1).docx
ANDRE  (1).docxANDRE  (1).docx
ANDRE (1).docx
 
Ejercicio econometría 4.24 novales
Ejercicio econometría 4.24 novalesEjercicio econometría 4.24 novales
Ejercicio econometría 4.24 novales
 
Unidad 2
Unidad 2 Unidad 2
Unidad 2
 

Último

MODELO DE ALIMENTACION actualmente 2024v
MODELO DE ALIMENTACION actualmente 2024vMODELO DE ALIMENTACION actualmente 2024v
MODELO DE ALIMENTACION actualmente 2024vjonathanscortesramos
 
Fisiopatología_Renal_Fundamentos_Cuarta_edición_Helmut_Rennke_Bradley (1).pdf
Fisiopatología_Renal_Fundamentos_Cuarta_edición_Helmut_Rennke_Bradley (1).pdfFisiopatología_Renal_Fundamentos_Cuarta_edición_Helmut_Rennke_Bradley (1).pdf
Fisiopatología_Renal_Fundamentos_Cuarta_edición_Helmut_Rennke_Bradley (1).pdfNATHALIENATIUSHKAESP
 
Recetario royal prestige pdf para una mejor cocina desde casa!
Recetario royal prestige pdf para una mejor cocina desde casa!Recetario royal prestige pdf para una mejor cocina desde casa!
Recetario royal prestige pdf para una mejor cocina desde casa!px522kdw4p
 
Biosintesis de la Leche presentación ppp
Biosintesis de la Leche presentación pppBiosintesis de la Leche presentación ppp
Biosintesis de la Leche presentación pppAngelica Ushiña
 
Auditorias Puntos Importantes SQF en industria de alimentos
Auditorias Puntos Importantes SQF en industria de alimentosAuditorias Puntos Importantes SQF en industria de alimentos
Auditorias Puntos Importantes SQF en industria de alimentosVictor Manuel Cardona Morales
 
Batidos y jugos saludables FrutiFresh.pdf
Batidos y jugos saludables FrutiFresh.pdfBatidos y jugos saludables FrutiFresh.pdf
Batidos y jugos saludables FrutiFresh.pdfAndrés Tunubalá
 
PPT Capacitación Análisis Sensorial.pptx
PPT Capacitación Análisis Sensorial.pptxPPT Capacitación Análisis Sensorial.pptx
PPT Capacitación Análisis Sensorial.pptxAlonsoGodoy4
 
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE (1) (3).pdf
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE (1) (3).pdf4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE (1) (3).pdf
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE (1) (3).pdfDianakiasPerez
 
ELABORACION DE GOMITAS , dulces, terapeuticas y con alcohol
ELABORACION DE GOMITAS , dulces, terapeuticas y con alcoholELABORACION DE GOMITAS , dulces, terapeuticas y con alcohol
ELABORACION DE GOMITAS , dulces, terapeuticas y con alcoholalejandroguzman330559
 

Último (9)

MODELO DE ALIMENTACION actualmente 2024v
MODELO DE ALIMENTACION actualmente 2024vMODELO DE ALIMENTACION actualmente 2024v
MODELO DE ALIMENTACION actualmente 2024v
 
Fisiopatología_Renal_Fundamentos_Cuarta_edición_Helmut_Rennke_Bradley (1).pdf
Fisiopatología_Renal_Fundamentos_Cuarta_edición_Helmut_Rennke_Bradley (1).pdfFisiopatología_Renal_Fundamentos_Cuarta_edición_Helmut_Rennke_Bradley (1).pdf
Fisiopatología_Renal_Fundamentos_Cuarta_edición_Helmut_Rennke_Bradley (1).pdf
 
Recetario royal prestige pdf para una mejor cocina desde casa!
Recetario royal prestige pdf para una mejor cocina desde casa!Recetario royal prestige pdf para una mejor cocina desde casa!
Recetario royal prestige pdf para una mejor cocina desde casa!
 
Biosintesis de la Leche presentación ppp
Biosintesis de la Leche presentación pppBiosintesis de la Leche presentación ppp
Biosintesis de la Leche presentación ppp
 
Auditorias Puntos Importantes SQF en industria de alimentos
Auditorias Puntos Importantes SQF en industria de alimentosAuditorias Puntos Importantes SQF en industria de alimentos
Auditorias Puntos Importantes SQF en industria de alimentos
 
Batidos y jugos saludables FrutiFresh.pdf
Batidos y jugos saludables FrutiFresh.pdfBatidos y jugos saludables FrutiFresh.pdf
Batidos y jugos saludables FrutiFresh.pdf
 
PPT Capacitación Análisis Sensorial.pptx
PPT Capacitación Análisis Sensorial.pptxPPT Capacitación Análisis Sensorial.pptx
PPT Capacitación Análisis Sensorial.pptx
 
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE (1) (3).pdf
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE (1) (3).pdf4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE (1) (3).pdf
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE (1) (3).pdf
 
ELABORACION DE GOMITAS , dulces, terapeuticas y con alcohol
ELABORACION DE GOMITAS , dulces, terapeuticas y con alcoholELABORACION DE GOMITAS , dulces, terapeuticas y con alcohol
ELABORACION DE GOMITAS , dulces, terapeuticas y con alcohol
 

Metodos_Iterativos_Print_I2020.pdf

  • 1. A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES 0.1. Métodos iterativos para sistemas lineales 0.1.1. Método de Jacobi Denición Se dice que una matriz A = (aij) ∈ Rn×n es diagonalmente estrictamente dominante cuando |akk| n X j=1 j6=k |akj| , para k = 1, 2, · · · , n. A =       12 3 1 1 0 1 −15 −4 3 2 2 3 30 3 5 4 2 1 −36 5 8 −1 1 1 13       |12| |3| + |1| + |1| + |0| = 5 |−15| |1| + |−4| + |3| + |2| = 10 |30| |2| + |3| + |3| + |5| = 13 |−36| |4| + |2| + |1| + |5| = 12 |13| |8| + |−1| + |1| + |1| = 11 La matriz A es una matriz diagonalmente dominante por las. B =       12 3 1 1 0 1 −15 −4 3 2 2 3 3 3 5 4 2 1 −36 5 8 −1 1 1 13       |12| |3| + |1| + |1| + |0| = 5 |−15| |1| + |−4| + |3| + |2| = 10 |3| ≤ |2| + |3| + |3| + |5| = 13 |−36| |4| + |2| + |1| + |5| = 12 |13| |8| + |−1| + |1| + |1| = 11 La matriz B no es una matriz diagonalmente dominante por las, la tercera la de B no satisface la denición. Consideremos el sistema lineal a11x1 + a12x2 + . . . + a1nxn = b1 a21x1 + a22x2 + . . . + a2nxn = b2 . . . . . . ... . . . an1x1 + an2x2 + . . . + annxn = bn deniendo A =    a11 . . . a1n . . . ... . . . an1 . . . ann    , x =    x1 . . . xn    , b =    b1 . . . bn    donde A ∈ Rn×n , b ∈ Rn y la incógita x ∈ Rn . Se puede escribir de manera compacta Ax = b Descomponiendo la matriz A : A = AL + AD + AU donde AL =        0 0 0 . . . 0 a21 0 0 . . . 0 a31 a32 0 0 . . . ... ... . . . an1 an2 . . . an,n−1 0        , 1 1
  • 2. A. Canhoa Q. AU =         0 a12 a13 . . . a1n 0 0 a23 . . . a2n 0 0 0 . . . . . . . . . ... an−1,n 0 0 . . . 0 0         AD = diag(A) = diag(a11, a22, · · · , ann) Reemplazando A = AD + (A − AD) en Ax = b se obtiene (AD) x + (A − AD) x = b. Deniendo la sucesión xk por ADxk+1 = b − (A − AD) xk , se obtienen la iteraciones del método de Jacobi xk+1 = A−1 D b − A−1 D (A − AD) xk , k = 0, 1, 2, · · · Deniendo d := A−1 D b y J := −A−1 D (A − AD) las iteraciones de Jacobi están dadas por xk+1 = Jxk + d, k = 0, 1, 2, · · · Se cumplen A−1 D = diag( 1 a11 , 1 a22 , · · · , 1 ann ). Criterio para parar Si pk : Axk+1 − b 2 tol ∧ kxk+1 −xk k2 kxk+1k2 err se acepta a xk+1 como una solución apróximada de Ax = b con una tolerancia tol y un error relativo apróximado menor que err. Convergencia del método iterativo de Jacobi TEOREMA Supongamos que A es una matriz diagonal estrictamente dominante. Entonces el sistema de ecuaciones lineales Ax = b tiene solución única b x. Además, el respectivo proceso iterativo de Jacobi converge a b x para cualquier punto inicial x(0) . Ejemplo Solucionar el siguiente sistema lineal por el método dede Jacobi con una tolencia de 10−12 y un error aproximado menor a 10−10 . −x1 −2x2 +30x3 +10x4 = 10 20x1 +7x2 −x3 −2x4 = 6 −6x1 +12x2 −2x3 +2x4 = −4 3x1 −2x2 +8x3 −20x4 = −1 Solución Reordenando −x1 −2x2 +30x3 +10x4 = 10 −→ Ecuación 3 20x1 +7x2 −x3 −2x4 = 6 −→ Ecuación 1 −6x1 +12x2 −2x3 +2x4 = −4 −→ Ecuación 2 3x1 −2x2 +8x3 −20x4 = −1 −→ Ecuación 4 de modo que la matriz de coecientes sea diagonalmente dominante para asegurar la convergencia. 2 2
  • 3. A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES Se obtiene el sistema lineal 20x1 +7x2 −x3 −2x4 = 6 −6x1 +12x2 −2x3 +2x4 = −4 −x1 −2x2 +30x3 +10x4 = 10 3x1 −2x2 +8x3 −20x4 = −1 Este sistema lineal se puede en forma matricial Ax = b, donde A =     20 7 −1 −2 −6 12 −2 2 −1 −2 30 10 3 −2 8 −20     , b =     6 −4 10 −1     , x =     x1 x2 x3 x4     La matriz A es diagonalmente dominante y se asegura la convergencia del método de Jacobi. En este caso para AD = diag (20, 12, 30, −20) se tiene A−1 D = diag 1 20 , 1 12 , 1 30 , − 1 20 . Luego se obtienen d = A−1 D b =     1 20 0 0 0 0 1 12 0 0 0 0 1 30 0 0 0 0 − 1 20           6 −4 10 −1       =      3 10 −1 3 1 3 1 20      J = −A−1 D (A − AD) = −     1 20 0 0 0 0 1 12 0 0 0 0 1 30 0 0 0 0 − 1 20         0 7 −1 −2 −6 0 −2 2 −1 −2 0 10 3 −2 8 0     =      0 − 7 20 1 20 1 10 1 2 0 1 6 −1 6 1 30 1 15 0 −1 3 3 20 − 1 10 2 5 0      . Las iteraciones de Jacobi están dadas por       xk+1 1 xk+1 2 xk+1 3 xk+1 4       =       0 − 7 20 1 20 1 10 1 2 0 1 6 −1 6 1 30 1 15 0 −1 3 3 20 − 1 10 2 5 0             xk 1 xk 2 xk 3 xk 4       +      3 10 −1 3 1 3 1 20      , k = 0, 1, 2, · · · En este caso se tiene tol = 10−12 y err = 10−10 . Eligiendo el punto inicial x0 = x0 1, x0 2, x0 3, x0 4 T = (0, 0, 0, 0) T . 3 3
  • 4. A. Canhoa Q. Para k = 0:      x1 1 x1 2 x1 3 x1 4      =      0 − 7 20 1 20 1 10 1 2 0 1 6 −1 6 1 30 1 15 0 −1 3 3 20 − 1 10 2 5 0           x0 1 x0 2 x0 3 x0 4      +      3 10 −1 3 1 3 1 20      =      0 − 7 20 1 20 1 10 1 2 0 1 6 −1 6 1 30 1 15 0 −1 3 3 20 − 1 10 2 5 0            0 0 0 0       +      3 10 −1 3 1 3 1 20      =     0,3 −0,3333333333333333 0,3333333333333333 0,05     Ax1 − b 2 =     20 7 −1 −2 −6 12 −2 2 −1 −2 30 10 3 −2 8 −20         x1 1 x1 2 x1 3 x1 4     −     6 −4 10 −1     2 = 5,650467040677061 x1 − x0 2 kx1k2 = x1 − 0 2 kx1k2 = 1 p1 : Ax1 − b 2 10−12 ∧ kx1 −x0 k2 kx1k2 10−10 5,650467040677061 10−12 ∧ 1 10−10 Se tiene que p1 es falso (F) =⇒!Continuar! Para k = 1:       x2 1 x2 2 x2 3 x2 4       =      0 − 7 20 1 20 1 10 1 2 0 1 6 −1 6 1 30 1 15 0 −1 3 3 20 − 1 10 2 5 0            x1 1 x1 2 x1 3 x1 4       +       3 10 −1 3 1 3 1 20       =     0,4383333333333334 −0,1361111111111111 0,3044444444444444 0,2616666666666667     4 4
  • 5. A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES Ax2 − b 2 =     20 7 −1 −2 −6 12 −2 2 −1 −2 30 10 3 −2 8 −20         x2 1 x2 2 x2 3 x2 4     −     6 −4 10 −1     2 = 1,909758161277995 x2 − x1 2 kx2k2 =     x2 1 x2 2 x2 3 x2 4     −     x1 1 x1 2 x1 3 x1 4     2 ÷     x2 1 x2 2 x2 3 x2 4     2 = 0,5280333473199539 p2 : Ax2 − b 2 10−12 ∧ kx2 −x1 k2 kx2k2 10−10 1,909758161277995 10−12 ∧ 0,5280333473199539 10−10 Se tiene que p2 es falso (F) =⇒!Continuar! Para k = 2:      x3 1 x3 2 x3 3 x3 4      =      0 − 7 20 1 20 1 10 1 2 0 1 6 −1 6 1 30 1 15 0 −1 3 3 20 − 1 10 2 5 0           x2 1 x2 2 x2 3 x2 4      +      3 10 −1 3 1 3 1 20      =       0,3890277777777778 −0,107037037037037 0,2516481481481481 0,2511388888888889       Ax3 − b 2 =     20 7 −1 −2 −6 12 −2 2 −1 −2 30 10 3 −2 8 −20         x3 1 x3 2 x3 3 x3 4     −     6 −4 10 −1     2 = 0,7934545871864997 x3 − x2 2 kx3k2 =     x3 1 x3 2 x3 3 x3 4     −     x2 1 x2 2 x2 3 x2 4     2 ÷     x3 1 x3 2 x3 3 x3 4     2 = 0,1461195290862629 p3 : Ax3 − b 2 10−12 ∧ kx3 −x2 k2 kx3k2 10−10 0,7934545871864997 10−12 ∧ 0,1461195290862629 10−10 5 5
  • 6. A. Canhoa Q. Se tiene que p3 es falso (F) =⇒!Continuar! k xk 1 xk 2 xk 3 xk 4 pk 0 0,0000000000 0,0000000000 0,0000000000 0,0000000000 − 1 0,3000000000 −0,3333333333 0,3333333333 0,0500000000 F 2 0,4383333333 −0,1361111111 0,3044444444 0,2616666667 F 3 0,3890277778 −0,1070370370 0,2516481481 0,2511388889 F . . . . . . 32 0,3831761485 −0,1357403625 0,2617997305 0,2257703507 F 33 0,3831761485 −0,1357403625 0,2617997305 0,2257703507 V donde pk : Axk − b 2 10−12 (tol) ∧ kxk −xk−1 k2 kxkk2 10−10 (err) . En la tabla se presentan los resultados con 10 decimales por motivos de espacio. Se obtiene x =     x1 x2 x3 x4     =     0,38317614846365 −0,13574036246684 0,26179973054022 0,22577035073234     T , que es una solución (apróximada) del sistema lineal dado con una tolerancia tol = 10−12 y un error relativo menor que err = 10−10 . A continuación se presenta la implementación en Octave/MATLAB del método de Jacobi. function [xk, k] = jacobi01(A, b, tol, err) % Funcion en Octave/MATLAB para el método de Jacobi % Autor : Alessandri Canchoa Q. - Fecha : Agosto - 2020 % Entrada : A : Matriz nxn % b : Parte derecha (vector nx1) % tool : Tolerancia (Ejemplo: tool = 1e-14; ) % err : Error (Ejemplo: tool = 1e-14; ) % Salida : % xk : Solución aproximada de Ax = b k = 0; xk = zeros(size(b)); PARAR = 0; Ad_1 = diag(1./diag(A)); J = - Ad_1*(A-diag(diag(A))); d = Ad_1*b; n = length(b); while ~PARAR xk1 = J*xk+d; PARAR = norm(A*xk1-b) tol norm(xk1-xk)/(eps+norm(xk1)) err; if PARAR, pk ='V'; else pk = 'F'; end; k = k+1; xk = xk1; end end end A continuación se presenta la aplicación de la implementación del método de Jacobi para el ejemplo precedente. A = [20, 7, −1, −2; −6, 12, −2, 2; −1, −2, 30, 10; 3, −2, 8, −20]; b = [6; −4; 10; −1]; err = 1e − 12; tol = 1e − 10; [xk, k] = jacobi01(A, b, tol, err) xk = 0,3831761484636145 6 6
  • 7. A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES −0,1357403624670241 0,2617997305402249 0,225770350732207 Se obtiene la aproximación x =     x1 x2 x3 x4     :=     0,3831761484636145 −0,1357403624670241 0,2617997305402249 0,225770350732207     . Ejemplo Aplicando el método de Jacobi resuelva el siguiente sistema lineal con una tolerancia de 10−13 y con error relativo apróximado menor que 10−12 . Convergen estas iteraciones?. −x1 −2x2 +3x3 +10x4 = 10 2x1 +7x2 −x3 −2x4 = 6 −6x1 +x2 −2x3 +2x4 = −4 3x1 −2x2 +18x3 −10x4 = −1 Solución Reordenando de modo que la matriz de coecientes sea diagonalmente dominante −x1 −2x2 +3x3 +10x4 = 10 −→ Ecuación 4 2x1 +7x2 −x3 −2x4 = 6 −→ Ecuación 2 −6x1 +x2 −2x3 +2x4 = −4 −→ Ecuación 1 3x1 −2x2 +18x3 −10x4 = −1 −→ Ecuación 3 Se obtiene el sistema lineal −6x1 +x2 −2x3 +2x4 = −4 2x1 +7x2 −x3 −2x4 = 6 3x1 −2x2 +18x3 −10x4 = −1 −x1 −2x2 +3x3 +10x4 = 10 donde la matriz de coeciente del sistema lineal A =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10     es diagonalmente dominante, lo que asegura la convergencia del método. El sistema lineal se puede expresar de la siguiente manera. −6x1 = −4 − x2 −2x3 +2x4 7x2 = 6 − 2x1 −x3 −2x4 18x3 = −1 − 3x1 −2x2 −10x4 10x4 = 10 − −x1 −2x2 +3x3 x1 = 1 6 (x2 − 2x3 + 2x4 + 4) x2 = 1 7 (6 − 2x1 + x3 + 2x4) x3 = 1 18 (−1 − 3x1 + 2x2 + 10x4) x4 = 1 10 (10 + x1 + 2x2 − 3x3) 7 7
  • 8. A. Canhoa Q. Se obtiene la iteraciones de Jacobi xk+1 1 = 1 6 4 + xk 2 − 2xk 3 + 2xk 4 xk+1 2 = 1 7 6 − 2xk 1 + xk 3 + 2xk 4 xk+1 3 = 1 18 −1 − 3xk 1 + 2xk 2 + 10xk 4 xk+1 4 = 1 10 10 + xk 1 + 2xk 2 − 3xk 3 k = 0, 1, 2, · · · En este caso se tiene tol = 10−13 y err = 10−12 . Eligiendo el punto inicial x0 = x0 1, x0 2, x0 3, x0 4 T = (0, 0, 0, 0) T . Para k = 0: x1 =      x1 1 x1 2 x1 3 x1 4      =      1 6 4 + x0 2 − 2x0 3 + 2x0 4 1 7 6 − 2x0 1 + x0 3 + 2x0 4 1 18 −1 − 3x0 1 + 2x0 2 + 10x0 4 1 10 10 + x0 1 + 2x0 2 − 3x0 3      =     0,6666666666666666 0,8571428571428571 −0,05555555555555555 1,0000000000000000     Ax1 − b 2 =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10         x1 1 x1 2 x1 3 x1 4     −     −4 6 −1 10     2 = 37,69766498840785 x1 − x0 2 kx1k2 = x1 − 0 2 kx1k2 = 1 p1 : Ax1 − b 2 10−12 ∧ kx1 −x0 k2 kx1k2 10−10 37,69766498840785 10−12 ∧ 1 10−10 Se tiene que p1 es falso (F) =⇒!Continuar! Para k = 1:x2 = x2 1, x2 2, x2 3, x2 4 T 8 8
  • 9. A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES      x2 1 x2 2 x2 3 x2 4      =      1 6 4 + x1 2 − 2x1 3 + 2x1 4 1 7 6 − 2x1 1 + x1 3 + 2x1 4 1 18 −1 − 3x1 1 + 2x1 2 + 10x1 4 1 10 10 + x1 1 + 2x1 2 − 3x1 3      =     1,161375661375661 0,9444444444444443 0,4841269841269841 1,254761904761905     Ax2 − b 2 =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10         x2 1 x2 2 x2 3 x2 4     −     −4 6 −1 10     2 = 49,55035823176086 x2 − x1 2 kx2k2 =     x2 1 x2 2 x2 3 x2 4     −     x1 1 x1 2 x1 3 x1 4     2 ÷     x2 1 x2 2 x2 3 x2 4     2 = 0,3876434901238091 p2 : Ax2 − b 2 10−12 ∧ kx2 −x1 k2 kx2k2 10−10 49,55035823176086 10−12 ∧ 0,3876434901238091 10−10 Se tiene que p2 es falso (F) =⇒!Continuar!. Para k = 2: x3 =      x3 1 x3 2 x3 3 x3 4      =      1 6 4 + x2 2 − 2x2 3 + 2x2 4 1 7 6 − 2x2 1 + x2 3 + 2x2 4 1 18 −1 − 3x2 1 + 2x2 2 + 10x2 4 1 10 10 + x2 1 + 2x2 2 − 3x2 3      =     1,080952380952381 0,9529856386999244 0,5529100529100529 1,15978835978836     9 9
  • 10. A. Canhoa Q. Ax3 − b 2 =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10         x3 1 x3 2 x3 3 x3 4     −     −4 6 −1 10     2 = 48,00494692281107 x3 − x2 2 kx3k2 =     x3 1 x3 2 x3 3 x3 4     −     x2 1 x2 2 x2 3 x2 4     2 ÷     x3 1 x3 2 x3 3 x3 4     2 = 0,07378284549337086 p3 : Ax3 − b 2 10−12 ∧ kx3 −x2 k2 kx3k2 10−10 48,00494692281107 10−12 ∧ 0,07378284549337086 10−10 Se tiene que p3 es falso (F) =⇒!Continuar!. Para k = 3: x4 =      x4 1 x4 2 x4 3 x3 4      =      1 6 4 + x3 2 − 2x3 3 + 2x3 4 1 7 6 − 2x3 1 + x3 3 + 2x3 4 1 18 −1 − 3x3 1 + 2x3 2 + 10x3 4 1 10 10 + x3 1 + 2x3 2 − 3x3 3      =     1,027790375409423 0,9586545729402871 0,5144998740236836 1,132819349962207     Ax4 − b 2 =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10         x4 1 x4 2 x4 3 x3 4     −     −4 6 −1 10     2 = 46,65926499962391 x4 − x3 2 kx4k2 =     x4 1 x4 2 x4 3 x3 4     −     x3 1 x3 2 x3 3 x3 4     2 ÷     x4 1 x4 2 x4 3 x3 4     2 = 0,0379000500510232 p4 : Ax4 − b 2 10−12 ∧ kx4 −x3 k2 kx4k2 10−10 46,65926499962391 10−12 ∧ 0,0379000500510232 10−10 Se tiene que p4 es falso (F) =⇒!Continuar!. A = [−6, 1, −2, 2; 2, 7, −1, −2; 3, −2, 18, −10; −1, −2, 3, 10]; b = [−4; 6; −1; 10]; err = 1e−13; tol = 10 10
  • 11. A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES Se obtiene la aproximación x =     x1 x2 x3 x4     :=     1,036450477626934 0,96053293112117 0,5128205128204818 1,141905480140777     . 0.1.2. Método de Gauss- Seidel Reemplazando A = (AL + AD + AU ) en Ax = b se obtiene (AL) x + (AD) x + (AU ) x = b. Deniendo la sucesión xk por (AL) x(k+1) + (AD) x(k+1) = b − (AU ) x(k) , ó ADx(k+1) = b − (AU ) x(k) − (AL) x(k+1) , se obtienen la iteraciones del método de Gauss-Seidel x(k+1) = A−1 D b − (AU ) x(k) − (AL) x(k+1) . Para la i-ésima ecuación ai1x1 + ai2x2 + · · · + ai,i−1xi−1 + aiixi + ai.i+1xi+1 + · · · + ainxn = bi i−1 X j=1 aijxj + aiixi = bi − n X j=i+1 ai.jxj i−1 X j=1 aijx (k+1) j + aiix (k+1) i = bi − n X j=i+1 ai.jx (k) j Iteraciones del método de Gauss-Seidel: x (k+1) i = 1 aii  bi − n X j=i+1 ai.jx (k) j − i−1 X j=1 aijx (k+1) j   , i = 1, 2, · · · , n, k = 0, 1, 2, 3, · · · En Octave o en MATLAB esto se puede implementar como sigue Para cada k = 0, 1, 2, 3, · · · z = xk; for i=1:n J = [1:i-1,i+1:n]; z(i) = (b(i)-A(i,J)*z(J))/A(i,i); end 11 11
  • 12. A. Canhoa Q. xk1 = z; Ejemplo Aplicando el método de Gauss- Seidel resuelva el siguiente sistema lineal con una tolerancia de 10−12 y con error relativo apróximado menor que 10−10 . Convergen estas iteraciones?. −6x1 +x2 −2x3 +2x4 = −4 2x1 +7x2 −x3 −2x4 = 6 3x1 −2x2 +18x3 −10x4 = −1 −x1 −2x2 +3x3 +10x4 = 10 Solución En este caso la matriz de coecientes es diagonalmente dominante (no es necesario reordenar), lo que asegura la convergencia del método. −6x1 = −4 − x2 + 2x3 − 2x4 2x1 +7x2 = 6 + x3 + 2x4 3x1 −2x2 +18x3 = −1 + 10x4 −x1 −2x2 +3x3 +10x4 = 10 Deniendo la sucesión xk por −6xk+1 1 = −4 − xk 2 + 2xk 3 − 2xk 4 2xk+1 1 + 7xk+1 2 = 6 + xk 3 + 2xk 4 3xk+1 1 − 2xk+1 2 + 18xk+1 3 = −1 + 10xk 4 −xk+1 1 − 2xk+1 2 + 3xk+1 3 + 10xk+1 4 = 10 Se obtienen las iteraciones de Gauss-Seidel xk+1 1 = 1 6 4 + xk 2 − 2xk 3 + 2xk 4 xk+1 2 = 1 4 6 − 2xk+1 1 + xk 3 + 2xk 4 xk+1 3 = 1 18 −1 − 3xk+1 1 + 2xk+1 2 + 10xk 4 xk+1 4 = 1 10 10 + xk+1 1 + 2xk+1 2 − 3xk+1 3 , k = 0, 1, 2, · · · Las iteraciones de Gauss - Seidel se puede expresar como sigue xk+1 =     xk+1 1 xk+1 2 xk+1 3 xk+1 4     =     1 6 4 + xk 2 − 2xk 3 + 2xk 4 1 7 6 − 2xk+1 1 + xk 3 + 2xk 4 1 18 −1 − 3xk+1 1 + 2xk+1 2 + 10xk 4 1 10 10 + xk+1 1 + 2xk+1 2 − 3xk+1 3 ,     , k = 0, 1, 2, 3, · · · En este caso se tiene tol = 10−13 y err = 10−12 . Eligiendo el punto inicial x0 = x0 1, x0 2, x0 3, x0 4 T = (0, 0, 0, 0) T Para k = 0 : x1 =      x1 1 x1 2 x1 3 x1 4      =      1 6 4 + x0 2 − 2x0 3 + 2x0 4 1 7 6 − 2x1 1 + x0 3 + 2x0 4 1 18 −1 − 3x1 1 + 2x1 2 + 10x0 4 1 10 10 + x1 1 + 2x1 2 − 3x1 3 ,      =     0,6666666666666666 0,6666666666666667 −0,09259259259259259 1,227777777777778     12 12
  • 13. A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES Ax1 − b 2 =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10         x1 1 x1 2 x1 3 x1 4     −     −4 6 −1 10     2 = 12,93314984384709 x1 − x0 2 kx1k2 = x1 − 0 2 kx1k2 = 1 p1 : Ax1 − b 2 10−12 ∧ kx1 −x0 k2 kx1k2 10−10 12,93314984384709 10−12 ∧ 1 10−10 Se tiene que p1 es falso (F) =⇒!Continuar! Para k = 1: x2 =      x2 1 x2 2 x2 3 x2 4      =       1 6 4 + x1 2 − 2x1 3 + 2x1 4 1 7 6 − 2x2 1 + x1 3 + 2x1 4 1 18 −1 − 3x2 1 + 2x2 2 + 10x1 4 1 10 10 + x2 1 + 2x2 2 − 3x2 3 ,       =     1,217901234567901 0,8467372134038802 0,5176415833823242 1,135845091122869     Ax2 − b 2 =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10         x2 1 x2 2 x2 3 x2 4     −     −4 6 −1 10     2 = 1,589267936419437 x2 − x1 2 kx2k2 =     x2 1 x2 2 x2 3 x2 4     −     x1 1 x1 2 x1 3 x1 4     2 ÷     x2 1 x2 2 x2 3 x2 4     2 = 0,4368158048050132 p2 : Ax2 − b 2 10−12 ∧ kx2 −x1 k2 kx2k2 10−10 1,589267936419437 10−12 ∧ 0,4368158048050132 10−10 Se tiene que p2 es falso (F) =⇒!Continuar!. 13 13
  • 14. A. Canhoa Q. Para k = 2: x3 =      x3 1 x3 2 x3 3 x3 4      =      1 6 4 + x2 2 − 2x2 3 + 2x2 4 1 7 6 − 2x3 1 + x2 3 + 2x2 4 1 18 −1 − 3x3 1 + 2x3 2 + 10x2 4 1 10 10 + x3 1 + 2x3 2 − 3x3 3 ,      =     1,013857371480828 0,9659452889523436 0,5138205208161606 1,140428638693703     Ax3 − b 2 =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10         x3 1 x3 2 x3 3 x3 4     −     −4 6 −1 10     2 = 0,1436320843703214 x3 − x2 2 kx3k2 =     x3 1 x3 2 x3 3 x3 4     −     x2 1 x2 2 x2 3 x2 4     2 ÷     x3 1 x3 2 x3 3 x3 4     2 = 0,1258969717203631 p3 : Ax3 − b 2 10−12 ∧ kx3 −x2 k2 kx3k2 10−10 0,1436320843703214 10−12 ∧ 0,1258969717203631 10−10 Se tiene que p3 es falso (F) =⇒!Continuar!. Continuando para k = 16: x17 =      x17 1 x17 2 x17 3 x17 4      =      1 6 4 + x16 2 − 2x16 3 + 2x16 4 1 7 6 − 2x17 1 + x16 3 + 2x16 4 1 18 −1 − 3x17 1 + 2x17 2 + 10x16 4 1 10 10 + x17 1 + 2x17 2 − 3x17 3 ,      =     1,036450477626949 0,9605329311211662 0,512820512820514 1,141905480140774     14 14
  • 15. A. Canhoa Q. 0.1. MÉTODOS ITERATIVOS PARA SISTEMAS LINEALES Ax17 − b 2 =     −6 1 −2 2 2 7 −1 −2 3 −2 18 −10 −1 −2 3 10         x17 1 x17 2 x17 3 x17 4     −     −4 6 −1 10     2 = 1,754191728143227e − 13 x17 − x16 2 kx17k2 =     x17 1 x17 2 x17 3 x17 4     −     x16 1 x16 2 x16 3 x16 4     2 ÷     x17 1 x17 2 x17 3 x17 4     2 = 0 p17 : Ax4 − b 2 10−12 ∧ kx17 −x16 k2 kx17k2 10−10 1,754191728143227e − 13 10−12 ∧ 0 10−10 Se tiene que p17 es verdadero (V ) =⇒!Parar!. En la iteración k = 17 se obtiene la aproximación x =     x1 x2 x3 x4     =     1,036450477626949 0,9605329311211662 0,512820512820514 1,141905480140774     . En un ejemplo ya se ha visto que para solucionar el mismo sistema lineal con la misma tolerancia y la misma cota supeior del error relativo aproximado con el método de Jacobi se requieren k = 28 iteraciones. Una implementación más general esta dado por function [xk, k] = gauss_seidel(A, b, n, tol, err) % Función en MATLAB para el método de Gauss-Seidel % Autor : Alessandri Canchoa Q. - Fecha :02/08/2020 % Entrada : A : Matriz nxn % b : parte derecha (vector nx1) % tool : Tolerancia (Ejemplo: tool = 1e-14; ) % err : Cota del error relativo apróximado (Ejemplo: tool = 1e-14; ) % Salida : % xk : Raíz aproximada de Ax = b k = 0; xk = zeros(size(b)); xk1 = xk; PARAR = 0; while ~PARAR z = xk; for i=1:n J = [1:i-1,i+1:n]; z(i) = (b(i)-A(i,J)*z(J))/A(i,i); end xk1 = z; PARAR = norm(xk1-xk) err norm(A*xk1-b) tol; xk = xk1; k = k + 1; 15 15
  • 16. A. Canhoa Q. end end A = [−6, 1, −2, 2; 2, 7, −1, −2; 3, −2, 18, −10; −1, −2, 3, 10]; b = [−4; 6; −1; 10]; n = 4; err = 1e−13; tol xk = 1.036450477626949 0.9605329311211662 0.512820512820514 1.141905480140774 k = 17 Se obtiene la aproximación x =     x1 x2 x3 x4     :=     1,036450477626949 0,9605329311211662 0,512820512820514 1,141905480140774     . 16 16