Vous êtes sur la page 1sur 69

Metodos Matematicos de Especialidad.

Especialidad de Construccion. Curso 11-12


Tema 4. Resoluci on Numerica de Sistemas de
Ecuaciones Algebraicas Lineales.
Luis Sanz Lorenzo
Dpto. Matematicas E.T.S.I. Industriales, UPM
19 de noviembre de 2012

Indice
1. Existencia e unicidad de solucion 3
2. Metodos directos 11
3. Metodo de Eliminacion Gaussiana 13
4. Factorizacion LU y su uso en la resolucion de sistemas 15
5. Factorizacion LU con pivoteo 20
6. Coste computacional en la eliminacion gaussiana 26
7. Factorizacion de Cholesky 28
8. Sistemas con matrices especiales 32
8.1. Matrices diagonalmente dominantes . . . . . . . . . . . . . . . . . . . . 32
8.2. Matrices de banda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
8.3. Sistemas dispersos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
9. Condicionamiento de un sistema de ecuaciones 36
9.1. Diagonalizacion y diagonalizacion ortogonal de matrices . . . . . . . 36
9.2. Normas matriciales inducidas por normas vectoriales . . . . . . . . . 37
1
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
9.3. Sensibilidad de la solucion de un sistema a cambios en el termino
independiente. N umero de condicion de una matriz . . . . . . . . . . 40
9.4. Sensibilidad de la solucion de un sistema a cambios en la matriz . . 43
9.5. N umero de condicion de la matriz de rigidez . . . . . . . . . . . . . . . 43
10. Factorizacion QR 44
11. Calculo de la inversa y del determinante de una matriz cuadrada 51
12. Descomposicion en valores singulares 53
12.1. Procedimiento de calculo de la descomposicion . . . . . . . . . . . . . 53
12.2. Pseudoinversa de una matriz . . . . . . . . . . . . . . . . . . . . . . . . . 55
13. Problemas de mnimos cuadrados. Pseudosoluciones 57
13.1. Ecuaciones normales asociadas a un sistema . . . . . . . . . . . . . . . 57
13.2. Calculo practico de las pseudosoluciones . . . . . . . . . . . . . . . . . . 60
13.2.1. Uso de la factorizacion QR . . . . . . . . . . . . . . . . . . . . . . 61
13.2.2. Uso de la descomposicion en valores singulares . . . . . . . . . 64
14. Trabajo con problemas mal condicionados 64
15. Resolucion de sistemas lineales con Matlab 65
16. Ejercicios 67
2
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
1. Existencia e unicidad de solucion
Motivacion. Los sistemas de ecuaciones algebraicas lineales son fundamentales en cualquier
resolucion numerica de un problema fsico. En muchas ocasiones los sistemas de este tipo
surgen directamente de la modelizacion de un problema fsico. En otras, los problemas se
modelan mediante ecuaciones de otro tipo (sistemas de ecuaciones algebraicas no lineales,
ecuaciones diferenciales ordinarias o parciales, etc) pero, al aplicar metodos numericos, siem-
pre se termina resolviendo sistemas de ecuaciones algebraicas lineales.
Muchos de los conceptos que veremos en este tema ya se estudiaron en la asignatura de

Algebra Lineal.
Problema teorico. El problema que nos planteamos es el de resolver un sistema de m
ecuaciones y n incognitas, que se puede escribir en forma matricial de la siguiente manera
Ax = b (1)
con A R
mn
, b R
m
, x R
n
.
Comentario: a la matriz (A | b) se la denomina matriz ampliada.
Rango y n ucleo de una matriz
El concepto de rango de un sistema de vectores es imprescindible para estudiar los sistemas
del tipo (1).
Denicion 1 Rango de una familia de vectores. Sea v
1
, ..., v
s
una familia de vectores
de R
n
. Se dene el rango de dicha familia como el maximo n umero de vectores de la famil-
ia anterior que son linealmente independientes, es decir, como la dimension del subespacio
engendrado por dicha familia.
Comentarios:
Claramente el rango de una familia de s vectores no puede ser mayor que s.
Es conocido el resultado por el cual en un espacio de dimension n no puede haber mas
de n vectores linealmente independientes.
El caso generico. Supongamos por ejemplo que trabajamos en R
3
. Supongamos que tenemos
un vector v
1
no nulo y que elegimos al azar un vector v
2
. Entonces, lo mas probable es
que v
1
y v
2
sean linealmente independientes, pues solo seran linealmente dependientes si v
1
es colineal a v
2
, lo cual es improbable. Supongamos que ahora elegimos al azar otro vector
v
3
. Pues bien, entonces lo mas probable es que v
1
, v
2
y v
3
sean linealmente independientes,
pues solo seran linealmente dependientes si v
3
esta contenido en el plano formado por v
1
y v
2
,
lo cual es improbable. Por supuesto, si ahora nos dan otro vector v
4
seguro que la familia
3
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
v
1
,v
2
,v
3
,v
4
sera ligada, pues sabemos que en un espacio de dimension 3 no puede haber mas
de 3 vectores linealmente independientes. Extendiendo este razonamiento para trabajar en
R
n
en vez de en R
3
tenemos lo siguiente:
Sea v
1
, ..., v
s
una familia de vectores de R
n
elegidos al azar donde s n. Entonces
lo mas probable es que dicha familia sea linealmente independiente y que por ello
el rango de dicha familia sea s. Esto se puede expresar con mas rigor de la siguiente
forma: en el caso generico, el rango de una familia de s vectores de R
n
(con s n)
es s.
El concepto de rango de una matriz juega un papel fundamental en los sistemas del tipo
(1):
Denicion 2 Rango de una matriz. Sea A R
mn
. Se dene el rango de A, que deno-
tamos como r(A), como el rango de las las de A, es decir, como el n umero de las de A que
son linealmente independientes. Se puede demostrar que r(A) coincide con el rango de las
columnas de A, es decir, con el n umero de columnas de A que son linealmente independientes.
Puesto que el rango de un sistema de vectores no puede ser mayor que el n umero de
vectores y puesto que el rango de las las de una matriz coincide con el rango de las columnas
de A, tenemos:
Proposicion 1 Sea A R
mn
. Entonces 0 r(A) mn(m, n)
Usando ahora el razonamiento anterior sobre el rango de una familia de vectores en el
caso generico, tenemos lo siguiente:
Proposicion 2 Rango de una matriz en el caso generico. Sea A R
mn
. Entonces,
en el caso generico (es decir, el caso mas probable cuando se elige la matriz al azar) se
cumple que r(A) = mn(m, n)
Comentario: Cuando se cumple que r(A) = mn(m, n) se dice que la matriz tiene rango
maximo.
A las matrices cuadradas invertibles se las denomina matrices regulares. Al respecto ten-
emos:
Proposicion 3 Caracterizacion de las matrices cuadradas invertibles. Sea A
R
nn
. Entonces los 3 enunciados siguientes son equivalentes:
i. A es invertible, es decir, A es regular.
ii. r(A) = n.
iii. det A = 0.
4
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Comentarios:
Las matrices que no son cuadradas nunca tienen inversa, pues es imposible que alguna
matriz B cumpla AB = BA = I.
El determinante de una matriz solo tiene sentido para matrices cuadradas.
A continuacion recordamos el concepto de n ucleo de una matriz:
Denicion 3 N ucleo de una matriz. Sea A R
mn
. El n ucleo de A es el conjunto de las
soluciones del sistema homogeneo Ax = 0, es decir,
N(A) := {x R
n
tales que Ax = 0}
El siguiente resultado, estudiado en

Algebra Lineal, relaciona la dimension del n ucleo con
el rango de la matriz:
Proposicion 4 Sea A R
mn
. Se verica que N(A) es una subespacio vectorial de R
n
y
ademas su dimension es
dimN(A) = n r(A)
Existencia e unicidad de solucion a los sistemas de ecuaciones algebraicas lin-
eales.
Del

Algebra Lineal tenemos el siguiente resultado sobre existencia e unicidad de solucion
al sistema (1):
Proposicion 5 Existencia e unicidad de solucion:
(a) El sistema (1) es compatible si y solo si r(A) = r(A | b), es decir, cuando el rango de
A coincide con el rango de la matriz ampliada.
(b) El sistema (1) es compatible determinado si y solo si r(A) = r(A | b) = n, es decir,
si y solo si el rango de A coincide con el rango de la matriz ampliada y con el n umero de
incognitas.
(c) Si r(A) = r(A | b) < n, es decir, si el rango de A coincide con el rango de la matriz
ampliada pero es menor que el n umero de incognitas, entonces el sistema (1) es compatible
indeterminado con n r(A) grados libertad.
Ademas, si x

es una solucion cualquiera de (1) (a la que se denomina solucion particu-


lar) el conjunto de soluciones del sistema es
{x

+y : y N(A)} = {x

+y : y cumple que Ay = 0}
5
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Del resultado anterior tenemos lo siguiente para el caso en que el sistema es compatible
indeterminado:
En el caso de SCI, denamos t := r(A). Ademas:
Sea x

una solucion particular del sistema.


Sea w
1
, ...., w
nt
es una base de N(A), que, por la Proposicion 4 tiene dimension
n t.
Entonces, el conjunto de soluciones del sistema es
{x

+
1
w
1
+ +
nt
w
nt
:
1
, ...,
nt
R}
6
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
A continuacion se tiene un esquema resumen de las ideas anteriores:
Sistema compatible
Ax = b
rang(A) = rang(A | b)?
Sistema incompatible
rang(A) = n?
Sistema compatible indeterminado Sistema compatible determinado
Hay innitas soluciones Hay una unica soluci on
{x

+
1
w
1
+ +
nt
w
nt
:
1
, ...,
nt
R}
donde:
x

es una soluci on particular del sistema Ax = b


w
1
, ..., w
nt
es una base del n ucleo de A, de dimensi on n t, siendo t = rang(A)
A R
mn
, b R
m
m ecuaciones y n inc ognitas con
y donde el n ucleo de A es el conjunto de soluciones del sistema homogeneo Ax = 0
No hay soluci on
Las soluciones son de la forma
NO
NO
S

I
S

I
7
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Estudio de los distintos casos en la situacion generica.
Desde el punto de vista practico, en el caso generico podemos distinguir los siguiente casos:
a. Caso en que A es cuadrada, es decir, hay el mismo n umero, digamos n, de
ecuaciones y de incognitas.
Entonces, en el caso generico el rango de A sera igual a n y el rango de (A | b)
sera tambien n(pues el rango de una matriz no puede ser mayor que el n umero de
las de la misma) con lo que el sistema sera tpicamente compatible determinado.
Notese que en este caso A es regular, es decir, det A = 0 y por ello A es invertible.
En el caso poco probable en el que r(A) sea menor que n, es decir, cuando A
sea singular, el sistema sera tpicamente incompatible, pues al a nadir el vector b
a la matriz A para formar la matriz ampliada, el rango de la matriz resultante
sera tpicamente r(A) + 1. En el improbable caso en el que el rango de la matriz
ampliada coincidiese con r(A) tendramos un sistyema compatible indeterminado.
b. Caso en que A es baja y ancha, es decir, hay mas incognitas que ecuaciones.
El sistema es tpicamente compatible indeterminado, pues si suponemos que hay m
ecuaciones y n incognitas (con m < n), en el caso generico sera r(A) = m y r(A | b) = m.
c. Caso en que A es alta y delgada, es decir, hay mas ecuaciones que incognitas.
El sistema es tpicamente incompatible, pues si suponemos que hay m ecuaciones y n
incognitas (con m > n), en el caso generico sera r(A) = m y r(A | b) = m+ 1.
_
_
_
_




_
_
_
_
mismo num. de ecuac. que de incognitas tpicamente comp. det.
_
_



_
_
mas ecuac. que incognitas tpicamente comp. indet.
_
_
_
_
_
_





_
_
_
_
_
_
mas incognitas que ecuac. tpicamente incomp.
8
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Pseudosoluciones
Si el sistema no es compatible no sera posible encontrar ning un x R
n
tal que se cumpla
bAx. Sin embargo, se puede intentar buscar las o las pseudosoluciones del sistema, es decir,
los x tales que b Ax sea tan peque no como sea posible. As, tenemos la siguiente denicion:
Denici on 4 Pseudosolucion. x
0
es pseudosolucion de (1) en la norma vectorial si se
cumple que
b Ax
0
= mn
xR
n
b Ax
es decir, si la eleccion x = x
0
minimiza el error b Ax.
Cuando es la norma eucldea, al problema se le llama problema de mnimos
cuadrados.
Algunos problemas de interes relacionados con la resolucion de sistemas
Por ahora nos centramos en el caso A cuadrada y regular. Abordaremos el tratamiento
de los siguientes problemas practicos:
1. Problema b asico. Resolver Ax = b.
2. Resolver Ax = b
i
para varios i = 1, ..., m (a veces cientos o miles). Esto aparece,
por ejemplo, en la resolucion numerica de EDPs mediante el MEF. Al discretizar en el
espacio se obtiene un sistema de EDOs, y al aplicar los metodos numericos para resolver
problemas de valor inicial en EDOs en cada paso de tiempo hay que resolver un sistema
en que vara el termino independiente pero la matriz del sistema es siempre la misma
(ver captulo 8)
3. Calcular la inversa de A.
4. Calcular el determinante de A.
Comentarios:
La solucion de un sistema Ax = b con A cuadrada y regular es x = A
1
b. Sin embargo,
para calcular la solucion nunca se procede calculando la inversa y multiplicando por
b, pues es mas costoso y mas inexacto que utilizar los metodos que se expondran mas
adelante. La inversa solo se calcula cuando necesitamos tener la inversa, nunca para
resolver un sistema.
Un problema Ax = b en el que la matriz A no es singular, puede transformarse en singular
o cuasisingular debido a los errores de redondeo, en cuyo caso habra que proceder con
especial atencion, como vera mas adelante al hablar del condicionamiento de una matriz.
9
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Propiedades deseables en un algoritmo
Para resolver los problemas anteriores buscamos algoritmos que sean:
a. Estables, es decir, los errores de redondeo que se cometen en cada etapa deben ser
atenuados para que no tengan un efecto perverso en el resultado nal (ver captulo
de introduccion al calculo numerico). El problema de la inestabilidad es especialmente
importante cuando el tama no de la matriz es grande.
b. Ecientes, es decir, que consuman pocas operaciones y que requieran poco almace-
namiento.
Tipos de metodos numericos
A grandes rasgos podemos distinguir dos tipos de metodos para resolver un sistema Ax = b
con A cuadrada y regular:
i. Metodos directos: la soluci on se calcula de forma exacta, salvo errores de redondeo,
mediante un n umero nito de operaciones.
ii. Metodos indirectos o iterativos: se van calculando aproximaciones cada vez mas
proximas a la solucion y se detiene el proceso cuando se estima que se esta suciente-
mente proximo a la solucion. En estos metodos, ademas del error de redondeo inherente
a cualquier trabajo con un ordenador, se introduce el llamado error de truncamiento,
as llamado porque se trunca el proceso iterativo.
En este curso no estudiamos los metodos iterativos. Baste con decir que el mas uti-
lizado de entre ellos es el denominado metodo del gradiente conjugado.
Como ya se ha comentado anteriormente, para hallar la solucion de un sistema (cuadrado)
nunca se calcula la inversa. Asimismo hay que hacer constar que la denominada regla de
Cramer, que se usa a efectos didacticos para sistemas de 2 o 3 ecuaciones, nunca se utiliza
en la pr actica con sistemas de muchas ecuaciones debido a su alto coste computacional.
10
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
2. Metodos directos
En todo lo que sigue, siempre que no se diga lo contrario se trabaja con un sistema Ax = b
con A cuadrada y regular, con lo que el sistema sera compatible determinado. Como ya hemos
comentado, en los metodos directos se obtiene la solucion exacta (salvo errores de redondeo)
en un n umero nito de pasos.
Tipos de metodos directos. Basicamente hay tres metodos directos:
a. Eliminacion gaussiana // factorizacion LU. Veremos que (usando pivoteo) este es el
metodo utilizado para la mayor parte de los sistemas con matriz cuadrada.
b. Factorizacion de Cholesky. Es el metodo utilizado en el caso de trabajar con matrices
simetricas denidas positivas.
c. Factorizacion QR. Se usa para sistemas con matriz cuadrada mal condicionados y
tambien se aplica para trabajar con sistemas rectangulares.
Estrategia de los metodos directos.
Comencemos con la siguiente denicion:
Denicion 5 Sistemas equivalentes. Se dice que dos sistemas compatibles Ax = b y
Cx = d son equivalentes cuando ambos tienen las mismas soluciones.
Pues bien, la estrategia que se sigue de los metodos directos es encontrar un sistema
equivalente al dado y que sea facilmente resoluble.
El sistema equivalente nal se obtienen a partir de sistema original a traves de una serie
de operaciones elementales. Estas operaciones elementales son de cuatro tipos:
Operaciones elementales:
TE1. Multiplicar una ecuacion por un = 0
TE2. Sumar a una ecuacion un m ultiplo de otra.
TE3. Intercambiar dos ecuaciones.
TE4. Intercambiar dos columnas de A. Equivale a intercambiar de orden las incognitas
correspondientes.
Las operaciones TE1, TE2 y TE3 se realizan en la matriz A y, simultaneamente, en el
vector b, llegando a un sistema con matriz ampliada (C | d).
Para los desarrollos posteriores es importante hacer notar la siguiente propiedad:
11
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Proposicion 6 Operaciones elementales y multiplicacion por matrices elemen-
tales.
(i) Realizar una operacion elemental por las en una matriz equivale a premultiplicar
dicha matriz por una matriz elemental construida realizando dicha operacion elemental en
la matriz identidad.
(ii) Realizar una operacion elemental por columnas en una matriz equivale a postmulti-
plicar dicha matriz por una matriz elemental construida realizando dicha operacion ele-
mental en la matriz identidad.
Sistemas facilmente resolubles. Los sistemas Ax = b facilmente resolubles que vamos
buscando son los siguientes:
a) Sistemas con matriz diagonal.
A = D = diag(d
11
, ..., d
nn
)
En ellos la soluci on es trivial y dada por
x
i
=
b
i
d
ii
; i = 1, ..., n
b) Sistemas con matriz triangular superior.
A = U =
_
_
_
_
_
u
11
u
12
u
1n
0 u
22
u
2n
.
.
.
.
.
.
.
.
.
.
.
.
0 0 u
nn
_
_
_
_
_
La solucion se encuentra por sustitucion hacia atras o regresiva en la forma
x
i
=
1
u
ii
_
b
i

k=i+1
u
ik
x
k
_
; i = 1, ..., n
c) Sistemas con matriz triangular inferior.
A = L =
_
_
_
_
_
l
11
0 0
l
21
l
22
0
.
.
.
.
.
.
.
.
.
.
.
.
l
n1
l
n2
l
nn
_
_
_
_
_
La solucion se encuentra por sustitucion hacia adelante o progresiva en la forma
x
i
=
1
l
ii
_
b
i

i1

k=1
l
ik
x
k
_
; i = 1, ..., n
12
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
3. Metodo de Eliminacion Gaussiana
Descripcion del procedimiento. El metodo consiste en:
1. Realizar operaciones elementales en (A | b) hasta que la matriz A se haya transformado
en triangular superior
2. Resolver el sistema resultante por sustitucion regresiva.
Ilustracion del algoritmo mediante un ejemplo. Supongamos A regular y n = 3.
Etapa 1. Suponemos a
11
= 0. Hacemos ceros en las posiciones subdiagonales de la
primera columna obteniendo la matriz A
(1
. Para ello, denimos l
21
:= a
21
/a
11
, l
31
:=
a
31
/a
11
a los que llamamos multiplicadores y hacemos f
2
f
2
l
21
f
1
y f
3
f
3
l
31
f
1
.
A
(0
=
_
_
a
11
a
12
a
13
a
21
a
22
a
23
a
31
a
32
a
33
_
_

f
2
f
2
l
21
f
1
f
3
f
3
l
31
f
1
A
(1
=
_
_
_
a
11
a
12
a
13
0 a
(1
22
a
(1
23
0 a
(1
32
a
(1
33
_
_
_
Notese que la primera la queda inalterada.
Etapa 2. Suponemos a
(1
22
= 0. Haremos ceros en la posicion subdiagonal de la segunda
columna. Denimos l
32
:= a
(1
32
/a
(1
22
y hacemos
A
(1

f
3
f
3
l
32
f
2
A
(2
=
_
_
_
a
11
a
12
a
13
0 a
(1
22
a
(1
23
0 0 a
(2
33
_
_
_ = U
que ya esta en forma triangular superior.
Etapas en el proceso. En el caso de una matriz de dimensiones n n, el proceso para
llevar A a forma triangular superior consta de n 1 etapas, de forma que en la etapa n se
hacen ceros en las posiciones subdiagonales de la columna n.
Trabajo con la matriz ampliada. En vez de trabajar solo con A, lo que en realidad se
hace es trabajar con (A | b) y as se tiene
(A | b) (A
(1
| b
(1
) (A
(2
| b
(2
) = (U | y)
con lo que se ha obtenido un sistema equivalente
Ux = y
que se resuelve por sustitucion regresiva.
13
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Ejemplo. Apliquemos el procedimiento anterior al caso del sistema
_
_
1 1 1
2 1 0
1 0 1
_
_
_
_
x
1
x
2
x
3
_
_
=
_
_
1
2
1
_
_
(2)
Etapa 1. Denimos l
21
:= a
21
/a
11
= 2, l
31
:= a
31
/a
11
= 1 y hacemos f
2
f
2
l
21
f
1
y f
3
f
3
l
31
f
1
con lo que tenemos
_
A
(0
| b
(0
_
=
_
_
1 1 1
2 1 0
1 0 1
1
2
1
_
_

f
2
f
2
+ 2f
1
f
3
f
3
+f
1
_
A
(1
| b
(1
_
=
_
_
1 1 1
0 3 2
0 1 0
1
4
2
_
_
Etapa 2. Denimos l
32
:= a
(1
32
/a
(1
22
= 1/3 y hacemos
_
A
(1
| b
(1
_

f
3
f
3

1
3
f
2
_
A
(2
| b
(2
_
=
_
_
1 1 1
0 3 2
0 0 2/3
1
4
2/3
_
_
= (U | y)
Ahora el sistema Ux = y se resuelve por sustitucion regresiva obteniendo
x = (0, 2, 1)
T
Resolucion de varios sistemas con la misma matriz A. Supongamos que se necesita
resolver Ax = b
i
para varios valores de i, es decir, se resuelven varios sistemas con la misma
matriz y termino independiente distinto. Si se procediese como anteriormente se ha descrito,
sera necesario llevar la matriz A a forma diagonal para cada valor de i. Para evitar tener
que repetir dicho proceso, lo que se hace en la practica es guardar los multiplicadores que
luego pueden aplicarse a tantos terminos independientes como sea necesario. En la proxima
seccion veremos que llevar la matriz A a forma triangular guardando los multiplicadores es
equivalente a realizar una descomposicion LU de A.
14
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
4. Factorizacion LU y su uso en la resoluci on de sistemas
Motivacion. A continuacion veremos como se puede factorizar una matriz en la forma A =
LU, donde L es triangular inferior y U es triangular superior. Veremos que tener una matriz
A factorizada en la forma A = LU es muy util para resolver sistemas Ax = b.
Construccion de la factorizacion LU a partir de la eliminacion gaussiana
A continuacion veremos que la eliminacion gaussiana realizada sobre una matriz nos
proporciona una factorizacion de la misma.
Utilizando la Proposicion 6, el proceso de eliminacion gaussiana se puede describir a traves
de la premultiplicacion de A por una serie de matrices elementales. En efecto, volviendo al
ejemplo anterior tenemos:
Paso 1. E
(1
3
E
(1
2
A = A
(1
es decir, E
(1
A = A
(1
con E
(1
= E
(1
3
E
(1
2
E
(1
2
=
_
_
1 0 0
l
21
1 0
0 0 1
_
_
; E
(1
3
=
_
_
1 0 0
0 1 0
l
31
0 1
_
_
Paso 2. E
(2
3
A
(1
= E
(2
3
E
(1
3
E
(1
2
A = A
(2
= U es decir, E
(2
E
(1
A = U donde E
(2
= E
(2
3
.
E
(2
3
=
_
_
1 0 0
0 1 0
0 l
32
1
_
_
Analicemos los pasos anteriores con un poco mas de detalle:
1. Como las E
(k
son regulares, el producto de triangulares inferiores es triangular inferior
y la inversa de triangular inferior es triangular inferior, se tiene
A =
_
E
(2
E
(1
_
1
U = LU
donde
L =
_
E
(2
E
(1
_
1
=
_
E
(1
_
1
_
E
(2
_
1
es triangular inferior.
2. Para calcular L basta con recordar los multiplicadores. En efecto:
2.a. Las matrices E
(1
y E
(2
se calculan acumulando los multiplicadores en
las posiciones correspondientes. A las matrices con esta forma se las denomina
matrices de Frobenius.
E
(1
= E
(1
3
E
(1
2
=
_
_
1 0 0
l
21
1 0
l
31
0 1
_
_
; E
(2
=
_
_
1 0 0
0 1 0
0 l
32
1
_
_
15
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
2.b. La inversa de la matriz de Frobenius
_
E
(k
_
1
cumple que tiene la misma
estructura de ceros que E
(k
y los mismos elementos no diagonales de E
(k
cam-
biados de signo.
_
E
(1
_
1
=
_
_
1 0 0
l
21
1 0
l
31
0 1
_
_
;
_
E
(2
_
1
=
_
_
1 0 0
0 1 0
0 l
32
1
_
_
2.c. En el producto
_
E
(1
_
1
_
E
(2
_
1
los elementos no nulos se acumulan en sus
lugares correspondientes sin interferir entre s.
L =
_
E
(1
_
1
_
E
(2
_
1
=
_
_
1 0 0
l
21
1 0
l
31
l
32
1
_
_
Como conclusion de los razonamiento anteriores, A se puede expresar en la forma A = LU
donde U = A
(2
es triangular superior y donde
L =
_
_
1 0 0
l
21
1 0
l
31
l
32
1
_
_
es triangular inferior. Por lo tanto, tenemos:
El llevar a cabo la eliminacion gaussiana en una matriz es equivalente a factorizar
dicha matriz en la forma LU. Ademas, las matrices L y U se calculan de la siguiente
forma:
U es la matriz resultado de llevar A a forma triangular triangular superior
mediante operaciones elementales.
L es la matriz triangular inferior que cuyos elementos diagonales valen uno y
tal que en cada posicion subdiagonal contiene el valor del multiplicador con el
que se ha hecho un cero en esa posicion de A.
Ejemplo. El el caso del sistema (2) tenemos
U =
_
_
1 1 1
0 3 2
0 0 2/3
_
_
; L =
_
_
1 0 0
2 1 0
1 1/3 1
_
_
16
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Comentarios:
1. No todas las matrices se pueden factorizar en la forma A = LU. De existir dicha
factorizacion, esta no es unica, es decir, hay mas de una forma de factorizar A como
producto de una triangular inferior por una triangular superior. En concreto, hay innitas
formas de hacerlo.
2. Se ha visto que si en el proceso de eliminacion gaussiana no se encuentran ceros
en posiciones diagonales, la matriz A admite factorizacion LU y ademas esta se puede
construir de una forma muy simple.
3. En la practica, la factorizacion LU se lleva a cabo sobrescribiendo A con los multipli-
cadores para ahorrar memoria, es decir,
_
_
u
11
u
12
u
13
l
21
u
22
u
23
l
31
l
32
u
33
_
_
Fases en la resolucion de un sistema mediante factorizacion LU.
De acuerdo con lo visto hasta ahora, tenemos que un sistema Ax = b en el que no se encuen-
tran pivotes iguales a cero, se resuelve en tres fases:
a. Fase de factorizacion se lleva a cabo la factorizacion LU de A.
b. Fase de actualizacion se actualiza el termino independiente b aplicandole, a traves
de los multiplicadores l
ij
las mismas transformaciones que a A. Notese que esto es equiv-
alente a resolver el sistema Ly = b, es decir, a hacer uso de la sustitucion progresiva.
c. Fase de solucion se resuelve por sustitucion regresiva Ux = y.
Ejemplo. El el caso del sistema (2), las fase de actualizacion corresponde a resolver los
sistemas
_
_
1 0 0
2 1 0
1 1/3 1
_
_
_
_
y
1
y
2
y
3
_
_
=
_
_
1
2
1
_
_
obteniendo
y =
_
1, 4,
2
3
_
T
y la fase de solucion corresponde a resolver
_
_
1 1 1
0 3 2
0 0 2/3
_
_
_
_
x
1
x
2
x
3
_
_
=
_
_
1
4
2
3
_
_
obteniendo
x = (0, 2, 1)
T
17
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Limitaciones de la Eliminacion Gaussiana.
El procedimiento de eliminacion gaussiana anterior puede fracasar por dos razones fun-
damentales:
I. Presencia de ceros en posicion diagonal. En alguna etapa del proceso de elim-
inacion de Gauss se puede encontrar un cero en posicion diagonal, en cuyo caso no se
puede pivotar sobre este elemento. Ejemplo
_
0 1
1 2
__
x
1
x
2
_
=
_
2
3
_
As podra suceder que no existiese descomposicion LU de A. El estudio de cuando
existe descomposicion LU de una matriz es complejo en el caso general, y no lo abor-
damos en este curso pues, como veremos a continuacion, la descomposicion gaussiana
tal como la hemos estudiado no se utiliza en la practica.
II. Inestabilidad del algoritmo. La eliminacion gaussiana (sin pivoteo) es un algo-
ritmo inestable. Como ejemplo, considerese
_
1
1 1
__
x
1
x
2
_
=
_
1
2
_
con positivo pero muy proximo a cero.
Veamos dos formas de proceder que proporcionan resultados totalmente distintos.
A. Si intercambiamos las ecuaciones del sistema se tiene
_
1 1
1
__
x
1
x
2
_
=
_
2
1
_
y pivotando sobre el elemento (1, 1) se obtiene
_
1 1
0 1
__
x
1
x
2
_
=
_
2
1 2
_
de donde x
2
=
12
1
y x
1
= 2 x
2
.
Ahora bien, el ordenador computa 1 como 1. Esto es as pues para llevar a
cabo una adicion o substraccion hay que desplazar el punto radical del n umero con
menor exponente hasta hacer coincidir los exponentes y, como hay un n umero nito de
dgitos en la mantisa, se comete un error. En efecto, supongamos que en el ordenador
se disponen de 7 posiciones decimales para representar los n umeros y que = 10
8
.
Entonces = 0,100000010
7
y 1 = 0,100000010
1
. Ahora desplazamos el punto para
poner exponente 10
1
, es decir, = 0,00000000110
1
con lo que 1 = 0,09999999910
1
.
Aqu se estan utilizando mas de 7 posiciones decimales, y la mantisa mas proxima para
18
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
la maquina es 0,1 de forma que 1 se computa como 1. Lo mismo sucede para 1 2
que se computa como 1, por lo que el valor calculado de x
2
es 1. Entonces x
1
= 2 x
2
es computado como 1.
Pues bien, la solucion exacta al sistema es x
1
1, x
2
1 con lo que el error relativo
cometido es muy peque no. En denitiva, el error de redondeo cometido no deteriora
signicativamente la precision de la solucion.
B. Supongamos sin embargo que procedemos sin intercambiar las. Pivotando sobre el
primer elemento se tiene
_
1
0 1
1

__
x
1
x
2
_
=
_
1
2
1

_
de donde x
2
= (2 1/) / (1 1/) y x
1
=
1
(1 x
1
). Por la misma razon esgrimida
anteriormente, el ordenador computa (2 1/) / (1 1/) como (1/) /(1/) = 1. En
efecto,
1
= 0,1000000 10
9
y 2 = 0,2000000 10
1
. Ahora desplazamos el punto para
poner exponente 10
9
, es decir, 2 = 0,00000000210
9
con lo que 2
1
= 0,09999998
10
9
. Aqu se estan utilizando mas de 7 posiciones decimales, y la mantisa mas proxima
para la maquina es 0,1 de forma que 2
1
se computa como 0,1000000 10
9
, es
decir, lo mismo que
1
. Lo mismo sucede para 1
1
, que se computa como
1
. En
consecuencia, x
2
se computa como 1 y entonces x
1
= (1 x
2
) / se eval ua como 0.
A diferencia del caso (A) anterior, en este caso el error relativo es absolutamente
inaceptable. Notese que el error relativo signicativo se comete en la componente x
1
,
que es en la que se multiplica un n umero muy grande, 1/, por otro muy peque no,
(1x
2
). Como el ordenador eval ua este ultimo como 0, el producto se hace cero cuando
en realidad debera valer algo muy proximo a 1.
Este ejemplo ilustra un problema que se presenta cuando se elige como pivote un elemento
peque no en valor absoluto respecto del resto de los elementos de la la. Entonces los multi-
plicadores correspondientes son muy grandes en relacion al resto de elementos de la la, lo
que hace que en el proceso se multipliquen n umeros muy grandes por otros muy peque nos,
provocando que el resultado sea muy sensible a los peque nos errores de redondeo que se hayan
podido cometer en ambos. Como conclusion tenemos:
Cuando en alguna fase del proceso de eliminacion gaussiana se elije como pivote un
elemento peque no (en valor absoluto) respecto del resto de los elementos de la la,
el algoritmo puede volverse inestable.
Los puntos I y II anteriores ponen de maniesto una gran limitacion del metodo de
eliminacion gaussiana. Para solventar ambos problemas se recurre a un proceso llamado
pivoteo.
19
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
5. Factorizacion LU con pivoteo
Como se ha comentado, en la eliminacion gaussiana se utiliza siempre el pivoteo.
Objetivo del pivoteo. Con el pivoteo se pretende elegir adecuadamente el pivote corre-
spondiente a cada etapa. Consiste en intercambiar las de A (pivoteo parcial ) o bien las y
columnas (pivoteo total ) para elegir el mejor elemento disponible para pivotar. Solo estudi-
aremos el pivoteo de las o pivoteo parcial.
Eliminacion gaussiana con pivoteo de las escaladas y factorizacion PA = LU
La idea esencial del pivoteo de las, es la siguiente:
En la etapa k del proceso de eliminacion gaussiana se elige como pivote el elemento
a
(k1
ik
en posicion diagonal o subdiagonal de la columna k que tenga el mayor valor
absoluto.
Conceptualmente lo anterior es equivalente a intercambiar al principio de la etapa k-esima
las las k e i para luego hacer ceros en las posiciones de la columna k debajo de la diagonal
principal. En realidad, lo que interesa para elegir el pivote no es tanto su tama no como su
valor relativo respecto del resto de los elementos de la la. Por ello lo que se hace en la practica
es:
a. O bien escalar primero cada ecuacion con el n de que el maximo de los valores
absolutos de los elementos de cada la sea el mismo.
b. O bien calcular, en cada etapa k, el ndice i para el cual es maximo el cociente

a
(k1
ik
s
i

donde s
i
= max {|a
i1
| , |a
i2
| , ..., |a
in
|} es una medida del tama no de la i-esima ecuacion.
Ambos procedimientos son equivalentes desde el punto de vista de los resultados, aunque
el segundo requiere de menos ops. y sera el que describiremos, y se les conoce como eliminacion
gaussiana con pivoteo de las escaladas.
A este respecto tenemos el siguiente resultado:
Proposicion 7 Sea A R
nn
(no necesariamente regular). El proceso de eliminacion gaus-
siana con pivoteo de las escaladas siempre lleva la matriz A a una matriz equivalente trian-
gular superior U.
Dem. En efecto, esto es as pues si en la etapa k-esima se encuentra un pivote nulo eso
quiere decir que la matriz ya tiene ceros en todas las posiciones subdiagonales de la columna
k-esima.
20
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Comentario: Puesto que A y U son matrices equivalentes y U es regular si y solo si sus
elementos diagonales son no nulos, A es regular si y solo si todos los elementos diagonales de
U son no nulos.
El proceso anterior se puede escribir matricialmente en la forma
E
(n1
T
(n1
E
(n2
T
(2
E
(1
T
(1
A = U (3)
donde cada matriz T
(k
es una matriz de intercambio (es decir, resultante de llevar a cabo el
intercambio de dos las en la matriz identidad) correspondiente al intercambio de las para
elegir pivote.
Ademas, se puede demostrar que el producto
E
(n1
T
(n1
E
(n2
T
(2
E
(1
T
(1
se se puede escribir en la forma
E
(n1
E
(n2
E
(1
T
(n1
T
(2
T
(1
con lo que (3) se puede escribir
E
(n1
E
(n2
E
(1
T
(n1
T
(2
T
(1
A = U
Ahora denimos
P := T
(n1
T
(2
T
(1
.
Por su propia denicion P es el resultado de llevar a cabo en la identidad los mismos in-
tercambios que se han llevado acabo en A para elegir el pivote. Por ello P es una matriz
de permutacion. Por otro lado ya hemos visto que la matriz L :=
_
E
(n1
E
(n2
E
(1
_
1
es una matriz triangular inferior que tiene unos en la diagonal principal y en cada posicion
subdiagonal contiene el multiplicador que se ha usado para hacer cero en dicha posicion. En
denitiva, hemos llegado a que se puede escribir PA = LU. Resumiendo, hemos obtenido lo
siguiente:
Proposicion 8 1) Sea A R
nn
. El metodo de eliminacion gaussiana con pivoteo de
las escaladas conduce a una factorizacion PA = LU donde
P R
nn
es una matriz de permutacion
L R
nn
es una matriz triangular inferior
U R
nn
es una matriz triangular superior
vericandose adem as que A es regular si y solo si U es regular.
2) La matriz P corresponde a llevar a cabo en la identidad los intercambios de las
que se realizan en A para elegir los pivotes en cada etapa.
3) L es una matriz triangular inferior que tiene unos en la diagonal principal y en
cada posicion subdiagonal contiene el multiplicador que se ha usado para hacer cero en
dicha posicion.
21
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Comentario: Es sencillo demostrar que el resultado anterior se puede aplicar tambien a
matrices rectangulares A R
mn
, y en ese caso la factorizacion es de la forma PA = LU
con P R
mm
matriz de permutaci on, L R
mm
triangular inferior y U R
mn
triangular
superior.
Ejemplo. Consideremos un ejemplo para el caso n = 3:
A =
_
_
2 3 6
1 6 8
3 2 1
_
_
(4)
En un primer lugar procedemos conceptualmente para luego precisar lo que verdadera-
mente hace el ordenador.
A. Procedimiento conceptual.
Paso 0. Al principio el vector de permutaciones es p
(0
= (1, 2, 3). El vector que contiene
la escala de cada la es s = (6, 8, 3).
Paso 1.
Determinacion del primer pivote. Examinamos los cocientes 2/6, 1/8, 3/3. El
mayor corresponde a i = 3 luego se intercambian las las 1 y 3.
A T
(1
A =
_
_
3 2 1
1 6 8
2 3 6
_
_
donde
T
(1
=
_
_
0 1 0
1 0 0
0 0 1
_
_
Se hacen ceros en las posiciones subdiagonales de la primera columna usando los
multiplicadores l
21
=
2
3
y l
31
=
1
3
E
(1
T
(1
A =
_
_
3 2 1
0
16
3
23
3
0
13
3

20
3
_
_
donde
T
(2
=
_
_
1 0 0
0 0 1
0 1 0
_
_
Paso 2.
22
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Determinacion del segundo pivote. Examinamos los cocientes para los elementos
de la columna 2 y las las que ahora estan situadas en posiciones 2 y 3. As se
tiene
16
3
8
=0.6667 para la 2 y
13
3
6
=0.7222 para la 3. El mayor corresponde a la
la 3, luego se intercambian las las 2 y 3
T
(2
E
(1
T
(1
A =
_
_
3 2 1
0
13
3

20
3
0
16
3
23
13
_
_
Se hace un cero en la posicion (3, 2) con el multiplicador l
32
=
16
13
obteniendo
E
(2
T
(2
E
(1
T
(1
A =
_
_
3 2 1
0
13
3

20
3
0 0
7
13
_
_
= U
Finalmente tenemos que PA = LU con
P = T
(2
T
(1
=
_
_
0 0 1
1 0 0
0 1 0
_
_
; L =
_
_
1 0 0
2
3
1 0
1
3

16
13
1
_
_
; U =
_
_
3 2 1
0
13
3

20
3
0 0
7
13
_
_
(5)
Como resumen tenemos:
Factorizacion LU con pivoteo. En la factorizacion LU con pivoteo, las matrices
P, L y U se calculan de la siguiente forma:
U es la matriz resultado de llevar A a forma triangular superior mediante
operaciones elementales. En cada etapa, de entre todos los candidatos a pivote
se elige el mayor (en valor absoluto) respecto al resto de los elementos de su
la. Para poner a dicho elemento en posicion diagonal se deben intercambiar
las las correspondientes de A.
L es la matriz triangular inferior que cuyos elementos diagonales valen uno y
tal que en cada posicion subdiagonal contiene el valor del multiplicador con el
que se ha hecho un cero en esa posicion de A.
P es la matriz resultado de llevar a cabo en la matriz identidad los mismos
intercambios que se han llevado a cabo en la matriz A.
B. Procedimiento real. El ordenador realmente procede de la siguiente forma:
a. Las las de A no se intercambian de forma fsica sino que simplemente se lleva la
cuenta de los intercambios que se realizan a traves de un vector de permutaciones que
se va actualizando.
23
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
b. Los multiplicadores se van sustituyendo en las posiciones subdiagonales (salvo per-
mutacion de las) de A a medida que se van calculando. Es decir, el multiplicador l
ij
se sustituye en la posicion (i, j) de A (salvo permutacion de las).
Por ello el procedimiento que verdaderamente se lleva a cabo en el ordenador es:
Paso 0. Al principio el vector de permutaciones es p = (1, 2, 3). La escala de cada la
es s = (6, 8, 3).
Paso 1.
Determinacion del primer pivote. Examinamos los cocientes
2
6
,
1
8
,
3
3
. El mayor
corresponde a i = 3 luego el vector de permutaciones se actualiza a p = (3, 2, 1).
Hacer ceros en primera columna con multiplicadores
2
3
y
1
3
_
_
2
3
(mult.)
13
3

20
3
1
3
(mult.)
16
3
23
3
3 (piv.) 2 1
_
_
Paso 2. Determinacion del segundo pivote. Examinamos los cocientes |a
p
2
2
| /s
p
2
y
|a
p
3
2
| /s
p
3
, es decir, de entre los elementos de la columna 2 y las las que ahora estan situ-
adas en posiciones 2 y 1. As se tiene (16/3) /8 =0.6667 para p
2
= 2 y (13/3) /6 =0.7222
para p
3
= 1. El mayor corresponde a p
3
luego se intercambian las las p
2
y p
3
es decir
p = (3, 1, 2) y hacemos el cero restante, resultando
_
_
2
3
(mult.)
13
3
(piv.)
20
3
1
3
(mult.)
16
13
(mult.)
7
13
3 (piv.) 2 1
_
_
que nos aporta la misma informacion que en el procedimiento (A) sabiendo que el vector
de permutaciones nal es p = (3, 1, 2), es decir, permutando las las de la matriz anterior
en la forma (3, 1, 2) se obtiene el mismo resultado que en A. La P correspondiente es la
resultante de realizar la misma permutacion en la identidad.
24
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Fases en la resolucion de un sistema mediante factorizacion LU con pivoteo
Al utilizar eliminacion gaussiana con pivoteo, el sistema Ax = b se resuelve en tres fases:
a. Fase de factorizacion se lleva a cabo la factorizacion PA = LU de A.
b. Fase de actualizacion se resuelve, por sustitucion progresiva, el sistema Ly =
Pb, donde Pb no es mas que el vector b al que se le aplican los mismos intercambios
que se han utilizado en la factorizacion de A. Se puede interpretar que la solucion y
es la correspondiente a actualizar el termino independiente b aplicandole primero P
y luego las transformaciones que se han utilizado para hacer ceros en las posiciones
subdiagonales de A.
c. Fase de solucion se resuelve por sustitucion regresiva Ux = y.
Ejemplo. Consideremos el sistema
_
_
2 3 6
1 6 8
3 2 1
_
_
_
_
x
1
x
2
x
3
_
_
=
_
_
14
19
2
_
_
La factorizacion LU con pivoteo de las escaladas de A ya se ha llevado a cabo y el resultado
es (5). Por ello, la fase de actualizacion corresponde a resolver Ly = Pb, es decir,
_
_
1 0 0
2
3
1 0
1
3

16
13
1
_
_
y =
_
_
0 0 1
1 0 0
0 1 0
_
_
_
_
14
19
2
_
_
=
_
_
2
14
19
_
_
obteniendose
y =
_
2,
46
3
,
7
13
_
T
La fase de solucion corresponde a resolver
_
_
3 2 1
0
13
3

20
3
0 0
7
13
_
_
_
_
x
1
x
2
x
3
_
_
=
_
_
2
46
3
7
13
_
_
obteniendose la solucion nal
x = (1, 2, 1)
T
Factorizacion LU con Matlab
Veamos algunas instrucciones de Matlab relacionadas con la factorizacion LU:
[L,U,P]=lu(A) proporciona matrices P (de permutacion) L (triangular inferior) y U
(triangular superior) tales que PA = LU.
25
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
[S,U]=lu(A); U es triangular superior y S, es triangular inferior salvo permutacion de
las, es decir, PS es una matriz triangular inferior L. Se cumple PA = LU.
Ejemplo: Sea A=[1 3 4;2 4 6;-1 2 0].
[L,U,P]=lu(A) produce
L =
_
_
1 0 0
0,5 1 0
0,5 0,25 1
_
_
; U =
_
_
2 4 6
0 4 3
0 0 0,25
_
_
; P =
_
_
0 1 0
0 0 1
1 0 0
_
_
[S,U]=lu(A) produce
S =
_
_
0,5 0,25 1
1 0 0
0,5 1 0
_
_
; L =
_
_
2 4 6
0 4 3
0 0 0,25
_
_
donde, observese, la matriz S es el resultado del producto PL con lo que no es
triangular inferior.
6. Coste computacional en la eliminaci on gaussiana
A continuacion se hara un recuento de las operaciones que se llevan a cabo en cada
una de las 3 fases para resolver el sistema Ax = b. Se tendra en cuenta solo el n umero de
multiplicaciones y divisiones (ops.), pues las el coste de las sumas se desprecia frente al de
las multiplicaciones:
a. Fase de factorizacion Sin pivoteo se consumen n
3
/3 n/3 ops. El pivoteo requiere
n
2
/2 +n/2 1 ops., con lo que en total se tienen
n
3
+
1
2
n
2
+
1
6
n 1
1
3
n
3
+
1
2
n
2
ops.
b. Fase de actualizacion n
2
/2 n/2 ops
c. Fase de Solucion n
2
/2 +n/2 ops.
Comentarios:
El coste de la fase de factorizacion, con o sin pivoteo, es n
3
/3 +O(n
2
).
Las etapas de actualizacion y de solucion consumen conjuntamente n
2
ops. independien-
temente de que haya o no pivoteo.
Se aprecia que el coste de la factorizacion es muy superior al de las etapas de actualizacion
y solucion.
26
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Resoluci on de varios sistemas con la misma matriz. Estudiemos el computo global
de operaciones para resolver m sistemas Ax = b
i
, i = 1, ..., m por el metodo de eliminacion
gaussiana. Tenemos que realizar:
1 fase de factorizaci on + m actualizaciones + m soluciones
Por ello tenemos:
1. Con pivoteo n
3
/3 + (1/2 +m) n
2
+n/6 1 = n
3
/3 + (1/2 +m) n
2
+O(n)
2. Sin pivoteo n
3
/3 +mn
2
n/3 = n
3
/3 +mn
2
+O(n)
Observese que si en vez de factorizar A solo una vez la factorizasemos en cada uno de los
sistemas, tendramos mn
3
/3 +O(n
2
) ops.en vez de n
3
/3 +O(n
2
) ops.
27
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
7. Factorizacion de Cholesky
Motivacion y resumen. En el caso de que A R
nn
sea simetrica denida positiva, A se
puede factorizar en la forma A = LL
T
, con lo que es un caso particular de factorizacion LU
en la que U = L
T
. El coste computacional es menor que el de la factorizacion LU y ademas,
no precisa de pivoteo pues se puede demostrar que los multiplicadores no se hacen grandes
en relacion con el tama no de los elementos de A. Por ello, al trabajar con matrices simetricas
denidas positivas se trabaja con la factorizacion de Cholesky.
El resultado teorico.
En primer lugar recordemos la denicion y una caracterizacion de las matrices denidas
positivas:
Proposicion 9 Sea A R
nn
simetrica. A es denida positiva para todo x R
n
tal que
x = 0 se cumple x
T
Ax > 0
Proposicion 10 Sea A R
nn
simetrica. A es denida positiva los autovalores de A son
todos positivos los menores principales de A son todos positivos
Pues bien, se tiene:
Proposicion 11 Factorizacion de Cholesky. Sea A R
nn
simetrica:
A es denida positiva si y solo si existe una matriz L triangular inferior con elementos
diagonales no nulos tal que A = LL
T
. Ademas, la factorizacion es unica si se pide que L
tenga elementos diagonales positivos.
Algoritmo de factorizacion de Cholesky.
La factorizacion de Cholesky de una matriz denida positiva se lleva a cabo en la practica
mediante un algoritmo que consta de n etapas. En cada una de las etapas se determina una
columna de L. El procedimiento esta basado en imponer la igualdad A = LL, es decir,
_

_
a
11
a
12
a
13
a
13
a
21
a
22
a
23
a
2n
a
31
a
32
a
33
a
3n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
n2
a
n3
a
nn
_

_
=
_

_
l
11
0 0 0
l
21
l
22
0 0
l
31
l
32
l
33
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
l
n1
l
n2
l
n3
l
nn
_

_
_

_
l
11
l
12
l
13
l
1n
0 l
22
l
23
l
2n
0 0 l
33
l
3n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 l
nn
_

_
(6)
o, en forma compacta
a
ij
=
n

s=1
l
is
_
l
T
_
sj
=
n

s=1
l
is
l
js
=
mn(i,j)

s=1
l
is
l
js
; i, j = 1, ..., n (7)
El algoritmo es el siguiente:
28
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Primera etapa. Se identica elemento a elemento en la primera la de (6) obteniendo
a
i1
= l
i1
l
11
; i = 1, ..., n
de donde:
1. Se calcula l
11
l
11
=

a
11
(notese que a
11
> 0 por ser A denida positiva)
2. Se calculan el resto de los elementos de la primera columna de L
l
i1
=
a
i1
l
11
; i = 1, ..., n
Etapa k-esima. Se supone que ya se han calculado las columnas 1 a k 1de L.
1. Se impone igualdad en la posicion (k, k) en (6)
a
kk
=
k

s=1
l
ks
l
ks
=
k1

s=1
l
2
ks
+l
2
kk
(8)
de donde obtenemos
l
kk
=
_
a
kk

k1

s=1
l
2
ks
_
1
2
(9)
Se puede demostrar que, al ser A denida positiva, a
kk

k1
s=1
l
2
ks
es positivo,
con lo que l
kk
estara bien denido y ademas sera estrictamente positivo. Notese
que tambien se podra elegir
l
kk
=
_
a
kk

k1

s=1
l
2
ks
_
1
2
aunque se suele trabajar con l
kk
> 0.
2. Conocido l
kk
, se impone la igualdad en las posiciones (k, k + 1), ..., (k, n) de
(6) obteniendo
a
ik
=
k1

s=1
l
is
l
ks
+l
ik
l
kk
; i = k + 1, ..., n (10)
Ahora, como l
kk
= 0, tenemos
l
ik
=
1
l
kk
_
a
ik

k1

s=1
l
is
l
ks
_
; i = k + 1, ..., n
29
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
que proporciona l
ik
; i = k + 1, ..., n. Se ha determinado as la columna k de L.
Uso del algoritmo para estudiar si una matriz es denida positiva. El calculo de
los autovalores o la aplicacion del criterio de los menores principales para determinar si una
matriz es denida positiva son procedimientos muy costosos (en especial el primero). Una
forma eciente de comprobar si una matriz simetrica es denida positiva es aplicar el algoritmo
de factorizacion Cholesky anterior. Si la expresion subradical en (9) es estrictamente positiva
en todos los pasos, entonces la matriz es denida positiva. Si dicha condicion anterior se
incumple en alg un paso, eso quiere decir que la matriz no es denida positiva.
Estabilidad del algoritmo de Cholesky. Notese que de (8) se sigue, para j k,
a
kk
=
k

s=1
l
2
ks
l
2
kj
de donde
|l
kj
|

a
kk
; j = 1, ..., k
con lo que los elementos de L (multiplicadores) no se hacen grandes en relacion a los ele-
mentos de A incluso sin pivoteo. Por ello, el algoritmo de Cholesky es estable y por ello no
precisa de pivoteo.
Ejemplo. Apliquemos el algoritmo de factorizacion de Cholesky a la matriz
A =
_
_
1 1 3
1 5 9
3 9 19
_
_
Imponemos
_
_
1 1 3
1 5 9
3 9 19
_
_
=
_
_
l
11
0 0
l
21
l
22
0
l
31
l
32
l
33
_
_
_
_
l
11
l
12
l
13
0 l
22
l
23
0 0 l
33
_
_
(11)
Primera etapa. Se impone igualdad en la posicion (1, 1) de (11) obteniendo
l
2
11
= 1
de donde tomamos l
11
= 1 (aunque tambien podramos haber tomado l
11
= 1). Ahora
se impone igualdad en las posiciones (1, 2) y (1, 3)
l
11
l
21
= 1 ; l
11
l
31
= 3
de donde se tiene
l
21
=
1
l
11
=
1
1
= 1 ; l
31
=
3
l
11
=
3
1
= 3
30
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Segunda etapa. Se impone igualdad en la posicion (2, 2) de (11) obteniendo
l
2
21
+l
2
22
= 5
de donde tenemos
l
2
22
= 5 l
2
11
= 5 (1)
2
= 4
y tomamos l
22
= 2 (aunque tambien podramos haber tomado l
11
= 2). Ahora se
impone igualdad en la posicion (2, 3)
l
21
l
31
+l
22
l
32
= 9
de donde tenemos
l
32
=
9 l
21
l
31
l
22
= 3
Tercera etapa. Se impone igualdad en la posicion (3, 3) de (11)
l
2
31
+l
2
32
+l
2
33
= 19
de donde tenemos
l
2
33
= 1
y tomamos l
33
= 1 (aunque tambien se podra haber tomado l
33
= 1)
En denitiva, se ha obtenido la matriz
L =
_
_
1 0 0
1 2 0
3 3 1
_
_
Coste computacional de la factorizacion de Cholesky. Para resolver un sistema uti-
lizando la factorizacion de Cholesky, se tienen
n
3
6
+
3n
2
2
+
n
3
ops. + n races cuadradas
Recordemos que la factorizacion LU tiene un coste de n
3
/3 +n
2
n/3 ops. (sin pivoteo).
Por ello:
Para n grande, la factorizacion de Cholesky es aproximadamente dos veces mas
eciente que la eliminacion gaussiana. Ademas hemos visto que el algoritmo es
estable. Por ello, al trabajar con matrices simetricas denidas es preferible llevar a
cabo la factorizacion de Cholesky que la factorizacion LU.
Factorizacion de Cholesky con Matlab. Si A es simetrica denida positiva, chol(A)
produce una matriz U triangular superior tal que U
T
U = A, es decir, U = L
T
.
Ejemplo: Sea A =[ 1 -1 -3; -1 5 9; -3 9 19]. Entonces B=chol(A) produce B =[1 0 0; -1 2
0; -3 3 -1] que cumple que B*B=A.
31
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
8. Sistemas con matrices especiales
Si la matriz A cumple ciertas condiciones especiales, es posible mejorar el coste computa-
cional y/o la estabilidad de los algoritmos de resolucion de sistemas.
8.1. Matrices diagonalmente dominantes
Denicion 6 Sea A R
nn
. Se dice que A es (fuertemente) diagonalmente dominante (por
las) cuando para todo i = 1, ..., n se cumple |a
ii
| >
n

j=1,j=i
|a
ij
|.
Analogamente se dice que A es (fuertemente) diagonalmente dominante por columnas
cuando para todo j = 1, ..., n se cumple |a
jj
| >
n

i=1,i=j
|a
ij
|.
Ejemplo:
A =
_
_
2 0 1
1 4 2
0 1 2
_
_
diagonalmente dominante por las
Comentarios:
En ambos casos, cuando la desigualdad no es estricta se habla de dominancia diagonal
debil .
Cuando se hable de matriz diagonalmente dominante a secas nos referiremos a matrices
diagonalmente dominantes por las.
Para matrices diagonalmente dominantes se tienen los siguientes resultados:
Proposicion 12 En la eliminacion gaussiana con pivoteo de las escaladas aplicada a una
matriz diagonalmente dominante, las las pivote son, en este orden, las las 1, 2, ..., n con lo
que no es necesario llevar a cabo ning un proceso de seleccion de pivote, es decir, la eliminacion
gaussiana con pivoteo parcial aplicada a una matriz diagonalmente dominante es equivalente
a la eliminacion gaussiana sin pivoteo. Ademas, se cumple que la matriz U es diagonalmente
dominante.
Corolario 1 Toda matriz diagonalmente dominante es regular (pues al ser U diagonalmente
dominante ninguno de sus elementos diagonales puede ser nulo).
Proposicion 13 Si A es debilmente diagonalmente dominante y simetrica, la eliminacion
gaussiana con pivoteo parcial es equivalente a la eliminacion gaussiana sin pivoteo.
Proposicion 14 Si A es diagonalmente dominante y simetrica entonces forzosamente debe
ser A denida positiva.
32
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Dem. Sea 0. Entonces la matriz (AI) debe ser diagonalmente dominante y por ello
no singular, lo que implica que los autovalores de A deben ser todos positivos
En cuanto a la aplicacion de las matrices diagonalmente dominantes al MEF, tenemos lo
siguiente:
Proposicion 15 Considerese la matriz de rigidez k
e
de un elemento
e
en el problema del
calor y supongase que el elemento tiene n
e
grados de libertad. Si todos los grados de libertad
del elemento son de tipo Lagrange y los elementos no diagonales de k
e
son negativos, entonces
k
e
es debilmente diagonalmente dominante tanto por las como por columnas.
Proposicion 16 Si en un problema MEF todas las matrices k
e
, e = 1, ..., s son debilmente
diagonalmente dominantes, entonces K es debilmente diagonalmente dominante.
8.2. Matrices de banda
Denicion 7 Matriz de banda. Una matriz A R
nn
es una matriz de banda (m, k)
si todos los elementos por debajo de la m-esima subdiagonal y por encima de la k-esima
superdiagonal son nulos.
Denicion 8 Semianchura de banda. Se dene la semianchura de banda d de una matriz
A como el n umero natural mas peque no tal que
|i j| > d a
ij
= 0
As, d es el n umero de diagonales por encima y por debajo de la diagonal principal fuera del
cual los elementos son nulos. En el caso de una matriz de banda (m, k) sera d = max(m, k).
Ejemplo. La matriz
_

_
a
1
c
1
d
1
b
1
a
2
c
2
d
2
e
1
b
2
a
3
c
3
d
3
e
2
b
3
a
4
c
4
.
.
.
e
3
.
.
.
.
.
.
.
.
. d
n2
.
.
. b
n2
a
n1
c
n1
e
n2
b
n1
a
n
_

_
es una matriz de banda (2, 2) y su semianchura de banda es 2.
33
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Ejemplo. Un caso especial muy frecuente de matrices de banda es el caso de matrices
tridiagonales, es decir, matrices de banda (1, 1) con la estructura
_

_
a
1
c
1
b
1
a
2
c
2
b
2
a
3
c
3
b
3
a
4
c
4
.
.
.
.
.
.
.
.
.
b
n2
a
n1
c
n1
b
n1
a
n
_

_
Recuento de operaciones en la solucion de un sistema con matriz de banda.
Se puede demostrar que si A es una matriz de banda con semianchura de banda igual a
d, se tiene que el coste computacional de la resolucion de un sistema Ax = b es:
a. Fase de factorizacion nd
2
/2+O(1) ops. en vez de los n
3
/3+O(n
2
) correspondientes
a una matriz llena, es decir, una matriz con la mayor parte de sus elementos distintos
de cero.
b. Fases de actualizacion y solucion. Su coste depende de la densidad de los factores L
y U. Si casi todos los elementos son no nulos se tiene un coste nd + O(1) (frente al
n
2
+O(n) en el caso de matrices llenas).
34
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
8.3. Sistemas dispersos
En este curso nos limitaremos a dar unas nociones muy basicas sobre sistemas dispersos:
Se dice que una matriz es dispersa cuando la mayor parte de sus elementos son nulos.
El utilizar metodos generales de algebra lineal para trabajar con matrices dispersas
es poco recomendable, pues gran n umero de las aproximadamente n
3
/3 operaciones
necesarias para resolver el sistema o para invertir la matriz involucran ceros. Ademas,
en muchas ocasiones se trabaja con matrices muy grandes y no tiene sentido el reservar
memoria para los ceros.
Por ello, existen tecnicas especcas tanto para almacenar matrices dispersas en la
memoria como para tratar con ellas. Dichas tecnicas tienen dos nes diferentes que no
siempre son compatibles: ahorrar tiempo y/o ahorrar memoria.
La mayora de los esquemas practicos para tratar con sistemas dispersos son funda-
mentalmente esquemas de eliminacion similares a Gauss-Jordan pero cuidadosamente
optimizados para reducir el n umero de rellenos, es decir, elementos inicialmente nu-
los que se convierten en no nulos durante el proceso de resolucion. Por ejemplo, en la
siguiente matriz se produciran ll-ins si se intenta hacer ceros bajo la diagonal por el
procedimiento habitual
_

_
a
1
f
2
f
3
f
4
f
5
f
n
b
1
a
2
c
2
b
2
a
3
c
3
b
3
a
4
c
4
.
.
.
.
.
.
.
.
.
b
n2
a
n1
c
n1
b
n1
a
n
_

_
35
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
9. Condicionamiento de un sistema de ecuaciones
Motivacion. Se pretende estudiar el condicionamiento de una sistema de ecuaciones lineales,
es decir, la sensibilidad de la soluci on teorica frente a cambios en los datos del problema,
es decir, del vector b y de la matriz A. Para ello primero recordaremos varios conceptos
estudiados en la asignatura de

Algebra Lineal.
9.1. Diagonalizaci on y diagonalizacion ortogonal de matrices
En esta seccion se introducen deniciones y se enuncian resultados estudiados en la asig-
natura de

Algebra Lineal y que seran de interes en lo que sigue.
Comenzamos con el siguiente concepto:
Denicion 9 Matriz ortogonal. Se dice que una matriz Q R
nn
es ortogonal cuando
Q
T
Q = I es decir, si Q es regular y Q
1
= Q
T
.
La siguiente proposicion permite reconocer facilmente si una matriz es o no ortogonal:
Proposicion 17 Se cumple que una matriz Q R
nn
es ortogonal las columnas de Q
forman un sistema ortonormal en R
n
con el producto escalar estandar las las de Q forman
un sistema ortonormal en R
n
con el producto escalar estandar.
La siguiente propiedad expresa que al aplicar una matriz ortogonal a un vector, este
cambia, pero no lo hace su norma dos:
Proposicion 18 Si Q R
nn
es ortogonal, entonces para todo x R
n
se cumple Qx
2
=
x
2
.
Recordemos ahora algunas nociones ya estudiadas en cursos anteriores relativas a auto-
valores, autovectores y diagonalizaci on de matrices cuadradas:
Denicion 10 Autovalores y autovectores. Sea A R
nn
. Se dice que C es valor
propio de A existe x = 0 tal que Ax = x. A x se le llama vector propio de A asociado a
.
Comentario: Recuerdese que de la denicion anterior se deduce que los valores propios de
A son las n races (en C) de la ecuacion |I A| = 0 y los vectores propios los elementos no
nulos de N(I A).
Denici on 11 Radio espectral de una matriz. El radio espectral de una matriz A
R
nn
es el maximo del modulo de los valores absolutos de A, es decir,
(A) = m ax {|| : es autovalor de A}
36
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
A continuacion recordamos algunos conceptos relacionados con la diagonalizacion de ma-
trices:
Denicion 12 Matriz diagonalizable. Una matriz A R
nn
es diagonalizable existe
una matriz P C
nn
regular tal que P
1
AP = D donde D = diag(
1
, ...,
n
) es una matriz
diagonal. En tal caso los
i
son los autovalores de A y la columna i-esima de P es una vector
propio asociado al valor propio
i
.
Proposicion 19 Condicion necesaria y suciente para que una matriz sea diago-
nalizable. Se verica que A C
nn
es diagonalizable existe una base de C
n
formada por
vectores propios de A.
Denici on 13 Matriz diagonalizable ortogonalmente. Se dice que una matriz A
R
nn
es diagonalizable ortogonalmente cuando existe una matriz ortogonal Q R
nn
regular
tal que Q
T
AQ = D donde D = diag(
1
, ...,
n
) es una matriz diagonal.
Proposicion 20 Condicion necesaria y suciente para que una matriz sea diago-
nalizable ortogonalmente. Se verica que A R
nn
es diagonalizable ortogonalmente
existe una base ortonormal de C
n
formada por vectores propios de A.
Proposicion 21 Diagonalizacion ortogonal de matrices simetricas. Todos los valores
propios de una matriz simetrica A son reales. Ademas A es diagonalizable ortogonalmente. Si
A es denida positiva, todos sus autovalores son positivos, si A es semidenida positiva todos
sus autovalores son no negativos y si A es indenida tiene autovalores positivos y negativos.
9.2. Normas matriciales inducidas por normas vectoriales
Vamos a denir un tipo especial de normas matriciales que son las mas utilizadas en la
practica pues tienen tienen propiedades muy interesantes.
Denicion 14 Normas matriciales inducidas por normas vectoriales. Consideremos
el espacio R
mn
. Sean
a
y
b
normas en R
n
y R
m
respectivamente.
Sea la aplicacion denida en R
mn
de la siguiente forma
A := max
xR
n
,x=0
Ax
b
x
a
= max
xR
n
,x
a
=1
Ax
b
, A R
mn
(donde el maximo existe por ser el conjunto x R
n
, x
a
= 1 compacto y la funcion
x Ax
b
una funcion continua).
De la denicion se desprende directamente la propiedad
x R
n
, A R
nn
, Ax A x
Se demuestra con facilidad que la aplicacion as denida en R
mn
es una norma, es decir,
verica las propiedades:
37
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
N1. A R
mn
, A = 0 se cumple A > 0
N2. A R
mn
, R, A = || A
N3. A, B R
mn
, A+B A +B
A dicha norma matricial se le denomina norma inducida por las normas vectoriales

a
y
b
.
Comentarios:
Hay que hacer notar que no todas las normas en R
mn
son normas inducidas.
En lo sucesivo trabajaremos en R
nn
y supondremos que las dos normas
a
y
b
.en
R
n
son la misma.
Proposicion 22 Propiedades adicionales de las normas matriciales inducidas. La
norma matricial inducida por la norma vectorial (notese que para ambas se esta us-
ando la misma notacion) cumple, ademas de N1, N2 y N3, las siguientes propiedades:
N4. x R
n
, A, B R
nn
, ABx A B x
N5. A, B R
nn
, AB A B
N6. I = 1
Comentario: Debido a la propiedad N5 se dice que una norma matricial inducida es
submultiplicativa.
Ejemplos de normas matriciales inducidas en R
nn
:
1. Norma matricial inducida por la norma 1,
A
1
:= max
x
1
=1
Ax
1
2. Norma matricial inducida por la norma ,
A

:= max
x

=1
Ax

3. Norma matricial inducida por la norma 2,


A
2
:= max
x
2
=1
Ax
2
El siguiente resultado permite calcular de una forma sencilla la norma 1, 2 e de una
matriz cuadrada:
38
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Proposicion 23 Sea A R
nn
. Entonces se verica:
a. A
1
= max
j=1,...,n
n

i=1
|a
ij
| , es decir, A
1
es el maximo de la suma de los valores absolutos
de los elementos de las columnas de A.
b. A

= max
i=1,...,n
n

j=1
|a
ij
| , es decir, A

es el maximo de la suma de los valores absolutos


de los elementos de las las de A.
c. A
2
=
_
(A
T
A) =
_
(AA
T
), es decir, A
2
es la raz cuadrada positiva del ra-
dio espectral de la matriz A
T
A. Notese que A
T
A y AA
T
tienen los mismos autovalores y
ademas, al ser simetricas semidenidas positivas o denidas positivas, estos autovalores seran
no negativos.
Ejemplo Sea la matriz
A =
_
_
1 2 3
0 2 4
1 1 3
_
_
Entonces:
A
1
= max {2, 5, 10} = 10
A

= max {6, 6, 5} = 6
A
2
=

_(
_
_
4 8 10
8 20 10
10 10 11
_
_
) = 5,8344
Ejemplos de normas matriciales no inducidas. Las siguientes normas no estan inducidas
por ninguna norma vectorial:
1. A := max
i,j=1,...,n
|a
ij
|
2. A := traza(A
T
A), llamada norma de Frobenius.
39
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
9.3. Sensibilidad de la solucion de un sistema a cambios en el termino
independiente. N umero de condici on de una matriz
Motivacion. Sea un sistema Ax = b con A R
nn
regular. Supongamos que el termino
independiente b se perturba a b + b con lo que el nuevo sistema tendra una solucion per-
turbada x + x que cumplira A(x + x) = b + b. Queremos estudiar cual es la variacion
relativa en la solucion del sistema, es decir, x / x en terminos de la variacion relativa
en el termino independiente, es decir b / b.
Denotemos por a una norma vectorial y a su norma matricial inducida. De Ax = b
se sigue que
b = Ax A x (12)
Ademas, de A(x +x) = b +b y Ax = b tenemos que Ax = b, con lo que x = A
1
b
y por tanto
x
_
_
A
1
_
_
b (13)
Ahora, de (12) y (13) tenemos que se cumple
x
x
A
_
_
A
1
_
_
b
b
Esta expresion, en la que en el miembro de la izquierda se tiene la variacion relativa en la
solucion del sistema y en el miembro de la derecha se tiene la variacion relativa en el termino
independiente multiplicada por una constante, motiva la siguiente denicion:
Denicion 15 N umero de condicion de una matriz cuadrada regular. A la cantidad
(A) := A
_
_
A
1
_
_
se le denomina n umero de condicion de A en la norma .
Entonces se puede escribir
x
x
(A)
b
b
Comentarios:
Para cualquier norma inducida, (A) 1. En efecto 1 = I =
_
_
AA
1
_
_
A
_
_
A
1
_
_
=
(A).
Cuando (A) 1 se dice que el sistema (o la matriz A) esta bien condicionado. Cuando
(A) es muy alto se dice que el sistema esta mal condicionado. Un problema se considera
muy mal condicionado (ill conditioned) si el recproco del n umero de condicion se
aproxima a la precision de punto otante del ordenador, es decir, aproximadamente 10
6
si se trabaja con precision simple y 10
12
si se trabaja con precision doble.
Por su propia denicion, el n umero de condicion de una matriz depende de la norma
empleada. Sin embargo, y trabajando con las normas usuales, si el n umero de condicion
de una matriz en una determinada norma es alto, tambien lo sera el n umero de condicion
en otra norma.
40
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
N umero de condicion y resolucion de sistemas de ecuaciones Para problemas bien
condicionados, la sensibilidad relativa de la solucion a cambios en el termino independiente
es muy peque na, mientras que para problemas mal condicionados, dicha sensibilidad puede
ser muy alta. Por ello, para resolver un problema mal condicionado se debera prestar especial
atencion a los posibles errores de redondeo que se puedan cometer en el algoritmo, pues dichos
errores pueden conducir a una solucion muy distinta a la que se obtendra de forma teorica.
Interpretacion del n umero de condicion. Cualitativamente, el n umero de condicion de
una matriz denota lo cerca o lejos que esa matriz esta de la singularidad. Las matrices con
n umero de condicion elevado estan proximas a la singularidad. Por ejemplo, considerense las
matrices A y B denidas por
A = (a
1
| a
2
) R
22
B =
_

b
1
|

b
2
_
R
22
donde a
1
y a
2
son las columnas de A y

b
1
y

b
2
son las columnas de B. Supongamos que dichas
columnas son los vectores de la gura
x
y
a1
a2

b1

b2
Pues bien, en el caso de la matriz A sus dos columnas estan muy lejos de ser lineal-
mente dependientes, con lo que A esta lejos de la singularidad y el n umero de condicion de
A sera peque no. Sin embargo, en el caso de B sus dos columnas son casi linealmente
independientes y por ello casi singular, con lo que el n umero de condicion de B sera alto.
A este respecto hay que se nalar que el valor del determinante de A no es una buena
medida de lo lejos que esta una matriz de la singularidad, es decir, que una matriz tenga
un determinante peque no en valor absoluto no necesariamente implica que este cerca de la
singularidad, y que lo tenga alto no necesariamente implica que este lejos de la singularidad.
N umero de condicion de matrices singulares y de matrices no cuadradas Si A es
cuadrada pero singular, se dice que (A) = . Ademas, aunque A no sea cuadrada, se puede
denir el n umero de condicion de A, para lo cual se trabaja con la descomposicion en valores
singulares de A. Tambien en este caso el n umero condicion es una medida de la sensibilidad
de la solucion o soluciones (en el caso de que el sistema sea compatible) o pseudosolucion (en
41
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
el caso en que el sistema sea incompatible) del sistema Ax = b ante cambios en el termino
independiente.
N umero de condicion con Matlab. Utilizando Matlab, el n umero de condicion se puede
calcular de la siguiente forma:
cond(A,2) proporciona el n umero de condicion de A en la norma 2.
cond(A,1) proporciona el n umero de condicion de A en la norma 1.
cond(A,inf) proporciona el n umero de condicion de A en la norma .
Ejemplos:
Si = 10
6
y A es
A =
_
_
1 1 1
0 0
0 0
_
_
se obtiene que
2
(A) = 3 10
6
.
Un ejemplo de matrices muy mal condicionadas es el de las matrices de Hilbert. La
matriz de Hilbert de orden n es la matriz A = (a
ij
) R
nn
denida por
a
ij
=
1
i +j 1
, i, j = 1, ..., n
y que en Matlab se pueden crear con la instruccion hilb(n).
El n umero de condicion de las matrices de Hilbert es muy alto y crece de forma muy
rapida con n. Por ejemplo:
cond(hilb(5),2)=4.7661e+005
cond(hilb(10),2)=1.6025e+013
Sensibilidad a cambios en el termino independiente y n umero de condicion. Un
ejemplo practico: Ilustremos con un ejemplo la relacion entre el n umero de condicion de
una matriz y la sensibilidad relativa de la solucion de un sistema a cambios en el termino
independiente.
Sea A=hilb(10), cuyo n umero de condicion en la norma dos es 1.6025e+013, y tomemos
x=ones(10,1) con lo que x sera solucion al sistema Ax = b donde
b = Ax =[2.9290, 2.0199, 1.6032, 1.3468, 1.1682, 1.0349, 0.9307, 0.8467, 0.7773, 0.7188].
Ahora perturbamos b a nadiendole pertb=1e-6*rand(10,1). Concretamente
pertb = 1.0e-006 *[0.9001, 0.2311, 0.6068, 0.4860, 0.8913, 0.7621, 0.4565, 0.0185, 0.8214, 0.4447].
42
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Resolviendo con Matlab el sistema Ax = b+pertb se obtiene la solucion
xpert = 1.0e+006 *[0.0000, -0.0004, 0.0088, -0.0814, 0.3932, -1.0920, 1.8072, -1.7596, 0.9298, -0.2056].
Trabajando con la norma 2, la variacion relativa de la solucion es 9.2859e+005 mientras
que la variacion relativa de la perturbacion es 4.2554e-007. El cociente entre ambas es de
2.1821e+012, lo que pone de maniesto el mal condicionamiento de la matriz A.
9.4. Sensibilidad de la solucion de un sistema a cambios en la matriz
Sea un sistema Ax = b con A R
nn
regular. Supongamos que la matriz A se perturba a
(A+ A) con lo que el nuevo sistema tendra una solucion perturbada (x + x) cumpliendo
(A+ A) (x + x) = b. Denotemos por una norma vectorial y su norma matricial
inducida. Entonces se puede demostrar que si A es sucientemente peque na entonces
x
x

(A)
1 (A)
A
A
A
A
lo cual indica que, de forma analoga a lo que sucede en el apartado anterior, si (A) es muy
alto la sensibilidad de la solucion a cambios en la matriz puede ser muy grande.
9.5. N umero de condici on de la matriz de rigidez
Puesto que el interes principal de este curso es el de la aplicacion del MEF, nos pregun-
tamos ahora como depende el n umero de condicion de la matriz de rigidez de los distintos
datos del problema, pues de esta forma se podra estimar el efecto de los errores de redondeo
en la solucion numerica obtenida. Se puede decir, grosso modo, que para mallas homogeneas,
es decir, para mallas en las que los elementos tienen aproximadamente el mismo tama no, el
n umero de condicion depende fundamentalmente de lo na que sea la malla. Cuando se rena
la malla el n umero de condicion aumenta. Veamos esto con mas detalle:
Se dene el tama no h de malla como el maximo de las longitudes de los elementos. Pues
bien, en los problemas de orden dos se tiene (K) = O(h
2
) cuando h 0. Por ello el n umero
de condicion de K es tpicamente proporcional a h
2
. Al renar la malla disminuye el tama no
de malla y V
h
crece, con lo que el error de aproximacion
_
_
v v
h
_
_
disminuye. Sin embargo,
desde el punto de vista computacional, si renamos mucho la malla el n umero de condicion
de K crece mucho. Por ejemplo, si h se hace 10 veces mas peque no (K) aumenta 100 veces
aproximadamente. Por ello, si la malla se rena de forma que h sea del orden de 10
5
, (K)
sera del orden de 10
10
y por ello el sistema Kd = F estara pesimamente condicionado. Como
consecuencia, los errores de redondeo al resolver el sistema se amplicaran y la solucion
numerica que proporciona el MEF sera inaceptable.
Como conclusion:
El renar la malla hasta un cierto punto es bueno para la precision del metodo,
pero a partir de ese punto el renar mas, ademas de conllevar un aumento del coste
computacional, lleva consigo tambien una perdida de precision.
43
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
10. Factorizacion QR
Motivacion. Se pretende factorizar A en la forma A = QR, donde Q es ortogonal y R es
triangular superior. Como veremos, esta factorizacion es de utilidad para resolver sistemas
con matriz rectangular, sistemas mal condicionados, ademas de tremendamente util para el
calculo de autovalores y autovectores de matrices, tema este en el que no entraremos en este
curso.
Matrices de Householder
Denicion 16 Se dice que una matriz H R
nn
es una matriz de Householder cuando
H = I 2hh
T
donde h R
n
cumple que tiene norma eucldea uno.
De aqu se deduce que una matriz de Householder:
1. Es simetrica.
2. Es ortogonal, es decir, HH
T
= I. Mas a un, es la matriz de la simetra en R
n
respecto
del hiperplano correspondiente a x h = 0 es decir, el hiperplano ortogonal a h.
El problema basico de Householder
Para abordar la factorizacion QR de una matriz es util primero resolver el siguiente
problema:
Problema basico de Householder. Dado x R
n
, x = 0 se quiere determinar
H R
nn
matriz de Householder tal que Hx sea m ultiplo del vector e
1
(primer
vector de la base canonica de R
n
), es decir, Hx =
_
I 2hh
T
_
x = e
1
.
Supongamos que dado un x se ha resuelto el problema de Householder. Entonces:
a. Tomando normas y usando que H es ortogonal, se sigue que
|| = x
2
(14)
b. La condicion Hx = e
1
, es decir, x 2h(h
T
x) = e
1
implica x e
1
= 2h(h
T
x)
es decir, h debe ser m ultiplo del vector x e
1
. Uniendo este requisito a la condicion
h
2
= 1, vemos que se debe cumplir:
h =
x e
1
x e
1

2
(15)
44
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Pues bien, es inmediato comprobar que las condiciones (14-15), que en principio son
necesarias para que el problema de Householder tenga solucion, son tambien sucientes.
De (14) se tiene que el signo de se puede elegir arbitrariamente. En la practica, con el
n de que en la sustraccion x e
1
no se produzcan cancelaciones, se toma
:= sgn(x
1
) x
2
Entonces es facil comprobar que
_
_
x e
1
_
_
2
= =
_
2 x
2
(x
2
+|x
1
|)
con lo que h queda determinado a partir de
h =
x +sgn(x
1
) x
2
e
1
2 x
2
(x
2
+|x
1
|)
=
[sgn(x
1
) (|x
1
| +x
2
) , x
2
, ..., x
n
]
T
_
2 x
2
(x
2
+|x
1
|)
Por lo tanto, hemos obtenido lo siguiente:
Dado x R
n
, x = 0, el problema basico de Householder para x queda resuelto
tomando la matriz
H = I uu
T
donde
:=
1
x
2
(x
2
+|x
1
|)
u := (sgn(x
1
) (|x
1
| +x
2
) , x
2
, ..., x
n
)
T
Algoritmo de factorizacion QR de Householder
Estrategia. El algoritmo de factorizacion QR de Householder consiste en aplicarle a A una
serie de transformaciones ortogonales denidas por matrices de Householder. En la transfor-
macion k-esima se hacen ceros en las posiciones subdiagonales de la columna k-esima. Sea
A R
nn
arbitraria, con A = (a
1
| | a
n
). Sea A
(0
:= A.
Descripcion del algoritmo. Describamos el procedimiento con mas detalle:
Primer paso: Si a
(0
1
= 0 buscamos una matriz de Householder H
(1
tal que H
(1
a
(0
1
=
(1
e
1
para un cierto
(1
. Entonces denimos
A
(1
:= H
(1
A
(0
=
_
H
(1
a
(0
1
| H
(1
a
(0
2
| | H
(1
a
(0
n
_
=
_

(1
e
1
| H
(1
a
(0
2
| | H
(1
a
(0
n
_
con lo que ya hay ceros en las posiciones subdiagonales de la primera columna. Notese
que la primera columna de A
(1
es (
(1
, 0, 0, ..., 0)
T
.
Si a
(0
1
= 0, ya tenemos ceros debajo de la diagonal en la primera columna y pasamos
al siguiente paso, es decir, A
(1
= A
(0
.
45
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Paso k-esimo. Tras k 1 pasos de este tipo se tiene
A
(k1
=
_
B
(k1
C
(k1
0

A
(k1
_
con B
(k1
R
(k1)(k1)
triangular superior y C
(k1
,

A
(k1
R
(nk+1)(nk+1)
.
Sea a
(k1
1
la primera columna de

A
(k1
. Si a
(k1
1
= 0 se puede pasar al paso k +1. Si
a
(k1
1
= 0 se busca

H
(k
matriz de Householder tal que

H
(k
a
(k1
1
=
(k
e
1
donde e
(1
es el
primer vector canonico de R
(nk+1)
. Entonces se denen las matrices
H
(k
=
_
I
k1
0
0

H
(k
_
que es, obviamente, ortogonal y simetrica, y
A
(k
= H
(k
A
(k1
=
_
I
k1
0
0

H
(k
__
B
(k1
C
(k1
0

A
(k1
_
=
_
B
(k1
C
(k1
0

H
(k

A
(k1
_
y ahora la primera columna de

H
(k

A
(k1
sera
(k
e
1
con lo que A
(k
tendra ceros en las
posiciones subdiagonales de las k primeras columnas.
Tras n 1 etapas de este algoritmo se llega a una matriz triangular superior
R := A
(n1
. (16)
De H
(n1
H
(2
H
(1
A = R se tiene
A =
_
H
(n1
H
(2
H
(1
_
1
R = H
(1
H
(2
H
(n1
R
donde se ha utilizado que las H
(k
son ortogonales y simetricas. Ahora, denotando
Q := H
(1
H
(2
H
(n1
(17)
se obtiene A = QR y se puede enunciar el siguiente teorema:
Proposicion 24 Sea A R
nn
. Mediante el procedimiento descrito anteriormente, A se
puede factorizar en la forma A = QR donde:
a) R R
nn
, que esta dada por (16), es triangular superior.
b) Q R
nn
, dada por (17) es ortogonal.
Comentarios:
1. La diagonal principal de R corresponde a los
(k
. Por ello, tenemos:
46
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
A es singular R es singular R tiene alg un cero en posicion diagonal
en alguna etapa del proceso se encuentra una columna a
(k1
1
nula.
2. El algoritmo anterior muestra que, para matrices regulares, la factorizacion QR es
unica salvo signos de los elementos diagonales.
3. La matriz H
(k
correspondiente a la etapa k-esima.es
H
(k
=
_
I
k1
0
0

H
(k
_
donde

H
(k
= I 2h
(k
_
h
(k
_
T
R
(nk+1)(nk+1)
, siendo h
(k
R
(nk+1)
el vector que
resuelve el problema basico de Householder en la etapa k-esima. As, H
(k
tiene la forma
H
(k
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1
.
.
. 0
1
1 2
_
h
(k
1
_
2
2h
(k
1
h
(k
2
2h
(k
1
h
(k
nk+1
2h
(k
1
h
(k
nk+1
1 2
_
h
(k
2
_
2
2h
(k
2
h
(k
nk+1
0
.
.
.
.
.
.
.
.
.
.
.
.
2h
(k
1
h
(k
nk+1
2h
(k
2
h
(k
nk+1
1 2
_
h
(k
nk+1
_
2
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
Ejercicio 1 Escribir un algoritmo que lleve a cabo la factorizacion QR de una matriz, y
alerte si la matriz que se introduce es singular.
Coste computacional de la descomposicion QR. En el algoritmo anterior se requieren
2n
3
/3 + O(n
2
) ops. mas n races cuadradas, es decir, para n alto la factorizacion QR es
aproximadamente el doble de costosa que la factorizaci on LU.
Factorizacion QR con Matlab. La instruccion correspondiente es [Q,R]=qr(A).
47
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Resolucion de sistemas cuadrados a traves de la descomposicion QR
Sea Ax = b con A R
nn
regular. Para resolver el sistema utilizando la discomposicion
QR tenemos, como en el caso de utilzar la factorizacion LU o la factorizacion de Cholesky,
tres fases:
1. Factorizacion. Se factoriza A en la forma A = QR, con lo que el sistema se puede
escribir QRx = b.
2. Actualizacion. Resolver Qy = b, es decir, y = Q
T
b. Para ello hay que llevar a cabo
una multiplicacion (que consume n
2
ops.) y que juega el papel de la actualizacion
en la eliminacion gaussiana.
3. Solucion. Resolver Rx = y es decir, Rx = Q
T
b, por sustitucion regresiva.
48
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Condicionamiento y descomposicion QR
Motivacion. Al resolver un sistema de ecuaciones mediante la factorizacion LU con pivoteo,
en la practica hay que resolver los sistemas Ly = Pb y Ux = y. Puede suceder que el n umero
de condicion de las matrices L o/y U sea muy alto, incluso cuando el n umero de condicion de
A no lo es. Como veremos, si se trabaja con la factorizacion QR este problema desaparece.
Comenzamos con el siguiente resultado:
Proposicion 25 Si Q es ortogonal,
1)
2
(Q) = 1,
2)
2
(A) =
2
(QA)
Dem. Primero demostraremos que si Q es ortogonal, entonces QA
2
= A
2
y AQ
2
=
A
2
. Veamos: para cualquier x, QAx
2
= Ax
2
luego max
x
2
=1
QAx
2
= max
x
2
=1
Ax
2
con
lo queda demostrado. Por otro lado, llamando y := Qx y teniendo en cuenta que al ser Q
ortogonal x
2
= 1 y
2
= 1 se tiene que max
x=1
AQx
2
= max
y
2
=1
Ay
2
= A
2
con lo que
AQ
2
= A
2
.
1) Ahora, aplicando lo anterior Q
2
= QI
2
= I
2
= 1 e igualmente, al ser Q
1
tambien ortogonal,
_
_
Q
1
_
_
2
= 1 con lo que
2
(Q) = 1.
2) Por un lado QA
2
= A
2
. Por otro
_
_
_(QA)
1
_
_
_
2
=
_
_
A
1
Q
T
_
_
2
=
_
_
A
1
_
_
2
con lo que
se sigue el resultado.
De la Proposicion 25 se sigue lo siguiente:
La factorizacion QR y el condicionamiento. Si se utiliza la factorizacion QR para resolver
un sistema Ax = b tenemos:
1. El sistema Qy = b tiene n umero de condicion igual a 1, con lo que esta muy bien
condicionado.
2. El sistema Rx = y tiene el mismo n umero de condicion que el sistema original, pues

2
(A) =
2
(QR) =
2
(R).
Como conclusion, tenemos:
Cuando A esta cerca de la singularidad, puede ser conveniente el trabajar con la
descomposicion QR en vez de con la factorizacion LU para no correr el riesgo de
empeorar a un mas el n umero de condicion del sistema a resolver.
Comentario: si la matriz A es simetrica denida positiva y se utiliza la factorizacion de
Cholesky A = LL
T
, no hay peligro de que el n umero de condicion de L o de L
T
sea superior
al de A. En efecto, en ese caso se puede demostrar que

2
(L) =
2
_
L
T
_
=
_

2
(A)
49
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
por lo que nunca es necesario recurrir a la factorizacion QR.
Ortonormalizacion de un sistema de vectores a traves de la descomposicion QR
Motivacion. Nuestro objetivo es, dado un sistema de vectores linealmente independientes
{a
1
, ..., a
s
}, encontrar un sistema {b
1
, ..., b
s
} ortonormal tal que L{a
1
, ..., a
s
} = L{b
1
, ..., b
s
}.
Aunque el metodo de Gram-Schmidt, estudiado en

Algebra Lineal, permite resolver el
problema, el algoritmo en cuestion es inestable, con lo que no le prestaremos atencion. En su
lugar, trabajaremos utilizando como herramienta la descomposicion QR. Para ello haremos
uso de la siguiente proposicion:
Proposicion 26 Sea A R
mn
con m n y r(A) = n y sea A = QR una factorizacion QR
de A. Entonces si A = (a
1
| | a
n
) y Q = (q
1
| | q
m
) se cumple
k = 1, ..., n, L{a
1
, ..., a
k
} = L{q
1
, ..., q
k
}
con lo que {q
1
, ..., q
k
} es una base ortonormal de L{a
1
, ..., a
k
}.
Utilizando este resultado se tiene lo siguiente:
Dado el sistema libre {a
1
, ..., a
s
} , si se dene la matriz A = (a
1
| | a
s
) y se
calcula una descomposicion QR de la misma, las columnas de Q forman una base
ortonormal que genera el mismo subespacio que {a
1
, ..., a
s
}.
50
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
11. Calculo de la inversa y del determinante de una matriz
cuadrada
Calculo de la inversa.
Veamos como se calcula la inversa de una matriz A R
nn
regular. Sea e
(i
el i-esimo
vector canonico de R
n
, es decir,
e
(i
:=
_
_
0, 0, ..., 0, 1

i
, 0, ..., 0
_
_
T
Consideremos ahora los siguientes n sistemas
Ax
(i
= e
(i
, i = 1, ..., n (18)
y construyamos ahora la matriz cuyas columnas son las soluciones x
(i
a los sistemas anteriores,
es decir,
B :=
_
x
(1
| x
(2
| | x
(n
_
R
nn
Estudiemos el producto AB
AB = A
_
x
(1
| x
(2
| | x
(n
_
=
_
Ax
(1
| Ax
(2
| | Ax
(n
_
=

(18)
=
_
e
(1
| e
(2
| | e
(n
_
=
_
_
_
_
_
1 0 0
0 1 0
.
.
.
.
.
.
.
.
.
.
.
.
0 0 1
_
_
_
_
_
= I,
es decir, se ha obtenido AB = I, por lo que forzosamente debe ser B = A
1
.
Como conclusion tenemos:
Para calcular la inversa de una matriz cuadrada regular hay que resolver n sistemas
Ax = e
(i
y entonces la inversa es la matriz cuyas columnas on las soluciones a dichos
sistemas.
En el caso de que la matriz A no sea simetrica, hace falta realizar 1 factorizacion LU con
pivoteo y n actualizaciones y soluciones, por lo que en principio hacen falta aproximadamente
1
3
n
3
+nn
2
=
4
3
n
3
ops.. Aprovechando el hecho de que los terminos independientes tienen un
uno y gran n umero de ceros, se pueden organizar los calculos y bajar el coste computacional
hasta aproximadamente n
3
ops.
Por ello, si se quisiese resolver un sistema a traves del calculo de la inversa se necesitara
calcular dicha inversa y luego llevar a cabo la multiplicacion A
1
b, operacion esta ultima que
51
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
requiere n
2
ops., por lo que en total se tienen aproximadamente n
3
+n
2
ops. muy superior a
n
3
/3 +n
2
n/3. Por ello:
El uso de la inversa para resolver sistemas, ademas de ser menos preciso que el
procedimiento convencional, es m as costoso computacionalmente.
Calculo del determinante.
Sea A R
nn
. Para calcular el determinante de A se trabaja con la factorizacion PA =
LU de A (o, en caso de ser A denida positiva, con la factorizacion de Cholesky). En efecto,
se cumple det P det A = det Ldet U. Ahora, al ser P matriz de permutacion, es ortogonal
(es decir, P
T
= P
1
) y por ello el det P solo puede valer 1 o -1. det P sera uno cuando se
hayan realizado un n umero par de intercambios en la identidad e impar cuando el n umero de
intercambios sea impar. En consecuencia, si s es dicho n umero de intercambios, tenemos
(1)
s
det A = det Ldet U
luego multiplicando ambos miembros por (1)
s
tenemos
det A = (1)
s
det Ldet U
donde, al ser L y U triangulares, det L y det U son simplemente el producto de los elementos
diagonales de las matrices L y U.
52
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
12. Descomposicion en valores singulares
Motivacion. La descomposicion en valores singulares (DVS) de una matriz es una her-
ramienta potente para:
a. Detectar problemas mal condicionados. La DVS puede diagnosticar problemas en ca-
sos en los que las matrices estan mal condicionadas, cosa que no hace la eliminacion
gaussiana//factorizacion LU.
b. Corregir el mal condicionamiento de problemas. En algunos casos, la DVS puede
aportar una solucion en el sentido de una respuesta numerica util que generalmente
no coincide con la solucion que en un principio se debera obtener.
c. Trabajar con sistemas con matriz rectangular, tanto incompatibles como compatibles
indeterminados. Aunque tambien se puede trabajar con la factorizacion QR, la DVS es
el metodo utilizado para resolver la mayora de los problemas de mnimos cuadrados
lineales y para calcular la solucion general a los sistemas compatibles indeterminados.
Ademas, la DVS permite construir bases ortonormales del n ucleo y de la imagen de la
matriz en cuestion.
12.1. Procedimiento de calculo de la descomposici on
Teorema de descomposicion.
La existencia de una descomposicion en valores singulares se basa en el siguiente resultado:
Proposicion 27 Sea A R
mn
con r(A) = r. Entonces existen matrices U R
mm
y
V R
nn
ortogonales y n umeros
1

2

r
> 0,
r+1
= =
p
= 0 (donde
p = mn(m, n)) llamados valores singulares de A tales que se cumple
U
T
AV = = diag (
1
, ....,
p
) R
mn
Como consecuencia de la Proposicion 27 tenemos:
1. A se puede escribir en la forma,
A = UV
T
=
1
u
1
v
T
1
+ +
r
u
r
v
T
r
de donde viene el nombre de descomposicion en valores singulares.
2. Se cumple
U
T
AA
T
U =
T
= diag
_

2
1
, ...,
2
r
, 0, ..., 0
_
R
mm
V
T
A
T
AV =
T
= diag
_

2
1
, ...,
2
r
, 0, ..., 0
_
R
nn
de donde se tiene que los valores singulares no nulos de A son la raz cuadrada positiva
de los autovalores no nulos de AA
T
(o de A
T
A pues ambas tienen los mismos autovalores
no nulos).
53
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
3. Se cumple
AV = U Av
j
=
j
u
j
, j = 1, ..., p
A
T
U = V A
T
u
j
=
j
v
j
, j = 1, ..., p
4. Se verica
N(A) = L{v
r+1
, ..., v
n
} , Im(A) = L{u
1
, ..., u
r
}
Procedimiento teorico para calcular la DVS
Para justicar el procedimiento de obtencion de la DVS que se describe a continuacion
hay que tener en cuenta los siguientes resultados:
1. A
T
A y AA
T
son simetricas y semidenidas positivas, con lo que sus autovalores son
no negativos. Ademas, los autovalores no nulos de ambas coinciden.
(A
T
A) =
_

1
, ...,
r
, 0,
(nr)
... , 0
_
, (AA
T
) =
_

1
, ...,
r
, 0,
(mr)
... , 0
_
2. N(AA
T
) = N(A
T
) y N(A
T
A) = N(A).
3. r(A) = r(AA
T
) = r(A
T
A) = r(A
T
)
4. Im(A) = Im(AA
T
) ; Im(A
T
) = Im(A
T
A).
Un procedimiento teorico de calculo (teorico en el sentido de que algoritmo practico de
descomposicion DVS no procedera de esta forma) es:
1. Obtener V R
nn
ortogonal tal que V
T
A
T
AV = diag(
1
, ...,
r
, 0, ..., 0)
2. Para cada j = 1, ..., r se dene
j
=
_

j
> 0 y u
j
=
1

j
Av
j
. El resto
r+1
, ,
p
de
los valores singulares son nulos.
3. Completar {u
1
, ..., u
r
} con vectores {u
r+1
, ..., u
m
} hasta tener una base ortogonal de
R
m
.
4. Entonces se demuestra que los valores singulares
j
, j = 1, ..., p y las matrices
U = (u
1
| | u
m
) y V = (v
1
| | v
n
) denidos anteriormente, cumplen las condiciones
buscadas.
Comentarios:
La DVS no es unica, aunque s lo son los valores singulares.
54
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Los valores singulares de una matriz simetrica son el valor absoluto de los autovalores
de la misma.
La descomposicion en valores singulares y el condicionamiento de un sistema.
El siguiente resultado nos dice entre otras cosas, que el n umero de condicion de una matriz
cuadrada regular en la norma dos es igual al cociente entre los valores singulares mas grande
y mas peque no:
Proposicion 28 Sea A R
nn
. Se cumple:
1. A
2
=
_
(A
T
A) =
1
2. A regular
_
_
A
1
_
_
2
=
1
n
3. Por consiguiente, A regular
2
(A) =
1
/
n
.
Comentario: a medida que una matriz se acerca a la singularidad se cumple que
n
0
+
y, de (3), tenemos que
2
(A) .
Algoritmos para calcular la DVS
Los algoritmos de obtencion de la DVS son muy complejos. Una gran parte estan basados
en:
a. Reduccion de la matriz a forma bidiagonal mediante transformaciones de Householder.
b. Diagonalizacion de la matriz resultante a traves de la factorizacion QR con desplaza-
mientos.
12.2. Pseudoinversa de una matriz
Motivacion. La pseudoinversa de una matriz A, (rectangular o cuadrada y, en este ultimo
caso, regular o singular) es una matriz A
+
construida a partir de una DVS de A y que,
para matrices cuadradas regulares, coincide con la inversa. Como veremos, con ella se pueden
resolver de manera eciente ciertos sistemas.
La pseudoinversa se dene y se construye de la siguiente forma:
Denicion 17 Sea A R
mn
con DVS A = UV
T
y rango r. Entonces se dene la pseu-
doinversa de A como la matriz A
+
R
nm
dada por
A
+
:= V
+
U
T
donde

+
:= diag
_
1

1
,
1

2
, ...,
1

r
, 0, ..., 0
_
R
nm
La pseudoinversa verica las siguientes propiedades:
55
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Proposicion 29 1. A regular A
+
= A
1
2. Para toda A R
mn
, a) AA
+
A = A, b) A
+
AA
+
= A
+
, c) (AA
+
)
T
= AA
+
, d)
(A
+
A)
T
= A
+
A
3. Si A R
mn
con r(A) = n, es decir, si las columnas de A son linealmente independi-
entes, entonces A
+
=
_
A
T
A
_
1
A
T
.
56
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
13. Problemas de mnimos cuadrados. Pseudosoluciones
Motivacion y denicion. Sea A R
mn
y considerese el sistema
Ax = b (19)
Si el sistema no es compatible no sera posible encontrar ning un x R
n
tal que se cumpla
b Ax, pero se puede intentar buscar el o los x tales que b Ax sea tan peque no como sea
posible.
As introducimos la siguiente denicion:
Denicion 18 Pseudosolucion de un sistema. Sea una norma en R
m
. Se dice que
x
0
R
n
es pseudosolucion de Ax = b en la norma si se cumple que b Ax
0
=
mn
xR
n
b Ax o, lo que es equivalente, b Ax
0

2
= mn
xR
n
b Ax
2
Comentario: si x es una solucion de un sistema, claramente tambien sera una pseudosolu-
cion del mismo. El recproco no es cierto. Por ello, para sistemas compatibles calcular las
pseudosoluciones es equivalente a calcular las soluciones.
Problemas de mnimos cuadrados. Soluciones por mnimos cuadrados. Cuando,
como es usual, se trabaja con la norma 2, al problema de determinar las pseudosoluciones de
Ax = b se le llama problema de mnimos cuadrados, pues de lo que se trata es de minimizar
la suma del cuadrado de las componentes del vector residuo b Ax. A las pseudosoluciones
se las denomina tambien soluciones por mnimos cuadrados, aunque debe quedar claro que
en general no seran soluciones del sistema.
A partir de este momento se trabaja exclusivamente con la norma dos, pues el trabajar
con normas como la 1 o la es mucho mas complicado al no derivar estas de un producto
escalar.
13.1. Ecuaciones normales asociadas a un sistema
Motivacion. Veremos que las pseudosoluciones de un sistema son las soluciones de un cier-
to sistema de ecuaciones asociado al sistema original. A estas ecuaciones se las denomina
ecuaciones normales.
Obtenci on de las ecuaciones normales. En todo este apartado trabajamos con la norma
2. Sea A = (a
1
| | a
n
). Entonces
Ax = x
1
a
1
+ +x
n
a
n
Im(A)
donde Im(A) denota el subespacio engendrado por las columnas de A. A Im(A) tambien se
le denomina subespacio columna de A.
Por ello, x es solucion del sistema Ax = b si y solo si b Im(A). En particular, en el caso
en que b / Im(A) el sistema sera incompatible. Por teora de proyeccion ortogonal se cumple
lo siguiente:
57
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
x es pseudosolucion de (19) y := Ax es la proyeccion ortogonal de b sobre Im(A)
b Ax Im(A) b Ax a
i
para todo i = 1, ..., n
_
_
_
a
T
1
.
.
.
a
T
n
_
_
_(b Ax) =
_
_
_
0
.
.
.
0
_
_
_ A
T
Ax = A
T
b
A las ecuaciones A
T
Ax = A
T
b se les denomina ecuaciones normales del problema de
mnimos cuadrados.
En denitiva, hemos obtenido lo siguiente:
x es pseudosolucion de un sistema si y solo si es solucion de las ecuaciones normales
asociadas al sistema.
Existencia e unicidad de pseudosoluciones en los problemas de mnimos cuadra-
dos
Estudiemos la existencia e unicidad de solucion a las ecuaciones normales. Puesto que
en los espacios de dimension nita la proyeccion ortogonal de un vector sobre un subespacio
siempre existe y es unica, la proyeccion ortogonal y de b sobre Im(A) existe y es unica. Ahora
estudiamos el sistema Ax = y. Este sistema siempre tiene solucion puesto que por denicion
de proyecccion ortogonal el vector y pertenece a Im(A). El que el sistema sea compatible nos
indica que r(A) = r(A | y). Por la teora general de sistemas lineales, la solucion a Ax = y
sera unica cuando sea r(A) = n mientras que en el caso r(A) < n habra innitas soluciones.

Estas tendran la forma {x


0
+y ; y N(A)}, siendo x
0
una pseudosolucion cualquiera. En
denitiva, hemos obtenido:
Proposicion 30 Las pseudosoluciones (en la norma 2) de Ax = b son el conjunto
{x
0
+y ; y N(A)}
donde x
0
es una pseudosolucion cualquiera.
Comentario: si el n ucleo de A se reduce al cero (es decir, si r(A) = n), entonces solo hay
una pseudosolucion. En caso contrario hay innitas pseudosoluciones.
58
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Sistema compatible
Ax = b
rang(A) = rang(A | b)?
Sistema incompatible
rang(A) = n?
A R
mn
, b R
m
Sea un sistema lineal con m ecuaciones y n inc ognitas
con
No hay soluci on
NO
NO
S

I
S

I
A
T
Ax = A
T
b
Ecuaciones normales:
rang(A) = n?
Hay una unica pseudosoluci on
Hay innitas pseudosoluciones
{x

+
1
w
1
+ +
nt
w
nt
:
1
, ...,
nt
R}
donde:
x

es una soluci on particular de las ecuaciones normales


w
1
, ..., w
nt
es una base del n ucleo de A, de dimensi on n t, siendo t = rang(A)
y siendo el n ucleo de A es el conjunto de soluciones del sistema homogeneo Ax = 0
Las pseudosoluciones son de la forma
Sistema compatible
indeterminado
Sistema compatible
determinado
NO
S

I
SISTEMA DE ECUACIONES ALGEBRAICAS LINEALES
soluciones por mnimos cuadrados = pseudosoluciones en la norma dos
59
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Condicionamiento de las ecuaciones normales. Las ecuaciones normales tienen el in-
conveniente de que, a menudo, estan mucho peor condicionadas que el problema original, es
decir,
2
(A
T
A) >>
2
(A). Justiquemos esta armacion con dos ejemplos:
Utilizando la instruccion rand de Matlab, se genera la siguiente matriz de dimensiones
42: A =[0.4660 0.2026; 0.4186 0.6721; 0.8462 0.8381; 0.5252 0.0196]. Pues bien,
2
(A) =
3,5411 mientras que
2
(A
T
A) = 12,5391.
Sea > 0 con 0 y sea
A =
_

_
1 1 1
0 0
0 0
0 0
_

_
; A
T
A =
_
_
1 +
2
1 1
1 1 +
2
1
1 1 1 +
2
_
_
Vemos que A se aleja de la singularidad una distancia mientras que A
T
A lo hace
tan solo una distancia
2
. Haciendo = 10
6
y utilizando Matlab se obtiene que

2
(A) = 1.7321e+006 mientras que
2
(A
T
A) = 2.9997e+012.
Debido a lo anterior tenemos:
el resolver el problema de mnimos cuadrados trabajando directamente con las ecua-
ciones normales no es aconsejable, sobre todo si el n umero de condicion de la matriz
de partida A es alto.
13.2. Calculo practico de las pseudosoluciones
Como ya se ha comentado, las pseudosoluciones de un sistema no se suelen calcular
utilizando las ecuaciones normales del sistema, pues estas suelen estar peor condicionadas
que el sistema original. En la practica, las pseudosoluciones se suelen determinar resolviendo
un sistema equivalente al de las ecuaciones normales pero que esta mejor condicionado que
estas. Para ello se utiliza la factorizacion QR de A. Las pseudosoluciones tambien se pueden
calcular utilizando la DVS de A, aunque este segundo proceso es mucho mas costoso y por
lo tanto no debe ser la primera opcion.
60
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
13.2.1. Uso de la factorizacion QR
A continuacion estudiaremos el procedimiento para calcular las soluciones por mnimos
cuadrados de un sistema usando la factorizacion QR de la matriz del mismo. Primero tratare-
mos el caso de los sistemas sobredeterminados, es decir, sistemas con mas ecuaciones que
incognitas y que tpicamente son incompatibles. Posteriormente trataremos el caso de los
sistemas subdeterminados, que tpicamente son compatibles indeterminados por lo que las
pseudosoluciones coinciden con las soluciones
61
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Sistemas sobredeterminados
Sea el sistema Ax = b con A R
mn
, m > n y supongamos el caso generico, es decir,
r(A) = n. El sistema en general sera incompatible. Se demuestra facilmente que si A = QR, las
ecuaciones normales A
T
Ax = A
T
b son equivalentes al sistema R
T
Rx = R
T
c donde c := Q
T
b.
Ahora, expresamos la matriz R en la forma
R =
_
B
0
_
(20)
donde B R
nn
es triangular superior. Como el producto por una matriz regular no altera
el rango de una matriz y R = Q
T
A con Q
T
regular, se sigue que r(R) = n. Ahora, de (20)
se deduce que r(R) = r(B) por lo que, en denitiva, r(B) = n, lo que muestra que B es una
matriz invertible.
De forma analoga a la anterior, dividimos el vector c en la forma
y =
_
c

_
donde c

corresponde a las primeras n componentes de c = Q


T
b. Entones las ecuaciones
normales para el sistema (19) se reducen a
B
T
Bx = B
T
c

Como B es regular, al multiplicar por la izquierda por


_
B
T
_
1
se tiene que la unica
pseudosolucion esta dada por la unica solucion del sistema
Bx = c

que, al ser B triangular superior, se resolvera por sustitucion regresiva. Lo que hace atractivo
resolver este sistema en vez del correspondiente a las ecuaciones normales es el hecho de que,
como se puede demostrar,
2
(B) =
2
(A).
El coste computacional del proceso es el de calcular la factorizacion QR de A, la multi-
plicacion c = Q
T
b y la resolucion de Bx = c

.
62
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Sistemas subdeterminados. Calculo de una solucion particular y de la soluci on
general.
Sea el sistema Ax = b con A R
mn
, n > m y supongamos, por simplicar, que el rango
es maximo, es decir, r(A) = m. El sistema es compatible indeterminado con nm grados de
libertad. Consideremos una descomposicion A = QR y expresemos la matriz R en la forma
R = (B | C)
donde B R
mm
es triangular superior y regular y C R
m(nm)
. Es inmediato el compro-
bar que el n ucleo de A es el mismo que el de R y ademas se demuestra con facilidad que las
columnas de la matriz
H =
_
B
1
C
I
nm
_
R
n(nm)
(donde I
nm
denota la matriz identidad de orden nm) constituyen una base del n ucleo de
R (y por ello del de A).
Como es inmediato comprobar, una solucion particular del sistema viene dada por
x
part
=
_
B
1
Q
T
b
0
nm
_
donde 0
nm
es el vector nulo en R
nm
. Notese que esta solucion tiene n m componentes
nulas. Por ello, la solucion general es
x =
_
B
1
Q
T
b
0
nm
_
+
_
B
1
C
I
nm
_
z =
_
B
1
Q
T
b
0
nm
_
+
_
B
1
Cz
z
_
, con z R
nm
arbitrario
Como ya se sabe, para calcular las soluciones anteriores no se invierte la matriz B, sino
que se procede resolviendo el sistema correspondiente. As tenemos:
1. Se resuelve el sistema By = Q
T
b y entonces
x
part
=
_
y
0
nm
_
es una solucion particular del sistema Ax = b.
2. Una vez elegido z R
nm
se resuelve el sistema Bw = Cz y entonces
x = x
part
+
_
w
z
_
es otra solucion de Ax = b.
63
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
13.2.2. Uso de la descomposicion en valores singulares
Como ya hemos comentado, la DVS se puede usar para determinar las pseudosoluciones
de un sistema en la norma 2. En efecto, tenemos:
Proposicion 31 Dado el sistema Ax = b, el vector x
+
:= A
+
b es una pseudosolucion del
mismo que ademas tiene la propiedad de ser la pseudosolucion de norma dos mnima. A x
+
se le denomina pseudosolucion normal del sistema.
Comentarios:
Recuerdese que en el caso en que r(A) < n, en el que habra innitas pseudosoluciones,
el vector x
+
:= A
+
b es aquel de entre todas las pseudosoluciones que tiene la norma dos
mas peque na.
Recuerdese que para calcular N(A) a traves de la DVS se tiene N(A) = L{v
r+1
, ..., v
n
}
donde r es el rango de A.
14. Trabajo con problemas mal condicionados
Como ya se ha comentado, un problema se considera muy mal condicionado (ill condi-
tioned) cuando el n umero de condicion es muy alto, del orden de 10
6
si se esta trabajando
en precision simple y del orden de 10
12
para precision doble.
Como ya sabemos, el metodo de eliminacion gaussiana de un sistema muy mal condi-
cionado puede producir una solucion muy mala. En este caso la soluci on obtenida al hacer
cero los valores singulares muy peque nos y utilizar la pseudoinversa correspondiente (llamada
pseudoinversa efectiva) es con frecuencia mejor, en el sentido de producir un residuo menor,
que tanto la solucion por eliminacion gaussiana como la solucion por DVS sin hacer cero
los valores singulares peque nos. A este procedimiento por el cual se hacen cero los valores
singulares peque nos se le denomina mejoramiento de la condicion del problema.
Esto puede parecer paradojico, pues hacer cero un valor singular equivale a eliminar
una combinacion lineal del conjunto de ecuaciones. La solucion a la paradoja es que estamos
eliminando una combinacion de ecuaciones que esta tan contaminada por el error de redondeo
como para ser in util. De hecho suele ser peor que in util, pues tira de la solucion hacia el
innito proporcionando una solucion formal muy mala en el sentido de que el residuo es muy
grande.
Ejemplo. Considerese el problema de resolver Ax = b donde A tiene la siguiente DVS
A = U
_
_
2 0 0
0 1 0
0 0 10
7
_
_
V
T
64
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
para unas ciertas matrices ortogonales U y V . Obviamente A es regular, con lo que el sistema
tendra solucion unica. Dado que el n umero de condicion del problema es muy elevado,
2
(A) =

1
/
3
= 2 10
7
, lo que se hace es lo siguiente. En vez de trabajar con A se trabaja con
B = U
_
_
2 0 0
0
1
2
0
0 0 0
_
_
V
T
,
es decir, la matriz correspondiente a hacer cero el valor singular 10
7
. Es decir nos planteamos
el problema Bx = b. Como B tiene rango dos, este sistema es en general incompatible (pues
en general el rango de la matriz ampliada sera 3). Como el n ucleo de B tiene dimension
3 r(B) = 1 habra innitas pseudosoluciones. La pseudosolucion normal es
x
+
= B
+
b = V
_
_
1
2
0 0
0 2 0
0 0 0
_
_
U
T
b
y el conjunto de las pseudosoluciones x
+
+y con y N(B). Como N(B) = L{v
3
} entonces
se tiene que las pseudosoluciones son
V
_
_
1
2
0 0
0 2 0
0 0 0
_
_
U
T
b +v
3
donde R
Este procedimiento se aplica tambien en el caso de matrices rectangulares con valores
singulares muy peque nos.
15. Resoluci on de sistemas lineales con Matlab
Sea A R
mn
y b R
m
. Para resolver el sistema Ax = b se utiliza la instruccion
x = A\b. A continuacion estudiaremos que es lo que verdaderamente hace Matlab cuando se
encuentra esta instruccion. Por simplicidad suponemos que A tiene rango maximo es decir,
que r(A) = mn (m, n):
1. if A es cuadrada y triangular la solucion del sistema se calcula por sustitucion pro-
gresiva o regresiva.
2. elseif A es simetrica denida positiva, la solucion del sistema se calcula utilizando la
descomposicion de Cholesky.
3. elseif A es matriz cuadrada cualquiera la solucion del sistema se calcula utilizando
factorizacion LU con pivoteo.
4. elseif A es matriz no cuadrada, se utiliza la descomposicion QR para calcular una
solucion o una pseudosolucion, seg un sea el caso.
65
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Si n > m, A\b proporciona una de las innitas soluciones (que coinciden con las
pseudosoluciones) del sistema. Concretamente proporciona una solucion que tiene
n m componentes nulas.
Si m > n, A\b proporciona la unica pseudosolucion del sistema. En el caso tpi-
co, esta pseudosolucion no sera solucion.
x = A\b
A cuadrada y triangular?
Sustituci on progresiva o regresiva
NO
S

I
LA INSTRUCCI

ON BARRA INVERTIDA EN MATLAB


A simetrica y denida positiva?
NO
A cuadrada?
NO
S

I
S

I
Choleski
Factorizacion LU con pivoteo
Factorizacion QR
Si n > m, A\b proporciona una de las
innitas soluciones del sistema.
Si m > n, A\b proporciona la unica
pseudosoluci on del sistema.
m ecuaciones y n
inc ognitas
r(A) = mn (m, n)
66
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
A continuacion incluimos, a modo de resumen, una lista de algunas instrucciones de
Matlab relacionadas con el algebra lineal:
[L,U,P]=lu(A) factorizacion LU con pivoteo
[S,U]=lu(A) factorizacion LU con pivoteo
B=chol(A) factorizacion de Cholesky (B es triangular superior)
[Q,R]=qr(A) factorizacion QR
null(A) base ortonormal de n ucleo de A
[P,D]=eig(A) autovalores (D) y autovestores (P) de A
cond(A,1) n umero de condicion de A en la norma 1
cond(A,inf) n umero de condicion de A en la norma
cond(A,2) n umero de condicion de A en la norma 2
norm(A,1) norma 1 de la matriz A
norm(A,inf) norma de la matriz A
norm(A,2) norma 2 de la matriz A
norm(x,1) norma 1 del vector x
norm(x,inf) norma del vector x
norm(x,2) norma 2 del vector x
16. Ejercicios
Ejercicio 2

Algebra lineal utilizando Matlab:
a) Ejecutar:
rand(state, 1)
A=rand(30);
b=rand(30,1);
Calcular la componente 12 de la solucion x del sistema Ax = b
b) Ejecutar:
rand(state, 1)
A1=rand(10,6);
b1=rand(10,1);
Calcular la norma uno del vector x solucion por mnimos cuadrados del sistema A1x = b1
y la norma innito del residuo.
c) Ejecutar:
rand(state, 1)
A2=rand(4,5);
b2=rand(4,1);
Calcular la tercera componente del vector x solucion del sistema A2x = b2 que cumple
que su cuarta componente vale 1.
67
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
d) Ejecutar:
rand(state, 1)
B=rand(25);
A=B*B;
Sea L la matriz resultante de llevar a cabo la descomposicion de Cholesky A = LL
T
de
A. Se pide calcular los elementos L
25,14
y L
25,15
.
f) Sean A =[1 2 3; 3 4 7; 5 6 11; 4 8 12], b=[2 6 10 8]
T
y c=[-1 2 4 0]
T
1. Estudiar la existencia y unicidad de soluciones al sistema Ax = b y en su caso calcular
dichas soluciones.
2. Estudiar la existencia y unicidad de pseudosoluciones (en la norma dos) al sistema
Ax = c y en su caso calcular dichas pseudosoluciones.
Ejercicio 3 Como se dene una norma matricial inducida? Que propiedades cumple?
Ejercicio 4 Ventajas e inconvenientes de trabajar con la descomposicion QR en vez de con
la descomposicion LU para resolver un sistema de ecuaciones lineales n n. Enunciar el
resultado que garantiza que trabajar con la descomposicion QR presenta ciertas ventajas
frente a trabajar con la descomposicion LU.
Ejercicio 5 Encontrar una cota superior para la norma 1 del producto AB sin efectuar dicho
producto
A =
_
_
_
_
0 2 1 0
3 1 0 3
1 2 3 1
1 0 0 3
_
_
_
_
, B =
_
_
_
_
2 1 1 1
0 1 0 0
1 0 3 0
3 1 2 3
_
_
_
_
Ejercicio 6 N umero de condicion y factorizacion QR
(a) Dene el concepto de n umero de condicion (A) de una matriz A R
nn
en una
determinada norma.
(b) Sea B R
nn
una matriz ortogonal y sea x R
n
. Calcula Bx
2
y B
2
. Sea
A R
nn
. Deduce una relacion entre BA
2
y A
2
.
(c) Sea A R
nn
y sea A = QR una descomposicion QR de A. Utilizando como ayuda
(b) deducir razonadamente
2
(Q) y
2
(R) (
2
denota el n umero de condicion en la norma 2)
Ejercicio 7 Sean A R
79
y b R
7
. En el caso generico se considera el problema de
determinar la o las soluciones del sistema Ax = b que tienen su primera componente nula y
su tercera componente igual a 1. Razonar si el problema anterior tiene solucion y si esta es
unica.
Ejercicio 8 Sea A R
mn
con m > n, rang(A) = n y b R
m
. Partiendo de las ecuaciones
normales del sistema, deducir la expresion del sistema que hay que resolver en la practica
para hallar la o las pseudosoluciones de Ax = b en la norma dos utilizando la factorizacion
QR.
68
Luis Sanz Resolucion Numerica de Sistemas Lineales de Ecuaciones
Ejercicio 9 Denir el concepto de norma matricial en R
nn
asociada a una determinada
norma vectorial en R
n
. Demostrar que si Q es ortogonal y A es una matriz cuadrada
cualquiera, QA
2
= A
2
y
_
_
(AQ)
1
_
_
2
=
_
_
A
1
_
_
2
.
Ejercicio 10 Sea A = (a
1
| a
2
| a
3
) R
33
una matriz ortogonal, donde a
1
, a
2
y a
3
son sus
columnas. Sea B := (a
1
| a
2
| a
3
) donde , y son escalares. Escribir una expresion
para B
T
B que sea lo mas simplicada posible.
69

Vous aimerez peut-être aussi