Metodos Iterativos para Sistemas de Ecuaciones Lineales PDF
Metodos Iterativos para Sistemas de Ecuaciones Lineales PDF
Metodos Iterativos para Sistemas de Ecuaciones Lineales PDF
15 mm 15 mm
Dirigido por
Domingo Hernández Abreu
Agradecimientos
Resumen
In this project several iterative methods are studied to solve linear systems of
equations. First, a brief introduction about the direct methods are included.
Next, the classic iterative methods of Jacobi and Gauss-Seidel are considered.
A convergence analysis focusing on strictly diagonally dominant and irreducibly
diagonally dominant matrices is presented. Likewise, the relaxation method is
considered by studying its convergence as a function of the relaxation parame-
ter, specifically, for consistently ordered matrices. Also, other classes of iterative
methods based on Krylov subspaces are introduced: the Conjugate Gradient met-
hod, for symmetric and positive definite matrices, and the generalized minimal
residual method for any nonsingular matrix. Finally, some examples are illus-
trated comparing the different methods according to their CPU time, error and
number of iterations for linear systems arising from the spatial discretization of
diffusion-convection-reaction partial differential equations with constant coeffi-
cients.
Agradecimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
Resumen/Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
3. Ilustración Numérica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.1. Aplicación a la discretización espacial de EDPs . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Bibliografı́a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Póster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
1
Métodos iterativos básicos
1.1. Introducción
A lo largo de este trabajo estudiaremos diferentes métodos para resolver grandes siste-
mas lineales de ecuaciones
Ax = b con A ∈ RN×N regular, b ∈ RN , (1.1)
o bien, en forma desarrollada
N
X
akj xj = bk , k = 1, . . . , N,
j=1
con x∗ = A−1 b ∈ R solución única. Mediante métodos directos se obtiene la solución exacta
en un número finito de pasos. El método directo más clasico es el método de la Eliminación
Gaussiana, el cual consiste en descomponer la matriz A en el producto LU donde L es una
matriz triangular inferior y U es matriz triangular superior, de modo que el sistema Ax = b
resulta equivalente a dos sistemas triangulares Ly = b y U x = y que a su vez se resuelven por
sustitución hacia delante y hacia atrás. En [3, Cap.3-4] pueden encontrarse diversos resultados
que permiten garantizar la existencia de una descomposición LU bajo condiciones adecuadas.
En particular, de [3, p.144], si det(A(1 : k, 1 : k)) 6= 0 para k = 1, . . . , N , entonces existe una
única descomposición A = LU , con lii = 1, 1 ≤ i ≤ N .
Por otra parte, si A es una matriz simétrica y definida positiva, es decir, A> = A y
w> Aw > 0 para todo w ∈ RN \{0}, entonces A se puede factorizar de forma única según la
descomposición de Cholesky como A = LL> donde L es una matriz triangular inferior con
elementos diagonales positivos [3, p.163]. Por tanto, determinar la solución del sistema Ax = b
equivale a resolver dos sistemos triangulares Ly = b y L> x = y.
Tanto la descomposición LU como la de Cholesky requieren O(N 3 ) operaciones.
Otro tipo diferente de descomposición para una matrix rectangular A se denomina
descomposición QR, que consiste en factorizar A ∈ RM ×N en un producto de una matriz
ortogonal Q ∈ RM ×M y una matriz triangular R ∈ RM ×N , (ver [3, p.245]). Recordemos que
una matriz Q ∈ RM ×M se dice ortogonal si QQ> = Q> Q = I. Además, la matriz rectangular
R ∈ RM ×N se dice triangular superior si Rij = 0, para todo i > j.
En particular, esta descomposición QR se utiliza para hallar las soluciones de proble-
mas de mı́nimos cuadrados. Además, el sistema de ecuaciones normales A> Ax = A> b puede
simplificarse en dos sistemas más sencillos y = Q> b y Rx = y, ya que 0 = A> (b − Ax) =
R> Q> (b − Ax) = R> (Q> b − Rx).
Finalmente, el calculo de las matrices Q y R puede realizarse en O(M N 2 ) operaciones
por muchos algoritmos entre los que destacaremos: el método de Householder que podemos
encontrar en [3, p.248], una modificación del método de ortonormalización de Gram-Schmidt
y el método de rotaciones de Givens que veremos en el Capı́tulo 2.
A continuación introducimos un ejemplo donde se refleja el alto coste computacional
que pueden conllevar los métodos directos.
2 Ana Gómez Pérez
Ejemplo 1.1. El problema de Dirichlet para la ecuación de Poisson con condiciones de frontera
homogéneas en el cuadrado unidad,
∂2u ∂2u
− 2 − =f en Ω := (0, 1)2 ,
∂x ∂y 2 (1.2)
u= 0 en Γ := ∂[0, 1]2 ,
donde f : [0, 1]2 −→ R es una función continua y la función u : [0, 1]2 −→ R debe determinarse.
Asumimos que el problema (1.2) tiene una única solución u que es continua y dos veces
continuamente diferenciable en Ω.
Consideramos una malla de puntos equidistantes que abarque [0, 1]2
1
xk = kh, yj = jh, k, j = 0, 1, ..., M + 1, h= (1.3)
M +1
2 2
Con respecto a la malla (1.3), la ecuación de Poisson − ∂∂xu ∂ u
2 − ∂y 2 = f se considera
solamente en el interior, con puntos (xk , yj ), 1 ≤ k, j ≤ M , mientras que las derivadas parciales
se aproximan por diferencias centrales de segundo orden,
siempre que u ∈ C 4 ([0, 1]2 ). Truncando los términos O(h2 ) en (1.4), se obtiene el sistema lineal
de N = M 2 ecuaciones lineales
con A(1) = T ridiag(−1, 4, −1). En la Sección 3.1 se dará una expresión aún más compacta
para la matriz A usando el denominado producto de Kronecker de matrices.
En concreto, las ecuaciones (1.5) se escriben en forma matricial de la siguiente manera,
Métodos iterativos para sistemas de ecuaciones lineales 3
4 −1 −1
U1,1 f1,1
−1 . . . .. ..
. . . .
. .
.. .. ..
. .
. . −1 . .
.
.
. ..
−1 4 −1
U f
.. M,1 M,1
.
−1 4 −1 U
1,2
f
1,2
. .
.. . .. ..
−1 . .
. .
. . .
.
.
.. .. .. ..
. .
. .
. . . −1 .
. .
−1 −1 4
..
UM,2 fM,2
.
.
. = h2 ..
.. .. . .
. . −1
.. ..
. .
.. .. ..
. . . . .
. .
.. .. ..
. .
. . .
.
.
. .
.. .. −1 . .
. .
U1,M f1,M
−1 4 −1
.
.
.. ..
.. .. ..
. −1 . .
.
.
.
.
.. .. ..
. .
. . . −1 UM,M fM,M
−1 −1 4
| {z }
:=A
mı́nimo generalizado para cualquier matriz regular. Por último se presentarán sus variantes
precondicionadas para una mayor eficiencia de los métodos.
Finalmente, en la Sección 3 se realizarán diferentes ejemplos en Matlab comparando los
tiempos de computación, los errores y el número de iteraciones de los métodos tanto directos
como iterativos.
Observación 1.3. Durante las siguientes secciones haremos uso de la siguiente notación. Sea
A = (aij ) ∈ RN ×N y v ∈ RN , definimos las siguientes normas.
La p-norma de la matriz A es
kAkp := máx kAvkp , 1≤p≤∞ (1.6)
kvkp =1
!1/p
n
|vj |p
P
donde la p-norma del vector v es kvkp := , 1 ≤ p < ∞, y kvk∞ = máx |vj |.
j=1 1≤j≤n
N
P N
P
Recordemos kAk1 := máx |aij | y kAk∞ := máx |aij |.
1≤j≤N i=1 1≤i≤N j=1
Por otra parte, sean λ1 , ..., λN autovalores de A, denominamos al radio espectral de A
como
ρ(A) := máx |λi |.
i=1,...,N
x = Hx + z (1.7)
donde H ∈ RN ×N es una matriz de iteración adecuada y z ∈ RN un vector fijo. Luego, lo
único que necesitamos exigir es que la solución x∗ ∈ RN sea el único punto fijo de (1.7). La
iteración del método del punto fijo que corresponde a (1.7) viene dada por
Definición 1.4. El método de punto fijo (1.8) para determinar la solución x∗ ∈ RN de (1.1)
es convergente si, para cualquier valor inicial x(0) ∈ RN , se cumple
lı́m kx(n) − x∗ k = 0
n→∞
donde k · k : RN → R es una norma vectorial cualquiera en RN . En caso de que el método no
converja, entonces se dice divergente.
Teorema 1.6. ([5, p.256]) Para una matriz A ∈ RN ×N , los siguientes enunciados son equi-
valentes:
1. σ[A] ⊂ {λ ∈ C : |λ| < 1}.
2. Existe una norma vectorial k · k : RN → R tal que kAk < 1.
∞
Aν es convergente.
P
3. La serie
ν=0
4. Aν → 0 para ν → ∞.
P∞
Si se cumple al menos una de las anteriones condiciones, entonces (I − A)−1 = ν=0 Aν .
A efectos de mejorar la tasa de convergencia del método (1.8) interesa que ρ(H) sea lo
menor posible. Esta afirmación está justificada por los dos resultados siguientes.
Lema 1.8. Para toda matriz H ∈ RN ×N y para cada ε > 0 existe una norma vectorial
k · k : RN → R tal que kHk ≤ ρ(H) + ε.
1
Demostración. Definiendo a := ρ(H)+ε
obtenemos ρ(aH) = aρ(H) < 1 y, por el Teorema 1.6,
existe una norma vectorial k · k :R →
N R tal que kaHk < 1. Luego, kHk ≤ ρ(H) + ε.
Como una consecuencia directa del Lema 1.8 y la Observación 1.5 obtenemos el siguiente
A continuacion, estudiaremos un teorema que nos proporciona una cota del error.
Teorema 1.10. Sea H ∈ RN ×N una matriz arbitraria. Para cada ε > 0, existe una norma
vectorial k · k : RN → R tal que el método iterativo (1.8) cumple
Proposición 1.14. Una matriz tridiagonal es irreducible si y sólo si cada uno de sus elemen-
tos no diagonales son distintos de cero.
Ejemplo 1.18. La matriz correspondiente al Ejemplo 1.1 es una matriz irreduciblemente dia-
gonal dominante por filas y columnas.
Teorema 1.19. Si una matriz B = (bkj ) ∈ RN ×N es irreduciblemente diagonal dominante,
entonces es regular.
Demostración. Presentamos la prueba para el caso de dominancia diagonal por filas. Para
el caso por columnas es análoga. Por reducción al absurdo, supongamos que B no es una
matriz regular. Entonces existe un vector x ∈ RN , x 6= 0, tal que Bx = 0. Definimos los
conjuntos de ı́ndices K := {k / |xk | = kxk∞ }, J := {k / |xk | < kxk∞ }. Es claro que K ∪ J =
{1, ..., N }, K ∩ J = ∅ y K =6 ∅. Entonces, también J =
6 ∅, pues de lo contrario |xk | = kxk∞ se
cumplirı́a para todos los ı́ndices k, y entonces, dado que Bx = 0,
N
X
|bkk ||xk | ≤ |bkj ||xj |, k = 1, 2, ..., N
j=1
j6=k
producirı́a una contradicción con la segunda condición de (1.11). Ahora, como B es irreducible,
existen k∗ ∈ K, j∗ ∈ J , con bk∗ j∗ 6= 0. Luego,
N
X |xj |
|bk∗ k∗ | ≤ |bk∗ j | ,
j=1
|xk∗ |
j6=k∗
|xj∗ |
siendo |bk∗ j∗ | 6= 0, < 1 y |xj | ≤ |xk∗ | = kxk∞ para j ∈ {1, ..., N }. Luego,
|xk∗ |
N N
X |xj | X
|bk∗ j | < |bk∗ j |,
j=1
|xk∗ | j=1
j6=k∗ j6=k∗
a11 . . . . . . a1N a11 0 0 0 0 a12 . . . a1N
. .. ..
. .. .. . .. ..
. ..
. . .
. a21
. .
= + +
.. .. .. . . .. ..
.. ..
. . . . . . . . aN −1N
aN 1 . . . . . . aN N 0 aN N aN 1 . . . aN N −1 0 0 0
| {z } | {z } | {z } | {z }
:=A :=D :=L :=R
(1.13)
Definición 1.20. Sea una matriz A = (akj ) ∈ RN ×N regular tal que akk 6= 0 para k =
1, ..., N . Dado un vector inicial x(0) ∈ RN , el método de Jacobi para el sistema Ax = b es:
N
(n+1) 1 X (n)
xk = bk − akj xj , k = 1, ..., N, n ≥ 0. (1.14)
akk j=1
j6=k
El siguiente teorema da una condición suficiente para la convergencia del método de Jacobi.
N
P
2. A es estrictamente diagonal dominante por columnas: |akj | < |ajj |, j = 1, 2, ..., N.
k=1
k6=j
Demostración. Cada una de las condiciones implica directamente que el método de Jacobi es
factible, esto es que akk 6= 0 para k = 1, ..., N .
i) La primera condición equivale a decir que kHJ k∞ < 1, lo cual implica ρ(HJ ) < 1.
Métodos iterativos para sistemas de ecuaciones lineales 9
Demostración. Presentamos la prueba para el caso de dominancia diagonal por filas. Para el
caso por columnas la prueba es análoga. Primero veamos que el método está bien definido. Por
reducción al absurdo, supongamos que existe algún elemento nulo en la diagonal de la matriz
A. Por la Definición 1.16, entonces todas las entradas de la misma fila serı́an iguales a cero,
pero esto contradice que A sea irreducible.
Ahora, para ver la convergencia del método, tenemos que ver que ρ(HJ ) < 1, o lo que es
lo mismo, que para todo λ ∈ C con |λ| ≥ 1, la matriz HJ − λI es regular. Por el Teorema 1.19,
es suficiente ver que HJ − λI es una matriz irreduciblemente diagonal dominante. Pongamos
HJ − λI := (bkj ) y veamos que cumple las condiciones de la Definición 1.16:
(i) Como A es una matriz irreducible, de (1.13) y el Lema 1.15, concluimos que A+D = L+R,
HJ = −D−1 (L + R) y HJ − λI son irreducibles.
(ii) Además, se tiene que:
N N N
X X X |akj |
|akj | ≤ |akk | ⇒ |bkj | = ≤ 1 ≤ |λ| = |bkk |, k = 1, ..., N.
j=1 j=1 j=1
|akk |
j6=k j6=k j6=k
N
P
Por otra parte, existe k ∈ {1, ..., N } tal que |akj | < |akk |. Luego, para este k
j=1
j6=k
N N
X X |akj |
|bkj | = < 1 ≤ |λ| = |bkk |.
j=1 j=1
|akk |
j6=k j6=k
Definición 1.24. Sea A = (akj ) ∈ RN ×N una matriz regular donde akk 6= 0 para k = 1, ..., N .
Dado un vector inicial x(0) ∈ RN , el método de Gauss-Seidel para la solución del sistema lineal
de ecuaciones Ax = b viene dado por:
10 Ana Gómez Pérez
k−1 N
(n+1) 1 X (n+1)
X (n)
xk = bk − akj xj − akj xj , k = 1, ..., N, n ≥ 0.
akk j=1 j=k+1
Demostración. Es trivial.
Lema 1.28. Sean matrices S, T ∈ RN ×N tales que |S| ≤ T y ρ(T ) < 1. Entonces
I − S es regular y |(I − S)−1 | ≤ (I − T )−1 .
k1
k1
k1
P
P
P
Demostración. Por el Lema 1.27, obtenemos que
Sj
≤
|S|j
≤
T j
.
j=k0
j=k0
j=k0
∞ ∞ ∞
k1 ∞
P
j Sj
P
Puesto que ρ(T ) < 1, tenemos que
T
−→ 0 para k0 ≤ k1 , k0 , k1 → ∞. Luego,
j=k0
j=0
∞
∞
es convergente. Por lo tanto, por el Teorema 1.6, I −S es regular y (I −S)−1 = S j . Además,
P
j=0
|(I − S)−1 | ≤ ∞
P j
P∞ j −1 .
j=0 |S| ≤ j=0 T = (I − T )
Una condición preliminar que es suficiente para la convergencia del método de Gauss-
Seidel viene dada por el siguiente teorema.
Teorema 1.29. Para toda matriz estrictamente diagonal dominante por filas A ∈ RN ×N se
cumple que kHGS k∞ ≤ kHJ k∞ < 1.
Por lo tanto,
|HGS | = | − (D + L)−1 R|
= | − (I + D−1 L)−1 D−1 R)|
≤ |(I + D−1 L)−1 ||D−1 R)|
≤ (I − |D−1 L|)−1 |D−1 R)|
donde la última desigualdad sigue del Lema 1.28, con S = −D−1 L y T = | − D−1 L|. Ahora
de (1.16) obtenemos que:
|HGS | ≤ (I − |D−1 L|)−1 (|HJ | − I) + I − |D−1 L|
−1 −1
= I + (I − |D L|) (|HJ | − I).
Luego,
|HGS | e ≤ e + (I − |D−1 L|)−1 (|HJ |e − e).
−1
NP
Como (I − |D−1 L|)−1 = |D−1 L|j ≥ I y |HJ |e ≤ kHJ k∞ e, con kHJ k < 1, sigue que
j=0
" #
−1
NP
|HGS | e ≤ e + −1 j
|D L| (kHJ k∞ − 1) e ≤ kHJ k∞ e.
j=0
Observación 1.31. De los Teoremas 1.29 o 1.30 no se deduce que ρ(HGS ) ≤ ρ(HJ ). De hecho,
presentamos el siguiente contraejemplo de matriz estrictamente diagonal dominante, tanto por
filas como por columnas, en el que ρ(HJ ) = 0 y 0 < ρ(HGS ) < 1, para todo a ∈ −1 2
, 12 , con
a 6= 0.
1 a −a
a
Ejemplo 1.32. Sea A = 2 1 a con a ∈ − 21 , 21 de modo que A es estrictamente dia-
a
− 2 −a 1
gonal dominante por filas y por columnas. Además, si |a| = 12 , entonces A es irreduciblemente
diagonal dominante. Para esta matriz se tiene que las matrices de iteración del método de
Jacobi y de Gauss-Seidel, respectivamente, son
12 Ana Gómez Pérez
0 −a a
0 −a a
a a2 a2
HJ = − 2 0 −a , HGS = 0 −a − 2 .
2
a a2 2
2
a 0 a a a
0 −a( 2 − 2 ) a2 + ( 2 − 2 )
Por tanto, calculando sus correspondientes radios espectrales, tenemos que
1 n √ p √ p o
0 = ρ(HJ ) < ρ(HGS ) = máx 0, a(−a2 − a 8 + a3 , a(−a2 + a 8 + a3 < 1,
4
1 1
para todo a ∈ − 2 , 2 , a 6= 0.
Otra condición suficiente menos restrictiva para la convergencia del método de Gauss-
Seidel se da en el siguiente
Teorema 1.33. Sea A ∈ RN ×N matriz irreduciblemente diagonal dominante por filas o co-
lumnas. Entonces el método de Gauss-Seidel es convergente.
Demostración. Consideramos el caso de dominancia diagonal por filas. El caso por columnas
es análogo.
Sea A = (akj ) ∈ RN ×N una matriz irreduciblemente diagonal dominante por filas.
Se garantiza que el método de Gauss-Seidel está bien definido tal como demostramos en el
Teorema 1.23.
Para ver la convergencia del método de Gauss-Seidel necesitamos demostrar que
ρ(HGS ) < 1, o lo que es lo mismo, que para todo λ ∈ C con |λ| ≥ 1, la matriz HGS − λI es
regular. Observemos que HGS − λI = −(D + L)−1 (λD + λL + R).
Sea λ ∈ C con |λ| ≥ 1 y λ 6= 0, veamos que M = (λD + λL + R) es regular. Por el
Teorema 1.19, es suficiente ver que M es irreduciblemente diagonal dominante por filas.
1. Por el Lema 1.15, concluimos que M es irreducible.
2. Ahora, veamos que M satisface las condiciones (1.11):
k−1
X N
X N
X
|λakj | + |akj | ≤ |λ| |akj | ≤ |λ||akk |, k = 1, ..., N. (1.17)
j=1 j=k+1 j=1
j6=k
Estas dos últimas expresiones permiten interpretar ambos métodos en términos del vector
residual Ax(n) − b.
Observación 1.36. Para el método de Jacobi, se puede definir el método de relajación análo-
gamente como x(n+1) := (1 − w)x(n) + wb x(n+1) con xb(n+1) = x(n) + D−1 (b − Ax(n) ). No
obstante, nuestro análisis se centrará en el método de relajación asociado a Gauss-Seidel. Se
puede encontrar un análisis de convergencia para el método de relajación de Jacobi en [4,
p.360-362].
En forma matricial, x(n+1) = (D + wL)−1 wb + ((1 − w)D − wR) x(n) , n ≥ 0, con matriz
de iteración:
H(w) = (D + wL)−1 ((1 − w)D − wR) . (1.19)
Podemos observar que para w = 0, H(0) = I; mientras que para w = 1 el método de relajación
coincide con el método de Gauss-Seidel, esto es, H(1) = HGS .
Demostración. Sean λ1 , ..., λN ∈ C los autovalores de H(w), contando con sus multiplicidades.
De (1.19), sigue que
N
Y
λk = det(I − wD−1 L)−1 det((1 − w)I − wD−1 R) = (1 − w)N ,
k=1
Una condición suficiente para la convergencia del método de relajación viene dada por el
siguiente teorema.
Teorema 1.41 (Ostrowski, Reich). Sea A ∈ RN ×N una matriz simétrica y definida (po-
sitiva o negativa). El método de relajación es convergente para cada 0 < w < 2, es decir,
ρ(H(w)) < 1 para 0 < w < 2.
Ahora consideraremos una clase amplia de matrices para la cual el radio espectral de
la matriz de iteración H(w) puede expresarse en función del parámetro w y ası́ poder elegirlo
de modo óptimo.
Definición 1.42. Sea A = (akj ) ∈ RN ×N una matriz con la descomposición (1.13) y akk 6= 0
para todo k. Se dice que A es una matriz consistentemente ordenada si los autovalores de la
matriz
J (α) := αD−1 L + α−1 D−1 R, α ∈ C, α 6= 0, (1.21)
son independientes de α, es decir, si se cumple que σ[J (α)] = σ[J (1)] para todo α ∈ C, α 6= 0.
Métodos iterativos para sistemas de ecuaciones lineales 15
Observación 1.43. Para una interpretación del concepto de matriz consistentemente ordenada
en términos de grafos remitimos al lector en [7, Sec. 4.2.5].
Demostración. Por (1.21), J (1) = −HJ y J (−1) = HJ . La prueba sigue del hecho de que
J (1) y J (−1) tienen los mismos autovalores.
Más aún, sean pGS (x) = det(xI − HGS ) y pJ (x) = det(xI − HJ ) los polinomios caracterı́sticos
de las matrices de iteración de Gauss-Seidel y Jacobi, respectivamente. Poniendo λ = µ2 ,
µ2 I − HGS = µ(I + D−1 L)−1 µI + D−1 (µL + µ−1 R) , para todo µ ∈ R, µ 6= 0.
De lo anterior, podemos deducir que para una matriz consistentemente ordenada, tanto
el método de Jacobi como el de Gauss-Seidel son, o bien ambos convergentes o bien ambos
divergentes. En caso de convergencia, se puede esperar que el método de Gauss-Seidel converja
el doble de rápido que el método de Jacobi.
A continuación, damos una forma explı́cita para ρ(H(w))) bajo condiciones adecuadas
para la matriz A. En este caso se puede determinar explı́citamente un valor óptimo para el
parámetro de relajación.
Teorema 1.48. Sea A ∈ RN ×N una matriz consistentemente ordenada tal que σ [HJ ] ⊂
(−1, 1). Entonces,
q 2
1
4
wρJ + w2 ρ2J − 4(w − 1) , 0 < w ≤ w∗ ,
ρ(H(w)) = (1.22)
(w − 1), w∗ ≤ w < 2.
2
siendo w∗ := q y ρJ := ρ(HJ ).
1+ 1 − ρ2J
1
ρ(H(ω))
0.5
ω*−1
0
0 0.5 1 ω* 1.5 2
ω
Figura 1.1. Radio espectral de la matriz H(ω) para ρJ = 00 8, con valor óptimo del parámetro
de relajación ω ∗ = 10 25.
Demostración (del Teorema 1.48). Sea λ ∈ σ [H(w)]. Por el Teorema 1.45, esto equivale a
poner (λ + w − 1)2 = λw2 µ2 , para algún µ ∈ σ [HJ ] ⊂ (−1, 1). O bien,
λ2 + λ 2(w − 1) − w2 µ2 + (w − 1)2 = 0.
Métodos iterativos para sistemas de ecuaciones lineales 17
r
w2 µ2 w 2 µ2
Entonces, λ = −(w − 1) + ± w|µ| − (w − 1).
2 4
Por la Observación 1.49 apartado (ii),
w 2 µ2 2
− (w − 1) ≥ 0 ⇐⇒ w ≤ p .
4 1 + 1 − µ2
2
Por tanto, en primer lugar, si p < w(< 2), entonces λ ∈ C\R, w > 1 y
1+ 1 − µ2
2
w2 µ2
2 2
w µ
|λ|2 = −(w − 1) + + w2 µ2 − (w − 1) (−1) = (w − 1)2 .
2 4
Luego, |λ| = w − 1.
2
En segundo lugar, si 0 < w ≤ p , entonces λ ∈ R y se puede expresar como
1 + 1 − µ2
2
λ = 14 w|µ| ± w2 µ2 − 4(w − 1) ≥ 0. Como la determinación positiva provee un autovalor
p
2
mayor y como la función λ(µ) = 14 w|µ| + w2 µ2 − 4(w − 1) es creciente para µ ≥ 0 ( con
p
4(w−1)
µ2 ≥ w2
) se deduce, tomando µ = ρJ , donde ρJ ∈ σ [HJ ], que
( q
1
4
(wρJ + w2 ρ2J − 4(w − 1), 0 < w ≤ w∗ ,
ρ(H(w)) =
(w − 1), w∗ ≤ w < 2.
Finalizamos este capı́tulo con dos ejemplos de matrices consistentemente ordenadas de
interés en la discretización espacial de ecuaciones en derivadas parciales.
Tomando
α0 I
α1 I
Sα =
..
.
αM −1 I
sigue que
0 D1−1 C1
D2−1 B1 0 D2−1 C2
..
−1
Sα J (α)Sα = D3−1 B2 0 . = J (1).
.. .. −1
. . DM −1CM −1
−1
DM BM −1 0
Por lo tanto, J (1) y J (α) son semejantes para todo α 6= 0 y por lo tanto, tienen los mismos
autovalores.
Ejemplo 1.51. Sea A la matriz tridiagonal por bloques
B b1 D
.. ..
a1 D
. .
A= ∈ RN ×N
.. ..
0 . . bM −1 D
aM −1 D B
donde D = diag(b11 , ..., bKK ) es una matriz diagonal siendo bkk 6= 0 los elementos diagonales
de una matriz B ∈ RK×K consistentemente ordenada. Con la descomposición B = D + L + R,
−1
por (1.21) existe una matriz de paso Sα tal que J (α) = Sα J (1)Sα . Veamos que A también
es consistentemente ordenada.
Sean A = D b +L b+R b y Jb(α) = αD b+ 1D
b −1 L b −1 R,
b con
α
L R b1 D
D a1 D L R b2 D
D
.. .. ..
D
b =
.
, L
b =
a2 D .
y R
b =
. . .
..
.. .. ..
D . . . bM −1 D
aM −1 D L R
0
α Sα
α1 Sα
−1
Tomando S bα := , sigue usando Sα J (1)Sα = J (α) que
. .
.
αM −1 Sα
1
J (α) α b1 I
αa1 I J (α) 1 b2 I
α
−1
.. ..
bα Jb(1)Sα
S =
αa2 I . . = Jb(α).
. .. . .. 1
b I α M −1
αaM −1 I J (α)
Por lo tanto, Jb(1) y Jb(α) son semejantes para todo α 6= 0 y A es consistentemente ordenada.
Inductivamente este ejercicio nos permite ver que, en particular, la discretización espa-
cial de la ecuacion de Laplace (1.1) en cualquier dimensión mediante diferencias centrales de
segundo orden produce sistemas lineales con matrices consistentemente ordenadas.
2
Métodos basados en subespacios de Krylov
Teorema 2.8. Sea A ∈ RN ×N una matriz simétrica y definida positiva. Para cada n ≥ 1, el
método residual ortogonal (2.4) admite solución única xn y
kxn − x∗ kA = mı́n kx − x∗ kA , n = 1, 2, . . . , (2.5)
x∈Dn
m−1
X
>
Axn − b ∈ Dn ⇔ αj hAdj , dk i2 = hb, dk i2 , k = 0, . . . , m − 1 (2.6)
j=0
El sistema lineal (2.6) se reduce a un sistema diagonal en el caso de que los vectores
d0 , . . . , dm−1 formen una base ortogonal de Dn .
Demostración. Por el Teorema 2.8 con m = n, dado que los vectores d0 , . . . , dn−1 son ortogo-
nales respecto de h·, ·iA , obtenemos
n−1
X hb, dj i2
xn = αj dj con αj = , 0 ≤ j ≤ n − 1.
j=0
hAdj , dj i2
Definición 2.11. Dada una matriz A ∈ RN ×N simétrica y definida positiva, el método del
gradiente conjugado (GC) es el método (2.4) siendo Dn = Kn (A, b) dados por (2.1) para
n = 0, 1, . . .
Observación 2.16. Otra forma de interpretar el método del Gradiente Conjugado es mediante
las ecuaciones normales del problema de mı́nimos cuadrados (2.5). Sea A ∈ RN ×N simétrica
y definida positiva y b ∈ RN . Veamos que:
24 Ana Gómez Pérez
Q
(i) Para n = 1, . . . , n∗ se cumple que xn = qn (A)b y rn = −pn (A)b para cierto qn ∈ n−1
y pn (t) = 1 − tqn (t).
En efecto, sea xn ∈ Kn (A, b) = span b, Ab, . . . , An−1 b con Axn − b = rn ∈ Kn (A, b)⊥ .
n−1 n−1
cj Aj b = qn (A)b con qn (t) = cj tj ∈ n−1 . Además, rn = Axn −
P P Q
Entonces xn =
j=0 j=0
" #
n−1
j
P
b=− I −A cj A b = −pn (A)b con pn (t) = 1 − tqn (t).
j=0
n−1
cj tj donde el vector (c0 , . . . , cn−1 )> ∈ Rn es la solución del
P
(ii) Se cumple que qn (t) =
j=0
sistema lineal:
b> Ab b> A2 b . . . b > An b c0 b> b
b> A2 b b> A3 b ... b A> n+1 >
b c1 b Ab
. = . (2.12)
. .. .. .. ..
.. . . . .. .
b> An b b> An+1 b . . . b> A2n−1 b cn−1 b> An−1 b
En efecto, sabemos que xn resuelve el problema de mı́nimos cuadrados kxn − x∗ kA =
mı́n kx − x∗ kA donde Kn (A, b) es un subespacio vectorial de dimensión finita de
x∈Kn (A,b)
R , h·, ·iA . Luego, por el estudio de mejor aproximación en espacios pre-Hilbert, existe
N
un único xn ∈ Kn (A, b) tal que kxn − x∗ kA = mı́n kx − x∗ kA .
x∈Kn (A,b)
(2.12).
Q
Observación 2.21. Observar que el polinomio (2.13) es único
Q pues si existe otro q ∈ ν , q 6= p,
polinomio mónico tal que q(A)b = 0, entonces p − q ∈ ν−1 y (p − q)(A)b = 0. Luego, si α
es el coeficiente director de p − q, el polinomio r = p−q
α
es mónico, verifica que r(A)b = 0 y su
grado es menor que ν, lo cual es un absurdo.
Según el Teorema 2.22, el método del Gradiente Conjugado puede interpretarse como
un método directo puesto que siempre se obtendrá la solución exacta xn∗ = x∗ para Ax =
b después de un número finito de pasos si se trabaja en aritmética infinita. No obstante,
dicho número de iteraciones puede ser considerablemente grande. Por esta razón, usaremos
los siguientes resultados para calcular estimaciones para el error del método del Gradiente
Conjugado basándonos en la propiedad de optimalidad dada en (2.5). Previamente enunciamos
el célebre teorema espectral para matrices simétricas.
Lema 2.24. Sea A ∈ RN ×N una matriz simétrica y definida positiva, con autovalores
N
{λj }N N
j=1 y autovectores correspondientes ortonormales {vj }j=1 ⊂ R . Si x =
N cj vj ∈ RN ,
P
j=1
entonces para todo polinomio p:
1/2 1/2
XN N
X
2 2
kp(A)xk2 = cj p(λj ) , kp(A)xkA = c2j λj p(λj )2 . (2.14)
j=1 j=1
N
Demostración. Puesto que Aν x = cj λνj vj , ν = 0, 1, . . ., y dado que {vj }N
j=1 ⊂ R
N es un
P
j=1
sistema ortogonal respecto de h·, ·i2
26 Ana Gómez Pérez
1/2
N N N
1/2
X X X
kp(A)xk2 = h ck p(λk )vk , cj p(λj )vj i2 = c2j p(λj )2 .
k=1 j=1 j=1
De manera análoga,
1/2
N N N
1/2
X X X
kp(A)xkA = h ck λk p(λk )vk , cj p(λj )vj i2 = c2j λj p(λj )2 .
k=1 j=1 j=1
!1/2 !1/2
N N
c2j c2j λj
P P
Finalmente, con p(t) = 1 en (2.14) sigue que kxk2 = y kxkA = .
j=1 j=1
De aquı́ se obtiene (2.15) dado que mı́n λj ≤ λj ≤ máx λj para j = 1, . . . , N .
j=i,...,N j=i,...,N
El siguiente teorema da una primera estimación de convergencia del método del Gra-
diente Conjugado.
kxn − x∗ kA ≤ ı́nf
Q sup |p(λ)| kx∗ − x0 kA , n = 0, 1, . . . , n∗ .
p∈ n λ∈σ[A]
p(0)=1
Q
Demostración.QPara cada polinomio p ∈ n con p(0) = 1 definimos el polinomio q(t) :=
(1 − p(t))/t ∈ n−1 y el vector x := q(A)b ∈ Kn (A, b). Entonces,
Luego,
Q la anterior desigualdad también se cumple para el ı́nfimo entre todos los polinomios
p ∈ n con p(0) = 1.
El Teorema 2.25 y el siguiente lema permitirán dar una cota de error más práctica.
Lema 2.26. Sean Tn (t) = cos(n arc cos t), para t ∈ [−1, 1] y n ≥ 0, los polinomios de Chebys-
hev de primera especie. Entonces,
1 h p n p n i
Tn (t) = t + t2 − 1 + t − t2 − 1 , para |t| ≥ 1, y
2
√ !n
k+1 1 k+1
Tn ≥ √ , para k ∈ R, k ≥ 1. (2.16)
k−1 2 k−1
1 1 h p n p n i
Tn (t) = [(cos θ + i sen θ)n + (cos θ − i sen θ)n ] = t + i 1 − t2 + t − i 1 − t2 .
2 2
Puesto que para |t| ≥ 1, la expresión
1
h √ n √ n i h √ n √ n i
2
t + i 1 − t2 + t − i 1 − t2 = 12 t + t2 − 1 + t − t2 − 1
n √ k
n n−k
t2 − 1
P
= k
t
k=0
k par
es un polinomio en t que coincide con Tn (t) en [−1, 1], debe tenerse que
1 h p n p n i
Tn (t) = t + t2 − 1 + t − t2 − 1 , |t| ≥ 1.
2
√ √
k+1
Finalmente, dado k > 1 y t := k−1 , se tiene que t ± t2 − 1 = √k±1 y
k∓1
√ √ !n
√
k+1
√k+1 n
k−1 n
Tn = 1
+ √ ≥ 1 √k+1 .
k−1 2 k−1 2 k−1
k+1
| {z }
≥0
M + m −1 kA + 1 −1
≤ 2γ n .
máx |p(t)| = Tn = T
n k −1
m≤t≤M M −m A
Aplicando el Teorema 2.25 sigue que kxn − x∗ kA ≤ 2γ n kx0 − x∗ kA . Finalmente, de (2.15)
obtenemos que
1 2γ n √
kxn − x∗ k2 ≤ √ kxn − x∗ kA ≤ √ kx0 − x∗ kA ≤ 2 kA γ n kx0 − x∗ k2 .
m m
Observación 2.29. Este teorema refleja que la convergencia del método GC puede verse ralen-
tizada si kA 1.
28 Ana Gómez Pérez
Observación 2.30. A diferencia del método GC para el caso simétrico definido positivo, el
método GCNR requiere otro producto matriz-vector A> rj para cada j ≥ 0. Sin embargo,
podemos evitar calcular la operación A> A que requiere un gran costo computacional.
Observación 2.31. (i) Como consecuencia directa del Teorema 2.8, se da la siguiente propiedad
minimal para las iteraciones del método GCNR:
kAxn − bk2 = mı́n kAx − bk2 .
x∈Kn (A> A,A> b)
Definición 2.32. Dada una sucesión de subespacios (2.3), el método del residual mı́nimo
consiste en hallar
)
xn ∈ D n
kAxn − bk2 = mı́n kAx − bk2 n = 1, 2, . . . (2.17)
x∈Dn
Observación 2.33 (Existencia y unicidad de aproximación con residual minimal). Para ver
que (2.17) tiene solución única, definimos Sn := ADn = {Ad / d ∈ Dn }. Claramente, Sn es un
subespacio de RN . Por la teorı́a de existencia y unicidad de mejor aproximación en espacios
pre-Hilbert aplicada a RN , h·, ·i2 con subespacio finitodimensional Sn , tenemos que existe
un único vector zn ∈ Sn tal que kzn − bk2 = mı́n kz − bk2 . Como A es una matriz regular,
z∈Sn
esto equivale a decir que existe un único xn ∈ Dn tal que kAxn − bk2 = mı́n kAx − bk2 .
x∈Dn
Observación 2.35. Observar que si A es simétrica y definida positiva, entonces el método GM-
RES implica que kxn − x∗ kA2 = mı́n kxn − x∗ kA2 por lo que se espera, en este caso, un
x∈Kn (A,b)
comportamiento similar al del método GC respecto al error con relación número de iteraciones.
Observación 2.36. El proceso de Arnoldi parará en la primera iteración tal que Avn ∈
span {v1 , . . . , vn }.
Observación 2.37. Si A es una matriz simétrica, entonces para k ≤ n − 2, hAvn , vk i2 =
hvn , Avk i2 = 0 ya que los vectores vn y vj son ortogonales para j = 0, . . . , n − 1 y Avk
es combinación lineal de {v1 , . . . , vk , vk+1 }. Luego, el proceso de Arnoldi se convierte en una
recursión a tres términos:
bn+1 := Avn − hAvn , vn i2 vn − hAvn , vn−1 i2 vn−1 ,
v n = 1, 2, . . .
Este caso especial del proceso de Arnoldi aplicado a matrices simétricas se llama proceso de
Lanczos.
El siguiente lema permite afirmar que el proceso de Arnoldi genera una base ortonormal
de los subespacios de Krylov Kn (A, b).
Lema 2.38. Los vectores v1 , v2 , . . . , vn∗ generados por el proceso de Arnoldi forman un sis-
tema ortonormal respecto del producto euclı́deo h·, ·i2 en RN y
span {v1 , . . . , vn } = span {v1 , . . . , vn−1 , Avn−1 } = Kn (A, b) para 1 ≤ n ≤ n∗ .
Demostración. La ortonormalidad de los vectores v1 , v2 , ..., vn∗ es inmediata por propia cons-
trucción, pues es claro que kvj k2 = 1 para 1 ≤ j ≤ n∗ , y si se asume que hvj , vk i2 = δjk para
1 ≤ j < k ≤ n, entonces dado k tal que 1 ≤ k ≤ n:
n
1 X j=k
hvn+1 , vk i2 = hAvn , vk i2 − hAvn , vk i2 hvj , vk i2 = 0.
kb
vn+1 k2 j=1
Además, por hipótesis de inducción, sabemos que v1 , . . . , vn ∈ Kn y Avn ∈ AKn ⊆ Kn+1 . Lue-
go, span {v1 , . . . , vn−1 , vn , vn+1 } ⊆ span {v1 , . . . , vn , Avn } ⊆ Kn+1 , siendo dim({v1 , . . . , vn+1 }) =
n + 1 y dim (span {v1 , . . . , vn , Avn }) ≤ n + 1, dim(Kn+1 ) ≤ n + 1. Luego, por un argumento
de dimensión, los tres subespacios son iguales.
Observación 2.39. Este lema nos permite afirmar que el número de iteraciones n∗ necesarias
para que el proceso de Arnoldi pare coincide con el menor valor n∗ tal que Kn∗ (A, b) =
Kn∗ +1 (A, b). Ası́ pues, en el caso de que A sea simétrica y definida positiva, el número de
iteraciones para alcanzar la convergencia con el método del Gradiente Conjugado y GMRES
coincide. En otro caso, el número de iteraciones de GMRES y GCNR no tiene porqué coincidir.
A continuación, presentamos dos ejemplos mediante los métodos GCNR y GMRES donde
observaremos, que dependiendo de las caracterı́sticas del sistema lineal, un método puede
converger con menos iteraciones que el otro.
Ejemplo 2.40. Sean ei es el i-ésimo vector canónico de RN ×N , 1 ≤ i ≤ N , y
e>
0 1 1 0
N
1 0 e1
> 0 .
N ×N .
A= . . = ∈R , b = . ∈ R , x∗ = . ∈ RN
N
.
.. .. .. .. 0
1 0 e>
N −1
0 1
de modo que x∗ es la única solución del sistema lineal Ax = b. Demostraremos que:
Métodos iterativos para sistemas de ecuaciones lineales 31
Tenemos que K1 (A> A, A> b) = K2 (A> A, A> b) = span {eN } y GCNR converge en una
iteración.
2. El método GMRES converge exactamente en N iteraciones.
Tenemos que b = e1 , Ab = e2 , A2 b = e3 ,..., AN −1 b = eN , AN b = e1 . Luego, Kj (A, b) =
span {e1 , . . . , ej } para 1 ≤ j ≤ N , y KN +1 (A, b) = KN (A, b). Luego, el método GMRES
converge en N iteraciones. Además, si j = 1, . . . , N − 1, entonces
j+1
q
X
mı́n kAx−bk2 = mı́n
λ k−1 e k − e1
= mı́n 1 + λ21 + . . . + λ2j = 1
x∈Kj (A,b) j
P
k=2
λ1 ,...,λ j ∈R
x= λk ek 2
k=1
Este ejemplo muestra una situación en la que el método GCNR converge en una itera-
ción mientras que el método GMRES requiere N iteraciones. A continuación, en el Ejemplo 2.42
ilustraremos la situación recı́proca. Antes estudiaremos una propiedad del rango de matrices
que nos será de utilidad en el resto del capı́tulo.
Lema 2.41. Sean M ∈ Rp×q y N ∈ Rq×r con rango(M ) = q (q ≤ p). Entonces,
rango(M N ) = rango(N ).
Observación 2.45. Observar que AVn∗ = Vn∗ Hn∗ implica que Vn>∗ AVn∗ = Hn∗ . Esto es, A es
semejante, por transformación ortogonal, a la matriz de Hessenberg cuadrada superior definida
en (2.20).
Teorema 2.46. Sean x1 , . . . , xn∗ ∈ RN las iteraciones del método GMRES aplicado al sis-
tema lineal Ax = b con A ∈ RN ×N matriz regular y vector b ∈ RN no nulo. Para cada
n = 1, . . . , n∗ , el problema de mı́nimos cuadrados
mı́n kHn z − cn k2 donde cn := kbk2 e1 , con e1 = (1, 0, . . . , 0)> ∈ Rmı́n{n+1,n∗ } ,
z∈Rn
Teorema 2.48. Para cada n ∈ {1, . . . , n∗ }, sea zn ∈ Rn es la única solución del problema de
mı́nimos cuadrados definido en el Teorema 2.46 con Hn = Qn Rn , donde Qn y Rn son las
matrices definidas en la Observación 2.47. Entonces,
−1 >
(i) zn = R In×b
n Q cn , donde In×bn es la matriz identidad rectangular de dimensión n × n b.
bn
n
(ii) kHn z − cn k2 = ρn siendo
Observación 2.49. El siguiente lema nos dice que las matrices superiores de Hessenberg Hn ,
para 1 ≤ n ≤ n∗ , se pueden factorizar como el producto de una matriz ortogonal y una
matriz triangular superior. Presentamos la prueba de este resultado por completitud en la
exposición, aunque se base meramente en un caso particular de la descomposición QR para
matrices rectangulares en general. En la prueba consideramos matrices de rotación de Givens:
Ii−1
a b ∈ Rn
b ×b
n
G(i, i + 1, θ) = con a = cos(θ), b = sin(θ), 1 ≤ i ≤ n
b − 1.
−b a
In
b −1−i
√
c 0 a b c r
Observar que dado 6= se obtiene = con r := c2 + s2 tomando
s 0 −b a s 0
c 0
a = rc y b = rs . Si = basta tomar a = 1, b = 0.
s 0
Lema 2.50. La matriz Hn (2.18)-(2.20) con 1 ≤ n ≤ n∗ , admite la descomposición Hn =
Qn Rn donde Qn y Rn son las matrices definidas en la Observación 2.47.
(0)
Demostración. Denotemos a la matriz Hessenberg como Hn := Hn . Para cada i ∈ {1, . . . , n}
definimos matrices de rotación de Givens Gi = G(i, i + 1, θi ) ∈ Rn
b ×b
n tales que
(i) (i−1) (i)
Hn := Gi Hn con Hn = 0.
i+1,i
(n)
Es directo comprobar que Rn := Hn = Gn Gn−1 . . . G1 Hn verifica que (Rn )i,j = 0 para
> −1
i > j. Además, puesto que Gi = Gi , 1 ≤ i ≤ n, definiendo la matriz Qn := G> > >
1 . . . Gn−1 Gn
obtenemos Qn Q> >
n = Qn Qn = I y H n = Qn Rn . n
Finalmente, veamos que la matriz R
bn := (Rn )
i,j es regular. Por (2.19), sabemos
i,j=1
b Qn Rn y Rn ∈ R
que AVn = Vn nb ×n . Aplicando el Lema 2.41, y teniendo en cuenta
b Hn = Vn
que rango(Qn ) = nb = rango(Vnb ), entonces rango(Rn ) = rango(Qn Rn ) = rango(Vn b Qn Rn ).
Además, como A es una matriz inversible, sigue que rango(Vn b Qn Rn ) = rango(AVn ) =
rango(Vn ) = n. Luego, rango(Rbn ) = rango(Rn ) = n y R bn es una matriz regular.
Corolario
2.51. Las iteraciones
x1 , . . . , xn∗ del método GMRES se pueden expresar como
−1
n Q e1 kbk2 , con e1 = (1, 0, . . . , 0) ∈ R , y residual
xn = Vn Rbn In×b > > n
b
n
Demostración. Por (2.19), Axn − b = Vn+1 Hn Vn> xn − Vn+1 cn = Vn+1 (Hn zn − cn ), con zn =
Vn> xn . Aplicando el Lema 2.50, obtenemos que Vn+1 (Hn zn − cn ) = Vn+1 Qn Rn zn − Q>
n cn .
Finalmente, usando el procedimiento de la demostración del Teorema 2.48, para 1 ≤ n ≤ n∗ −1
Vn+1 Qn Rn zn − Q> > >
n cn = (Vn+1 Qn en+1 ) −en+1 Qn e1 kbk2 .
El siguiente resultado da una estimación de convergencia del método GMRES, en la
lı́nea del Teorema 2.25 para el método del Gradiente Conjugado.
Teorema 2.52. Sea A ∈ RN ×N una matriz diagonalizable, es decir, existe T ∈ RN ×N una
matriz tal que T −1 AT = D donde D := diag (λ1 , . . . , λN ). Entonces, si xn denota la enésima
iteración del método GMRES:
Q
Demostración. Para cualquier polinomio p ∈ n con p(0) = 1, definimos el polinomio q(t) :=
1−p(t)
t
de grado como máximo n − 1. Luego, definiendo x := q(A)b ∈ Kn (A, b) tenemos que
Ax − b = −p(A)b. La propiedad minimal del método GMRES implica que
kAxn − bk2 ≤ kAx − bk2 = kp(A)bk2 ≤ kp(A)k2 kbk2 .
Ahora, como A es una matriz diagonalizable
kp(A)k2 ≤ kT k2 kp(D)k2 kT −1 k2 = cond2 (T ) máx |p(λk )|.
k=1,...,N
Corolario 2.53. Sea A ∈ RN ×N una matriz regular diagonalizable con exactamente m auto-
valores distintos, entonces xm = x∗ , esto es, el método GMRES converge en m iteraciones.
m
Q λi −t Q
Demostración. Definimos el polinomio p(t) = λi
∈ m con p(0) = 1. Entonces,
i=1
máx |p(λk )| = 0. Y, por el Teorema 2.52, tenemos kAxm − bk2 = 0.
k=1,..,N
(1)
(1)
r11 r12 c1 c1 "
(2)
# (1)
c2
:= G2 c2 . Por tanto,
[3] (2) [2]
R2 = 0 r22 . Además, G2 c(1) = c2 con
(2)
0 0
2
(2) c3 0
0 c3
−1 " (1) #
r11 r12 c1 (2) (2)
z2 =
0 r22 (2) , x2 = v1 v2 · z2 y kAx2 − bk2 = |c3 |. Si |c3 | > T OL, seguir.
c2
3
v
b3 (0) P
i = 3 Definimos v3 = kb
v3 k2
,hi3 := hi3 = hAv3 , vi i2 para 1 ≤ i ≤ 3, v
b4 = Av3 − hi3 vi y
i=1
(0) (0) (0)
h11 h12 h13 !
(0) (0) (0) [2]
(0) (0) h21 h22 h23 [4] G 0
h43 := h43 = kb
v4 k2 . Sea H3 = H3 = (0) . Tomando G1 =
1 y
0 h(0) 32 h33
0 I2
(0)
0 0 h43
(1)
(1) (1)
h13 h11 h12 (1) (0)
1 0 0
(1) (1) h32 = h32
0 h h22
[4] [2] [4] (0) 23 =: H (1) (1) (0)
G2 = 0 G2 0 se tiene que G1 H3 = con
(1) (1)
3 h33 = h33
0 h33 h32 (1) (0)
0 0 1 (1)
h43 = h43
0 0 h43
(1) (1) (1)
" # " # h11 h12 h13
(1) (0) (2) (2)
h13 [2] h13 0 h22 h23
[4] (1) (2) (2) (1)
y (1) = G1 (0) . Además, G2 H3 = (2) =: H3 con h43 = h43
h23 h23 0 0 h33
(2)
0 0 h43
" # " # " #
(2) (1) (2) (3)
h23 [2] h23 [2] a3 b3 [2] h33 h33 .
y (2) = G 2 (1) . Ahora, elegimos G 3 = tal que G 3 (2) =
h33 h33 −b3 a3 h 0
(1) (1) (1) 43
h h h
11 12 13
!
I2 0 (2) (2)
sigue que G3 H3 = 0 h22 h23
[4] [4] (2) (3)
Entonces, con G3 = =: H3 =: R3 =
[2] (3)
0 G3 0 0 h33
0 0 0
(0) (1) (1)
r11 r12 r13 c1 c1 c
0 r22 r23 0 (1) 1(2)
[4] [4] [4] [4] [4] c [4] c2 =
0 0 r33 . Por otra parte, G3 G2 G1 0 = G3 G2 20 = G3
c(2)
3
0 0 0 0 0 0
(1)
c1 −1 (1)
(2)
"
(3)
#
r11 r12 r13 c
1
(2)
c2 c3 [2] c
(3) donde (3) := G3 3 . En definitiva, z3 = 0 r22 r23 c(2) 2
, x3 =
c3 c4 0 0 0 r33 (3)
(3) c3
c
4 (3) (3)
v1 v2 v3 · z3 y kAx3 − bk2 = |c4 |. Si |c4 | > T OL, seguir.
i = n Suponemos que en las iteraciones previas 1 ≤ i ≤ n − 1 se han obtenido matrices
" #
(i−1) (i)
ai bi [2] hii
= hii , y que se han calculado los siguientes
[2]
Gi = tales que Gi (i−1)
−bi ai hi+1,i 0
coeficientes: " # " #
(0) (1)
[2] h1i h1i
G1 (0) = (1) , para 1 ≤ i ≤ n − 1,
h2i h2i
" # " #
(1) (2)
[2] h2i h2i
G2 (1) = (2) , para 2 ≤ i ≤ n − 1,
h3i h3i
y
Métodos iterativos para sistemas de ecuaciones lineales 37
(1)
(1)
c1
c1
(2) (2)
c2
c2
(2)
(3)
c3
c3
(n−1) "
(n)
#
.. cn
[n+1] .. [2] cn
y Gn = siendo G = (n) . Por tanto, zn =
n
.
. 0 cn+1
(n−1) (n−1)
c c
n−1
n−1
c(n−1) (n)
n c n
(n)
0 cn+1
−1
r11 r12 . . . r1n
(1)
c
0 r22 . . . r2n 1
. (n)
. .. . . .. .. , xn = v1 . . . vn · zn y kAxn − bk2 = |cn+1 |.
.. . . .
(n)
0 0 . . . rnn cn
1. Dada una aproximación inicial x0 , dar m iteraciones del método GMRES para obtener
xm , con rm = Axm − b.
2. Si krm k2 ≤ T OL parar. En caso contrario, volver al punto 1 con x0 := xm .
Claramente este proceso limita a dimensión N × m el tamaño de la matriz para almacenar
los vectores generados por el proceso de Arnoldi. La elección de m en el método GMRES(m)
es una cuestión empı́rica que depende de cada problema concreto. Incluso para un mismo
problema, los comportamientos de GMRES(m) y GMRES(m + 1) pueden ser muy diferentes.
A diferencia del método GMRES en el cual siempre se alcanza la convergencia en el peor
de los casos dando n = N iteraciones, el método GMRES(m), con m < N , no tiene porqué
converger. De hecho, sus iteraciones se pueden estancar en un valor concreto diferente a la
solución. Un ejemplo de esta situación se da al aplicar GMRES(m), con m < N , al Ejemplo
2.40 con x0 = 0, de modo que se obtendrı́a xn = 0, para todo n ≥ 0.
hren+1 ,e
rn+1 i hrn+1 ,e
rn+1 i
den+1 = −e
rn+1 + βn den , con βn = he
r ,er i
M
= hr ,er i
2
.
n n M n n 2
40 Ana Gómez Pérez
Observación 2.56. Observar que cada iteración del método PGC requiere hallar Aden y
resolver el sistema lineal M ren+1 = rn + αn Aden .
(ii) El método GCNR Precondicionado (PGCNR): análogamente consiste en aplicar el méto-
do GC al sistema precondicionado M −1 A> Ax = M −1 A> b respecto del producto interior
h·, ·iM siendo M una matriz simétrica y definida positiva. Considerando ahora los subespa-
cios de Krylov Kn M −1 A> A, M −1 A> b y el método del residual ortogonal (2.4) respecto
de h·, ·iM se obtiene el siguiente algoritmo:
hren+1 ,e
rn+1 i
M
hrbn+1 ,e
rn+1 i
2
den+1 = −e
rn+1 + βn den , con βn = he
r ,er i
= hb
r ,er i
.
n n M n n 2
Observación 2.58. Observemos que cada iteración de PGMRES requiere resolver el siste-
ma M v
en = Avn .
3
Ilustración Numérica
Observación 3.1. Considerando la descomposición A(1) = D(1) + L(1) + R(1) tenemos para la
matriz de iteración del método de Jacobi
−1
(1)
1 h h
HJ = − D(1) L(1) + R(1) = T ridiag d + a , 0, d − a
2d + rh2 2 2
42 Ana Gómez Pérez
r
* 2
ah
2
jπ
cuyos autovalores son d2 − 2
cos N +1
, 1 ≤ j ≤ N . Por tanto,
2d + rh2
v
u 2
(1)
2 td2 − ah cos
u π
ρJ = ρ HJ = .
|2d + rh2 | 2 N +1
Observamos que
ah r ah r
A(2) = IN ⊗ dT2 + T1 + h2 IN + dT2 + T1 + h2 IN ⊗ IN = D(2) + L(2) + R(2)
2 2 2 2
(2) 2 (2) (2) = IN ⊗ L + R(1) + L(1) + R(1) ⊗IN . Por tanto,
(1)
con D = 4d + rh IN 2 y L +R
(2) −1 (2)
para HJ = − D(2) L + R(2) se tiene que
s
2 .
h
(2)
i 2 ah iπ jπ
σ HJ = 2
d2 − cos + cos 1 ≤ i, j ≤ N .
4d + rh 2 N +1 N +1
En definitiva v
u 2
(2) 4 td2 − ah cos
u π
ρJ = ρ(HJ ) = .
|4d + rh2 | 2 N +1
y
UC = L0C \ (LC \ b) .
Para el método SOR se ha elegido el parámetro óptimo w∗ = q2 con ρJ = cos Nπ+1
2 1+ 1−ρJ
dado por (3.5).
Respecto al caso bidimensional n = 2, observamos en la Figura 3.1 que el comando
Backslash (\) de Matlab proporciona la aproximación numérica más eficiente si N ≤ 210 . No
obstante, este comando no pudo realizar la resolución numérica para N = 211 por insuficiencia
de memoria de almacenamiento. Lo mismo ocurre con las rutinas internas lu y chol para
N ≥ 210 .
4 −11
10 10
3
10
2 −12
10 10
1
10
0 −13
k U − Û k∞
10 10
−1
cpu
10
−2 −14
10 10
−3
10
−4 SOR −15 SOR
10 GC 10 GC
−5 LU LU
10 Cholesky Cholesky
−6 Backslash −16 Backslash
10 0 1 2 3 4 5 6 7
10 0 1 2 3 4 5 6 7
10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10
N2 N2
k U − Û k∞
0
cpu
10
−1
10 −14
10
−2
10 SOR SOR
GC GC
−3 LU LU
10 Cholesky Cholesky
−4 Backslash −15 Backslash
10 3 4 5 6 7
10 3 4 5 6 7
10 10 10 10 10 10 10 10 10 10
N3 N3
Notamos respecto a estas dos figuras que GC y SOR se han iterado hasta garantizar
un error al menos menor o igual al mı́nimo que proveen los tres métodos directos.
Ejemplo 3.5. La ecuación de Poisson con condiciones de frontera no homogéneas de tipo Diri-
chlet en [0, 1]3 con solución exacta u(x, y, z) = x2 + y 2 + z 2 (ver Figura 3.3):
0 0
10 10
k U − Û k∞
k U − Û k∞
−1 −1
10 10
−2 SOR −2 SOR
10 GC 10 GC
GMRES(10) GMRES(10)
GMRES(50) GMRES(50)
GMRES(100) GMRES(100)
−3 GMRES(200) −3 GMRES(200)
10 −2 −1 0 1 2 3
10 0 1 2
10 10 10 10 10 10 10 10 10
cpu Niter
Figura 3.4. Comportamiento del error en función del tiempo cpu (izquierda) y número de
iteraciones (derecha) para diversos métodos iterativos aplicadosa la discretización espacial de
(3.7).
k U − Û k∞
−6 −6
10 10
−8 −8
10 10
−10 −10
10 SOR 10 SOR
GC GC
−12 PGC −12 PGC
10 GMRES(10)
10 GMRES(10)
−14 PGMRES(10) −14 PGMRES(10)
10 GMRES(50) 10 GMRES(50)
−16 PGMRES(50) −16 PGMRES(50)
10 −2 −1 0 1 2
10 0 1 2
10 10 10 10 10 10 10 10
cpu Niter
Figura 3.5. Comportamiento del error en función del tiempo cpu (izquierda) y número de
iteraciones (derecha) para diversos métodos iterativos precondicionados aplicados a la discre-
tización espacial de (3.7).
k U − Û k∞
−2 −2
10 10
−3 −3
10 10
SOR SOR
−4 GC −4 GC
10 GCNR 10 GCNR
GMRES(10) GMRES(10)
−5 GMRES(50) −5 GMRES(50)
10 GMRES(100)
10 GMRES(100)
−6 GMRES(200) −6 GMRES(200)
10 −2 −1 0 1 2 3
10 0 1 2
10 10 10 10 10 10 10 10 10
cpu Niter
4 4
10 10
2 2
10 10
0 0
10 10
−2 −2
10 10
k U − Û k∞
k U − Û k∞
−4 −4
10 10
−6 −6
10 10
−8 −8
10 10
−10 SOR −10 SOR
10 GC 10 GC
−12 GCNR −12 GCNR
10 GMRES(10) 10 GMRES(10)
−14 GMRES(50) −14 GMRES(50)
10 GMRES(100) 10 GMRES(100)
−16 GMRES(200) −16 GMRES(200)
10 −2 −1 0 1 2 3
10 0 1 2
10 10 10 10 10 10 10 10 10
cpu Niter
Figura 3.6. Comportamiento del error en función del tiempo cpu (izquierda) y número de
iteraciones (derecha) para diversos métodos iterativos aplicados a la discretización espacial de
(3.1), con d = 1 y r = −3a, para a = 10 (bloque superior) y a = 100 (bloque inferior).
Por otra parte, consideramos también las variantes con precondicionamiento PGC,
PGCNR y PGMRES(m). Nuevamente se observa divergencia para PGC en la Figura 3.7,
ası́ como una aceleración de la convergencia para PGCNR y PGMRES(m) con respecto a los
correspondientes métodos sin precondicionamiento.
Debemos indicar que para PGC y PGMRES(m) hemos considerado precondicionamien-
to SSOR, tal como en el Ejemplo 3.5, esto es M = S(w∗ ) dada por (3.8).
48 Ana Gómez Pérez
Respecto al método PGCNR, puesto que GCNR se obtiene aplicando GC a las ecua-
ciones normales (A(3) )> A(3) U = (A(3) )> b, hemos considerado el precondicionador M =
S(w∗ )> S(w∗ ).
2 2
10 10
0 0
10 10
−2 −2
10 10
−4 −4
10 10
k U − Û k∞
k U − Û k∞
−6 −6
10 10
−8 −8
10 10
−10 −10
10 SOR 10 SOR
PGC PGC
−12 PGCNR −12 PGCNR
10 PGMRES(10)
10 PGMRES(10)
−14 PGMRES(50) −14 PGMRES(50)
10 PGMRES(100) 10 PGMRES(100)
−16 PGMRES(200) −16 PGMRES(200)
10 −1 0 1 2
10 0 1 2
10 10 10 10 10 10 10
cpu Niter
2 2
10 10
0 0
10 10
−2 −2
10 10
−4 −4
10 10
k U − Û k∞
k U − Û k∞
−6 −6
10 10
−8 −8
10 10
−10 −10
10 SOR 10 SOR
PGC PGC
−12 PGCNR −12 PGCNR
10 PGMRES(10)
10 PGMRES(10)
−14 PGMRES(50) −14 PGMRES(50)
10 PGMRES(100) 10 PGMRES(100)
−16 PGMRES(200) −16 PGMRES(200)
10 −1 0 1 2
10 0 1 2
10 10 10 10 10 10 10
cpu Niter
Figura 3.7. Comportamiento del error en función del tiempo cpu (izquierda) y número de
iteraciones (derecha) para diversos métodos iterativos precondicionados aplicados a la discre-
tización espacial de (3.1), con d = 1 y r = −3a, para a = 10 (bloque superior) y a = 100
(bloque inferior).
Observación 3.7. Para la implementación de los métodos considerados en este capı́tulo hemos
empleado los códigos que aparecen en [2] y que están disponibles en https://es.mathworks.
com/matlabcentral/fileexchange/2158-templates-for-the-solution-of-linear-systems.
Métodos iterativos para sistemas de ecuaciones lineales 49
3.2. Conclusiones
Los métodos directos para resolver sistemas lineales Ax = b, tales como eliminación
gaussiana o descomposición de Cholesky, resultan eficientes cuando la dimensión N del sistema
lineal es moderada. Sin embargo, para grandes sistemas lineales, como los que resultan en la
discretización espacial de Ecuaciones en Derivadas Parciales en varias dimensiones espaciales,
estos métodos pierden eficiencia, o directamente son inviables, pues requieren un elevado costo
computacional ası́ como una gran disponibilidad de memoria de almacenamiento. Observemos
que aunque la matriz A sea sparse, tanto el cálculo de su inversa como su descomposición LU
requiere almacenar matrices llenas, siendo éstas de tamaño N 2 .
En el capı́tulo 1 de este trabajo hemos comenzado con una revisión de resultados pa-
ra los métodos iterativos clásicos de Jacobi y de Gauss-Seidel. Hemos extendido el análisis
estándar de estos métodos para matrices estrictamente diagonal dominantes al caso de matri-
ces irreduciblemente diagonal dominantes. Esta última propiedad es menos restrictiva y tiene
mayor alcance práctico, en particular en la discretización espacial de Ecuaciones en Derivadas
Parciales.
También en el capı́tulo 1 hemos considerado el método de relajación asociado al método
de Gauss-Seidel (o método SOR de sobrerelajación sucesiva) estudiando su convergencia en
función del parámetro de relajación ω. En particular, para las denominadas matrices consis-
tentemente ordenadas hemos establecido una expresión cerrada para el radio espectral de la
matriz de iteración del método SOR que permite seleccionar el parámetro de relajación de
modo óptimo. Asimismo, hemos observado que las matrices consistentemente ordenadas sur-
gen de modo habitual en la discretización espacial de Ecuaciones en Derivadas Parciales. En
el capı́tulo 3, observamos que el método SOR es bastante eficiente cuando se conoce de ante-
mano el valor óptimo del parámetro de relación ω. No obstante, en problemas más prácticos,
la cuestión de seleccionar este parámetro óptimo no es simple y resulta crucial de cara a la
eficiencia del método.
En el capı́tulo 2 hemos introducido los denominados subespacios de Krylov con el fin de
presentar otra clase de métodos iterativos, en particular los métodos del Gradiente Conjugado
(GC) y del Residual Mı́nimo Generalizado (GMRES). En aritmética infinita, estos métodos
convergen a la solución del sistema lineal en un número finito de iteraciones menor o igual
que la dimensión N del sistema, aunque este número puede ser considerablemente grande en
la práctica. El método GC está especialmente indicado para matrices simétricas y definidas
positivas, aunque también hemos presentado su variante GCNR para el caso general tratado a
través del sistema de ecuaciones normales AT Ax = AT b. El método GMRES es de propósito
general para matrices regulares arbitrarias, siendo su costo computacional ligeramente superior
al de GC e inferior al de GCNR. En particular, el algoritmo de Arnoldi para generar bases
ortogonales de los subespacios de Krylov, junto con las rotaciones de Givens para resolver
problemas de mı́nimos cuadrados, permiten una implementación bastante simple del método
GMRES.
Además en el capı́tulo 2 hemos establecido resultados de convergencia para los métodos
GC, GCNR y GMRES que reflejan que su tasa de convergencia puede verse ralentizada por
el número de condición de la matriz A (o de cierta matriz relacionada con A), y en la sección
3.1 de este capı́tulo hemos ilustrado que, en efecto, ésto es lo que ocurre habitualmente en la
práctica. Por ello, para finalizar el capı́tulo 2 hemos presentado variantes de estos métodos ite-
rativos considerando precondicionamiento (a la izquierda) del sistema lineal. Las variantes con
precondicionamiento PGC, PGCNR y PGMRES permiten mitigar el mal condicionamiento de
los sistemas lineales y mejorar la eficiencia respecto a los métodos originales sin precondicio-
namiento. En la sección 3.1 hemos observado el efecto positivo del precondicionamiento en la
aplicación de los métodos GC, GCNR y GMRES. No obstante, este efecto positivo depende en
gran medida de la selección de un precondicionador adecuado. En esta sección hemos conside-
rado el precondicionador SSOR (SOR simétrico) por ser muy eficiente en la discretización de
la ecuación de Laplace. El estudio de la selección eficiente de precondicionadores en problemas
más generales queda fuera del alcance y objetivos de este trabajo.
Bibliografı́a
[1] Barnett, S. Matrices. Methods and applications. Oxford University Press (1996).
[2] Barrett, R. et al. Templates for the solution of linear systems: building blocks for
iterative systems. SIAM (1994).
[3] Golub, G., Van Loan, C.F. Matrix computations. The Johns Hopkins University
press, 4rd ed. (2013).
[4] Hämmerlin, G., Hoffmann, K.H. Numerical mathematics. Springer-Verlag (1991).
[5] Plato, R. Concise numerical mathematics. AMS (2003).
[6] Quarteroni, A., Valli, A. Numerical approximation of partial differential equations.
Springer (1994).
[7] Saad, Y. Iterative methods for sparse linear systems. SIAM, 2nd ed. (2003).
Manual básico de identidad - Facultad de Ciencias
CONFIGURACIONES DE LA MARCA
Las marcas de la Facultad de
Ciencias y Secciones posen una
configuración definida. No se
debe transformar la configuración
para hacer una versión horizontal
o vertical ni adaptarla a otro
equations
formato.
−6
kr k2 10
triangular systems Ly = b and Ux = y . x n+1 = x n + αn d n , with αn = 〈Adnn,d2n 〉
2 −8
r n+1 = r n + αn Ad n 10
On the other hand, if A is positive def- kr k2
d n+1 = −r n+1 + βn d n , with βn = krn+1k2 2 . −10
inite and symmetric, then A admits the n 2 10 SOR
GC
Cholesky descomposition A = LL >.
−12 PGC
10
The GC method for the normal equa- GMRES(10)
These direct methods use O (N 3) arith- −14
10
PGMRES(10)
tions (GCNR) consists in applying the GC GMRES(50)
metic operations, so that they are expen- −16 PGMRES(50)
method to the system A > Ax = A >b where 10
sive or non-viable when N is large.
−2 −1 0 1 2
10 10 10 10 10
A is any non-singular matrix. cpu
The Generalized minimal residual
2. Basic iterative methods method (GMRES), for any A ∈ RN ×N non- To enhance the performance of Krylov
singular matrix, is described by methods we use preconditioning.
)
An approximation to x ∗ is obtained by con- x n ∈ K n (A, b)
sidering a fixed point iteration kAx n − bk2 = min kAx − bk2 n = 1, 2, . . . References
x∈K n (A,b)
(n+1) (n)
x =Hx + z, n≥0 (1) Using the Arnoldi process we generate an
orthogonal basis of K n (A, b). The method [1] Plato, R. Concise numerical mathe-
with iteration matrix H ∈ RN ×N . matics. AMS (2003).
is reduced to a least squares problem
Theorem 1 The iterative method (1) is which is solved with QR decomposition [2] Saad, Y. Iterative methods for sparse
convergent if and only if ρ(H ) < 1. and Givens rotations. linear systems. SIAM, Springer (2003).