Está en la página 1de 45

Notas de Métodos Numéricos.

Versión 1.0 – 23 de febrero de 2018.

Carlos Reales M.
creales@correo.unicordoba.edu.co
Departamento de de Matemáticas y Estadística
Universidad de Córdoba

Paquete de Prueba
Esta página fue dejada intencionalmente blanca
Índice general

1 Solución de Sistemas de Ecuaciones Lineales Página 3


1.1 Normas vectoriales y matriciales 4
1.2 Metodos Directos 7
1.3 Métodos Iterativos 28
1.4 Convergencia de métodos iterativos. 32
1.5 Ejercicios 36
Esta página fue dejada intencionalmente blanca
Solución de Sistemas de Ecuaciones Lineales

Un sistema de ecuaciones lineales es un conjunto de ecuaciones algebraicas de primer grado, AX “


b, donde, por lo general, b es obtenido a partir observaciones experimentales. Uno de los problemas
más importantes del Análisis Numérico es encontrar la mejor solución aproximada de un sistema
de ecuaciones. Para la resolución de estos sistemas, existen en en general dos clases de métodos: los
métodos directos y los métodos iterativos. Mediante el uso de métodos directos se puede obtener
una solución exacta del sistema de ecuaciones mientras que los métodos iterativos construyen
iterativamente aproximaciones cada vez mejores de la solución
Al momento de resolver un sistema de ecuaciones lineales, el método a utilizar depende en gran
medida de la dimensión y de la estructura de la matriz. Hasta mediados del siglo pasado, la
dimensión de un sistema rara vez superó los 1.000 y, por lo tanto, almacenar todo en la memoria
de la computadora no era un problema por lo que métodos directos (es decir, los métodos que
dan la solución exacta, si no se producen errores de redondeo después de un número finito de
las operaciones aritméticas) eran los mas recomendados. Hoy en día, se consideran sistemas de
varios millones o incluso miles de millones de ecuaciones. Estos sistemas surgen en problemas que
implican la solución de ecuaciones diferenciales parciales y ecuaciones integrales.
Cuando un sistema es demasiado grande para ser almacenado, no se pueden usar métodos directos,
y se debe considerar el usos de metodos los iterativos. Por suerte los sistemas grandes suelen ser
dispersos (muchos de sus elementos son cero) porque vienen de la discretización de ecuaciones
diferenciales parciales por diferencias finitas o por elementos finitos. En estos casos, se deben usar
técnicas para almacenarlas que sólo requieren una cantidad de posiciones de memoria aproxima-
damente igual al número de elementos no nulos de la matriz.
Por lo general, los métodos directos requieren modificar la matriz original del sistema y, muchas
veces, destruyen el carácter disperso de la misma. Para evitar esto, estudiaremos métodos iterativos
que no modifican la matriz del sistema, por lo que resultarán más convenientes desde el punto de
vista del costo computacional de almacenamiento.
En este capítulo, vamos a introducir un método directo básico llamado eliminación Gaussiana para
la resolución de sistemas lineales generales. Por lo general esta se usa para resolver un sistema
lineal denso de tamaño mediano de tamaño sin ninguna estructura especial del sistema.
Encuentre la corriente que fluye en cada rama de este circuito. El número de corrientes de bucle
requerido es 3. En esta ocasión, elegiremos las corrientes de bucle mostradas a la derecha. Usando
la Ley de Voltaje de Kirchoff para cada bucle. El resultado es el siguiente sistema de ecuaciones:
4 Solución de Sistemas de Ecuaciones Lineales

$
& 10I1 ` 20pI1 ` I2 q ` 30I1 “ 1000 ´ 1000
15I2 ` 20pI2 ` I1 q ` 40I2 ` 5pI2 ` I3 q “ 2000 ´ 1000 , (1.1)
%
25I3 ` 35I3 ` 5pI3 ` I2 q “ 2000 ´ 2000
Recopilación de términos esto se convierte en:
$
& 60I1 ` 20I2 ` 0I3 “ 0
20I1 ` 80I2 ` 5I3 5 “ 1000 , (1.2)
%
0I1 ` 5I2 ` 65I3 “ 0

Esta forma para el sistema de ecuaciones podría haber sido obtenido de inmediato mediante el
método de inspección. Resolver el sistema de ecuaciones utilizando la eliminación gaussiana o
algún otro método da las siguientes corrientes, todas medidas en amperios: I1 “ ´4,57, I2 “ 13,7
y I3 “ ´1,05.

1.1 Normas vectoriales y matriciales

Las nociones de normas vectoriales y matriciales son muy usadas en Análisis para determinar
convergencia y estimar tasas de convergencia de métodos iterativos para resolver problemas lineales
y no lineales. A continuación definimos los conceptos de norma vectorial sobre un espacio vectorial
de dimensión finita.

Definición 1.1.1 (Norma vectorial). Sea pV, `, ¨q un espacio vectorial de dimensión finita. Una
norma vectorial es cualquier función real definida en V notada por

}¨} : V ÝÑ R
v ÞÝÑ }v}

y que cumple las siguientes 4 propiedades

1. }v} ě 0 @v P V (positividad),

2. }v} “ 0 ðñ v“0 (no degeneración),

3. }kv} “ |k| }v} @v P V, @k P R (homogeneidad),

4. }v ` w} ď }v} ` }w} @v, w P V (desigualdad triangular).

A un espacio vectorial V provisto de una norma } ¨ } se le llama espacio vectorial normado y se le


denota pV, } ¨ }q.

Ejemplo 1.1.1. Dados V “ Rn (espacio de vectores columna de n componentes reales) y x “


t
px1 , . . . xn q P Rn , se definen las siguientes normas:
˜ ¸ 21
ÿn
2
Norma euclideana: }x}2 :“ |xi | .
i“1
Solución de Sistemas de Ecuaciones Lineales 5

Norma infinito: }x}8 :“ máx |xi |.


1ďiďn
n
ÿ
Norma uno: }x}1 :“ |xi |.
i“1

Es habitual escribir un vector columna como x “ px1 ¨ ¨ ¨ xn qt P Rn para mayor comodidad en la


notación. Toda norma sobre un espacio vectorial V induce una distancia:vectores de ese espacio:

distpv, wq :“ }v ´ w}, v, w P V.

Definición 1.1.2 (Convergencia). Una sucesión tv n unPN Ă V converge a v P V si distpv n , vq Ñ 0:

vn Ñ v ðñ }vn ´ v} Ñ 0.

Definición 1.1.3. Dos normas } ¨ }˚ y } ¨ }‚ sobre un espacio vectorial V son equivalentes si


existen constantes C1 y C2 tales que

C1 }v}˚ ď }v}‚ ď C2 }v}˚ @v P V.

Teorema 1.1.1. Todas las normas sobre un espacio de dimensión finita son equivalentes.
Corolario 1.1.1. Si } ¨ }˚ y } ¨ }‚ son dos normas cualesquiera en un espacio de dimensión finita,
entonces
}v n ´ v}˚ Ñ 0 ðñ }v n ´ v}‚ Ñ 0.
Es muy útil poder medir la magnitud de una matriz A o la distancia entre dos matrices. Sin
embargo no es suficiente con definir la norma de una matriz de orden mn A como un vector x de
tamaño mn cuyas componentes son las entradas de A. Una norma matricial es cualquier función
real definida en Rmˆn (espacio de matrices m ˆ n) notada por

} ¨ } : Rmˆn ÝÑ R
A ÞÝÑ }A}
y que cumple las siguientes 4 propiedades
1. }A} ě 0 @A P Rmˆn (positividad),

2. }A} “ 0 ðñ A“0 (no degeneración),

3. }kA} “ |k| }A} @A P V, @k P R (homogeneidad),

4. }A ` B} ď }A} ` }B} @A, B P Rmˆn (desigualdad triangular).


Otra propiedad que es habitual, pero no siempre incluida en la definición de una norma matricial,
es la propiedad submultiplicativa: esto es, si A es m ˆ n y B es n ˆ p entonces property

}Ax} ď }A} }x}

Toda norma vectorial } ¨ } sobre Rn induce una norma matricial sobre Rnˆn x:
}Ax}
}A} :“ máx , A P Rnˆn . (1.3)
xPRn : x‰0 }x}
6 Solución de Sistemas de Ecuaciones Lineales

Es fácil verificar que esto define efectivamente una norma sobre Rnˆn .
Esta norma se dice que es una norma matricial inducida por la norma vectorial y se denota con el
mismo símbolo que la norma vectorial.

Proposición 1.1.1. Toda norma matricial inducida por una norma vectorial satisface las siguien-
tes propiedades:

}Ax} ď }A} }x} @A P Rnˆn , @x P Rn (compatibilidad),


nˆn
}AB} ď }A}}B} @A, B P R (submultiplicatividad).

Hay formas más sencillas de calcular algunas de las normas matriciales más usuales.

Proposición 1.1.2. Sea A “ paij q P Rnˆn . Entonces:


˜ ¸
ÿ
}A}8 “ máx |aij | (máxima suma de filas).
1ďiďn
1ďjďn
˜ ¸
ÿ
}A}1 “ máx |aij | (máxima suma de columnas).
1ďjďn
1ďiďn
b ` ˘
}A}2 “ ρ At A (norma espectral).

Ejemplo 1.1.2. Por ejemplo, si la matriz A se define como


» fi
3 5 7
A “ –2 6 4fl ,
0 2 8

se tiene }A}1 “ máxt5, 13, 19u “ 19 y }A}8 “ máxt15, 12, 10u “ 15

Ejemplo 1.1.3. Si x P Rn y A P Rnˆn , encontrar las constantes de equivalencia entre las normas
}.}1 y }.}2 y entre las normas }.}2 y }.}8 que permiten establecer las siguientes desigualdades (las
?
constantes pueden depender de n): C1 “ 1, C2 “ n, C3 “ ?1n , C4 “ 1, C5 “ C7 “ ?1n , C6 “ C8 “
?
n

Vectorial

C1 }x}8 ď }x}2 ď C2 }x}8


C3 }x}1 ď }x}2 ď C4 }x}1

Matricial

C5 }A}8 ď }A}2 ď C6 }A}8


C7 }A}1 ď }A}2 ď C8 }A}1

Calcular los coeficientes para la equivalencia vectorial y matricial entre las normas }.}1 y }.}8
Solución de Sistemas de Ecuaciones Lineales 7

Definición 1.1.4 (Valor Propio). Dada una matriz cuadrada A, diremos que un número λ P C
es un valor propio (o autovalor) de A si existe un vector no nulo, v ‰ 0, tal que Av “ λv. A v se
le llama vector propio (o autovector) asociado al valor propio λ. λ es un valor propio si y sólo si
es raíz de la ecuación característica detpA ´ λIq “ 0.

Definición 1.1.5 (Espectro). El espectro de A es el conjunto de todos sus valores propios:


! )
σpAq :“ λ P C : λ es un valor propio de A .

Definición 1.1.6 (Radio espectral). El radio espectral de A es el máximo módulo de sus autova-
lores:
ρpAq :“ máx |λ|.
λPσpAq

Teorema 1.1.2. Si A P Rnˆn es simétrica (At “ A), entonces }A}2 “ ρ pAq.

Teorema 1.1.3. Sea A P Rnˆn y sea ǫ ą 0. Entonces existe una norma matricial inducida tal que

}A} ď σpAq ` ǫ.

Teorema 1.1.4. Sea A P Rnˆn entonces lı́mkÝÑ8 Ak “ 0 si y solo si σpAq ă 1.

Demostración 1.1.1. Sea σpAq ă 1, entonces existe ǫ ą 0 tal que σpAq ă 1 ´ ǫ y gracias
al teorema 1.1.3 existe una norma matricial inducida tal que }A} ď σpAq ` ǫ ă 1. De el hecho
}Ak } ď }A}k ă 1 y de la definicion de convergencia se sigue que Ak tiende a cero. Reciprocamente,
asuma que lı́mkÝÑ8 Ak “ 0 y sea λ un valor propio de A Entonces Ak x “ λk x con x ‰ 0 el valor
propio asociado. Se tiene que lı́mkÝÑ8 λk “ 0 y por consiguiente |λ| ă 1. Como λ es un valor
propio cualquiera de A se concluye que σpAq ă 1.

1.2 Metodos Directos

Consideremos el sistema de ecuaciones lineales


$
’ a11 x1 ` a12 x2 ` ¨ ¨ ¨ ` a1n xn “ b1


& a21 x1 ` a22 x2 ` ¨ ¨ ¨ ` a2n xn “ b2
.. .. , (1.4)

’ . .

%
am1 x1 ` am2 x2 ` ¨ ¨ ¨ ` amn xn “ bm

con m ecuaciones y n incognitas. Este sistema puede escribirse en forma matricial como Ax “ b,
donde » fi
a11 a11 ¨ ¨ ¨ a1n » fi
— a21 a22 ¨ ¨ ¨ a2n ffi b1
— ffi mˆn — .. ffi
A :“ — . .. ffi P R , b “ – . fl P Rm
– .. . fl
bm
am1 am2 ¨ ¨ ¨ amn
8 Solución de Sistemas de Ecuaciones Lineales

t
son los datos y x “ px1 , ¨ ¨ ¨ , xn q P Rn es el vector de incógnitas. El sistema está sobredeterminado
si m ą n, es cuadrado si m “ n y esta indeterminado si m ă n. Es homogeneo si b “ 0. Un sistema
de lineal puede tener una única solución, infinitas soluciones o ninguna solucioón. El sistema de
ecuaciones lineales Ax “ b, tiene solución única si y sólo si A es una matriz no singular. Además,
una matriz A P Rnˆn es no singular si y sólo si se cumple cualquiera de estas condiciones

1. A es invertible, DA´1 P Rnˆn : AA´1 “ A´1 A “ I,

2. detpAq ‰ 0,

3. todas las filas (y columnas) de A son l.i.: rangopAq “ n,

4. 0 no es valor propio de A: 0 R σpAq.

Así, si A es no singular, entonces Ax “ b es equivalente a x “ A´1 b. Sin embargo, en general,


no es conveniente calcular la matriz inversa A´1 para resolver un sistema de ecuaciones, pues
hacerlo así resulta mucho más costoso computacionalmente. Por el contrario, una manera natural
de calcular la inversa de una matriz A P Rnˆn consiste en resolver n sistemas de ecuaciones lineales.
Si llamamos c1 , . . . , cn a las columnas de A´1 :
» ˇ ˇ fi
ˇ ˇ
ˇ ˇ
A´1 “ – c1 ˇˇ ¨ ¨ ¨ ˇˇ cn fl , c1 , . . . , cn P Rn ,
ˇ ˇ

entonces
» ˇ ˇ fi » ˇ ˇ fi » ˇ ˇ fi
ˇ ˇ ˇ ˇ ˇ ˇ
ˇ ˇ ˇ ˇ n ˇ ˇ n
– Ac1 ˇ ¨ ¨ ¨ ˇ Acn fl “ A – c1 ˇ ¨ ¨ ¨ ˇ c fl “ AA´1 “ I “ – e1 ˇ¨¨¨ˇe fl,
ˇ ˇ ˇ ˇ ˇ ˇ
ˇ ˇ ˇ ˇ ˇ ˇ

donde las columnas e1 , . . . , en de I son los vectores de la base canónica de Rn . Por lo tanto, A´1
puede calcularse columna por columna resolviendo:

Aci “ ei , i “ 1, . . . , n.

En otras palabras, resolver un sistema de n incognitas a traves del calculo de la matriz inversa
significa resolver n problemas del mismo tamaño, lo cual no tiene sentido.
Los sistemas que aparecen en muchas aplicaciones son de gran tamaño. Por ejemplo, un sistema
de 1000 ˆ 1000 hoy en dia se considera de tamaño moderado y en algunas aplicaciones deben
resolverse sistemas de ecuaciones con cientos de miles de incógnitas. Hay métodos que en teoría
permiten resolver cualquier sistema de ecuaciones lineales, pero que en la práctica requieren tiempos
de cálculo prohibitivos. Un ejemplo de esto es la Regla de Cramer. Este procedimiento permite
calcular explícitamente la solución de un sistema Ax “ b mediante:
detpAi q
xi “ , i “ 1, . . . , n,
detpAq
donde Ai es la matriz que se obtiene a partir de A reemplazando en ésta su columna i-ésima por
el segundo miembro (o lado derecho) del sistema, b. Si los determinantes se calculan mediante la
Solución de Sistemas de Ecuaciones Lineales 9

fórmula recursiva usual de desarrollo por fila (o por columna), el costo operacional de la Regla
de Cramer es de aproximadamente pn ` 1q! flop. El Método de Eliminación Gaussiana por el
contrario es un método que no tiene esta dificultad. Este procedimiento se basa en el método
algebraico de transformaciones elementales y su costo operacional es de aproximadamente 32 n3
flop. En un computador de 1 Gflop (109 flop) por segundo (realiza 109 operaciones por segundo).
n 10 15 20 100 1000 2000
Regla de Cramer
flop 4 ˆ 107 2 ˆ 1013 5 ˆ 1019 10160 “8” “8”
tiempo 0.04 s 5.5 horas 1500 años “8” “8” “8”
Eliminación Gaussiana
flop 666 2250 5333 7 ˆ 105 7 ˆ 108 5 ˆ 109
tiempo 0. s 0. s 0. s 0s 0.73 s 4.88 s

Solución de sistemas con matriz triangular


A continuación describiremos la solución a través de un método directo de un sistema donde la
matriz de de coeficientes es triangular. Dadas
» fi » fi
ℓ11 0 ¨¨¨ 0 u11 u12 ¨ ¨ ¨ u1n
— . . .
. ffi —
— ℓ21 ℓ22 . . ffi — 0 u22 ¨ ¨ ¨ u2n ffi

L“— — . .

ffi y U “— . .. .. .. ffi
– .. .. . .. – .. . . . fl
0 fl
ℓn1 ℓn2 ¨ ¨ ¨ ℓnn 0 ¨¨¨ 0 unn

decimos que L es triangular inferior y U es triangular superior . Puesto que detpLq “ ℓ11 ℓ22 ¨ ¨ ¨ ℓnn
y detpU q “ u11 u22 ¨ ¨ ¨ unn , podemos afirmar que una matriz triangular es no singular si y sólo si
sus términos diagonales son todos no nulos.
La resolución de sistemas de ecuaciones lineales con matrices triangulares es muy sencilla y su costo
operacional es bajo. En efecto, consideremos un sistema Lx “ b con matriz triangular inferior L,
ℓ11 x1 “ b1
ℓ21 x1 ` ℓ22 x2 “ b2
.. ..
. .
ℓn1 x1 ` ¨ ¨ ¨ ` ℓnn xn “ bn
De donde se tiene
x1 “ b1 {ℓ11
x2 “ pb2 ´ ℓ21 x1 q {ℓ22
..
.
xn “ pbn ´ ℓn1 x1 ´ ¨ ¨ ¨ ´ ℓnn´1 xn´1 q {ℓnn
El anterior proceso es conocido como sustitución progresiva y costo operacional esta dado por la
siguiente expresión ˜ ¸
n
ÿ i´1
ÿ n
ÿ
1` 1` 2 “1` p2i ´ 1q “ n2 flop
i“2 j“1 i“2
10 Solución de Sistemas de Ecuaciones Lineales

Algoritmo 1.1: Algoritmo (Sustitucion Progresiva)


1 x1 “ b1 {ℓ11
2 for i “ 2, . .´. , N do ¯
ř
3 xi “ ℓ1ii bi ´ i´1 ℓ x
j“1 ij j

Método de Eliminación Gaussiana (M.E.G.)


El método de eliminación gaussiana consiste en reducir mediante un sistema Ax “ b a otro
equivalente (es decir, que tenga la misma solución), de la forma

U x “ b̃,

donde U es una matriz triangular superior. Luego, el sistema resultante se resuelve por el algoritmo
descrito para matrices triangulares. Denotemos el sistema original por Ap1q x “ bp1q . El proceso
empleado consiste en reemplazar las ecuaciones por combinaciones no triviales de las otras. Así,
p1q
consideremos la matriz no singular A P Rnˆn y supongamos que el elemento a11 es no nulo.
Consideremos los multiplicadores
p1q
ai1
mi1 “ p1q
, i “ 2, . . . , n,
a11

p1q
donde aij donota el elemento que está en la fila i y columna j de Ap1q . Es posible eliminar la
incógnita x1 de la segunda ecuación en adelante, por simple sustracción a la fila i, i “ 2, . . . , n, de
la primera fila previamente multiplicada por mi1 y haciendo lo mismo para el vector b:
p2q p1q p1q
aij “ aij ´ mi1 a1j , i, j “ 2, . . . , n,
p2q p1q p1q
bi “ bi ´ mi1 b1 , i “ 2, . . . , n,

p1q
donde bi denota la componente i-ésima del vector bp1q . Así se obtiene un sistema Ap2q x “ bp2q
equivalente al anterior:
» p1q p1q p1q p1q fi » fi » p1q fi
a11 a12 a13 ¨ ¨ ¨ a1n x1 b1
— 0 p2q
a22
p2q
a23 ¨ ¨ ¨ a2n ffi — x2 ffi —b2 ffi
p2q ffi — ffi — p2q
— ffi
— p2q p2q p2q ffi — ffi — p2q ffi
— 0 a32 a33 — x
¨ ¨ ¨ a3n ffi — 3 ffi “ —b3 ffi
ffi ffi —
— ffi
— .. .. .. .. ffi — .. ffi — .. ffi
– . . . . fl– . fl – . fl
p2q p2q p2q xn p2q
0 an2 an3 ¨ ¨ ¨ ann bn

p2q
A continuación, si a22 ‰ 0, podemos análogamente eliminar la incógnita x2 de la tercera ecuación
en adelante. Siguiendo con este proceso k-veces (k ď n), se obtiene el sistema

Apkq x “ bpkq , 1 ď k ď n,
Solución de Sistemas de Ecuaciones Lineales 11

donde la matriz Apkq toma la siguiente forma:


» p1q p1q p1q fi
a11 a12 ¨¨¨ ¨¨¨ ¨¨¨ a1n
— 0 p2q
a22 ¨¨¨ ¨¨¨ ¨¨¨ a2n ffi
p2q
— ffi
— . .. .. .. ffi
— . . . ffi
— . . ffi
Apkq “—
— ..

pkq pkq ffi
— . 0 akk ¨ ¨ ¨ akn ffi
— ffi
— .. .. .. .. ffi
– . . . . fl
pkq pkq
0 ¨¨¨ 0 ank ¨ ¨ ¨ ann

piq
Para realizar este proceso hemos supuesto que aii ‰ 0, i “ 1, . . . , k ´ 1. Notemos que para k “ n
obtenemos el sistema triangular superior
» p1q p1q p1q fi » fi » p1q fi
a11 a12 ¨¨¨ a1n x1 b1
— 0 p2q
a2n ffi
p2q — ffi — p2q ffi
— a22 ¨¨¨ ffi — x 2 ffi — b2 ffi
— . .. ffi — ffi — ffi
— . .. .. ffi— . ffi “ — . ffi
– . . . . fl – .. fl – .. fl
pnq pnq
0 ¨¨¨ 0 ann xn bn

pkq
Los valores akk son llamados pivotes y deben ser valores no nulos para k “ 1, . . . , n ´ 1. Si
pnq
la matriz original A es no singular, entonces también ann ‰ 0 y el sistema triangular superior
resultante puede resolverse por el algoritmo ya visto:

Algoritmo 1.2: Algoritmo (Sustitucion Regresiva)


pnq
1 xn “ bpnq {ann
2 for ˇi “ N ´ 1, . . .˜, 1 do ¸
ˇ ÿn
ˇ x “ 1 piq
bi ´
piq
aij xj
3 ˇ i piq
ˇ aii j“i`1

Recordemos que en el paso k-ésimo se parte de la siguiente matriz:


» p1q p1q p1q fi
a11 a12 ¨¨¨ ¨¨¨ ¨¨¨ a1n
— 0 p2q
a22 ¨¨¨ ¨¨¨ ¨¨¨ a2n ffi
p2q
— ffi
— . .. .. .. ffi
— . . . ffi
— . . ffi
— . ffi
— . pkq pkq ffi
— . 0 akk ¨ ¨ ¨ akn ffi
— ffi
— .. .. .. .. ffi
– . . . . fl
pkq pkq
0 ¨¨¨ 0 ank ¨ ¨ ¨ ann

Observacion 1.2.1. El algoritmo no precisa crear los ceros debajo de la diagonal de la matriz,
pues éstos luego no se utilizan.

En los siguientes ejemplos ilustraremos el método de eliminacion gaussiana:


12 Solución de Sistemas de Ecuaciones Lineales

Algoritmo 1.3: Algoritmo ()


1 for k “ 1, . . . , n ´ 1 do
2 for i “ k ` 1, . . . , n do
pkq pkq
3 mik “ aik {akk
4 for j “ k ` 1, . . . , n do
pk`1q pkq pkq
5 aij “ aij ´ mik akj
pk`1q pkq pkq
6 bi “ bi ´ mik bk
pnq
7 xn “ bpnq {ann
8 for i “ n ´ 1,
´. . . , 1 ř
do ¯
1 piq n piq
9 xi “ piq bi ´ j“i`1 aij xj
aii

Ejemplo 1.2.1. Consideremos el sistema de ecuaciones lineales:

4x ´ 8y ` 5z “ 2
3x ´ 4y ` 2z “ 3 (1.5)
4x ´ 7y ` 4z “ 3

Para resolver el sistema (1.5) consideremos los siguientes pasos:

1. Paso 1. Eliminar todos los términos debajo del primer pivote, en este caso, debajo de 4 :

3
Restamos ´ veces la primera ecuación a la segunda y obtenemos el sistema equivalente:
4

4 x ´8y `5z “ 2
7 3
2y ´ z “ pE2 ´ 3E1 q (1.6)
4 2
4x ´7y `4z “ 3

Ahora restamos -1 veces la primera ecuación a la tercera para producir el sistema equi-
valente:
4x ´8y `5z “ 2
7 3
2y ´ z “ (1.7)
4 2
y ´z “ 1 pE3 ´ E1 q

2. Paso 2. Reordenamos el sistema de ecuaciones (si es necesario) y seleccionamos un nuevo


pivote:

Reordenando tenemos
4x ´8y `5z “ 2
1 y ´z “ 1 (1.8)
7 3
2y ´ z “
4 2
Solución de Sistemas de Ecuaciones Lineales 13

3. Paso 3. Eliminamos todos los términos debajo de 1 .


Restamos -2 veces la segunda ecuación a la tercera para obtener el sistema equivalente:
4x ´8y `5z “ 2
y ´z “ 1 (1.9)
z 1
“ ´ pE3 ´ 2E2 q
4 2
4. Paso 4. Encontrar la solución de (1.5) usando sustitución regresiva
La solución de (1.5) es:
x “ 1
y “ ´1
z “ ´2

Factorización LU
La eliminación gaussiana es la principal herramienta para la solución directa de sistemas de ecua-
ciones lineales, por lo que debe ser ninguna sorpresa que aparezca en otras formas. En esta sección
veremos como los pasos utilizados para resolver un sistema de la forma Ax “ b mediante eliminación
gaussiana se pueden utilizar para obtener la factorización LU de la matriz A.
La factorización LU es la mejor forma de poner en práctica la eliminación de Gauss, especialmente
para la solución de varios sistemas de ecuaciones distintos con la misma matriz de coeficientes
asociada, es decir, para resolver la ecuación Ax “ b con diferentes valores de b para el mismo
A. Nótese que en la eliminación de Gauss el lado izquierdo A y el lado derecho b son modicados
dentro de el mismo bucle y no hay manera de salvar a las medidas adoptadas durante el proceso de
eliminación. Si la ecuación tiene que ser resuelta para diferentes valores de b, la etapa de eliminación
tiene hacer para hacer todo de nuevo. Esto proporciona la motivación para la descomposición LU ,
donde una matriz A se escribe como un producto de una inferior matriz triangular L y una matriz
triangular superior U. Es decir, se descompone A como A “ LU .
Ejemplo 1.2.2. Consideremos la siguiente matriz
» fi
2 3 2
— ffi
A :“ – 4 9 5fl
6 21 12
utilizando eliminacion gaussiana
» fi » fi » fi
2 3 2 2 3 2 2 3 2
— ffi
– 4 9 5 fl R2 ´ 2R1 Ñ –0 3 1fl Ñ –0 3 1fl
6 21 12 R3 ´ 3R1 0 12 6 R3 ´ 4R2 0 0 2
La matriz obtenida la llamaremos U . Notemos que la operación R2 ´ 2R1 es equivalente a multi-
plicar a la izquierda la matriz original por una matriz elemental:
» fi» fi » fi
1 0 0 2 3 2 2 3 2
–´2 1 0fl –4 9 5 fl “ –0 3 1 fl
0 0 1 6 21 12 6 21 12
14 Solución de Sistemas de Ecuaciones Lineales

En general, las operaciones que hemos realizado sobre la matriz original se pueden expresar como
el producto a izquierda de matrices elementales Gi cuyo producto es
» fi» fi» fi » fi
1 0 0 1 0 0 1 0 0 1 0 0
G3 G2 G1 “ – 0 1 0fl – 0 1 0fl –´2 1 0fl “ –´2 1 0fl
0 ´4 1 ´3 0 1 0 ´0 1 5 ´4 1
Entonces, G3 G2 G1 A “ U
» fi
1 0 0
L :“ G´1 ´1 ´1
1 G2 G3 “ –2 1 0fl
3 4 1
Entonces A “ LU es el producto de una matriz triangular inferior L y una matriz triangular
superior U . Naturalmente, esta es la factorización LU de A. Observe que la matriz U es la matriz
resukltante de la eliminación gaussiana y tiene los pivotes en su diagonal, mientras que L tiene 1
en la diagonal principal. Adicionalmente, L tiene la destacable propiedad de que en los elementos
debajo de su diagonal, cada entrada pi, jq es precisamente el multiplador usado en la eliminación
para eliminar la entrada pi, jq.

Ejemplo 1.2.3. Obtenga una factorización LU para la matriz


» fi
1 ´3 2
A “ –´2 8 ´1fl .
4 ´6 5

Solución.
» fi m21 “ ´2 » fi » fi
1 ´3 2 m31 “ 4
1 ´3 2 m32 “ 3
1 ´3 2
–´2 8 ´1fl ÝÑ –0 2 3fl ÝÑ –0 2 3 fl
4 ´6 5 0 6 ´3 0 0 ´12
» fi » fi » fi
1 ´3 2 1 0 0 1 0 0

U :“ 0 2 3 fl –
L :“ m21 1 fl
0 “ ´2– 1 0fl
0 0 ´12 m31 m32 1 4 3 1
Notemos que
» fi» fi » fi
1 0 0 1 ´3 2 1 ´3 2

LU “ ´2 1 0fl –0 2 3 fl “ –´2 8 ´1fl “ A
4 3 1 0 0 ´12 4 ´6 5
Si la matriz A es tal que la etapa de eliminación del M.E.G. se puede llevar a cabo (es decir si
piq
todos los pivotes aii ‰ 0, i “ 1, . . . , n ´ 1), entonces A “ LU , donde U es la matriz triangular
superior que resulta de la eliminación y L es la matriz triangular inferior de los multiplicadores
mij :
» fi
1 0 ¨¨¨ 0
— .. .. ffi
— m21 1 . .ffi
L“— — .
ffi.

– .. .. ..
. . 0fl
mn1 ¨ ¨ ¨ mnn´1 1
Solución de Sistemas de Ecuaciones Lineales 15

Solución de sistemas mediante factorización LU


"
Si A “ LU , entonces Ly “ b,
Ax “ b ðñ LpU xq “ b ðñ
U x “ y.
Por lo tanto, resolver un sistema Ax “ b es equivalente a:

1. resolver Ly “ b y, luego,

2. resolver U x “ y.

Como estos sistemas son triangulares (inferior y superior, respectivamente), el costo operacional
de resolver los dos sistemas es 2n2 flop.

Ejemplo 1.2.4. Use la factorización LU de A para resolver el sistema Ax “ b, donde


» fi » fi
2 3 2 12
A “ –4 9 15fl and b “ –24fl .
6 21 12 12

Los factores LU de la matriz de coeficientes fueron calculados en el ejemplo 1.2.2:


» fi » fi
1 0 0 2 3 3

L“ 2 1 0fl –
and U “ 0 3 1fl .
3 4 1 0 0 2

La estrategia a seguir es hacer U x “ y y resolver Ax “ LpU xq “ b mediante la solución de los


sistemas triangulares
Ly “ b and U x “ y.
Primero resolvemos el sistema triangular inferior Ly “ b usando sustitución progresiva:
» fi» fi » fi
1 0 0 y1 12
–2 1 0fl –y2 fl “ –24fl
3 4 1 y3 12

entonces obtenemos:

y1 “ 12,
y2 “ 24 ´ 2y1 “ 0,
y3 “ 12 ´ 3y1 ´ 4y2 “ ´24.

Finalmente, usamos sustitución regresiva para resolver el sistema triangular superior U x “ y :


» fi» fi » fi
2 3 3 x1 12
–0 3 1fl –x2 fl “ – 0 fl
0 0 2 x3 ´24
16 Solución de Sistemas de Ecuaciones Lineales

y obtenemos:

x1 “ p12 ´ 2x2 ´ 2x3 q{2 “ 6,


x2 “ p0 ´ 3x3 q{3 “ 6,
x3 “ ´24{4 “ ´6.

Una enorme ventaja de usar la factorización LU en vez de usar directamente la eliminación gaus-
siana es que se puede usar el trabajo realizado para resolver cualquier otro sistema Ax “ r
b.

Ejemplo 1.2.5. Resuelva el sistema Ax “ b. donde


» fi » fi
2 3 2 6

A :“ 4 9 5fl b :“ –24fl
6 21 12 70

Debemos resolver Ly “ b, entoces


» fi» fi » fi
1 0 0 y1 6
–2 1 0fl –y2 fl “ –24fl
3 4 1 y3 70

luego,

y1 “ 6
y2 “ 24 ´ 2y1 “ 12
y3 “ 70 ´ 3y1 ´ 4y2 “ 4

además , como U x “ y así :


» fi» fi » fi
2 2 2 x1 6
–0 3 3fl –x2 fl “ –12fl
0 0 4 x3 4

x1 “ p62x2 ´ 2x3 q{2 “ ´1


x2 “ p12 ´ 3x3 “q{3 “ 3
x3 “ 4{4 “ 1

Ejemplo 1.2.6. Resolver el siguiente sistema usando la factorización LU de la matriz del sistema.
» fi» fi » fi
1 ´3 2 x1 1
–´2 8 ´1fl –x2 fl “ –2fl .
4 ´6 5 x3 4
Solución de Sistemas de Ecuaciones Lineales 17

Solución. Sabemos que


» fi» fi » fi
1 0 0 1 ´3 2 1 ´3 2
–´2 1 0fl –0 2 3 fl “ –´2 8 ´1fl
4 3 1 0 0 ´12 4 ´6 5
debemos resolver primero el sistema
» fi» fi » fi
1 0 0 y1 1
–´2 1 0fl –y2 fl “ –2fl .
4 3 1 y3 4
cuya solución obtenida por sustitución progresiva es
» fi » fi
y1 1
–y2 fl “ – 4 fl .
y3 ´12
Luego resolvemos » fi» fi » fi
1 ´3 2 x1 1
–0 2 3 fl –x2 fl “ – 4 fl .
0 0 ´12 x3 ´12
cuya solución obtenida por sustitución regresiva es
» fi » fi
x1 1{2
–x2 fl “ –1{2fl .
x3 1
Factorizar la matriz A “ LU consiste simplemente en triangularizar A por eliminación gaussiana
y almacenar la matriz triangular L de multiplicadores. Por lo tanto, el costo de factorizar la
matriz A “ LU es « 32 n3 flop. Como 2n2 ! 32 n3 , el costo operacional total para resolver un
sistema mediante factorización LU es « 23 n3 flop. Muchas veces deben resolverse varios sistemas
de ecuaciones con la misma matriz y distintos segundos miembros b1 , . . . , bm (por ejemplo, para
calcular valores propios de A. En tal caso, conviene primero factorizar la matriz A “ LU ( una
sola vez!) y luego resolver los pares de sistemas triangulares para cada segundo miembro:
" "
Ly 1 “ b1 , Ly m “ bm ,
¨ ¨ ¨
U x1 “ y 1 , U xm “ y m .
Así, la parte más costosa del proceso (la factorización: 23 n3 ) se hace una sola vez y sólo se repite
la parte menos costosa (la solución de los sistemas triangulares: 2n2 ). Hay algoritmos ( Crout,
Doolitle) que permiten obtener directamente la factorización LU de una matriz, pero el costo es
el mismo que el de hacerlo por eliminación gaussiana.
Observacion 1.2.2. La matriz triangular superior puede calcularse utilizando las mismas posi-
ciones de memoria en las que inicialmente está almacenada A. A fin de no tener que utilizar una
matriz más para guardar L, pueden almacenarse cada multiplicador mij en lugar de la entrada aij
que se hace cero en ese paso. Ésta no es la forma en que procede Matlab, pues este software no
pretende optimizar el costo de almacenamiento. Sin embargo, hay muchos softwares que utilizan
este truco a fin de evitar tener que usar memoria adicional para almacenar los multiplicadores.
18 Solución de Sistemas de Ecuaciones Lineales

Algoritmo 1.4: Algoritmo (por eliminación gaussiana)


1 for k “ 1, . . . , n ´ 1 do
2 for i “ k ` 1, . . . , n do
pkq pkq
3 mik “ aik {akk
4 for j “ k ` 1, . . . , n do
pk`1q pkq pkq
5 aij “ aij ´ mik akj

6 y1 “ b1
7 for i “ 2, . . . , n do
ři´1
8 yi “ bi ´ j“1 mij yj
pnq
9 xn “ yn {ann
10 for i “ n ´ 1,
´ . . . , 1řdo ¯
1 n piq
11 xi “ piq yi ´ j“i`1 aij xj
aii

Necesidad del pivoteo


El algoritmo de eliminación gaussiana (o el de factorización LU ) sólo puede llevarse a cabo si todos
pkq
los pivotes son no nulos:akk ‰ 0.

Algoritmo 1.5: Algoritmo


1 for k “ 1, . . . , n ´ 1 do
2 for i “ k ` 1, . . . , n do
pkq pkq
3 mik “ aik {akk
4 for j “ k ` 1, . . . , n do
pk`1q pkq pkq
5 aij “ aij ´ mik akj

Ejemplo 1.2.7. El sistema de ecuaciones siguiente tiene matriz no singular pues su determinante
es 1: » fi» fi » fi
0 1 1 x1 2
–1 2 3fl –x2 fl “ –4fl
2 0 1 x3 0
p1q p1q
Sin embargo el algoritmo anterior no puede aplicarse pues a11 “ 0 y, por lo tanto, m21 “ a21 {a11
p1q p1q
y m31 “ a31 {a11 no están definidos.
Para poder resolver el sistema, debe intercambiarse la primera ecuación con cualquiera de las otras
de manera de evitar el pivote cero. Por ejemplo:
» fi» fi » fi » fi» fi » fi
0 1 1 x1 2 1 2 3 x1 4
–1 2 3fl –x2 fl “ –4fl ÝÑ –0 1 1fl –x2 fl “ –2fl
2 0 1 x3 0 2 0 1 x3 0
Solución de Sistemas de Ecuaciones Lineales 19

Por otra parte, puede demostrarse que la estabilidad del método de eliminación gaussiana en
cuanto a propagación de errores de redondeo se deteriora si los multiplicadores mij son números
muy grandes en módulo. Una forma de evitar ambos inconvenientes, pivotes nulos y multiplicadores
grandes en módulo, es realizar en cada paso el intercambio de ecuaciones que produzca el pivote
mayor posible en módulo. Esta estrategia se denomina pivoteo parcial.

Estrategia de pivoteo parcial

» p1q p1q p1q fi


a11 a12 ¨¨¨ ¨¨¨ ¨¨¨ a1n
— 0 p2q
a22 ¨¨¨ ¨¨¨ ¨¨¨ a2n ffi
p2q
— ffi
— . .. .. .. ffi
— . . . ffi
— . . ffi
— . ffi
— . pkq pkq ffi
— . 0 akk ¨ ¨ ¨ akn ffi
— ffi
— .. .. .. .. ffi
– . . . . fl
pkq pkq
0 ¨¨¨ 0 ank ¨ ¨ ¨ ann

En el paso k-ésimo se revisa el vector


» fi
pkq
akk
— . ffi
— . ffi
– . fl
pkq
ank

y se busca la fila l en la que aparece la entrada mayor en módulo:


ˇ ˇ !ˇ ˇ)
ˇ pkq ˇ ˇ pkq ˇ
k ď l ď n : ˇalk ˇ “ máx ˇaik ˇ .
kďiďn

Luego, si l ‰ k, se intercambia esa fila con la k-ésima. Si la matriz es no singular, siempre habrá
una entrada no
ˇ nulaˇ en
ˇ eseˇ vector, por lo que así se evitan los pivotes nulos. Además, después del
ˇ pkq ˇ ˇ pkq ˇ
intercambio, ˇakk ˇ ě ˇaik ˇ , i “ k, . . . , n. Por lo tanto, los multiplicadores no pueden pasar de 1 en
módulo: ˇ ˇ
ˇ pkq ˇ
ˇaik ˇ
|mik | “ ˇˇ ˇ ď 1, i “ k, . . . , n.
pkq ˇ
ˇakk ˇ

Esta estrategia de pivoteo parcial, combinada con el método de eliminación gaussiana, resulta
estable respecto a la propagación de errores de redondeo.

Matrices de permutación
Si hay intercambios de filas, las matrices triangulares L y U que se obtienen por el método de
eliminación gaussiana con estrategia de pivoteo parcial, ya no factorizan a A, sino que factorizan a
la matriz que se obtiene después de aplicar a A todos los intercambios de filas que tuvieron lugar.
20 Solución de Sistemas de Ecuaciones Lineales

Se llama matriz de permutación a toda matriz que se obtenga intercambiando filas de I. Por
ejemplo, las siguientes son todas las matrices de permutación 3 ˆ 3:
» fi» fi» fi» fi» fi» fi
1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1
–0 1 0fl –0 0 1fl –1 0 0fl –0 0 1fl –0 1 0fl –1 0 0fl
0 0 1 0 1 0 0 0 1 1 0 0 1 0 0 0 1 0

Los intercambios de filas de una matriz se obtienen multiplicando a izquierda por una matriz de
permutación. Por ejemplo:
» fi» fi » fi
0 1 0 1 2 3 4 5 6
–0 0 1fl –4 5 6fl “ –7 8 9fl
1 0 0 7 8 9 1 2 3

Factorización LU con estrategia de pivoteo parcial


Teorema 1.2.1. Si A es una matriz no singular, entonces existen matrices no singulares L trian-
gular inferior, U triangular superior y una matriz de permutación P , tales que LU “ P A.

Estas matrices pueden obtenerse mediante el método de eliminación gaussiana con estrategia de
pivoteo parcial. Para resolver un sistema lineal Ax “ b, el método de factorización LU se plantea
como sigue:
"
Ly “ P b,
Ax “ b ðñ P Ax “ P b ðñ LpU xq “ P b ðñ
U x “ y.

Factorización LU con pivoteo en Matlab


Veamos que hace el comando [L,U]=lu(A) cuando L es una matriz psicológicamente triangular
inferior, U es una matriz triangular superior y L*U = A.
>> A=[1 2 3;4 5 6;7 8 0];
>> [L,U]=lu(A)

L = 0.1429 1.0000 0
0.5714 0.5000 1.0000
1.0000 0 0

U = 7.0000 8.0000 0
0 0.8571 3.0000
0 0 4.5000
>> L*U
ans = 1 2 3
4 5 6
7 8 0
Usemos el comando:[L,U,P]=lu(A) para L una matriz triangular inferior, U es una matriz trian-
gular superior, P es una matriz de permutación y L*U = P*A.
Solución de Sistemas de Ecuaciones Lineales 21

>> A=[1 2 3;4 5 6;7 8 0];


>> [L,U,P]=lu(A)

L = 1.0000 0 0
0.1429 1.0000 0
0.5714 0.5000 1.0000

U = 7.0000 8.0000 0
0 0.8571 3.0000
0 0 4.5000

P = 0 0 1
1 0 0
0 1 0
Veamos como usar el comando [L,U,P]=lu(A), donde L es una matriz triangular inferior, U es una
matriz triangular superior, P es una matriz de permutación y L*U = P*A.

>> L*U

ans = 7 8 0
1 2 3
4 5 6

>> P*A

ans = 7 8 0
1 2 3
4 5 6

Matrices banda

En análisis numérico, una matriz dispersa es una matriz en la que la mayoría de los elementos son
nulos. Por el contrario, si la mayoría de los elementos son no nulos, entonces la matriz se considera
densa. Un caso particular de las matrices dispersas son las matrices banda. Una matriz se le llama
matriz banda cuando es una matriz donde los valores no nulos son confinados en un entorno de la
diagonal principal, formando una banda de valores no nulos que completan la diagonal principal
de la matriz y más diagonales en cada uno de sus costados.

Escrito formalmente, se dice que A “ paij q P Rnˆn es una matriz banda si aij “ 0 cuando |i´j| ě ℓ,
22 Solución de Sistemas de Ecuaciones Lineales

con ℓ ! n. Al número ℓ se lo llama el ancho de banda de la matriz.


» fi
ˆ ¨¨¨ ˆ 0 ¨¨¨ 0
—. . .. . .ffi
— .. .. . . . .. ffi
— ffi
— .. .. ffi
— . . 0ffi
—ˆ ffi
— ffi
— .. .. ffi
—0 . . ˆffi Ò
— ffi
— .. . . . . .. .. ffi ℓ
–. . . . .fl
Ó
0 ¨¨¨ 0 ˆ ¨¨¨ ˆ
ÐÝ ℓ ÝÑ

La matrices banda son un caso especial de matrices dispersas y, como tales, deben almacenarse
como sparse en Matlab a fin de reducir el costo de almacenamiento. Estas matrices aparecen
muy habitualmente en las aplicaciones; especialmente en la resolución de problemas de valores de
contorno para ecuaciones diferenciales.

Factorización LU de matrices banda


Si una matriz banda A puede factorizarse LU sin necesidad de pivoteo, entonces las matrices
triangulares L y U también son banda con el mismo ancho de banda que A.
» fi» fi

ˆ 0 ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ 0 ffi—ˆ ¨¨¨ ˆ 0 ¨¨¨ 0ffi
—. .. ffi .. ffi
—. .. .. —
ffi— .. .. .. ffi
—.
— . . .ffi —
ffi— 0 . . . .ffiffi
— ffi— ffi
— .. .. . ffi
.. ffi—.
—. .. .. .. ffi

—ˆ . . ffi— . . . . 0ffi

A “ — ffi— ffi

.. .. .. . ffi—ffi
— .. .. .. ffi
. .. ffi
— ffi
—0
— . . ffi— .
— . . ˆffi ffi

—. .. .. ..
ffi—
ffi— . .. ..

.. ffi Ò
—.
. 0ffi ffi— ..

—.

. . fl–
. . .ffiffi
fl ℓ
0 ¨¨¨ 0 ˆ ¨¨¨ ˆ 0 ¨¨¨ ¨¨¨ ¨¨¨ 0 ˆ Ó
L ÐÝ ℓ ÝÑ U

Por eso se dice que la factorización LU sin pivoteo preserva la estructura banda de las matrices.

Matrices tridiagonales
Un caso extremo de matrices banda es el de las matrices tridiagonales (ℓ “ 2):
» fi
b1 c1 0 ¨¨¨ 0
— .. . .. .. ffi
—a
— 2 . .. . . ffi

— .. .. .. ffi
A“— —0 . . . ffi
0 ffiPR
nˆn
—. ffi
—. .. . .. ffi
–. . .. . c fl n´1
0 ¨¨¨ 0 an bn

Estas matrices aparecen también muy habitualmente, por ejemplo, al interpolar por splines o al
resolver problemas de valores de contorno para ecuaciones diferenciales ordinarias.
Solución de Sistemas de Ecuaciones Lineales 23

Factorización LU de matrices tridiagonales


Cuando se cumplen las siguientes desigualdades,

|b1 | ą |c1 |,
|bi | ě |ai | ` |ci |, i “ 1, . . . , n,
|bn | ą |an |,

las matrices tridiagonales pueden factorizarse LU sin necesidad de pivoteo y este procedimiento
resulta estable respecto a la propagación de errores de redondeo:
» fi» fi
1 0 ¨¨¨ ¨¨¨ 0 β1 γ1 ¨¨¨
0 0
— ffi— ffi

— .. .. .. ffi—
ffi— .. ..
.. .. ffi

—α2

. . .ffiffi— 0
— . . . . ffi


— .. .. .. .. ffi —
ffi— .
— .
.. .. .. ffi

A “ —
— 0 . . . .ffi ffi— . . . . 0 ffiffi
— ffi— ffi
— . .. .. .. ffi— . .. .. ffi
— . ffi— .
— .

. . . 0ffi fl– .
— . . γn´1 ffi


0 ¨ ¨ ¨ 0 αn 1 0 ¨¨¨ ¨¨¨ 0 βn
L U

‚ Las entradas αi , βi y γi de las matrices L y U pueden calcularse muy fácilmente:


» fi » fi» fi
b1 c1 0 ¨¨¨ 0 1 0 ¨¨¨ ¨¨¨ 0 β1 γ1 0 ¨¨¨ 0
— .. .. ffi — .. .. ffi — .. .. ffi
—a b2 c2 . . ffi — . .ffi — . . ffi
— 2 ffi —α2 1 ffi— 0 β2 γ2 ffi
— ffi — . —ffi ffi
— .. .. .. ffi — .. .. ..
. .. ffi —. .. .. .. ffi
—0 . . . 0 ffi“—0 . . ffi — .. . . . 0 ffi
—. ffi —. ffi— . ffi
—. .. .. .. ffi — .. .. .. ffi— .. ffi
–. . . . cn´1 fl – .. . . . 0fl – .. . βn´1 γn´1 fl
0 ¨¨¨ 0 an bn 0 ¨ ¨ ¨ 0 αn 1 0 ¨¨¨ ¨¨¨ 0 βn

1β1 “ b1 ùñ β1 “ b 1
1γ1 “ c1 ùñ γ1 “ c 1
α2 β1 “ a2 ùñ α2 “ a2 {β1
α2 γ1 ` 1β2 “ b2 ùñ β2 “ b2 ´ α2 γ1
¨¨¨ ¨¨¨
1γn´1 “ cn´1 ùñ γn´1 “ cn´1
αn βn´1 “ an ùñ αn “ an {βn´1
αn γn´1 ` 1βn “ bn ùñ βn “ bn ´ αn γn´1

Así obtenemos el siguiente algoritmo ( Algoritmo de Thomas):

Costo operacional:
n
ÿ
3 “ 3pn ´ 1q flop
i“2
24 Solución de Sistemas de Ecuaciones Lineales

Algoritmo 1.6: Algoritmo de Thomas


1 for i “ 2, . . . , n do
2 γi´1 “ ci´1
3 αi “ ai {βi´1
4 βi “ bi ´ αi γi´1

Solución de sistemas con matrices tridiagonales


Al resolver un sistema Ax “ d con matriz A tridiagonal, a partir de su factorización LU ,
"
Ly “ d,
Ax “ d ðñ LpU xq “ d ðñ
U x “ y,

los sistemas triangulares también pueden resolverse muy fácilmente:


» fi» fi » fi
1 0 ¨¨¨ ¨¨¨ 0 y1 d1
— .. .. ffi — ffi — ffi
—α 1 . .ffi — ffi — ffi
— 2 ffi — y2 ffi — d2 ffi
— .. . .. ffi — ffi —
. — .. ffi “ — .. ffi
— . .. . .. ffi ffi
—0 ffi— . ffi — . ffi Ñ
— . ffi— ffi — ffi
— . .. . .. ffi— ffi — ffi
– . . .. . 0fl –yn´1 fl –dn´1 fl
0 ¨ ¨ ¨ 0 αn 1 yn dn

Algoritmo 1.7: Algoritmo


1 y1 “ d1
2 for i “ 2, . . . , n do
3 yi “ di ´ αi yi´1

Costo operacional:
n
ÿ
2 “ 2pn ´ 1q flop
i“2
» fi» fi » fi
β1 γ1 0 ¨¨¨ 0 x1 y1
— .. .. .. .. ffi — ffi — ffi
—0 . . . . ffi — ffi — ffi
— ffi — x2 ffi — y2 ffi
—. .. .. .. ffi— . ffi — . ffi
—. ffi— ffi — ffi
—. . . . 0 ffi — .. ffi “ — .. ffi Ñ
—. ffi— ffi — ffi
—. .. ffi— ffi — ffi
–. . βn´1 γn´1 fl –xn´1 fl –yn´1 fl
0 ¨¨¨ ¨¨¨ 0 βn xn yn
Costo operacional:
n´1
ÿ
1` 3 “ 1 ` 3pn ´ 1q flop
i“1
Solución de Sistemas de Ecuaciones Lineales 25

Algoritmo 1.8: Algoritmo


1 xn “ yn {βn
2 for i “ n ´ 1, . . . , 1 do
3 xi “ pyi ´ γi xi`1 q {βi

El costo total de resolver un sistema de ecuaciomes con matriz tridiagonal mediante el algoritmo
de Thomas es de 3pn ´ 1q ` 2pn ´ 1q ` 1 ` 3pn ´ 2q « 8n flop.
Compárese este costo con el del método de eliminación gaussiana aplicado a ciegas sin sacar
provecho de la estructura tridiagonal de la matriz: 32 n3 .
Por ejemplo, un sistema 1000 ˆ 1000 cuesta aproximadamente 666 666 666 flop por M.E.G. y apro-
ximadamente 8 000 flop mediante este algoritmo.

Matrices definidas positivas


Una matriz simétrica A P Rnˆn se dice definida positiva si

xt Ax ą 0 @x P Rn : x ‰ 0.

Estas matrices también aparecen muy habitualmente, por ejemplo, al ajustar parámetros de un
modelo por cuadrados mínimos o al resolver problemas de valores de contorno para ecuaciones
diferenciales.

Teorema 1.2.2. Sea A P Rnˆn una matriz simétrica. A es definida positiva si y sólo si se cumple
cualquiera de las siguientes condiciones:

1. los valores propios de A son todos positivos;

2. los determinantes de las submatrices principales de A son todos positivos;

3. existe una matriz L, triangular inferior y no singular, tal que A “ LLt .

Esta última propiedad nos dice que si la matriz es simétrica y definida positiva, siempre puede
obtenerse una factorización en matrices triangulares sin necesidad de pivoteo. Además, no hace
falta calcular la matriz triangular superior, pues es la transpuesta de la triangular inferior.Veremos
que esto reduce el costo operacional a la mitad.

Método de Cholesky
Como ya hemos visto, cualquier matriz cuadrada A con pivotes no nulos puede ser escrita como el
producto de una matriz triangular inferior L y una matriz triangular superior U . Sin embargo, si
A es simétrica y definida positiva, se pueden escoger los factores tales que U es la transpuesta de
L, y esto se llama la descomposición o factorización de Cholesky. Al igual que la descomposición
LU , la descomposición de Cholesky es usada para resolver sistemas de ecuaciones lineales. Cuando
es aplicable, la descomposición de Cholesky es dos veces más eficiente que la descomposición LU .
26 Solución de Sistemas de Ecuaciones Lineales

Una variante de la factorización de Cholesky es de la forma A “ RT R , donde R es una matriz


triangular superior, en algunas aplicaciones se desea ver la matriz en esa forma y no de otra.
Ahora bien, ya que A es simétrica y definida positiva, podemos asegurar que los elementos sobre
la diagonal de L son positivos y los restantes elementos reales desde luego.
El étodo de Cholesky se basa en calcular directamente la matriz L tal que A “ LLt . Este proce-
dimiento se aplica solamente a matrices simétricas y definidas positivas. Para el cálculo de L se
procede como en el caso de matrices tridiagonales y se obtiene el siguiente algoritmo:

Algoritmo 1.9: Algoritmo


1 for j “ 1,b. . . , n do
ř
2 ljj “ ajj ´ j´1 2
k“1 ljk
3 for i “ j ` 1,
´ . . . , nřdo ¯
1 j´1
4 lij “ ljj aij ´ k“1 lik ljk

El costo operacional es:


«j´1 ˜ j´1
¸ff
n
ÿ ÿ n
ÿ ÿ
2` 1` 2
j“1 k“1 i“j`1 k“1
« 31 n3 flop,
` n raíces cuadradas.
Para resolver un sistema de ecuaciones Ax “ b con matriz simétrica y definida positiva por el
método de Cholesky, una vez calculada L, se tiene:
"
t Ly “ b,
Ax “ b ðñ LpL xq “ b ðñ
Lt x “ y.

Para resolver los sistemas Ly “ b y Lt x “ y, se utiliza el algoritmo que ya conocemos para matrices
triangulares, cuyo costo operacional es de « 2n2 . Por lo tanto el costo operacional total del método
de Cholesky es de « 31 n3 . Vale decir, aproximadamente la mitad que el del M.E.G. Además,
se demuestra que si la matriz es simétrica y definida positiva, los métodos de factorización son
estables respecto a la propagación de errores de redondeo sin necesidad de estrategia de pivoteo.
En particular, el método de Cholesky es estable.

Número de condición
› ›
Definición 1.2.1. Se define el número de condición de la matriz A como condpAq :“ }A} ›A´1 › .

Teorema 1.2.3. Sea A una matriz y sea } ¨ } una norma vectorial. Entonces el número de condi-
cioón satisface
máx }Ax}
}x}“1
condpAq “ (1.10)
mı́n }Ax}
}x}“1
Solución de Sistemas de Ecuaciones Lineales 27

De la ecuación (1.10) se sigue que el número de condición condpAq es una medida de como cambia
un vector al ser multiplicado por la matriz A. Tambien de (1.10) se sigue que condpAq ě 1.

Teorema 1.2.4. Supongamos que A P Rnˆn es una matriz no singular y b P Rn . Si Ax “ b y


Apx ` δxq “ b ` δb. Entonces,

}δx} ` › ›˘ }δb}
ď }A} ›A´1 › .
}x} }b}
Consideremos el siguiente ejemplo:
„ „  „  

´0,10 1,00 x1 ´2,0 10,0
“ . Solución exacta: x “ .
0,11 ´1,00 x2 2,1 ´1,0

Supongamos que el segundo miembro b ha sido redondeado a un dígito decimal y que su valor
redondeado a dos dígitos decimales es b “ p´2,00, 2,14qt . Si resolvemos el sistema con este segundo
miembro se tiene:
„ „  „  „ 
´0,10 1,00 x1 ´2,00 14,0
“ . Solución exacta: x “ .
0,11 ´1,00 x2 2,14 ´0,6

Notemos que un error de menos del 2 % en los datos produjo un error del 40 % en la solución!!!
El número de condición de la matriz de un sistema también rige la propagación de errores en la
misma matriz.

Teorema 1.2.5. Si Ax “ b y pA`δAqpx`δxq “ pb`δbq, con A no singular y δA suficientemente


pequeño como para que condpAq }δA}
}A} ă 1, entonces,
ˆ ˙
}δx} condpAq }δA} }δb}
ď ` .
}x} 1 ´ condpAq }δA}
}A}
}A} }b}

Consideremos de nuevo el mismo ejemplo:


„ „  „  „

´0,10 1,00 x1 ´2,0 10,0
“ . Solución exacta: x “ .
0,11 ´1,00 x2 2,1 ´1,0

Supongamos ahora que la entrada a11 de la matriz es en realidad ´0,102 en lugar de ´0,10 . Si
resolvemos el sistema con este dato modificado se tiene:
„ „  „  „ 
´0,102 1,00 x1 ´2,00 12,500
“ . Solución exacta: x “ .
0,11 ´1,00 x2 2,1 ´0,725

Esta vez un error del 2 % en los datos produjo un error de alrededor del 25 % en la solución. Otra
vez, los errores en los datos se amplificaron, pese a que no se ha usado método numérico alguno!
La capacidad de propagar errores en los datos de un sistema Ax “ b depende esencialmente de
la matriz A y no del segundo miembro b. Si condpAq « 1 decimos que el sistema está bien
condicionado. Si condpAq " 1 decimos que el sistema está mal condicionado.
El número de condición de la matriz también determina la capacidad de propagar los errores de
redondeo cuando el sistema se resuelve computacionalmente.
28 Solución de Sistemas de Ecuaciones Lineales

Teorema 1.2.6. Sea x P Rn la solución del sistema Ax “ b con A P Rnˆn no singular y b P Rn .


Sea x̂ P Rn la solución calculada mediante el método de eliminación gaussiana con estrategia
!ˇ de ˇpi-
)
1 ˇ pkq ˇ
voteo parcial, en un computador con constante de precisión ε. Sea p “ }A}8 máx1ďi,j,kďn ˇaij ˇ .
Entonces, si el sistema no está demasiado mal condicionado de manera que ε cond A ă 1, se tiene
la siguiente acotación del error relativo de la solución calculada:
}x ´ x̂}8 cond8 pAq
ď 2n3 pε .
}x}8 1 ´ ε cond8 pAq

1.3 Métodos Iterativos

En esta estudiaremos procedimientos iterativos para resolver un sistema de ecuaciones lineales. El


primero de ellos es el método de Jacobi el cual esta basado en la idea de punto fijo y el segundo es el
método de Gauss-Seidel el cual es una modificación simple del método de Jacobi. Estableceremos
condiciones que garanticen la convergencia de estos métodos y y veremos que en algunos casos
donde no se garantiza la convergencia sera suficiente un reorganizamiento de las ecuaciones para
garantizar la convergencia.
Considere el sistema de ecuaciones Ax “ b, con A P Rnˆn no singular y b P Rn . Un método
iterativo para resolver el sistema construye, a partir de un vector inicial xp0q , una sucesión de
vectores xp1q , xp2q , . . . , xpkq , . . . la que, bajo condiciones apropiadas, resultará convergente a x. Si
suponemos A “ N ´ P , donde N debe ser invertible, entonces
Ax “ b ðñ Nx “ P x ` b ðñ x “ N ´1 P x ` N ´1 b.
Se usa la igualdad N x “ P x ` b para definir un esquema general para construir la sucesión txpkq u.
Algoritmo del esquema general:
Dado el vector inicial xp0q ,
para
ˇ k “ 1, 2, . . . resolver:
ˇ
ˇ N xpkq “ P xpk´1q ` b,
hasta que se satisfaga un criterio de detención.
M :“ N ´1 P ( matriz de iteración) y epkq :“ x ´ xpkq ( error de xpkq ), para cada k “ 1, 2, . . . se
tiene
epkq “ M k ep0q , k “ 1, 2, . . .

Métodos Basicos
Considere el sistema

a11 x1 ` a12 x2 ` ¨ ¨ ¨ ` a1n xn “ b1


a21 x1 ` a22 x2 ` ¨ ¨ ¨ ` a2n xn “ b2
.. .. ,
. .
an1 x1 ` an2 x2 ` ¨ ¨ ¨ ` ann xn “ bn
Solución de Sistemas de Ecuaciones Lineales 29

y despejemos xi en la ecuación i, esto es

b1 ´ pa12 x2 ` a13 x3 ` ¨ ¨ ¨ ` a1n xn q


x1 “
a11
b2 ´ pa21 x1 ` a23 x3 ` ¨ ¨ ¨ ` a2n xn q
x2 “
a22 ,
.. ..
. .
bn ´ pan1 x1 ` an2 x2 ` ¨ ¨ ¨ ` ann´1 xn´1 q
xn “
ann

como conocemos el dato inicial podemos generar una sucesión de aproximaciones

b1 ´ pa12 xk2 ` a13 xk3 ` ¨ ¨ ¨ ` a1n xkn q


xk`1
1 “ k “ 0, 1, 2 . . .
a11
b2 ´ pa21 xk1 ` a23 xk3 ` ¨ ¨ ¨ ` a2n xkn q
xk`1
2 “ k “ 0, 1, 2 . . .
a22
.. ..
. .
bi ´ pai1 xk1 ` ¨ ¨ ¨ ` aii´1 xki´1 ` aii`1 xki`1 ` ¨ ¨ ¨ ` ain xkn q
xk`1
i “ k “ 0, 1, 2 . . .
aii
.. ..
. .
bn ´ pan1 xk1 ` an2 xk2 ` ¨ ¨ ¨ ` ann´1 xkn´1 q
xk`1
n “ k “ 0, 1, 2 . . .
ann
(1.11)
pkq
El método descrito en (1.11) para calcular la componentes del vector x es conocido como método
de Jacobi.

Algoritmo 1.10: Algoritmo Jacobi


1 for i “ 1, . . . ,”n do ı
pkq 1
ři´1 pk´1q řn pk´1q
2 xi “ aii bi ´ j“1 aij xj ´ j“i`1 aij xj

Una forma de mejorar el método de Jacobi es aprovechar en el paso k ` 1, los valores recien
pk`1q
calculados xj en la misma iteración. Por ejemplo, para aproximar xk`1 5 en 1.11 solo usan
valores calculados en el paso k, en vez de eso se pueden usar los valores xk`1
1 , xk`1
2 , xk`1
3 , xk`1
4 que
ya se conocen. Veamos lo anterior en forma general:
30 Solución de Sistemas de Ecuaciones Lineales

b1 ´ pa12 xk2 ` a13 xk3 ` ¨ ¨ ¨ ` a1n xkn q


xk`1
1 “ k “ 0, 1, 2 . . .
a11
b2 ´ pa21 xk`1 ` a23 xk3 ` ¨ ¨ ¨ ` a2n xkn q
xk`1
2 “ 1
k “ 0, 1, 2 . . .
a22
.. ..
. .
bi ´ pai1 xk`1
1 ` ¨ ¨ ¨ ` aii´1 xk`1 k k
i´1 ` aii`1 xi`1 ` ¨ ¨ ¨ ` ain xn q
xk`1
i “ k “ 0, 1, 2 . . .
aii
.. ..
. .
bn ´ pan1 xk`1
1 ` an2 xk`1
2 ` ¨ ¨ ¨ ` ann´1 xk`1
n´1 q
xk`1
n “ k “ 0, 1, 2 . . .
ann
(1.12)
El método descrito en (1.12) para calcular la componentes del vector xpkq es conocido como método
de Gauss-Seidel.

Algoritmo 1.11: Algoritmo Gauss


1 for i “ 1, . . . ,”n do ı
pkq 1 ři´1 pkq řn pk´1q
2 xi “ aii bi ´ j“1 aij xj ´ j“i`1 aij xj

Una aceleración del método de Guss-Seidel es posible si se introduce un factor de relajación ω,


resultando el método SOR:

ˆ ˙
b1 ´ pa12 xk2 ` a13 xk3 ` ¨ ¨ ¨ ` a1n xkn q
xk`1
1 “ ω ` p1 ´ ωqxk1
a11
˜ ¸
b2 ´ pa21 xk`1 ` a23 xk3 ` ¨ ¨ ¨ ` a2n xkn q
xk`1
2 “ ω 1
` p1 ´ ωqxk2 ,
a22
.. ..
. . ˜ ¸
bi ´ pai1 xk`1
1 ` ¨ ¨ ¨ ` aii´1 xk`1 k k
i´1 ` aii`1 xi`1 ` ¨ ¨ ¨ ` ain xn q
xk`1
i “ ω ` p1 ´ ωqxki ,
aii
.. ..
. . ˜ ¸
bn ´ pan1 xk`1
1 ` an2 xk`1
2 ` ¨ ¨ ¨ ` ann´1 xk`1
n´1 q
xk`1
n “ ω ` p1 ´ ωqxkn ,
ann
(1.13)
Si ω “ 1 el método SOR corresponde al método de Gaus Seidel.
Consideremos un ejemplo numérico donde veamos en acción los tres métodos introducidos:
Solución de Sistemas de Ecuaciones Lineales 31

Algoritmo 1.12: Algoritmo Gauss


1 for i “ 1, . . .!, n do
” ı)
pkq ř pkq řn pk´1q pk´1q
2 xi “ ω a1ii bi ´ i´1 j“1 aij xj ´ j“i`1 aij xj ` p1 ´ ωqxi

Ejemplo 1.3.1 (Jacobi iteration). Sea


» fi » fi
2 ´1 0 1
A “ – ´1 3 ´1 fl , b“– 8 fl
0 ´1 2 ´5

initial vector.

Solución. Reescribiendo las ecuaciones, el método de Jacobi nos da:

pkq 1 pk´1q 1
x1 “ x `
2 2 2
pkq 1 pk´1q 1 pk´1q 8
x2 “ x ` x `
3 1 3 3 3
pkq 1 pk´1q 5
x3 “ x ´
2 2 2

Escribimos el método de Jacobi como xpkq “ M J xpk´1q ` h, donde


» 1 fi » 1 fi
0 2 0 2
MJ “ – 1
3 0 1
3
fl, h“– 8
3

1
0 2 0 ´ 25

Ahora, si usamos el método de Gauss-Seidel

pkq 1 pk´1q 1
x1 “ x `
2 2 2
pkq 1 pkq 1 pk´1q 8 1 pk´1q 1 pk´1q 17
x2 “ x ` x3 ` “ x2 ` x3 `
3 1 3 3 6 3 16
pkq 1 pkq 5 1 pk´1q 1 pk´1q 13
x3 “ x ´ “ x ` x3 `
2 2 2 12 2 6 12

escribimos el esquema iterativo como xpkq “ M GS xpk´1q ` h, donde


» 1 fi » 1 fi
0 2 0 2
M GS “– 0 1
6
1
3
fl, h“– 17
6

1 1 13
0 12 6 ´ 12

Repetimos el ejemplo anterior usando la iteración de SOR con ω “ 1,1.


32 Solución de Sistemas de Ecuaciones Lineales

„ 
pkq 1 pk´1q 1 pk´1q
x1 “ ω x2 ` ` p1 ´ ωqx1
2 2
„ 
pkq 1 pkq 1 pk´1q 8 pk´1q
x2 “ ω x1 ` x3 ` ` p1 ´ ωqx2
3 3 3
„ 
pkq 1 pkq 5 pk´1q
x3 “ ω x2 ´ ` p1 ´ ωqx3
2 2

Escribimos el método iterativo SOR como:

xpkq “ M ω xpk´1q ` h,

donde
» fi » fi
´0,0100 0,5050 0 0,5050
Mω “ – 0 0,1583 0,3367 fl , h “ – 2,8617 fl
0 0,0842 0,1583 ´1,0942
En este ejemplo, la convergencia del método SOR es mas rápida que la del método de GaussSeidel.

Jacobi Gauss Seidel SOR


k xpkq
1 xpkq
2 xpkq
3 xpkq
1 xpkq
2 xpkq
3 xpkq
1 xpkq
2 xpkq
3

1 0.5000 2.6667 -2.5000 0.5000 2.8333 -1.0833 0.5500 3.1167 -1.1917


2 1.8333 2.0000 -1.1667 1.9167 2.9444 -1.0278 2.2092 2.9394 -1.0053
3 1.5000 2.8889 -1.5000 1.9722 2.9815 -1.0093 1.9458 2.9930 -1.0060
4 1.9444 2.6667 -1.0556 1.9907 2.9938 -1.0031 2.0016 2.9972 -1.0011
5 1.8333 2.9630 -1.1667 1.9969 2.9979 -1.0010 1.9983 2.9994 -1.0003
6 1.9815 2.8889 -1.0185 1.9990 2.9993 -1.0003 1.9998 2.9998 -1.0001
7 1.9444 2.9877 -1.0556 1.9997 2.9998 -1.0001 1.9999 3.0000 -1.0000
8 1.9938 2.9630 -1.0062 1.9999 2.9999 -1.0000 2.0000 3.0000 -1.0000
9 1.9815 2.9959 -1.0185 2.0000 3.0000 -1.0000 2.0000 3.0000 -1.0000
.. .. .. .. .. .. .. .. .. ..
. . . . . . . . . .
20 2.0000 2.9999 -1.0000 2.0000 3.0000 -1.0000 2.0000 3.0000 -1.0000
21 2.0000 3.0000 -1.0000 2.0000 3.0000 -1.0000 2.0000 3.0000 -1.0000

1.4 Convergencia de métodos iterativos.

Teorema 1.4.1. Convergencia La sucesión xpkq “ M xpk´1q ` h converge a la solución x de


Ax “ b, si y sólo si, ρpM q ă 1.

Demostración 1.4.1. Como xpkq “ M xpk´1q ` h y x “ M x ` h

ek :“ xk ´ x “ M pxk´1 ´ xq “ M ek´1 “ ¨ ¨ ¨ “ M k e0 (1.14)


Solución de Sistemas de Ecuaciones Lineales 33

(
Observacion 1.4.1. Si la sucesión xpkq converge, necesariamente lo hace a la solución x de
Ax “ b.

Lema 1.4.1. Cota para el radio espectral Sea A una matriz cuadrada. Para cualquier norma
matricial se tiene que ρpAq ď }A} .

Corolario 1.4.1. Condición suficiente de convergencia Una condición suficiente para que la su-
(
cesión xpkq sea convergente a la solución(x de Ax “ b es que }M } ă 1, donde M es la matriz
de iteración del método que genera a xpkq .

Ejemplo 1.4.1. Determine cuando los métodos de Jacobi, Gauss-Seidel y SOR con ω “ 1,1 del
ejemplo anterior converge.

Solución. Calculamos los valores propios de la matriz de iteracion de cada método. Para el método
de Jacobi son » fi
´λ 21 0
1 1
detpB J ´ λIq :“ det – 31 ´λ 13 fl “ ´λ3 ` λ ` λ “ 0
1 6 6
0 2 ´λ
b
Los valores propios son λ “ 0,˘ 13 « ˘0,5774. Por el Teorema anterior, la iteración de Jacobi
converge para cualquier vector inicial.
Para el método de Gauss-Seidel, los valores propios de la matriz de iteracion M GS estan determi-
nados por
» 11 fi
´λ 20 0 ˆ ˙2
– fl “ ´λ 1 1
detpM GS ´ λIq :“ det 1 3
1
6 ´λ 1
3
´λ ` λ“0
1 1 6 36
0 12 6 ´λ

Los valores propios son λ « 0, 0, 31 « 0, 333. Por tanto, la iteración de Gauss-Seidel tambien
converge.
Para el método de SOR (con ω “ 1,1) los valores propios de la matriz de iteración M ω estan
determinados por

» 1 11 fi
´ 10 ´λ 20 0
detpM ω ´ λIq :“ det – ´ 300 11 61
600 ´ λ
11
30

121 671 61
´ 6000 12000 ´λ
ˆ ˙ˆ ˙ 600
1 61 121 11 11
“ ´ ´λ ´λ ´
10 600 600 30 20
ˆ ˙ ˆ ˙
11 11 61 1 671 11
` ´λ ´ ´ ´λ
20 300 600 10 12000 30
1 31 31 2
“´ ` λ` λ ´ λ3 “ 0
1000 3000 3000
Así, λ « 0,1200, 0,0833, ´0,1000 SOR tambien converge.
34 Solución de Sistemas de Ecuaciones Lineales

Convergencia de los métodos de Jacobi y de Gauss-Seidel


Como en todos los método iterativos, un aspecto importante de los métodos de Jacobi y Gauss-
Seidel es garantizar la convergencia. En los siguientes teoremas se establecen condiciones suficientes
(mas no necesarias !!!) para la convergencia de los metodos de Jacobi y Gauss Seidel. Estos resul-
tados se basan en los resultados de convergencia generales presentados anteriormente y requieren
conocer la formulación matricial de los métodos.
arbitrario y Consideremos un sistema Ax “ b con aii ­“ 0. Escribamos la matriz A en la forma
A “ D ´ E ´ F , donde D “ diagpAq, ´E y ´F son:
» fi
..
. ´F ffi

A“—
– D ffi

..
´E .

Notemos que tanto D como D ´ E son matrices invertibles, ya que aii ­“ 0 para i “ 1, . . . , n.
El método de Jacobi corresponde al esquema iterativo general con N :“ D y P :“ E ` F y el
método de Gauss-Seidel corresponde al esquema iterativo general con N :“ D ´ E y P :“ F . La
matriz de iteración es entonces M “ pD ´ Eq´1 F .
Algoritmo de Jacobi:

Dado el vector inicial xp0q ,


para
ˇ k “ 1, 2, . . . resolver:
ˇ pkq
ˇ Dx “ pE ` F qxpk´1q ` b,
hasta que se satisfaga un criterio de detención.

Algoritmo de Gauss-Seidel:

Dado el vector inicial xp0q ,


para
ˇ k “ 1, 2, . . . , resolver:
ˇ
ˇ pD ´ Eqxpkq “ F xpk´1q ` b,
hasta que se satisfaga un criterio de detención.

Teorema 1.4.2. Si A es de diagonal dominante estricta, entonces los métodos de Jacobi y de


Gauss-Seidel convergen.

Demostración 1.4.2. La matriz de iteración del método de Jacobi verifica:


» fi
0 ´ aa11
12
¨¨¨ ¨¨¨ ´ aa1n 11
— .. .. ffi
— ´ a21 0 . . ffi
— a22 ffi
— .. .. .. .. .. ffi
M “ D´1 pE ` F q “ — — . . . . .


— . ffi
— . .. an´1 n ffi
– . . 0 ´ an´1 fl
n´1
an1 an n´1
´ ann ¨¨¨ ¨ ¨ ¨ ´ ann 0
Solución de Sistemas de Ecuaciones Lineales 35

$ ,

& 1 ÿ n /
.
Para la norma infinito de M se tiene que }M }8 “ máx |aij | . Cuando A es de
1ďiďn ’
% |aii | j“1 /
-
j‰i
diagonal dominante estricta, es decir, cuando se tiene que
n
ÿ
|aii | ą |aij |, i “ 1, . . . , n,
j“1
j‰i

entonces }M }8 ă 1 y el método de Jacobi resulta convergente.

Observacion 1.4.2. Para una matriz arbitraria A, la convergencia de uno de estos métodos no
implica la convergencia del otro.

Teorema 1.4.3. Si A es simétrica y definida positiva, el método de Gauss-Seidel es convergente.

Observacion 1.4.3. Aunque A sea simétrica y definida positiva, el método de Jacobi puede ser
divergente.

En algunos casos no se pueden aplicar los métodos iterativos porque la matriz no es diagonalmente
dominante y por consiguiente no existe garantia de que se de la convergencia. Sin embargo este
problema se puede resolver al reordenar las ecuaciones de tal manera que la nueva matriz de
coeficientes sea diagonalmente dominante. Esto puede llevar algun tiempo si el sistema es demasiado
grande, pero garantiza que las iteraciones de jacobi o Gauss Seidel convergeran a la solucion del
sistema de ecuaciones.

Ejemplo 1.4.2. Considere el sistema

3x ` 12y ´ z “ ´2
11x ´ 4y ` 3z “ ´3
´3x ´ 2y ´ 12z “ ´2

La matriz de coeficientes de este sistema no es diagonalmente dominante, pero si intercambiamos


la primera y la segunda fila obtendremos una matriz que si posee esta propiedad, en efecto:

11x ´ 4y ` 3z “ ´3
3x ` 12y ´ z “ ´2
´3x ´ 2y ´ 12z “ ´2
36 Solución de Sistemas de Ecuaciones Lineales

1.5 Ejercicios

1. Resolver mediante el método de Jacobi el siguiente sistema

0,8x1 ´0,4x2 “ 41
´0,4x1 `0,8x2 ´0,4x3 “ 25 (1.15)
´0,4x2 `0,8x3 “ ´2

2. Resolver mediante el uso de una factorización de LU el siguiente sistema Ax “ b, donde


» fi » fi
1 ´1 0 2

A“ 2 2 3fl , b “ 4fl .

´1 3 2 1

3. Resolver mediante el uso de una factorización de LU el siguiente sistema Ax “ b, donde


» fi » fi
2 ´1 1 2
A “ – 3 3 9fl , b “ –4fl .
3 3 5 3

4. Resolver mediante el método de Gauss Seidel el siguiente sistema

0,8x1 ´0,4x2 “ 41
´0,4x1 `0,8x2 ´0,4x3 “ 25 (1.16)
´0,4x2 `0,8x3 “ ´2

5. Resolver mediante el uso de una factorización de LU el siguiente sistema Ax “ b, donde


» fi » fi
1{3 1{2 ´1{4 2

A “ 1{5 2{3 fl
3{8 , b “ 0fl .

2{5 ´2{3 5{8 3

6. Resolver mediante el uso de una factorización de LU el siguiente sistema

2x1 ´2x2 `x3 “ ´10


2x1 `6x2 ´4x3 “ 44 (1.17)
´8x1 ´2x2 `5x3 “ ´2

7. Resolver mediante el uso de una factorización de A “ LU el siguiente sistema Ax “ b,


donde » fi » fi
8 5 1 2
A “ –3 7 4fl , b “ –4fl .
2 3 9 3
Solución de Sistemas de Ecuaciones Lineales 37

8. ¿Para qué valores de t A admite descomposición LU ?


» 1 fi
´2 ´t ´ 3 t
A“– 1 t2 ` 3t 0fl .
t 3t ` 14 4

9. Consideremos el sistema de ecuaciones lineales Ax “ b, del que se conoce una descomposición


LU como la que sigue

» fi » 1 0 0
fi»
3 2 ´1

3 2 a1,3
— 0ffi — 8 1ffi
–2 4 ´1 fl “ –l2,1 1 fl –0 ´ fl “ LU
1 1 3 3
1 a3,2 3 1 0 0 u3,3
3 2
Deduzca los valores omitidos en cada matriz.
Use esa descomposicion para calcular la solución exacta del sistema Ax “ b.
Escribe las ecuaciones del método iterativo de Gauss-Seidel y calcula 2 iteraciones a
partir de la iteración inicial xp0q “ p0, 0, 0qt . Cree usted que este método dara buenos
resultados ?

10. Considere el sistema » fi» fi » fi


1 1 0 3 x1 4
—2 ´1 1 ffi — ffi — ffi
— 1 ffi —x2 ffi “ — ´7 ffi
– 3 ´1 ´1 2 fl –x3 fl – 13 fl
´1 2 3 ´1 x4 ´13

Resuelva el sistema usando la siguiente factorización


» fi » fi» fi
1 1 0 3 1 0 0 0 1 1 0 0
—2 ffi —
1 ´1 1 ffi — 2 0ffi — ffi
— 1 0 ffi —0 ´1 ´1 ´5 ffi
– 3 ´1 ´1 2 fl “ – 3 4 1 0fl – 0 0 3 13 fl
´1 2 3 ´1 ´1 ´3 0 1 0 0 0 ´13

Encuentre una aproximación usando 3 iteraciones para Jacobi y Gauss-Seidel y teniendo


en cuenta que ya conoce la solución exacta diga cual método produce un error menor.

11. Consideremos el sistema de ecuaciones lineales Ax “ b, del que se conoce una descomposición
LU como la que sigue

» fi » 1 0 0
fi»
3 2 ´1

3 2 a1,3
— ffi — 8 1ffi
–2 4 ´1 fl “ –l2,1 1 0fl –0 ´ fl “ LU
1 1 3 3
1 a3,2 3 1 0 0 u3,3
3 2
Deduzca los valores omitidos en cada matriz.
38 Solución de Sistemas de Ecuaciones Lineales

Use esa descomposicion para calcular la solución exacta del sistema Ax “ b donde
bt “ p1, 2, 3q

12. Obtenga la factorización LU de la siguiente matriz


» fi
1 2 0 0 0
—1 4 3 0 0ffi
— ffi
— ffi
—0 4 9 4 0ffi
— ffi
–0 0 9 16 5fl
0 0 0 16 25

13. Resolver mediante Jacobi y Gauss–Seidel iniciando con el vector nulo el siguiente sistema

10x1 ´x2 `2x3 “ 6


´x1 `11x2 ´x3 `3x4 “ 25 (1.18)
2x1 ´x2 `10x3 ´x4 “ ´11
3x2 ´x3 `8x4 “ 15
14. Se requiere encontrar una función de la forma f pxq “ ax3 ` bx ` c que pase por los puntos
p1, 4q, p´22, ´223q y p2, 21q. Plantear un sistema de ecuaciones para calcular los coeficientes
de f y resolverlo usando la descomposición LU de la matriz del sistema.
15. Consideremos el siguiente sistema en forma matricial
» fi» fi » fi
1 2 6 x 5
–0 ´5 1fl –y fl “ –6fl
4 1 2 z 5
Si se intenta aplicar el método de Jacobi nos encontramos que el radio espectral de la matriz
de iteracion es mayor que 1, habrá convergencia ? Encuentre una forma de poder aplicar
el método de Jacobi de manera que sea convergente y aproxima la solución partiendo de
xp0q “ p0, 0, 0qt .
„ 
2 1
16. Considerar el sistema Ax “ b para A “ y b “ p8, 21q. Mostrar que el método de
3 6
Jacobi converge; hacer un programa que lo modele y a la vez grafique en el plano la sucesión
de aproximaciones obtenidas empezando en cada uno de lo siguientes valores iniciales
paq x0 “ p1, 4q pbq x0 “ p1, 0q pcq x0 “ p5, 2q
"
x´y “ 0
17. Considerar el sistema . Estudiar autovalores y autovectores de la matriz de
x`y “ 0
iteración asociada al método de Gauss-Seidel, decidir si el método es convergente o no y, sin
hacer cálculos, predecir el comportamiento de las sucesiones que se obtienen con los siguientes
valores iniciales.
paq x0 “ p2, 0q pbq x0 “ p´0,03, 0,03q pcq x0 “ p0, 1q
Decidir si en este caso el método de Jacobi resulta convergente.
Solución de Sistemas de Ecuaciones Lineales 39

18. Sean A, B P R3ˆ3 las matrices


» fi » fi
a c 0 0 b 0
A“ c – a cfl ; B“ b– 0 bfl .
0 c a 0 b 0
?
Probar que lı́mnÑ8 B n “ 0 si y sólo si |b| ă 2{2.
Dar condiciones necesarias y suficientes sobre a, c P R para la convergencia de los mé-
todos de Jacobi y de Gauss-Seidel aplicados a la resolución de Ax “ v.

19. Dada una matriz » fi


a11 a12 a13
A “ –a21 a22 a23 fl
a31 a32 a33
y un vector b P R3 , se quiere resolver el sistema de ecuaciones Ax “ b; para lo cual se
considera el siguiente método iterativo, que es un caso particular de los métodos llamados
Jacobi por bloques:
» fi´1 » fi » fi´1
a11 a12 0 0 0 a13 a11 a12 0
xk`1 “ ´ –a21 a22 0 fl ¨– 0 0 a23 fl ¨ xk ` –a21 a22 0 fl ¨ b,
0 0 a33 a31 a32 0 0 0 a33

Este método resulta convergente para los siguientes datos:


» fi » fi
8 2 ´3 ´20
A “ –´3 9 4fl y b “ – 62 fl .
3 ´1 7 0

Hacer un programa que calcule la sucesión de aproximaciones generada con valor inicial el
vector nulo y que se detenga cuando }xk`1 ´ xk }8 ď 10´4 (es decir, cuando la iteración “se
estabiliza”).

20. Sea A P Rnˆn . Probar que λ “ 1 es autovalor de la matriz de Jacobi (o Gauss-Seidel) de A


si y solo si A es no inversible.

21. Utilizar la iteración de Gauss-Seidel para resolver el sistema An x “ bn para


„ 
1 2 1
An “ y bn “ r1, 2 ´ 2 s.
2 4 ` n12 n

Cómo es la convergencia? >Tiene ésto que ver con el mal condicionamiento de A? Dar un
ejemplo de una matriz mal condicionada para la cual la convergencia sea rápida.
„ 
64 ´6
22. Considerar el sistema Ax “ b para A “ y b “ p1, 2q.
6 ´1
Demostrar que el método de Jacobi converge para todo dato inicial. Verificar, sin em-
bargo, que la matriz no es diagonal dominante.
40 Solución de Sistemas de Ecuaciones Lineales

Sea J la matriz de iteración. Hallar las normas 1, 8 y 2 de J. Hallar una norma } } en


la cual }J} sea ă 1.

23. Se quiere estimar la norma 2 de una matriz A P R3ˆ3 como el máximo del valor }Ax}2 {}x}2
entre varios vectores x P R3 no nulos generados al azar. Hacer un programa reciba una matriz
A y luego genere los primeros 100 términos de la siguiente sucesión:
! }Axk }2 )
s1 “ 0, sk`1 “ máx sk ,
}xk }2

donde los xk P R3 son vectores no nulos generados al azar con coordenadas en el intervalo
r´1, 1s. Finalmente grafique la sucesión calculada, junto con el valor exacto de la norma de la
matriz. Recordar que tanto la norma de un vector como de una matriz se calculan en Octave
con el comando norm. Tener en cuenta que los vectores generados al azar (comando rand)
tienen coordenadas en el intervalo r0, 1s. Chequear, además, que estos vectores generados
resulten no nulos.

24. Considere la matriz » fi


3 0 0
A “ –0 5
4
3fl
4
.
3 5
0 4 4

Calcule cond2 pAq y cond8 pAq. Se quiere resolver el sistema Ax “ b para un valor de b ‰ 0
que se conoce con una precisión mayor que 10´3 ; es decir, se conoce el valor conjunto de
}∆b}2
b̃ “ b ` ∆b y se sabe que el error relativo ă 10´3 .
}b}2

a) Acotar el error relativo de la solución hallada x̃ “ x ` ∆x.


}∆x}2
b) Encontrar un ejemplo para b y ∆b ‰ 0 de modo que }x}2 sea exactamente igual a
cond2 pAq }∆b}
}b}2 .
2

25. Sea x la solución exacta al sistema Ax “ b y x̃ la solución obtenida numéricamente. Se llama


“vector residual” a r :“ b ´ Ax̃. Si e “ x ´ x̃ se tiene Ae “ r. Mostrar que:

1 }r} }e} }r}


ď ď condpAq .
condpAq }b} }x} }b}

Concluir que para una matriz mal condicionada los métodos numéricos no aseguran buena
aproximación.
„ 
1 2
26. Para cada n P N, se definen An “ , bn “ p1, 2 ´ n12 q y se quiere resolver el sistema
2 4 ` n12
An x “ bn . An P R2ˆ2 , bn P R2 definidos Utilizando cierto método numérico, se obtiene como
resultado el vector p1, 0q.

a) Calcular el vector residual producido por esta solución tentativa. >Puede decirse que
para n grande la solución es razonablemente confiable?
Solución de Sistemas de Ecuaciones Lineales 41

b) Resolver An x “ bn en forma exacta, calcular cond8 pAn q y verificar la cota de error del
ejercicio 25..
27. Probar que si A P Rnˆn es una matriz inversible y } } es una norma matricial, la condición
de A verifica la desigualdad:
" *
1 }A ´ B}
ď ı́nf : B es singular .
condpAq }A}

Deducir que
" *
}A}
condpAq ě sup : B es singular .
}A ´ B}
Nota: En ambos casos, vale la igualdad, pero la otra desigualdad es un poco más complicada
de probar. De la igualdad se puede concluir que condpAq mide la distancia relativa de A a la
matriz singular más próxima.
28. a) Mostrar que cond8 pAq Ñ 8 cuando ε Ñ 0 para
» fi » fi
1 1 1 1 0 1`ε
piq A “ –1 ε ε2 fl , piiq B “ – 2 3 4 fl.
1 0 0 1´ε 0 1

b) Concluir que la condición de las matrices A y B del ítem anterior tienden a infinito,
cualquiera sea la norma considerada.
29. Sea el sistema Ax “ b, donde
» fi » fi » fi
1 ´1 2 x 0
A “ –0 3 ´3fl x “ –y fl b “ –1fl
0 ´4 4 z 2
Hallar }A}8 . Qué se puede decir sobre el número de condición de la matriz A para la
norma infinito? Qué estimacion dará MATLAB para el número de condición obtenido
con el comando cond(A)?
Utilizar la descomposición LU de la matriz AT A para resolver el sistema AT Ax “ b.
Qué propiedad caracteriza a las soluciones en relación al sistema Ax “ b?
30. Hacer un programa que reciba como input una matriz A y un vector b y luego
calcule las matrices de iteración de los métodos de Jacobi y Gauss-Seidel.
calcule la matriz de iteración del método de Gauss-Seidel.
calcule el menor de los radios espectrales de las dos matrices anteriores y, si este valor
resulta menor a 1, entonces realice las primeras 10 iteraciones del método correspon-
diente (o de cualquiera de los dos métodos en caso de que los radios espectrales resulten
coincidentes), con valor inicial el vector nulo. (Si ambos radios espectrales coinciden
y son menores a 1, el prograga deberá elegir cualquiera de los métodos y efectuar las
iteraciones correspondientes).
42 Solución de Sistemas de Ecuaciones Lineales

31. Decidir para cada uno de los siguientes sistemas, si los métodos de Jacobi y de Gauss-Seidel
son convergentes. En caso afirmativo usarlos para resolver el sistema. Si ambos métodos con-
vergen, determinar cuál converge más rápido. Es la matriz del sistema diagonal dominante?
y simétrica y definida positiva?
» fi» fi » fi
» fi» fi » fi 5 7 6 5 x1 23
3 1 1 x1 5 —7 10 8 7 ffi —x2 ffi —32ffi
paq –2 6 1fl –x2 fl “ –9fl , pbq —
–6
ffi— ffi “ — ffi
8 10 9 fl –x3 fl –33fl
1 1 4 x3 6
5 7 9 10 x4 31

32. Escriba un programa en Matlab que aproxima la solución del sistema Ax “ b mediante
Gauss–Seidel. Use ese programa para comprobar que este método no converge a la solución
del sistema usando como dato inicial x1 “ x2 “ x3 ¨ ¨ ¨ “ x9 “ x10 “ 0,5.

1
6 x1 ` x2 “ 1
x1 ` 61 x2 ` x3 “ 1
x2 ` 61 x3 ` x4 “ 1
(1.19)
.. ..
. .
x8 ` 16 x9 ` x10 “ 1
x9 ` 61 x10 “ 1

33. Calcule }D}8 y }D}1 si


» fi
3 5 7 8
—2 1 0 0ffi
D“—
–´2

3 4 2fl
1 0 0 0
Es D estrictamente diagonalmente dominante? Explique.
Índice alfabético

bisección, 10 polinomio
Lagrange, 70
convergencia Newton, 73
métodos iterativos, 57 punto fijo, 18
orden, 13 convergencia, 19
teorema, 18
eliminación gaussiana, 41
regla de cuadratura
factorización de matrices, 44, 51, 54
Gauss-Legendre, 95
Fenomeno de Runge, 78
Gaussiana, 94
Gauss Seidel Newton Cotes, 87
algoritmo, 60 Punto Medio, 89
convergencia, 60 Simpson, 91
método, 59 Trapecio, 90

Jacobi secante
algoritmo, 59 convergencia, 17
convergencia, 60 método, 17
método, 58 sistemas triangulares, 40
splines cubicos, 79
matrices
Teorema del Valor Intermedio, 10
banda, 50
transformaciones elementales, 41
permutación, 48
triangulares, 41 valor propio, 38
tridiagonales, 51

Newton Raphson
criterio de detención, 15
metodo, 14
orden de convergencia, 15
sistemas, 24
norma
equivalencia, 36
matricial inducida, 37
vectorial, 35

También podría gustarte