Você está na página 1de 221

E.T.S.

DE INGENIERÍA INFORMÁTICA

Apuntes de

ÁLGEBRA NUMÉRICA
para la titulación de

INGENIERÍA INFORMÁTICA

Fco. Javier Cobos Gavala


Contenido

Portada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Contenido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1 Ecuaciones no lineales 7
1.1 Errores y condicionamiento en problemas numéricos . . . . . . 8
1.2 Método y algoritmo de la bisección: análisis de errores . . . . 12
1.3 Punto fijo e iteración funcional . . . . . . . . . . . . . . . . . . 19
1.4 Análisis del método de Newton-Raphson . . . . . . . . . . . . 25
1.4.1 Método de Newton generalizado . . . . . . . . . . . . . 31
1.5 Un problema mal condicionado: ceros de un polinomio . . . . 34
1.5.1 Sucesiones de Sturm . . . . . . . . . . . . . . . . . . . 38
1.5.2 Algoritmo de Horner . . . . . . . . . . . . . . . . . . . 41
1.6 Sistemas de ecuaciones no lineales . . . . . . . . . . . . . . . . 43
1.6.1 Método de Newton para sistemas . . . . . . . . . . . . 46
1.7 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . 48
1.8 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 59

2 Sistemas de ecuaciones lineales 67


2.1 Normas vectoriales y matriciales . . . . . . . . . . . . . . . . . 67
2.1.1 Normas vectoriales . . . . . . . . . . . . . . . . . . . . 68
2.1.2 Distancia inducida por una norma . . . . . . . . . . . . 68
2.1.3 Convergencia en espacios normados . . . . . . . . . . . 69
2.1.4 Normas matriciales . . . . . . . . . . . . . . . . . . . . 70

3
4 Contenido

2.1.5 Transformaciones unitarias . . . . . . . . . . . . . . . . 72


2.1.6 Radio espectral . . . . . . . . . . . . . . . . . . . . . . 73
2.2 Sistemas de ecuaciones lineales . . . . . . . . . . . . . . . . . . 77
2.2.1 Número de condición . . . . . . . . . . . . . . . . . . . 80
2.3 Métodos directos de resolución de sistemas lineales . . . . . . 86
2.3.1 Factorización LU . . . . . . . . . . . . . . . . . . . . . 86
2.3.2 Factorización de Cholesky . . . . . . . . . . . . . . . . 90
2.4 Métodos iterados de resolución de sistemas lineales . . . . . . 93
2.4.1 Método de Jacobi . . . . . . . . . . . . . . . . . . . . . 98
2.4.2 Método de Gauss-Seidel . . . . . . . . . . . . . . . . . 99
2.4.3 Métodos de relajación (SOR) . . . . . . . . . . . . . . 99
2.5 Métodos del descenso más rápido y del gradiente conjugado . 100
2.5.1 Método del descenso más rápido . . . . . . . . . . . . . 102
2.5.2 Método del gradiente conjugado . . . . . . . . . . . . . 103
2.6 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . 104
2.7 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 108

3 Sistemas inconsistentes y sistemas indeterminados 115


3.1 Factorizaciones ortogonales . . . . . . . . . . . . . . . . . . . . 115
3.1.1 Factorización QR de Gram-Schmidt . . . . . . . . . . . 115
3.1.2 Factorización QR mediante rotaciones . . . . . . . . . 116
3.1.3 Factorización QR de Householder . . . . . . . . . . . . 118
3.2 Sistemas superdeterminados. Problema de los mı́nimos cuadrados127
3.2.1 Transformaciones en sistemas superdeterminados . . . 130
3.3 Descomposición en valores singulares y pseudoinversa de Penrose133
3.3.1 Pseudoinversa de Penrose . . . . . . . . . . . . . . . . 134
3.4 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . 136
3.5 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 142

4 Autovalores y autovectores 157


4.1 Conceptos básicos . . . . . . . . . . . . . . . . . . . . . . . . . 157
Contenido 5

4.2 Matrices normales . . . . . . . . . . . . . . . . . . . . . . . . . 162


4.3 Métodos iterados para la obtención de autovalores y autovectores168
4.3.1 Método de la potencia simple y variantes . . . . . . . . 168
4.3.2 Algoritmo QR de Francis . . . . . . . . . . . . . . . . . 178
4.3.3 Método de Jacobi para matrices simétricas reales . . . 181
4.4 Reducción del problema a matrices hermı́ticas . . . . . . . . . 185
4.5 Reducción del problema a matrices simétricas reales . . . . . . 187
4.6 Aplicación al cálculo de las raı́ces de un polinomio . . . . . . . 189
4.7 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . 190
4.8 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 201

Bibliografı́a 221
1. Ecuaciones no lineales

Dada una función no nula f : C → C, resolver la ecuación f (x) = 0 es hallar


los valores x que anulan a dicha función. A estos valores x se les denomina
raı́ces o soluciones de la ecuación, o también, ceros de la función f (x).
Los métodos de resolución de ecuaciones y sistemas de ecuaciones se clasifican
en

• Métodos directos

Proporcionan la solución mediante un número finito de operaciones ele-


mentales. √
2 −b ± b2 − 4ac
ax + bx + c = 0 =⇒ x =
2a
• Métodos iterados

Construyen una sucesión (xn ) convergente a la solución x de la ecuación


o del sistema.

Sin embargo, el siglo XIX, Abel probó que no existe ninguna fórmula equi-
valente (en término de raı́ces) para resolver ecuaciones de grado superior a
cuatro.

Además, si la ecuación no es polinómica no podemos resolverla más que me-


diante métodos iterados que, incluso en el caso de las polinómicas de grado no
superior a cuatro, son más eficientes.

Definición 1.1 [Multiplicidad de una raı́z]

Una solución x de la ecuación f (x) = 0 se dice que tiene multiplicidad n si


f (x) = f 0 (x) = f 00 (x) = · · · = f (n−1 (x) = 0 y f (n (x) 6= 0
Si la multiplicidad es 1, diremos que se trata de una raı́z simple.

7
8 Ecuaciones no lineales

Todos los métodos numéricos de resolución de ecuaciones presentan dificulta-


des cuando la ecuación tiene raı́ces múltiples, ya que todos ellos se basan en
los cambios de signo de la función y éstos son difı́cilmente detectables en un
entorno de una raı́z múltiple.
Ese hecho nos lleva a un mal condicionamiento del problema.

1.1 Errores y condicionamiento en problemas


numéricos
Cualquier problema numérico se resuelve a través de un algoritmo que nos
proporciona unos resultados a partir de unos datos iniciales. Es decir, se trata
de realizar un proceso del tipo

Datos =⇒ Algoritmo =⇒ Resultados

Dado que cualquier algoritmo puede cometer errores, no sólo por el algoritmo
en sı́, sino porque los datos pueden venir afectados de algún tipo de error
(redondeo, etc.) es muy importante el estudio de los distintos tipos de error
que puedan cometerse con vista a la fiabilidad de los resultados.

Definición 1.2 [Errores absoluto y relativo]

Supongamos que el valor exacto de un dato es x y disponemos de un valor


aproximado x.

• Se denomina error absoluto de x a la distancia que lo separa del valor


exacto x, es decir |x − x|.

Obsérvese que si sólo disponemos del dato de que el error es, por ejemplo,
de 1m. no sabemos nada acerca de la fiabilidad del resultado, ya que no
es lo mismo decir que se ha cometido un error de un metro al medir la
altura de una persona que al medir la distancia entre dos galaxias.

Debemos reflejar de alguna manera “lo que se está evaluando” en el dato


del error.

• Se denomina error relativo de x al


cociente entre el error absoluto y el
x − x
objeto evaluado, es decir, . En el caso x = 0 sólo se utiliza el
x
error absoluto.
Errores y condicionamiento en problemas numéricos 9

En la mayorı́a de los procesos numéricos utilizaremos como error el error abso-


luto ya que lo que nos interesa conocer es el número de cifras decimales exactas
que posee la solución de un determinado problema.

Evidentemente cualquier algoritmo que trabaje con unos datos afectados de


algún tipo de error nos proporcionará unos resultados que también vendrán
afectados de errores. Estos errores pueden depender sólo de los datos iniciales
o también del proceso que se ha realizado.
Supongamos que, queremos evaluar f (x) y damos un dato aproximado x. Es
evidente que, en general, si x 6= x será f (x) 6= f (x).
Dado que f (x) − f (x) ' (x − x)f 0 (x), se tiene que

|f (x) − f (x)| ' |x − x| · |f 0 (x)|

por lo que aunque el error del dato sea muy pequeño, si la derivada f 0 (x) es
muy grande, el resultado obtenido f (x) puede diferir mucho del valor exacto
f (x).
Para el problema inverso, es decir conocido f (x) buscar el valor de x (resolver
una ecuación) se tendrá que
1
|x − x| ' |f (x) − f (x)|
|f 0 (x)|

por lo que si |f 0 (x)| fuese muy pequeño el error de la solución puede ser muy
grande.
Además el problema no está en el algoritmo que se aplique para evaluar f (x)
sino en el propio problema a resolver.

Definición 1.3 [Condicionamiento de un problema]

Diremos que un problema está mal condicionado si pequeños errores en los


datos producen grandes errores en los resultados.

Se trata entonces de definir algún número que nos indique el condicionamiento


del problema. A éste número lo llamaremos número de condición del problema
y lo denotaremos por κ.

En el ejemplo anterior es evidente que

κ(x) = |f 0 (x)|
10 Ecuaciones no lineales

Ası́ pues, un problema (en ambos sentidos) estará mejor condicionado mientras
más se acerque a 1 su número de condición.

Ejemplo 1.1 Si queremos calcular la tangente de 89◦ 590 lo primero que de-
bemos hacer es expresar el ángulo en radianes, por lo que necesariamente
debemos redondear el dato (el número π hay que redondearlo), por lo que el
dato vendrá afectado de un error de redondeo.
Utilicemos el método que utilicemos, dado que | tg x−tg x| ' |1+tg 2 x|·|x−x|
y tg x → +∞ cuando x → π, el problema estará mal condicionado.
tg a + tg b
Sin embargo si tenemos en cuenta que tg (a + b) = podemos
1 − tg a tg b
reducir nuestro problema al cálculo de la tangente de 44◦ 590 resultando éste
un proceso bien condicionado, ya que tg 45 = 1. 

Definición 1.4 [Estabilidad de un algoritmo]

Respecto al algoritmo que se utiliza para resolver un determinado problema,


diremos que es inestable cuando los errores que se cometen en los diferentes
pasos del algoritmo hacen que el error total que se genera sea muy grande.

Si, por el contrario los errores que se producen en los distintos pasos no alteran
de forma significativa el resultado del problema, diremos que el algoritmo es
estable.

Ejemplo 1.2 Supongamos que se quiere calcular la integral


1
x10
Z
I10 = dx
0 a+x
1
xn
Z
Llamando In = dx observamos que
0 a+x
1 1
xn xn−1 (x + a − a)
Z Z
In = dx = dx =
0 a+x 0 a+x
Z 1 n−1 Z 1 n−1 Z 1 Z 1 n−1
x (x + a) x n−1 x
= dx − a dx = x dx − a dx =
0 a+x 0 a+x 0 0 a+x
 n 1
x 1
= − aIn−1 = − aIn−1
n 0 n
Errores y condicionamiento en problemas numéricos 11

por lo que podemos pensar en la posibilidad de calcular I10 de forma recursiva


mediante el siguiente algoritmo:


a+1
 I0 = ln


a
Algoritmo
 1
 In = − aIn−1

n

11
Sin embargo, dado que para a = 10 es I0 = ln = 0.09531017980432 . . .
10
y el número 0.09531017980432 . . . no podemos introducirlo en el ordenador
de manera exacta, debemos cometer algún error introduciendo un número
aproximado I 0 de tal forma que cometemos un error inicial ε0 = |I 0 − I0 |.
El error εn que se cometerá al calcular In vendrá dado por

1 1
εn = |I n − In | = − aI n−1 − ( − aIn−1 ) = | − a(I n−1 − In−1 )| = |a|εn−1
n n
es decir,
εn = |a|εn−1 = |a|2 εn−2 = · · · = |a|n ε0
por lo que si tomamos las 10 primeras cifras decimales de I0 , es decir, si
tomamos
I 0 = 0.0953101798 con ε0 < 10−10
obtendremos un error en la décima iteración

ε10 < 1010 · 10−10 = 1

en otras palabras,

I 10 no tiene ninguna cifra decimal exacta

Se trata pues de un algoritmo muy inestable. 

Obsérvese que si el algoritmo es inestable no va a generar un resultado fiable,


por lo que deberemos utilizar otro algoritmo. Sin embargo, por muy estable
que sea el algoritmo, si el problema está mal condicionado lo único que pode-
mos hacer es plantear un problema equivalente al nuestro pero con la seguridad
de que se trata de un problema bien condicionado.
12 Ecuaciones no lineales

1.2 Método y algoritmo de la bisección: aná-


lisis de errores
Teorema 1.1 [Teorema de Bolzano]

Si f es una función continua en el intervalo cerrado [a, b] y f (a) · f (b) < 0,


existe un punto α ∈ (a, b) en el cual f (α) = 0.

Nuestro problema se reduce a localizarla. Para ello, supongamos que está


separada, es decir, que en el intervalo [a, b] es la única raı́z que existe. Esto
podemos garantizarlo, por ejemplo, viendo que f 0 (x) 6= 0 en todo el intervalo,
ya que entonces, el Teorema de Rolle nos garantiza la unicidad de la raı́z.

Teorema 1.2 [Teorema de Rolle]

Si f (x) es una función continua en el intervalo [a, b], derivable en (a, b) y


f (a) = f (b), existe un punto α ∈ (a, b) para el que f 0 (α) = 0.

En efecto, si f (x) tuviese dos raı́ces α1 y α2 en el intervalo [a, b], verificarı́a


las hipótesis del teorema de Rolle en el intervalo [α1 , α2 ] ⊂ [a, b], por lo que
deberı́a existir un punto α ∈ (α1 , α2 ) =⇒ α ∈ (a, b) en el que se anulara la
derivada, por lo que si f 0 (x) 6= 0 en todo el intervalo [a, b], no pueden existir
dos raı́ces de la ecuación en dicho intervalo.

Método de la bisección o dicotomı́a

Supongamos que tenemos separada una raı́z x de la ecuación f (x) = 0 en el


intervalo [a1 , b1 ] = [a, b] es decir

sig f (a) 6= sig f (b) y f 0 (x) 6= 0 ∀ x ∈ [a, b]

a1 + b 1
Tomando el punto medio x1 =
2

• Si f (x1 ) = 0, hemos encontrado la solución: x = x1 .

• Si f (x1 ) 6= 0, sólo en uno de los dos subintervalos [a1 , x1 ] o [x1 , b1 ] se pro-


ducirá un cambio de signo en los extremos y el teorema de Bolzano nos
asegura que la raı́z se encuentra en el subintervalo en el que se produce
dicho cambio de signo, al cual lo renombramos como [a2 , b2 ]
Método y algoritmo de la bisección: análisis de errores 13

Reiterando el procedimiento podemos construir una sucesión de interva-


los [an , bn ] con amplitudes
|b − a|
|bn − an | = −→ 0 cuyos puntos medios xn −→ x
2n
Cota del “error a priori”

El error cometido, tomando como raı́z de la ecuación el punto medio xn del


intervalo [an , bn ] obtenido en la en la iteración n-ésima, viene dado por
b−a
εn ≤
2n
1
por lo que si b − a = 1 y n = 10 se tiene que ε10 ≤ 10 < 10−3 , es decir,
2
en 10 iteraciones obtenemos tres cifras decimales exactas, por lo que podemos
estimar el error de una determinada iteración sin necesidad de realizarlas pre-
viamente.

Lo verdaderamente importante de esta fórmula del error a priori es que nos


permite conocer el número de iteraciones que van a ser necesarias para obtener
la raı́z con una determinada precisión.

Ası́, por ejemplo, si queremos obtener la solución de la ecuación f (x) = 0 en


el intervalo [a, b] de amplitud 1 con 14 cifras decimales exactas, deberá ser
1
εn ≤ n
< 10−14 ⇐⇒ 2n > 1014 =⇒ n ≥ 47
2
es decir, deberemos detenernos en la iteración 47.

Algoritmo de la bisección
ai + b i
Para i = 1, . . . , n, . . ., Ii = [ai , bi ] y mi = (punto medio de Ii ) con
2

 [ai , mi ] si sig(f (ai )) 6= sig(f (mi ))
I1 = [a, b] y Ii+1 =
[mi , bi ] si sig(f (bi )) 6= sig(f (mi ))

El proceso debe repetirse hasta que

f (mi ) = 0 o bien bi − ai < ε con ε > 0 prefijado.

Un algoritmo para MatLab con entradas a, b, ε y f (x) y salida la raı́z m serı́a


el siguiente:
14 Ecuaciones no lineales

Algoritmo de la Bisección

while (b-a)/2>ε
m = a+(b-a)/2;
if f(m) == 0
a = m;
b = m;
end
if sign f(a) == sign f(m)
a = m;
else
b = m;
end
end
m

El hecho de calcular el punto medio de [a, b] como m = a + (b − a)/2 es debido


a que para valores muy pequeños de a y b puede darse el caso de que (a + b)/2
se encuentre fuera del intervalo.

Método de la “Regula falsi”

Una variante del método de la bisección es el método de la regula falsi , de la


falsa posición o método de la cuerda consistente en dividir el intervalo [a, b] en
dos subintervalos [a, c] ∪ [c, b] donde el punto c, a diferencia del punto medio
del método de la bisección, es el punto de corte de la recta secante que pasa
por los puntos (a, f (a)) y (b, f (b)) con el eje de abscisas OX.
Y
(b, f (b))
f (b) t



(c, 
0)
t
O 
 X


t

f (a) 
(a, f (a))

Figura 1.1: Método de la régula f alsi.


Método y algoritmo de la bisección: análisis de errores 15

La pendiente de dicha secante viene determinada por

f (b) − f (a) 0 − f (b)


m= =
b−a c−b
Según se utilicen los puntos (a, f (a)) y (b, f (b)) ó (c, 0) y (b, f (b)) respectiva-
mente.
Despejando el valor de c obtenemos que

b−a af (b) − bf (a)


c = b − f (b) · =
f (b) − f (a) f (b) − f (a)

pudiéndose dar los mismos casos que en el método de la bisección, es decir:

• Si f (c) = 0 la raı́z buscada es c.

• Si f (a) y f (c) tienen signos contrarios, la raı́z se encuentra en el intervalo


[a, c].

• Si son f (c) y f (b) los que tienen signos contrarios, la raı́z está en el
intervalo [c, b].

El algoritmo con entradas a, b, ε y f (x) y salida la raı́z c serı́a el siguiente:

Algoritmo de la Regula falsi

c = a;
while abs f(c)>ε
c = (a*f(b)-b*f(a))/(f(b)-f(a));
if f(c) == 0
a = c;
b = c;
end
if sign f(a) == sign f(c)
a = c;
else
b =c;
end
end
c
16 Ecuaciones no lineales

En este caso las amplitudes de los intervalos [an , bn ] no se van reduciendo a la


mitad como en el caso del método de dicotomı́a, por lo que ya no es válida
la fórmula del error a priori, siendo necesario encontrar otra forma de poder
estimar el error que se comete en cada iteración.

Error “a posteriori”

Supongamos conocido que la función f (x) tiene un cero en el intervalo [a, b] y


que por cualquier método hemos aproximado la solución como xn .
Lo primero que se nos ocurre para comprobar si es válido el resultado es
calcular f (xn ) y, en general, obtendremos que f (xn ) 6= 0 ya que no tendremos
exactamente la raı́z x sino una aproximación.
Supongamos que obtenemos f (xn ) = 2.2345.

¿estamos cerca o lejos de la raı́z buscada?

Si la pendiente de la función en dicho punto f 0 (xn ) es grande estaremos cerca


de ella, pero si es pequeña estaremos lejos.

f (x)
f (x)

x x
xn

Figura 1.2: El error es inversamente proporcional a la pendiente.

Ası́ pues, el error es inversamente proporcional a la pendiente de la función,


en otras palabras,
|f (xn )|
ε≈ 0
|f (x)|

¿Dónde debemos medir la pendiente?


Si la medimos en un punto en concreto puede que sea muy grande y pensemos
que estamos muy cerca de la solución cuando aún estamos muy lejos.
Método y algoritmo de la bisección: análisis de errores 17

f (x)

f (x)

x x
xn

Figura 1.3: Se debe tomar el mı́nimo valor de la pendiente.

Debemos, por tanto, tomar el mı́nimo valor de la pendiente en todo el intervalo,


para decir que
|f (xn )|
εn ≤ (1.1)
mı́n |f 0 (x)|
x∈(a,b)

Veamos ahora una justificación formal de la fórmula anterior.

Teorema 1.3 [Teorema del valor medio]

Si f (x) es una función continua en el intervalo [a, b] y derivable en (a, b),


f (b) − f (a)
existe un punto c ∈ (a, b) tal que = f 0 (c).
b−a

Sea x una solución de la ecuación f (x) = 0 y sea xn una aproximación de ella


obtenida por un método iterado cualquiera.

Supongamos f (x) continua en el intervalo cerrado [xn , x] ó [x, xn ] (dependiendo


de que x sea mayor o menor que xn ) y derivable en el abierto.
Existe entonces un punto c ∈ (xn , x) ó c ∈ (x, xn ) tal que

f (x) − f (xn )
= f 0 (c).
x − xn
18 Ecuaciones no lineales

f (xn )
Como f (x) = 0, nos queda que x − xn = − , obteniéndose:
f 0 (c)
)
|f (xn )| |f (xn )| |f (xn )| (x, xn )
εn = 0 ≤ 0 ≤ con ∈ (a, b)
|f (c)| mı́n |f (x)| mı́n |f 0 (x)| (xn , x)
(x, xn ) x∈(a,b)
x∈ (xn , x)

Lo único que debemos exigir es que la derivada de la función no se anule en


ningún punto del intervalo (a, b).

Téngase en cuenta que si la función está mal condicionada es decir, si |f 0 (x)| es


muy grande, el cálculo de f (xn ) estará muy mal condicionado ya que cualquier
error en el valor de xn hace que lo que estemos calculando sea f (xn ) en un
punto x0n muy cercano a xn verificándose que

|f (x0n ) − f (xn )| ' |x0n − xn | · |f 0 (xn )|

es decir, puede que obtengamos por ejemplo que f (xn ) = k y sin embargo su
verdadero valor difiera mucho de k debido a la fuerte pendiente existente en
dicho punto, con lo que obtendremos una cota errónea del error.
Debemos, por tanto, asegurarnos de que nuestro problema está bien condicio-
nado, es decir, no existen en el intervalo pendientes muy grandes (condiciona-
miento directo) ni muy pequeñas (condicionamiento inverso) para garantizar
la fiabilidad del “error a posteriori”.

Aplicando el método de la regula falsi al cálculo de la raı́z de 3, se obtienen


14 cifras decimales exactas, en sólo 14 iteraciones frente a las 47 necesarias
mediante el método de la bisección.

Sin embargo, en el método de la regula falsi la convergencia no tiene porqué


ser más rápida que en el de la bisección.
Ambos métodos son de convergencia lenta siendo necesario, por tanto, buscar
otros métodos cuya convergencia sea más rápida.
Dichos métodos están basados en el denominado Teorema del punto fijo que
estudiamos en la siguiente sección.
Punto fijo e iteración funcional 19

1.3 Punto fijo e iteración funcional


Definición 1.5 [Función contractiva]

Una función f : R → R se dice contractiva si verifica que

|f (x1 ) − f (x2 )| ≤ q |x1 − x2 | ∀ x 1 , x2 ∈ R con q<1

q recibe el nombre de factor de contractividad.

Lema 1.4 [Caracterización de las funciones contractivas]

Si una función f (x) continua en [a, b] y derivable en (a, b) verifica que

|f 0 (x)| ≤ q < 1 ∀ x ∈ [a, b]

es contractiva en dicho intervalo.

Demostración. Para cualquier par de puntos x1 , x2 ∈ [a, b]


(
[x1 , x2 ]
f (x1 ) − f (x2 ) = (x1 − x2 )f 0 (c) con c ∈ =⇒ c ∈ [a, b]
[x2 , x1 ]

|f (x1 ) − f (x2 )| = |x1 − x2 | · |f 0 (c)| ≤ q |x1 − x2 | con q < 1


por lo que es contractiva en [a, b].

Definición 1.6 [Punto fijo]

Se dice que x es un punto fijo de la función f (x) si f (x) = x.

Teorema 1.5 [Teorema del punto fijo]

Sea ϕ(x) una función continua en [a, b], derivable en (a, b), con ϕ([a, b]) ⊆ [a, b]
tal que |ϕ0 (x)| ≤ q < 1 ∀ x ∈ [a, b], y sea x0 un punto cualquiera del intervalo
[a, b]. La sucesión

x 0 , x1 , x2 , . . . , x n , . . . con xn+1 = ϕ(xn )

converge al único punto fijo de la función ϕ(x) en [a, b].


20 Ecuaciones no lineales

Demostración.

• Convergencia
(
[xn , xn+1 ]
xn+1 − xn = ϕ(xn ) − ϕ(xn−1 ) = (xn − xn−1 )ϕ0 (c) con c ∈
[xn+1 , xn ]

y por tanto, con c ∈ [a, b].

|xn+1 − xn | = |xn − xn−1 | · |ϕ0 (c)| ≤ q|xn − xn−1 |

por lo que
|x2 − x1 | ≤ q|x1 − x0 |
|x3 − x2 | ≤ q|x2 − x1 | ≤ q 2 |x1 − x0 |
..
.
|xn+1 − xn | ≤ q n |x1 − x0 |
..
.

|x0 | + |x1 − x0 | + |x2 − x1 | + · · · + |xn+1 − xn | + · · · ≤

≤ |x0 | + |x1 − x0 | + q|x1 − x0 | + · · · + q n |x1 − x0 | + · · · =

= |x0 | + |x1 − x0 |(1 + q + · · · + q n + · · ·) con q < 1 =⇒


1
|x0 | + |x1 − x0 | + · · · + |xn+1 − xn | + · · · ≤ |x0 | + |x1 − x0 |
1−q

por lo que la serie

Sn = x0 + (x1 − x0 ) + (x2 − x1 ) + · · · + (xn+1 − xn ) + · · ·

es convergente por ser absolutamente convergente. Dado que

S1 = x 0
S2 = x0 + (x1 − x0 ) = x1
..
.
Sn+1 = Sn + (xn − xn−1 ) = xn
..
.

la convergencia de Sn nos garantiza la de la sucesión (xn ).


Punto fijo e iteración funcional 21

• Convergencia al punto fijo

x = lim xn =⇒ ϕ(x) = ϕ(lim xn ) = lim ϕ(xn ) = lim xn+1 = x

es decir

ϕ(x) = x =⇒ x = lim xn es punto fijo de ϕ(x) en [a, b]

• Unicidad

Sea x0 otro punto fijo de ϕ(x) en [a, b]].

|x − x0 | = |ϕ(x) − ϕ(x0 )| = |(x − x0 )ϕ0 (c)| = |(x − x0 )| · |ϕ0 (c)| con c ∈ [a, b]

|x − x0 |(1 − |ϕ0 (c)|) = 0


y dado que |ϕ0 (c)| ≤ q < 1 =⇒ 1 − |ϕ0 (c)| =
6 0, obtenemos que
0 0
|x − x | = 0 y, por tanto, que x = x .

En otras palabras, x es el único punto fijo de la función ϕ(x) en el


intervalo [a, b].

Interpretación geométrica del teorema del punto fijo

Dependiendo de los valores que toma ϕ0 (x) en el intervalo [a, b], podemos
distinguir cuatro casos:

a) ϕ0 (x) < −1 b) − 1 < ϕ0 (x) < 0

c) 0 < ϕ0 (x) < 1 d) ϕ0 (x) > 1

pudiéndose observar (véase la Fig. 1.4) que en los casos (a) y (d) la sucesión
resulta ser divergente ya que |ϕ0 (x)| > 1.
En los casos (b) y (c), en los que |ϕ0 (x)| ≤ q < 1 el método converge
monótonamente en (b) y de forma oscilatoria en (c).

Aplicación a la resolución de ecuaciones

Si se desea resolver la ecuación f (x) = 0, se escribe esta de la forma x = ϕ(x),


donde ϕ(x) es una función contractiva, y partiendo de un determinado valor
inicial x0 , se construye la sucesión xn+1 = ϕ(xn ).
22 Ecuaciones no lineales

Figura 1.4: Esquema de la convergencia para el teorema del punto fijo.

El teorema del punto fijo nos garantiza la convergencia de esta sucesión al


punto fijo de la función ϕ(x) o lo que es lo mismo, a la raı́z de la ecuación
f (x) = 0.

Para acotar el error de una determinada iteración utilizamos la fórmula (1.1)


del error “a posteriori”.

Ejemplo 1.3 El cálculo de la raı́z cuadrada de 3 equivale al cálculo de la raı́z


positiva de la ecuación x2 = 3. Aunque más adelante veremos métodos cuya
convergencia es más rápida, vamos a realizar los siguientes cambios:
3+x
x2 = 3 =⇒ x + x2 = x + 3 =⇒ x(1 + x) = 3 + x =⇒ x =
1+x
Es decir, hemos escrito la ecuación de la forma x = ϕ(x) con
3+x
ϕ(x) =
1+x
Dado que sabemos que la raı́z de 3 está comprendida entre 1 y 2 y que
2 2 1
|ϕ0 (x)| = 2
≤ 2 = < 1 para cualquier x ∈ [1, 2]
(1 + x) 2 2
Punto fijo e iteración funcional 23

2 2 2
|ϕ0 (x)| = 2
≥ 2 = para cualquier x ∈ [1, 2]
(1 + x) 3 9
podemos garantizar que partiendo de x0 = 1 el método convergerá a la raı́z
cuadrada de 3 y que el “error a posteriori” será fiable.
3 + xn
Ası́ pues, partiendo de x0 = 1 y haciendo xn+1 = obtenemos:
1 + xn

x1 = 2 x14 = 1.73205079844084
x2 = 1.66666666666667 x15 = 1.73205081001473
x3 = 1.75000000000000 x16 = 1.73205080691351
x4 = 1.72727272727273 x17 = 1.73205080774448
x5 = 1.73333333333333 x18 = 1.73205080752182
x6 = 1.73170731707317 x19 = 1.73205080758148
x7 = 1.73214285714286 x20 = 1.73205080756550
x8 = 1.73202614379085 x21 = 1.73205080756978
x9 = 1.73205741626794 x22 = 1.73205080756863
x10 = 1.73204903677758 x23 = 1.73205080756894
x11 = 1.73205128205128 x24 = 1.73205080756886
x12 = 1.73205068043172 x25 = 1.73205080756888
x13 = 1.73205084163518 x26 = 1.73205080756888

|f (xn )|
El error vendrá dado por εn < donde f (x) = x2 − 3, por lo que
mı́n |f 0 (x)|
x∈[1,2]

|x226 − 3|
ε26 < = 4.884981308350688 · 10−15 < 10−14
2

es decir, 3 = 1.73205080756888 con todas sus cifras decimales exactas. 

Habı́amos visto que el método de la regula falsi sólo necesitaba de 14 iteraciones


mientras que ahora hemos necesitado 26.

¿A qué se debe que la convergencia haya sido muy lenta?

La respuesta es bien sencilla: a la mala elección de la función ϕ(x).

¿De qué dependerá la velocidad de convergencia?


24 Ecuaciones no lineales

Orden de convergencia
x 1
• ϕ(x) = en [−1, 1] es contractiva ya que |ϕ0 (x)| = < 1 ∀ x ∈ [−1, 1]
2 2
x0 = 1 =⇒ x1 = 00 5 ⇒ x2 = 00 25 ⇒ x3 = 00 125 =⇒ x4 = 00 0625 · · ·

Observamos que la convergencia a cero es lenta y ello es debido a que

ϕ0 (0) 6= 0 =⇒ convergencia lineal o de primer orden.

x2 x 1
• ϕ(x) = en [−1, 1] es contractiva: |ϕ0 (x)| = ≤ < 1 ∀ x ∈ [−1, 1]

4 2 2
x0 = 1 ⇒ x1 = 00 25 ⇒ x2 = 00 015625 ⇒ x3 = 60 105 . . . · 10−5 · · ·

La convergencia a cero es ahora rápida debido a que


x 
ϕ(x) = ⇒ ϕ0 (0) = 0 
2 ⇒ convergencia de segundo orden.
1
ϕ (x) = ⇒ ϕ00 (0) 6= 0 
00
2

x3
2
x 1
• ϕ(x) = en [−1, 1] es contractiva: |ϕ0 (x)| = ≤ < 1 ∀ x ∈ [−1, 1]
6 2 2

x0 = 1 ⇒ x1 = 00 16666 ⇒ x2 = 00 00077 ⇒ x3 = 70 6565 · 10−11 · · ·

La convergencia a cero es ahora muy rápida debido a que


x2

0 0
ϕ (x) = ⇒ ϕ (0) = 0  
2


ϕ (x) = x ⇒ ϕ (0) = 0  =⇒ convergencia de tercer orden.
00 00


000 000
ϕ (x) = 1 ⇒ ϕ (0) 6= 0

EL orden de convergencia nos lo da el orden de la primera derivada de la


función ϕ(x) que no se anula en su punto fijo x.
3+x √
La función ϕ(x) = que obtuvimos para calcular 3 en el Ejemplo 1.3
1+x
verifica que
1 √ 1
ϕ0 (x) = 2
=⇒ ϕ 0
( 3) = √ 6= 0
(1 + x) (1 + 3)2
por lo que ha resultado una convergencia de primer orden (similar a la de los
métodos de la bisección y la regula falsi).
Análisis del método de Newton-Raphson 25

¿Cómo elegir una función de iteración ϕ(x) que nos garantice una convergen-
cia, al menos, de segundo orden?

Vamos a ver cómo el método de Newton-Raphson, generalmente conocido como


método de Newton, nos permite escribir la ecuación f (x) = 0 de la forma
x = ϕ(x) de tal manera que la convergencia sea, al menos de segundo orden.

1.4 Análisis del método de Newton-Raphson


Si tratamos de resolver la ecuación f (x) = 0 y lo que obtenemos no es la
solución exacta x sino sólo una aproximación xn tal que x = xn + h tendremos
que
f (xn ) f (xn )
f (x) ' f (xn ) + h · f 0 (xn ) =⇒ h ' − =⇒ x ' xn −
f 0 (xn ) f 0 (xn )
obteniéndose la denominada fórmula de Newton-Raphson
f (xn )
xn+1 = xn − (1.2)
f 0 (xn )

Hemos transformado la ecuación f (x) = 0 en x = ϕ(x) con


f (x)
ϕ(x) = x −
f 0 (x)

f (xn )
Si partiendo de x0 ∈ [a, b] la sucesión (xn ) con xn+1 = ϕ(xn ) = xn −
f 0 (xn )
converge entonces ϕ(x) es contractiva.
Además:
f (lim xn ) f (lim xn )
lim xn+1 = lim xn − 0
=⇒ = 0 =⇒ f (lim xn ) = 0
lim f (xn ) lim f 0 (xn )
es decir, lim xn = x.

Interpretación geométrica: Método de la tangente

Si trazamos la tangente a la curva y = f (x) en el punto (xn , f (xn )) obtenemos


la recta
y = f (xn ) + f 0 (xn )(x − xn )
26 Ecuaciones no lineales

que corta al eje y = 0 en el punto de abscisa


f (xn )
x = xn −
f 0 (xn )
que es precisamente el valor de xn+1 de la fórmula de Newton-Raphson.
En otras palabras, xn+1 viene determinado por el punto en el que la tangente
a la curva y = f (x) en (xn , f (xn )) corta al eje de abscisas, por lo que este
método es también conocido como método de la tangente.

y = f (x)

x
x2 x1 x0

Figura 1.5: Interpretación geométrica del método de Newton.

Orden de convergencia
f (x)
Si el método converge, ϕ(x) = x − es contractiva y además
f 0 (x)
f 02 (x) − f (x)f 00 (x) f (x)f 00 (x)
ϕ0 (x) = 1 − = con f 0 (x) 6= 0 =⇒ ϕ0 (x) = 0
f 02 (x) f 02 (x)

El método de Newton es, al menos, de segundo orden.

Cota del error: Error “a priori”

La diferencia entre la solución exacta x y la aproximación xn+1 viene dada por


f (xn ) f (xn )
en+1 = x − xn+1 = x − xn + 0
= en + 0
f (xn ) f (xn )
Dado que
(
f 00 (t) 2 (x, xn )
0 = f (x) = f (xn + en ) = f (xn ) + f 0 (xn )en + en con t ∈
2 (xn , x)
Análisis del método de Newton-Raphson 27

Si f 0 (x) 6= 0 ∀ x ∈ [a, b] podemos dividir entre f 0 (xn ) 6= 0 obteniéndose

f (xn ) f 00 (t) 2 f 00 (t) 2


0= + en + e = en+1 + e
f 0 (xn ) 2f 0 (xn ) n 2f 0 (xn ) n

Tomando valores absolutos:

|f 00 (t)| 2 2 máx |f 00 (x)|


εn+1 = ε n ≤ k ε n con k ≥
2|f 0 (xn )| 2 mı́n |f 0 (x)|

es decir, en cada iteración dispondremos, aproximadamente, del doble de cifras


decimales exactas que en la iteración anterior, que es lo que significa el hecho
de ser una convergencia de segundo orden.
Además, podemos obtener, multiplicando por k,
n+1
kεn+1 ≤ k 2 ε2n = (kεn )2 ≤ (kεn−1 )4 ≤ (kεn−2 )8 ≤ · · · ≤ (kε0 )2 =⇒

1 n máx |f 00 (x)|
εn ≤ (kε0 )2 con k ≥
k 2 mı́n |f 0 (x)|
lo que nos proporciona una cota del error “a priori”, pudiéndose garantizar la
1
convergencia siempre que kε0 < 1 es decir, si ε0 ≤ .
k

Algoritmo
Una vez realizado un estudio previo para ver que se cumplen las condiciones
que requiere el método, establecer el valor inicial x0 y calcular el valor de
m = mı́n |f 0 (x)|, el algoritmo, que tiene por entradas los valores de a, b, x, ε,
x∈[a,b]
f (x) y m y por salida la raı́z x, es el siguiente:

Algoritmo de Newton

e = abs (f(x)/m);
while e > ε
x = x-f(x)/f0 (x);
e = abs (f(x)/m);
end
x
28 Ecuaciones no lineales

Ejemplo 1.4 En el Ejemplo 1.3 calculamos la raı́z de 3 con 14 cifras decimales


exactas en 26 iteraciones. Vamos a ver cómo se disminuye considerablemente
el número de iteraciones cuando se utiliza la fórmula de Newton-Raphson.
Partimos de la ecuación f (x) = x2 − 3 = 0, por lo que la fórmula de Newton-
Raphson nos dice que

x2 − 3 x2 + 3
 
f (xn ) 1 3
xn+1 = xn − 0 = xn − n = n = xn +
f (xn ) 2xn 2xn 2 xn

Dado que la raı́z de 3 es un número comprendido entre 1 y 2 y la función


f 0 (x) = 2x no se anula en dicho intervalo, podemos aplicar el método de
Newton tomando como valor inicial x0 = 2. (Más adelante veremos porqué
debemos tomar 2 como valor inicial), obteniéndose:

x0 =2
x1 = 1.75000000000000
x2 = 1.73214285714286
x3 = 1.73205081001473
x4 = 1.73205080756888

|f (xn )|
El error vendrá dado, al igual que en el Ejemplo 1.3 por εn < ,
mı́n |f 0 (x)|
x∈[1,2]
por lo que

|x24 − 3|
ε4 < = 4.884981308350688 · 10−15 < 10−14
2

es decir, 3 = 1.73205080756888 con todas sus cifras decimales exactas. 

 
1 A
La fórmula xn+1 = xn + es conocida como fórmula de Heron ya que
2 xn
este matemático la utilizaba para aproximar la raı́z cuadrada de un número
real positivo A hacia el año 100 a.C. pues sabı́a que si disponı́a de un valor
aproximado xn y éste fuese mayor que la raı́z buscada, necesariamente A/xn
serı́a menor que su raı́z y viceversa, por lo que la media entre ambos debı́a ser
una mejor aproximación que xn . En otras palabras, en cada iteración tomaba
como aproximación de la raı́z la media aritmética entre el valor xn anterior y
el cociente A/xn .
Análisis del método de Newton-Raphson 29

Análisis de la convergencia: Regla de Fourier


Hay que tener en cuenta que la naturaleza de la función puede originar difi-
cultades, llegando incluso a hacer que el método no converja.

Ejemplo 1.5 Tratemos de determinar, por el método de Newton-Raphson, la


raı́z positiva de la función f (x) = x10 −1, tomando como valor inicial x0 = 0.5.
La fórmula de Newton-Raphson es, en este caso,
x10
n −1
xn+1 = xn − .
10x9n
Aplicando el algoritmo se obtienen los valores

x1 = 51.65 x20 = 6.97714912329906


x2 = 46.485 x30 = 2.43280139954230
x3 = 41.8365 x40 = 1.00231602417741
x4 = 37.65285 x41 = 1.00002393429084
x5 = 33.887565 x42 = 1.00000000257760
x10 = 20.01026825685012 x43 =1

Puede observarse que la convergencia es muy lenta y sólo se acelera (a partir


de x40 ) cuando estamos muy cerca de la raı́z buscada. 

• Si en las proximidades de la raı́z existe un punto de inflexión, las itera-


ciones divergen progresivamente de la raı́z.


 
 
 
   
9
 
x1  x0

x x2

Figura 1.6: En las proximidades de un punto de inflexión puede diverger.


30 Ecuaciones no lineales

• El método de Newton-Raphson oscila en los alrededores de un máximo


o un mı́nimo local, persistiendo o llegando a encontrarse con pendientes
cercanas a cero, en cuyo caso la solución se aleja del área de interés.

y = f (x)

x x0 x1

Figura 1.7: En las proximidades de un extremo local puede oscilar o diverger.

¿Quiere decir eso que el método de Newton puede ser divergente?

El método de Newton siempre converge en las proximidades de la raı́z. El


problema surge cuando se toma un valor inicial x0 inadecuado (próximo a un
punto crı́tico).

¿Cómo podemos saber que el valor inicial x0 es adecuado?

La elección de x0 : Regla de Fourier

Si la función f (x) cambia de signo en los extremos de un intervalo [a, b] y


además, en dicho intervalo, no se anulan ni f 0 (x) ni f 00 (x), nos aseguramos
de que en [a, b] existe una única raı́z de la ecuación f (x) = 0 y no existen
extremos locales ni puntos de inflexión.

Por otra parte, como no nos interesa que x0 esté situado cerca de un extremo
local, vamos a estudiar los diferentes casos con que podemos encontrarnos
y elegir, en cada uno de ellos, un valor adecuado para x0 (aquel que no se
encuentre cercano a un extremo local).
Análisis del método de Newton-Raphson 31

a a b b
b b a a

f 0 (x) > 0 f 0 (x) > 0 f 0 (x) < 0 f 0 (x) < 0


f 00 (x) < 0 f 00 (x) > 0 f 00 (x) > 0 f 00 (x) < 0
x0 = a x0 = b x0 = a x0 = b
Figura 1.8: Los cuatro casos posibles

Obsérvese que en cualquiera de los cuatro casos (véase la Figura 1.8) hemos
optado por elegir, como valor inicial x0 , el extremo en el que la función tiene
el mismo signo que su segunda derivada.
Este resultado, que formalizamos a continuación en forma de teorema es co-
nocido como regla de Fourier.

Teorema 1.6 [Regla de Fourier]

Sea f (x) una función continua y dos veces derivable [a, b]. Si sig f (a) 6= sig f (b)
y sus dos primeras derivadas f 0 (x) y f 00 (x) no se anulan en [a, b] existe una
única raı́z de la ecuación f (x) = 0 en dicho intervalo y se puede garantizar la
convergencia del método de Newton tomando como valor inicial x0 el extremo
del intervalo en el que la función y su segunda derivada tienen el mismo signo.

1.4.1 Método de Newton generalizado

Cuando el método de Newton converge lentamente se debe a que la raı́z que


estamos aproximando es múltiple.
Supongamos que x fuese una raı́z doble de f (x). La función de iteración
f (x)
ϕ(x) = x − 0 del método de Newton verifica que
f (x)

f 0 2 (x) − f (x)f 00 (x) f (x)f 00 (x)


ϕ0 (x) = 1 − =
f 0 2 (x) f 0 2 (x)

ϕ0 (x) es una indeterminación del tipo 0


0
que resulta ser distinta de cero, por lo
32 Ecuaciones no lineales

que la convergencia es de primer orden. De ahı́ su lentitud.

¿Serı́a posible alguna modificación en el método para que la convergencia


volviese a ser, al menos, de segundo orden?

f (x)
• La raı́z x de f (x) también lo es de g(x) = pero con la particularidad
f 0 (x)
de que
g(x)
ϕ(x) = x −
g 0 (x)
verifica que ϕ0 (x) y ϕ00 (x) tienden a cero cuando x lo hace a x, por lo
que al aplicar el método de Newton a la función g(x) obtenemos x con
una convergencia de, al menos, tercer orden.
Este proceso tiene el inconveniente de que si f (x) es, por ejemplo, un
polinomio, g(x) es una función racional, por lo que se complican los
cálculos.

• Sea x una raı́z de multiplicidad k de la ecuación f (x) = 0.


f (xn )
Si en vez de hacer xn+1 = xn − hacemos
f 0 (xn )

f (xn )
xn+1 = xn − k (1.3)
f 0 (xn )

donde k representa el orden de la primera derivada que no se anula para


x = x (multiplicidad de la raı́z x), la convergencia vuelve a ser, al menos,
de segundo orden.

En la práctica, el problema es que no conocemos k pero podemos determinar


su valor estudiando las derivadas de la función f (x).

Ejemplo 1.6 Para resolver la ecuación x − sen x = 0 comenzamos por ex-


presarla de la forma x = sen x, por lo que las soluciones serán los puntos de
intersección de la curva y = sen x con y = x (Fig.1.9).
Aunque es conocido que la solución de la ecuación es x = 0, supondremos que
sólo conocemos que está comprendida entre -1 y 1 y vamos aplicar el método
de Newton.
xn − sen xn sen xn − xn cos xn
xn+1 = xn − =
1 − cos xn 1 − cos xn
Análisis del método de Newton-Raphson 33

y=x

y = sen x
-1

0 1

Figura 1.9: Las gráficas de y = x e y = sen x.

Comenzando con x0 = 1 se obtiene:

x0 = 1
..................... 


 f 0 (x10 ) = 0.0001 . . .

x10 = 0.016822799 . . . f 00 (x10 ) = 0.016 . . .


 f 000 (x ) = 0.9998 . . .

10

..................... 


 f 0 (x20 ) = 0.00000001 . . .

x20 = 0.0000194 . . . f 00 (x20 ) = 0.0019 . . .


 f 000 (x ) = 0.9999 . . .

20

Como la convergencia es muy lenta, hace pensar que se trata de una raı́z
múltiple. Además, como la primera y la segunda derivadas tienden a cero y
la tercera lo hace a 1, parece que nos encontramos ante una raı́z triple, por lo
que aplicamos el método generalizado de Newton.
xn − sen xn
xn+1 = xn − 3
1 − cos xn
que comenzando, al igual que antes, por x0 = 1 se obtiene:

x0 =1
x1 = −0.034 . . .
x2 = 0.000001376 . . .
x3 = 0.00000000000009 . . .

que se ve que converge rápidamente a x = 0. 


34 Ecuaciones no lineales

1.5 Un problema mal condicionado: ceros de


un polinomio
Si queremos resolver la ecuación P (x) = 0 el problema viene condicionado por
los valores de |P 0 (x)| (su número de condición), por lo que si la derivada es
muy pequeña el problema estará mal condicionado, pero si la derivada es muy
grande cualquier método se hace muy lento, por lo que lo ideal serı́a que la
derivada estuviese muy próxima a 1, pero claro está, ese derivada ha de estar
muy próxima a 1 en todas las raı́ces del polinomio, cosa que es estadı́sticamente
casi imposible. Por tanto, el cálculo de los ceros de un polinomio es un ejemplo
de problema mal condicionado. Sin embargo, vamos a estudiar cómo podemos
aproximar un determinado cero del polinomio.
Hemos visto que uno de los mayores problemas que presenta la resolución de
una ecuación es encontrarnos que posee raı́ces múltiples ya que, en un entorno
de ellas, o bien la función no cambia de signo, o bien se aproxima demasiado
a cero y, por tanto, cualquier método puede dar soluciones erróneas.
En el caso de las ecuaciones algebraicas (Pn (x) = 0) este problema puede
solventarse buscando otra ecuación que posea las mismas raı́ces que la dada
pero todas ellas simples, es decir, eliminando las raı́ces múltiples.

Eliminación de las raı́ces múltiples

Por el teorema fundamental del Álgebra sabemos que Pn (x) posee n raı́ces y,
por tanto, puede ser factorizado de la forma

Pn (x) = a0 (x − x1 )(x − x2 ) · · · (x − xn )

donde {x1 , x2 , . . . , xn } son los ceros del polinomio.


Si existen raı́ces múltiples, las podemos agrupar para obtener:

Pn (x) = a0 (x − x1 )m1 (x − x2 )m2 · · · (x − xk )mk

donde mi (i = 1, 2, . . . k) representa la multiplicidad de la raı́z xi y verificándo-


se que m1 + m2 + · · · mk = n
Derivando esta expresión obtenemos:

P 0 (x) = na0 (x − x1 )m1 −1 · · · (x − xk )mk −1 Qk−1 (x)

con Qk−1 (xi ) 6= 0 i = 1, 2, . . . , k


Un problema mal condicionado: ceros de un polinomio 35

Por tanto, si x es una raı́z de la ecuación P (x) = 0 con multiplicidad k, es


también una raı́z de P 0 (x) = 0 pero con multiplicidad k − 1.

D(x) = mcd [P (x), P 0 (x)] = (x − x1 )m1 −1 · · · (x − xk )mk −1

por lo que
P (x)
Q(x) = = a0 (x − x1 )(x − x2 ) · · · (x − xk )
D(x)

Es decir, hemos encontrado un polinomio cuyas raı́ces son las mismas que las
de P (x) pero todas ellas simples.

Ejemplo 1.7 El polinomio P (x) = x3 − 5x2 + 8x − 4 = (x − 1)(x − 2)2 tiene


la raı́z 1 simple y la 2 doble.

D(x) = mcd (P (x), P 0 (x)) = mcd (x3 − 5x2 + 8x − 4, 3x2 − 10x + 8) = x − 2

por lo que
P (x)
Q(x) = = x3 − 3x + 2 = (x − 1)(x − 2)
D(x)
que tiene las mismas raı́ces que P (x) pero todas simples. 

Acotación de las raı́ces

Si ya conocemos que una ecuación sólo tiene raı́ces simples y queremos calcu-
larlas, parece apropiado que un primer paso consista en detectar dónde pueden
encontrarse. Ası́ por ejemplo, si son reales, determinar intervalos de una am-
plitud reducida en los que se encuentren las raı́ces de la ecuación.

Dada una ecuación f (x) = 0 (en general com-


pleja) se denomina acotar las raı́ces a bus-
car dos números reales positivos r y R tales
que r ≤ |x| ≤ R para cualquier raı́z x de la
ecuación.
Geométricamente consiste en determinar una
corona circular de radios r y R dentro de la
cual se encuentran todas las raı́ces.
En el caso real se reduce a los intervalos
(−R, −r) y (r, R).
36 Ecuaciones no lineales

Proposición 1.7 Si x es una raı́z de la ecuación

P (x) = a0 xn + a1 xn−1 + · · · + an−1 x + an = 0

se verifica que:

A
|x| < 1 + siendo A = máx |ai |
|a0 | i≥1

Demostración. Sea P (x) = a0 xn + a1 xn−1 + · · · + an−1 x + an . Tomando


módulos tenemos
|P (x)| = |a0 xn + a1 xn−1 + · · · + an−1 x + an | ≥
≥ |a0 xn | − |a1 xn−1 + · · · + an−1 x + an | ≥
i
+ · · · + |an−1 x| + |an | =
h i
= |a0 xn | − |a1 | · |xn−1 | + · · · + |an−1 | · |x| + |an | ≥
≥ |a0 xn | − A [|x|n−1 + · · · + |x| + 1]
(Para considerar el último paréntesis como una progresión geométrica habrı́a
que añadir los términos que, probablemente, falten en P (x) y suponer que,
además, es |x| =
6 1).
|x|n − 1
|P (x)| ≥ |a0 | · |x|n − A
|x| − 1
Dado que el teorema es trivial para |x| < 1, supondremos que |x| > 1 y
entonces:
|x|n
 
n n A
|P (x)| > |a0 | · |x| − A = |x| |a0 | −
|x| − 1 |x| − 1
Como la expresión anterior es cierta para cualquier |x| > 1, sea |x| > 1 con
P (x) = 0. Entonces
 
n A A
0 > |x| |a0 | − =⇒ |a0 | − < 0 =⇒
|x| − 1 |x| − 1
A A
|a0 | < =⇒ |x| − 1 < =⇒
|x| − 1 |a0 |

A
|x| < 1 + con |x| > 1
|a0 |

Es evidente que esta cota también la verifican las raı́ces x con |x| < 1.
Un problema mal condicionado: ceros de un polinomio 37

Proposición 1.8 [Regla de Laguerre]

Consideremos la ecuación

P (x) = a0 xn + a1 xn−1 + · · · + an−1 x + an = 0

Sean C(x) = b0 xn−1 + · · · + bn−2 x + bn−1 el cociente y r el resto de la división


de P (x) entre x − c.

Si r ≥ 0 y bi ≥ 0 para 0 ≤ i ≤ n − 1, el número real c es una cota superior


para las raı́ces positivas de la ecuación. (Trivialmente lo es también para las
raı́ces negativas).

El procedimiento consiste en comenzar con la cota obtenida anteriormente


(que no suelen ser muy buena) e ir disminuyéndola hasta afinarla todo lo que
podamos.

Ejemplo 1.8 Consideremos la ecuación 2x4 − 9x3 − x2 + 24x + 12 = 0.


Sabemos que
A 24
|x| < 1 + siendo A = máx |ai | =⇒ |x| < 1 + = 13
|a0 | i≥1 2

por lo que cualquier raı́z real del polinomio debe estar en el intervalo (−13, 13).
Aplicando la regla de Laguerre obtenemos:

2 −9 −1 24 12
4 8 −4 −20 16
2 −1 −5 4 28

2 −9 −1 24 12
5 10 5 20 240
2 1 4 48 252

Dado que para x = 4 se obtienen valores negativos no podemos garantizar que


4 sea una cota superior para las raı́ces positivas de la ecuación, pero para x = 5
todos los valores obtenidos han sido positivos, por lo que podemos garantizar
que las raı́ces reales de la ecuación se encuentran en el intervalo (−13, 5).
No debemos confundir el hecho de que la regla de Laguerre no nos garantice
que 4 sea una cota superior de las raı́ces positivas y 5 sı́ lo sea, con que la
38 Ecuaciones no lineales

ecuación deba tener alguna raı́z en el intervalo (4, 5). En otras palabras, 4
puede ser una cota superior para las raı́ces positivas de la ecuación aunque la
regla de Laguerre no lo garantice. De hecho, la mayor de las raı́ces positivas
de nuestra ecuación es x = 3.56155281280883 . . . < 4. 

Separación de las raı́ces

Las cotas obtenidas anteriormente nos delimitan la zona en la que debemos


estudiar la existencia de soluciones de la ecuación pero, en realidad, lo que más
nos acerca a nuestro problema (resolver la ecuación) es separar cada raı́z en un
intervalo. A este proceso se le conoce como separación de raı́ces y estudiaremos
un método que se conoce como método de Sturm que nos permite separar las
raı́ces de una ecuación.

1.5.1 Sucesiones de Sturm


Definición 1.7 [Sucesión de Sturm]

Una sucesión de Sturm en [a, b] es un conjunto de funciones continuas en dicho


intervalo f0 (x), f1 (x), . . . , fn (x) que cumplen las siguientes condiciones:

• fn (x) 6= 0 cualquiera que sea x ∈ [a, b]. Es decir, el signo de fn (x)


permanece constante en el intervalo [a, b].

• Las funciones fi (x) y fi+1 (x) no se anulan simultáneamente. En otras


palabras, si fi (c) = 0 entonces fi−1 (c) 6= 0 y fi+1 (c) 6= 0.

• Si fi (c) = 0 entonces fi−1 (c) y fi+1 (c) tienen signos opuestos, es decir,
fi−1 (c) · fi+1 (c) < 0. (Engloba al apartado anterior).
f0 (x)
• Si f0 (c) = 0 con c ∈ [a, b] entonces pasa de negativa a positiva
f1 (x)
en c. (Está bien definida en c por ser f1 (c) 6= 0 y es creciente en dicho
punto).

Construcción de una sucesión de Sturm para un polinomio

La construcción de una sucesión de Sturm es, en general, complicada. Sin


embargo, cuando se trabaja con funciones polinómicas, el problema es mucho
más simple además de que siempre es posible construir una sucesión de Sturm
válida para cualquier intervalo.
Un problema mal condicionado: ceros de un polinomio 39

Dada la ecuación algebraica Pn (x) = 0, partimos de

f0 (x) = Pn (x) y f1 (x) = Pn0 (x)

Para determinar las demás funciones de la sucesión vamos dividiendo fi−1 (x)
entre fi (x) para obtener

fi−1 (x) = ci (x) · fi (c) + ri (x)

donde ri (x) tiene grado inferior al de fi (x) y hacemos

fi+1 (x) = −ri (x)

Como el grado de fi (x) va decreciendo, el proceso es finito. Si se llega a un


resto nulo (el proceso que estamos realizando es precisamente el del algoritmo
de Euclides) la ecuación posee raı́ces múltiples y se obtiene el máximo común
divisor D(x) de Pn (x) y Pn0 (x). Dividiendo Pn (x) entre D(x) obtenemos una
nueva ecuación que sólo posee raı́ces simples.
fi (x) P (x)
La sucesión es una sucesión de Sturm para la ecuación = Q(x) = 0
D(x) D(x)
que posee las mismas raı́ces que P (x) = 0 pero todas simples.

Si llegamos a un resto constante, no nulo, es éste quien nos determina la


finalización del proceso. Hemos obtenido, de esta manera, una sucesión de
Sturm válida para cualquier intervalo [a, b].

Teorema 1.9 [Teorema de Sturm]

Sea f0 (x), f1 (x), . . . , fn (x) una sucesión de Sturm en el intervalo [a, b] y


consideremos las sucesiones

sig[f0 (a)] sig[f1 (a)] · · · sig[fn (a)]

sig[f0 (b)] sig[f1 (b)] · · · sig[fn (b)]

teniendo en cuenta que si alguna de las funciones se anula en uno de los


extremos del intervalo [a, b] pondremos en su lugar, indistintamente, signo +
o - y denotemos por N1 al número de cambios de signo de la primera sucesión
y por N2 al de la segunda (siempre es N1 ≥ N2 ).
En estas condiciones, el número de raı́ces reales existentes en el intervalo [a, b]
de la ecuación f0 (x) = 0 viene dado por N1 − N2 .
40 Ecuaciones no lineales

Ejemplo 1.9 Vamos a construir una sucesión de Sturm que nos permita se-
parar las raı́ces de la ecuación x4 + 2x3 − 3x2 − 4x − 1 = 0.
f0 (x) = x4 + 2x3 − 3x2 − 4x − 1. f00 (x) = 4x3 + 6x2 − 6x − 4.
f1 (x) = 2x3 + 3x2 − 3x − 2.

2x4 + 4x3 − 6x2 − 8x − 2 |2x3 + 3x2 − 3x − 2


− 2x4 − 3x3 + 3x2 + 2x xk1
x3 − 3x2 − 6x − 2 multiplicando por 2
2x3 − 6x2 − 12x − 4
−2x3 − 3x2 + 3x + 2
−9x2 − 9x − 2

f2 (x) = 9x2 + 9x + 2.

18x3 + 27x2 − 27x − 18 |9x2 + 9x + 2


− 18x3 − 18x2 − 4x 2x + 1
9x2 − 31x − 18
− 9x2 − 9x − 2
−40x − 20

f3 (x) = 2x + 1.

18x2 + 18x + 4 |2x + 1


− 18x2 − 9x 9x k 9
9x + 4 multiplicando por 2
18x + 8
− 18x − 9
−1

f4 (x) = 1.

−∞ −3 −2 −1 0 1 2 +∞
4 3 2
f0 (x) = x + 2x − 3x − 4x − 1 + + − − − − + +
f1 (x) = 2x3 + 3x2 − 3x − 2 − − 0 + − 0 + +
2
f2 (x) = 9x + 9x + 2 + + + + + + + +
f3 (x) = 2x + 1 − − − − + + + +
f4 (x) = 1 + + + + + + + +
cambios de signo 4 4 3 3 1 1 0 0
Un problema mal condicionado: ceros de un polinomio 41

Sabemos, por ello, que existe una raı́z en el intervalo (−3, −2), dos raı́ces en
el intervalo (−1, 0) y una cuarta raı́z en el intervalo (1, 2).
Como f0 (−1) = −1 < 0, f0 (−0.5) = 0.0625 > 0 y f0 (0) = −1 < 0 podemos
separar las raı́ces existentes en el intervalo (−1, 0) y decir que las cuatro raı́ces
de la ecuación dada se encuentran en los intervalos

(−3 − 2) (−1, −0.5) (−0.5, 0) y (1, 2)




Si, una vez eliminadas las raı́ces múltiples y separadas las raı́ces, queremos
resolver la ecuación, utilizaremos el método de Newton.
Al aplicarlo nos encontramos con que tenemos que calcular, en cada paso, los
valores de P (xn ) y P 0 (xn ) por lo que vamos a ver, a continuación, un algo-
ritmo denominado algoritmo de Horner que permite realizar dichos cálculos
en tiempo lineal.

1.5.2 Algoritmo de Horner

Supongamos un polinomio P (x) y un número real (en general también puede


ser complejo) x0 ∈ R. Si dividimos P (x) entre x − x0 sabemos que el resto es
un polinomio de grado cero, es decir, un número real, por lo que


 r∈R
P (x) = (x − x0 )Q(x) + r con y

gr[Q(x)] = gr[P (x)] − 1

Haciendo x = x0 obtenemos que

P (x0 ) = 0 · Q(x0 ) + r =⇒ P (x0 ) = r

Este resultado es conocido como teorema del resto y lo enunciamos a conti-


nuación.

Teorema 1.10 [Teorema del resto]

El valor numérico de un polinomio P (x) para x = x0 viene dado por el resto


de la división de P (x) entre x − x0 .
42 Ecuaciones no lineales

Algoritmo de Horner

Consideremos el polinomio P (x) = a0 xn + a1 xn−1 + · · · + an−1 x + an .


Si llamamos bi (0 ≤ i ≤ n − 1) a los coeficientes del polinomio cociente

P (x) − P (x0 )
= Q(x) = b0 xn−1 + b1 xn−2 + · · · + bn−2 x + bn−1
x − x0
se tiene que
b 0 = a0
b 1 = a1 + x 0 b 0
b 2 = a2 + x 0 b 1
..
.
bn−1 = an−1 + x0 bn−2
r = P (x0 ) = an + x0 bn−1

Este procedimiento para calcular el polinomio cociente Q(x) y el valor numé-


rico de P (x0 ) es conocido como algoritmo de Horner.

Además, dado que

P (x) = Q(x)(x − x0 ) + P (x0 ) =⇒ P 0 (x) = Q0 (x)(x − x0 ) + Q(x)

se tiene que
P 0 (x0 ) = Q(x0 )
y el cálculo de Q(x0 ) es análogo al que hemos realizado para P (x0 ), es decir,
aplicando el algoritmo de Horner a Q(x) obtenemos

Q(x) = C(x)(x − x0 ) + Q(x0 ) donde Q(x0 ) = P 0 (x0 ).

Regla de Ruffini

Una regla útil para hacer los cálculos a mano es la conocida regla de Ruffini
que consiste en disponer las operaciones como se indica a continuación.

a0 a1 a2 ··· an−1 an
x0 x0 b0 x0 b1 · · · x0 bn−2 x0 bn−1

b0 b1 b2 ··· bn−1 P (x0 )


Sistemas de ecuaciones no lineales 43

Si utilizamos la regla de Ruffini sólo tenemos que volver a dividir por x0 , como
se muestra a continuación, para obtener el valor de P 0 (x0 ).

a0 a1 a2 ··· an−2 an−1 an


x0 x0 b0 x0 b1 · · · x0 bn−3 x0 bn−2 x0 bn−1

b0 b1 b2 ··· bn−2 bn−1 P (x0 )


x0 x0 c0 x0 c1 · · · x0 cn−3 x0 cn−2

c0 c1 c2 ··· cn−2 P 0 (x0 )

Ejemplo 1.10 Consideremos el polinomio P (x) = 2x4 + x3 − 3x2 + 4x − 5


y vamos a calcular los valores de P(2) y P’(2). Aplicando reiteradamente al
regla de Ruffini obtenemos
2 1 −3 4 −5
2 4 10 14 36

2 5 7 18 31
2 4 18 50

2 9 25 68
por lo que
P (2) = 31 y P 0 (2) = 68 

Evidentemente, la regla de Ruffini nos es útil para realizar cálculos a mano


con una cierta facilidad, pero cuando los coeficientes de P (x) y el valor de x0
no son enteros sino que estamos trabajando con varias cifras decimales, deja
de ser efectivo y debemos recurrir al algoritmo de Horner en una máquina.

1.6 Sistemas de ecuaciones no lineales


Dado un sistema de ecuaciones no lineales
f1 (x1 , x2 , . . . , xm ) = 0

f2 (x1 , x2 , . . . , xm ) = 0
..
.
fm (x1 , x2 , . . . , xm ) = 0
44 Ecuaciones no lineales

podemos expresarlo de la forma f (x) = 0 donde x es un vector de Rm y f una


función vectorial de variable vectorial, es decir:

f : D ⊂ Rm → Rm

o lo que es lo mismo, f = (f1 , f2 , . . . , fm ) con fi : Rm → R para 1 ≤ i ≤ m.

Ejemplo 1.11 Considérese el sistema



x2 − 2x − y + 0.5 = 0 
x2 + 4y 2 + 4 = 0 

f1 (x)

t 1

t
-1 1
-2 2
-0.5
f2 (x)
-1

Figura 1.10: Gráfica del sistema.

Podemos considerarlo como la ecuación f (x) = 0 (obsérvese que 0 representa


ahora al vector nulo, es decir, que 0 = (0, 0)T ) con x = (x, y)T y f = (f1 , f2 )
siendo 
 f1 (x) = x2 − 2x − y + 0.5

f2 (x) = x2 + 4y 2 + 4 

Como hemos transformado el sistema en una ecuación del tipo f (x) = 0, parece
lógico que tratemos de resolverla por algún método paralelo a los estudiados
para ecuaciones no lineales como puedan ser la iteración funcional o el método
de Newton.
Sistemas de ecuaciones no lineales 45

Si buscamos un método iterado basado en el teorema del punto fijo, debemos


escribir la ecuación f (x) = 0 de la forma x = F (x) (proceso que puede rea-
lizarse de muchas formas, la más sencilla es hacer F (x) = x + f (x)) para,
partiendo de un vector inicial x0 construir la sucesión de vectores


 x1n+1 = F1 (x1n , x2n , . . . , xm
n)




 x2 = F2 (x1 , x2 , . . . , xm )

n+1 n n n
xn+1 = F (xn )
 ..



 .


 m
xn+1 = Fm (x1n , x2n , . . . , xm n)

En el Ejemplo 1.11 podemos hacer

x2 − y + 0.5
x2 − 2x − y + 0.5 = 0 =⇒ 2x = x2 − y + 0.5 =⇒ x =
2

x2 + 4y 2 − 4 = 0 =⇒ x2 + 4y 2 + y − 4 = y =⇒ y = x2 + 4y 2 + y − 4

es decir,



 x = (x, y)T



x = F (x) con y

x2 − y + 0.5 2


, x + 4y 2 + y − 4)T

 F (x) = (

2
Si x es una solución de la ecuación y xn+1 es una aproximación obtenida, se
tiene que

kx − xn+1 k = kF (x) − F (xn )k = kF 0 (α)(x − xn )k ≤ kF 0 (α)k · kx − xn k

por lo que si kF 0 (x)k ≤ q < 1 para cualquier punto de un determinado entorno


de la solución, se tiene que

kx − xn+1 k ≤ kx − xn k

y la sucesión
x0 , x1 , . . . , xn , . . .
converge a la única raı́z de la ecuación x = F (x) en la bola considerada
(intervalo de Rm ).
46 Ecuaciones no lineales

Es importante observar que:

• Se ha utilizado el concepto de norma vectorial al hacer uso de kx − xn k.

• Se ha utilizado una versión del teorema del valor medio para varias va-
riables al decir que

kF (x) − F (xn )k ≤ kF 0 (α)k · k(x − xn )k

• Se ha utilizado el concepto de norma matricial al hacer uso de kF 0 (α)k


ya que F 0 (x) es la matriz jacobiana de la función F , es decir
 ∂F ∂F1 
1
···
 ∂x1 ∂xm 
 
0
 .. .. .. 
 .
F (x) =  . . 

 
 ∂F ∂Fm 
m
···
∂x1 ∂xm

• Se supone que kF 0 (α)(x − xn )k ≤ kF 0 (α)k · kx − xn k o de forma más


general, que para cualquier matriz A (cuadrada de orden n) y cualquier
vector de Rn se verifica que

kAxk ≤ kAk · kxk

• Que el teorema del punto fijo es generalizable a funciones vectoriales de


variable vectorial.

1.6.1 Método de Newton para sistemas


Consideremos la ecuación f (x) = 0 (donde f es una función vectorial de
variable vectorial) equivalente a un sistema de ecuaciones no lineales.
Sea x la solución exacta del sistema y xn una aproximación de ella. Si deno-
tamos por h = x − xn se tiene que

x = xn + h

y haciendo uso del desarrollo de Taylor obtenemos que

0 = f (x) = f (xn + h) ' f (xn ) + f 0 (xn )h


Sistemas de ecuaciones no lineales 47

de donde
h ' −f 0−1 (xn )f (xn )
y, por tanto
x ' xn − f 0−1 (xn )f (xn ).
Esta aproximación es que utilizaremos como valor de xn+1 , es decir

xn+1 = xn − f 0−1 (xn )f (xn )

Obsérvese entonces que cada iteración del método de Newton se reduce al


cálculo del vector h correspondiente y éste no es más que la solución del sistema
de ecuaciones lineales
f 0 (xn )h + f (xn ) = 0
En el Ejemplo 1.11 se tiene que f (x) = 0 con x = (x, y)T y f = (f1 , f2 )T donde

f1 (x) = x2 − 2x − y + 0.5 y f2 (x) = x2 + 4y 2 − 4

Tomando como valor inicial x0 = (−0.5, 1)T se tiene que

f (x0 ) = (0.75, 0.25)T


   
2x − 2 −1 −3 −1
J(x) =   =⇒ f 0 (x0 ) = J(x0 ) =  
2x 8y −1 8

por lo que debemos resolver el sistema


  1   
−3 −1 h1 −0.75
  = 
2
−1 8 h1 −0.25
   
h11 0.25
cuya solución es h1 =  =  y, por tanto
h21 0
 
−0.25
x1 = x0 + h1 =  
1

Aplicando de nuevo el método se obtiene


   
0.0625 −0.25 −1
f (x1 ) =   f 0 (x1 ) = J(x1 ) =  
0.0625 −0.5 8
48 Ecuaciones no lineales

obteniéndose el sistema
  1   
−0.25 −1 h2 −0.0625
  = 
2
−0.5 8 h2 −0.0625
 1   
h2 0.022561 . . .
cuya solución es h2 =  =  y, por tanto
2
h2 −0.006 . . .
 
−0.227439 . . .
x2 = x1 + h2 =  
0.994 . . .

En definitiva, podemos observar que la resolución de un sistema de ecuaciones


no lineales mediante el método de Newton se reduce, en cada iteración, a la
resolución de un sistema de ecuaciones lineales por lo que el tema siguiente lo
dedicaremos al estudio de dichos sistemas de ecuaciones.

1.7 Ejercicios resueltos


Ejercicio 1.1 Dada la ecuación xex − 1 = 0, se pide:

a) Estudiar gráficamente sus raı́ces reales y acotarlas.

b) Aplicar el método de la bisección y acotar el error después de ocho ite-


raciones.

c) Aplicar el método de Newton, hasta obtener tres cifras decimales exactas.

Solución:

a) La ecuación puede escribirse de la


forma:
1
ex =
x
Gráficamente, se observa que existe
una única solución real (intersec-
ción de las dos curvas) y que esta es
positiva. La demostración analı́tica
de este hecho es la siguiente:
Ejercicios resueltos 49

Para x < 0:
1 1
< 0 y ex > 0 =⇒ ex 6=
x x
y por tanto, no existen raı́ces negativas.
Para x > 0:
(
f (0) = −1 < 0
f (x) = xex − 1 =⇒
f (+∞) = +∞ > 0
y existe, por tanto, un número impar de raı́ces positivas (al menos una).
La función derivada f 0 (x) = xex + ex = (x + 1)ex sólo se anula para
x = −1. Dado que, si existiese más de una raı́z positiva, el teorema de
Rolle nos asegura que la función derivada debe anularse en algún punto
intermedio y hemos visto que f 0 (x) no se anula para ningún valor positivo
de la variable, podemos asegurar que sólo existe una raı́z real α, que esta
es positiva y simple, pues f 0 (α) 6= 0.
Dado que f (1) = e − 1 > 0 y f (0) = −1 < 0, podemos asegurar que la
única raı́z real de la ecuación se encuentra en el intervalo (0, 1).

b) Método de la bisección:
(
f (0) = −1 < 0
[a1 , b1 ] = [a, b] = [0, 1] con
f (1) = e − 1 > 0

f (0.5) < 0 =⇒ [a2 , b2 ] = [0.5, 1]


f (0.75) > 0 =⇒ [a3 , b3 ] = [0.5, 0.75]
f (0.625) > 0 =⇒ [a4 , b4 ] = [0.5, 0.625]
f (0.5625) < 0 =⇒ [a5 , b5 ] = [0.5625, 0.625]
f (0.59375) > 0 =⇒ [a6 , b6 ] = [0.5625, 0.59375]
f (0.578125) > 0 =⇒ [a7 , b7 ] = [0.5625, 0.578125]
f (0.5703125) > 0 =⇒ [a8 , b8 ] = [0.5625, 0.5703125]
Tomando como aproximación a la raı́z el punto medio del intervalo
1
x8 = 0.56640625 =⇒ ε8 ≤ 8 = 0.00390625 =⇒ ε8 < 10−2
2
Si redondeamos a las dos primeras cifras decimales, es decir, si tomamos
α = 0.57, el error acumulado verifica que
ε < |0.57 − 0.56640625| + 0.00390625 = 0.0075 < 10−2
por lo que puede asegurarse que la solución de la ecuación es 0.57 con
las dos cifras decimales exactas.
50 Ecuaciones no lineales

c) Método de Newton:
f (xn )
La fórmula de Newton-Raphson es xn+1 = xn −
f 0 (xn )
Dado que, por el apartado anterior, se conoce que la raı́z se encuentra
en el intervalo [0.5625, 0.5703125] y que

 f (0.5625) < 0
f (x) = xex − 1 =⇒
 f (0.5703125) > 0
f 0 (x) = (x + 1)ex =⇒ f 0 (x) > 0 ∀ x ∈ [0.5625, 0.5703125]
f 00 (x) = (x + 2)ex =⇒ f 00 (x) > 0 ∀ x ∈ [0.5625, 0.5703125]

la regla de Fourier nos dice que x0 = 0.5703125


Al ser positiva la segunda derivada, la primera es creciente, por lo que

mı́n |f 0 (x)| = f 0 (0.5703125) = 2.74227290150047 . . .


x∈[0.5625,0.5703125]

es decir
|f (xn )| |f (xn )|
εn ≤ 0 <
mı́n |f (x)| 2.74
x∈[0.5625,0.5703125]

obteniéndose que

|f (x0 )|
x0 = 0.5703125 con ε0 < = 0.00320437856505 . . .
2.74
|f (x1 )|
x1 = 0.56715149835900 . . . con ε1 < = 0.00000827757122 . . .
2.74
Si redondeamos a 0.567 el error acumulado es

ε < 0.00015149835900 . . . + 0.00000827757122 . . . < 10−3

Por lo que la solución de la ecuación es 0.567 con sus tres cifras decimales
exactas.

Ejercicio 1.2 Probar que la ecuación x2 + ln x = 0 sólo tiene una raı́z real y
hallarla, por el método de Newton, con 6 cifras decimales exactas.

Solución: Si representamos las gráficas de las funciones y = ln x e y = −x2


obtenemos
Ejercicios resueltos 51

Puede observarse que sólo existe un punto de corte entre ellas, por lo que la
ecuación x2 + ln x = 0 sólo posee una raı́z real.
Analı́ticamente hay que probar que las gráficas no vuelven a cortarse en ningún
otro punto, sin embargo, dado que en su dominio de definición, que es (0, +∞),
ln x es creciente y −x2 decreciente, no pueden volver a cortarse.
Partiendo de x0 = 0.1 y aplicando el método de Newton, en el intervalo (0.1, 1)
(no tomamos (0, 1) por no estar definido el logaritmo en 0), dado por la fórmula

f (xn ) x2n + ln xn x3n + xn − xn ln xn


xn+1 = xn − = x n − =
f 0 (xn ) 2xn + x1n 2x2n + 1

|f (xn )| |f (xn )|
con un error, a posteriori, dado por εn ≤ 0 = , obtenemos:
mı́n |f (x)| 2
x∈(0,1)

x1 = 0.32476324441118 . . . con ε1 ≤ 0.509593 . . .


x2 = 0.59809970985991 . . . con ε2 ≤ 0.078137 . . .
x3 = 0.65258567248750 . . . con ε3 ≤ 4.7239 . . . · 10−4
x4 = 0.65291863363348 . . . con ε4 ≤ 9.6269 . . . · 10−9

Por lo que la raı́z buscada es 0.652919 con un error

ε ≤ 0.00000036636642 . . . + 9.6269 . . . · 10−9 < 10−6

es decir, con las seis cifras decimales exactas.

Ejercicio 1.3 Eliminar las raı́ces múltiples en la ecuación

x6 − 2x5 + 3x4 − 4x3 + 3x2 − 2x + 1 = 0

Resolver, exactamente, la ecuación resultante y comprobar la multiplicidad de


cada raı́z en la ecuación original.
52 Ecuaciones no lineales

Solución: Aplicamos el Algoritmo de Euclides para calcular el máximo co-


mún divisor entre el polinomio P (x) = f0 (x) = x6 −2x5 +3x4 −4x3 +3x2 −2x+1
y su derivada f1 (x) = 6x5 − 10x4 + 12x3 − 12x2 + 6x − 2. Para ello podemos
multiplicar, previamente, f0 (x) por 3 y dividir f1 (x) entre 2.

3x6 − 6x5 + 9x4 − 12x3 + 9x2 − 6x + 3 |3x5 − 5x4 + 6x3 − 6x2 + 3x − 1


− 3x6 + 5x5 − 6x4 + 6x3 − 3x2 + x xk − 1
5 4 3 2
−x + 3x − 6x + 6x − 5x + 3 multiplicando por 3
−3x5 + 9x4 − 18x3 + 18x2 − 15x + 9
3x5 − 5x4 + 6x3 − 6x2 + 3x − 1
4x4 − 12x3 + 12x2 − 12x + 8

Por lo que (dividiendo el resto entre 4) f2 (x) = x4 − 3x3 + 3x2 − 3x + 2.


Dividimos ahora f1 (x) (dividido, previamente entre 2) entre f2 (x).

3x5 − 5x4 + 6x3 − 6x2 + 3x − 1 |x4 − 3x3 + 3x2 − 3x + 2


− 3x5 + 9x4 − 9x3 + 9x2 − 6x 3x + 4
4x4 − 3x3 + 3x2 − 3x − 1
−4x4 + 12x3 − 12x2 + 12x − 8
9x3 − 9x2 + 9x − 9 =⇒ f3 (x) = x3 − x2 + x − 1

Dividiendo, ahora, f2 (x) entre f3 (x) se obtiene:

x4 − 3x3 + 3x2 − 3x + 2 |x3 − x2 + x − 1


− x4 + x3 − x2 + x x−2
−2x3 + 2x2 − 2x + 2
2x3 − 2x2 + 2x − 2
0

El máximo común divisor entre P (x) y su derivada es


D(x) = x3 − x2 + x − 1
El polinomio cuyas raı́ces son las mismas que las de P (x), pero simples, es
P (x) x6 − 2x5 + 3x4 − 4x3 + 3x2 − 2x + 1
Q(x) = = = x3 − x2 + x − 1
D(x) x3 − x2 + x − 1
Como Q(x) = x3 − x2 + x − 1 = (x − 1)(x2 + 1) = (x − 1)(x + i)(x − i) sus
raı́ces son 1, i y −i.
Ejercicios resueltos 53

Veamos la multiplicidad de ellas en P (x).


Dado que P 0 (x) = 2(3x5 − 5x4 + 6x3 − 6x2 + 3x − 1) se tiene:
 0

 P (1) = 2 (3 − 5 + 6 − 6 + 3 − 1) = 0


P 0 (−i) = 2 (−3i − 5 + 6i + 6 − 3i − 1) = 0



 0
P (i) = 2 (3i − 5 − 6i + 6 + 3i − 1) = 0
Luego las tres raı́ces son dobles (no pueden tener mayor multiplicidad ya que
el grado de P (x) es 6, es decir, 2+2+2).

Ejercicio 1.4 Dado el polinomio P (x) = x3 + 3x2 + 2 se pide:

a) Acotar sus raı́ces reales.


b) Probar, mediante una sucesión de Sturm, que P (x) sólo posee una raı́z
real y determinar un intervalo de amplitud 1 que la contenga.
c) ¿Se verifican, en dicho intervalo, las hipótesis del teorema de Fourier?
En caso afirmativo, determinar el extremo que debe tomarse como valor
inicial x0 para garantizar la convergencia del método de Newton.
d) Sabiendo que en un determinado momento del proceso de Newton se ha
obtenido xn = −3.1958, calcular el valor de xn+1 ası́ como una cota del
error en dicha iteración.

Solución:

a)
3
|x| < 1 + = 4 =⇒ −4 < x < 4
1
b) f0 (x) = P (x) = x3 + 3x2 + 2.
P 0 (x) = 3x2 + 6x =⇒ f1 (x) = x2 + 2x
x3 + 3x2 + 2 = (x2 + 2x)(x + 1) + (−2x + 2) =⇒ f2 (x) = x − 1
x2 + 2x = (x − 1)(x + 3) + 3 =⇒ f3 (x) = −1
−4 −3 4
x3 + 3x2 + 2 − + +
2
x + 2x + + +
x−1 − − +
−1 − − −
Cambios de signo 2 1 1
54 Ecuaciones no lineales

por lo que sólo posee una raı́z real, la cual se encuentra en el intervalo
(−4, −3).

 f (−4) = −14 < 0
c) f (x) = x3 + 3x2 + 2 =⇒ es decir, la función
f (−3) = 2 > 0

cambia de signo en los extremos del intervalo (−4, −3).

f 0 (x) = 3(x2 + 2x) > 0 ∀x ∈ (−4, −3)

f 00 (x) = 6(x + 1) < 0 ∀x ∈ (−4, −3)

por lo que se verifican las hipótesis del teorema de Fourier y, por tanto,
tomando como valor inicial x0 = −4 (extremo en el que la función tiene
el mismo signo que la segunda derivada) se tiene garantizada la conver-
gencia del método de Newton.

f (xn ) x3n + 3x2n + 2


d) Dado que xn+1 = xn − = x n − se obtiene que
f 0 (xn ) 3x2n + 6xn

xn+1 = −3.19582334575880.

El error “a posteriori” viene dado

|f (xn+1 )| |f (xn+1 )| |f (xn+1 )|


εn+1 ≤ 0 = 0 = < −3.989·10−10 < 10−9 .
mı́n |f (x)| f (−3) 9
x∈(−4,−3)

Ejercicio 1.5 Aplicar el método de Sturm para separar las raı́ces de la ecua-
ción
2x6 − 6x5 + x4 + 8x3 − x2 − 4x − 1 = 0
y obtener la mayor de ellas con seis cifras decimales exactas por el método de
Newton.

Solución: Comencemos por construir la sucesión de Sturm.

f0 (x) = P (x) = 2x6 − 6x5 + x4 + 8x3 − x2 − 4x − 1

P 0 (x) = 12x5 − 30x4 + 4x3 + 24x2 − 2x − 4, por lo que

f1 (x) = 6x5 − 15x4 + 2x3 + 12x2 − x − 2


Ejercicios resueltos 55

Multiplicando f0 (x) por tres y dividiendo el resultado entre f1 (x) obtenemos:

6x6 − 18x5 + 3x4 + 24x3 − 3x2 − 2x − 3 |6x5 − 15x4 + 2x3 + 12x2 − x − 2


− 6x6 + 15x5 − 2x4 − 2x3 + x2 + 2x xk − 1
5 4 3 2
−3x + x + 12x − 2x − 10x − 3 multiplicando por 2
−6x5 + 2x4 + 24x3 − 4x2 − 20x − 6
6x5 − 15x4 + 2x3 + 12x2 − x − 2
−13x4 + 26x3 + 8x2 − 21x − 8

f2 (x) = 13x4 − 26x3 − 8x2 + 21x + 8


Multiplicando f1 (x) por trece y dividiendo el resultado entre f2 (x) obtenemos:

78x5 − 195x4 + 26x3 + 156x2 − 13x − 26 |13x4 − 26x3 − 8x2 + 21x + 8


− 78x5 + 156x4 + 48x3 − 126x2 − 48x 6x − 3
4 3 2
−39x + 74x + 30x − 61x − 26
39x4 − 78x3 − 24x2 + 63x + 24
−4x3 + 6x2 + 2x − 2

f3 (x) = 2x3 − 3x2 − x − 1


Multiplicando f2 (x) por dos y dividiendo el resultado entre f3 (x) obtenemos:

26x4 − 52x3 − 16x2 + 42x + 16 |2x3 − 3x2 − x + 1


− 26x4 + 39x3 + 13x2 − 13x 13x k − 13
3 2
−13x − 3x + 29x + 16 multiplicando por 2
−26x3 − 6x2 + 58x + 32
26x3 − 39x2 − 13x + 13
−45x2 + 45x + 45

f4 (x) = x2 − x − 1
Dividimos ahora f3 (x) entre f4 (x), obteniendo:

2x3 − 3x2 − x + 1 |x2 − x − 1


− 2x3 + 2x2 + 2x 2x − 1
2
−x + x + 1
x2 − x − 1
0

Al haber llegado a un resto nulo sabemos que la ecuación original tiene raı́ces
múltiples.
56 Ecuaciones no lineales

El máximo común divisor entre P (x) y su derivada es f4 (x) = x2 − x − 1,


por lo que el polinomio cuyas raı́ces son las mismas que las de P (x) solo que
simples es
P (x)
Q(x) = 2 = 2x4 − 4x3 − x2 + 3x + 1
x −x−1
Debemos, ahora, de construir una sucesión se Sturm para Q(x).

g0 (x) = Q(x) = 2x4 − 4x3 − x2 + 3x + 1


g1 (x) = f1 (x)/(x2 − x − 1) = 6x3 − 9x2 − x + 2
g2 (x) = f2 (x)/(x2 − x − 1) = 13x2 − 13x − 8
g3 (x) = f3 (x)/(x2 − x − 1) = 2x − 1
g4 (x) = f4 (x)/(x2 − x − 1) = 1

A
Dado que |x| < 1 + , donde A = 4 y |a0 | = 2, se tiene que |x| < 3, o lo que
|a0 |
es lo mismo, −3 < x < 3.

−3 −1 −0.5 0 1 1.5 2 3
2x4 − 4x3 − x2 + 3x + 1 + + − + + − + +
6x3 − 9x2 − x + 2 − − − + − + + +
g2 (x) = 13x2 − 13x − 8 + + + − − + + +
2x − 1 − − − − + + + +
1 + + + + + + + +
Cambios de signo 4 4 3 2 2 1 0 0

Existen, por tanto, cuatro raı́ces reales situadas en los intervalos:

[−1, −0.5] [−0.5, 0] [1, 1.5] [1.5, 2]

La mayor de las raı́ces se encuentra en el intervalo [1.5, 2], pero dado que
Q0 (1.5) = 0 podemos tomar el intervalo [1.6, 2] en el cual:
(
Q(1.6) < 0
Q(x) = 2x4 − 4x3 − x2 + 3x + 1
Q(2) > 0
Q0 (x) = 8x3 − 12x2 − 2x + 3 > 0 ∀ x ∈ [1.6, 2]

Q00 (x) = 24x2 − 24x − 2 > 0 ∀ x ∈ [1.6, 2]

La regla de Fourier no dice que debemos comenzar a iterar en x0 = 2.


Ejercicios resueltos 57

Q(x)
Teniendo en cuenta que xn+1 = xn − se obtiene la sucesión:
Q0 (x)

x0 =2
x1 = 1.8
x2 = 1.684726867
x3 = 1.632243690
x4 = 1.618923782 =⇒ ε4 ≤ 0.01841
x5 = 1.618037855 =⇒ ε5 ≤ 0.0011
x6 = 1.618033989 =⇒ ε6 ≤ 0.0000047
x7 = 1.618033989 =⇒ ε7 ≤ 0.885 · 10−10

Es decir, la mayor de las soluciones, redondeando a seis cifras decimales es


1.618034 con un error acumulado

ε ≤ 0.000000011 + 0.000000000885 < 10−6

por lo que sus seis cifras decimales son exactas.



Ejercicio 1.6 En este ejercicio se pretende calcular 10 1 por el método de
Newton. Consideramos, para ello, la función f (x) = x10 − 1 cuya gráfica se da
en la Figura 1.

Fig. 1 Fig. 2

a) Probar, analı́ticamente, que en el intervalo [0.5, 1.5] posee una única raı́z
real.

b) Si tomamos x0 = 0.5 obtenemos la raı́z x = 1 en la iteración número 43,


mientras que si tomamos x0 = 1.5 se consigue el mismo resultado en la
iteración número 9. ¿Cómo podrı́amos haber conocido a priori el valor
que se debe elegir para x0 ?

c) ¿Sabrı́as justificar el porqué de la extremada lentitud de la convergencia


cuando iniciamos el proceso en x0 = 0.5? y ¿por qué sigue siendo lento
el proceso si comenzamos en x0 = 1.5? Justifica las respuestas.
58 Ecuaciones no lineales

d) Dado que en el intervalo [0.5, 1.5] no se anula la función x5 , las raı́ces de


f (x) son las mismas que las de g(x) = f (x)/x5 = x5 − x−5 cuya gráfica
se da en la Figura 2. ¿Se puede aplicar a g(x) la regla de Fourier en
dicho intervalo?

e) Si resolvemos, por el método de Newton, la ecuación g(x) = 0, ¿ se


obtendrá la raı́z con mayor rapidez que cuando lo hicimos con f (x) = 0?
Justifica la respuesta sin calcular las iteraciones.

Solución:

a) Dado que la función f (x) es continua y derivable en R verificándose que



 f (0.5) = 0.510 − 1 < 0

f (1.5) = 1.510 − 1 > 0


por lo que admite un número impar de raı́ces en el intervalo [0.5,1.5].


Como f 0 (x) = 10x9 no se anula en [0.5,1.5], sólo puede existir una raı́z
real en dicho intervalo.

b) Dado que f 0 (x) = 10x9 y f 00 (x) = 90x8 son positivas (tienen signo cons-
tante) en todo el intervalo, debe tomarse como valor inicial el extremo
en que f (x) tiene el mismo signo que la segunda derivada (Regla de
Fourier), es decir x0 = 1.5.

c) Basta observar que la recta tangente a la curva y = f (x) en el punto


de abscisa x = 0.5 es casi horizontal, por lo que en la primera iteración
nos distanciamos de la raı́z de forma considerable. Además, en las pro-
ximidades del 1, la curva es muy vertical, por lo que las tangentes son
también muy verticales y las iteraciones se aproximan muy lentamente
a x = 1. Por tanto, si partimos de x = 0.5 nos distanciamos mucho
y nos acercamos muy lentamente, pero si partimos de 1.5 también nos
acercamos muy lentamente.

 g 00 (0.5) < 0
0 4 −6 00 3 −7
d) g (x) = 5x + 5x y g (x) = 20x − 30x con
 00
g (1.5) > 0
por lo que no puede aplicarse la regla de Fourier en dicho intervalo. (Si
reducimos el intervalo a [0.5, 1.01] si podemos aplicarla, obteniendo que
debemos tomar x0 = 0.5).

e) El proceso convergerá más rápidamente debido a que hemos eliminado


las tangencias casi horizontales y las casi verticales.
Ejercicios propuestos 59

1.8 Ejercicios propuestos


Ejercicio 1.7 Dada la ecuación 8x3 − 4x2 − 18x + 9 = 0, acotar y separar sus
raı́ces reales.

Sol : |x| ≤ 3.25, x1 ∈ (−2, −1), x2 ∈ (0, 1) y x3 ∈ (1, 2).

Ejercicio 1.8 Se considera el polinomio P (x) = x3 − 6x2 − 3x + 7.

a) Probar, mediante una sucesión de Sturm, que posee una única raı́z en el
intervalo (6, 7).
b) Si expresamos la ecuación P (x) = 0 de la forma
1
x = F (x) = (x3 − 6x2 + 7),
3
¿podemos asegurar su convergencia?

Sol : No. F 0 (x) > 1 en todo el intervalo, por lo que no es contractiva.


c) Probar, aplicando el criterio de Fourier, que tomando como valor inicial
x0 = 7, el método de Newton es convergente.
d) Aplicando Newton con x0 = 7 se ha obtenido, en la segunda iteración,
x2 = 6.3039. ¿Qué error se comete al aproximar la raı́z buscada por el
valor x3 que se obtiene en la siguiente iteración?

Sol : ε3 ≤ 6.62 . . . · 10−6 < 10−5 .

Ejercicio 1.9 Dada la ecuación x7 − 14x + 7 = 0 se pide:

a) Probar que sólo tiene una raı́z real negativa.


b) Encontrar un entero a de tal forma que el intervalo [a, a + 1] contenga a
la menor de las raı́ces positivas de la ecuación.

Sol : a = 0.
c) ¿Cuál de los extremos del intervalo [a, a + 1] debe tomarse como valor
inicial para asegurar la convergencia del método de Newton?

Sol : x0 = a = 0.
d) Aplicar el método de Newton para obtener la menor de las raı́ces positivas
de la ecuación con seis cifras decimales exactas.

Sol : x = 0.500562.
60 Ecuaciones no lineales

Ejercicio 1.10 Sea el polinomio p(x) = x4 − x2 + 1/8.

a) Utilizar el método de Sturm para determinar el número de raı́ces reales


positivas del polinomio p, ası́ como para separarlas.

Sol : x1 ∈ (0, 1/2) y x2 ∈ ( 1/2, 1).


b) Hallar los 2 primeros intervalos de la sucesión ([a1 , b1 ], [a2 , b2 ], . . .) obte-
nida de aplicar el método de dicotomı́a para obtener la mayor raı́z, r, del
polinomio p. Elegir el intervalo [a1 , b1 ] de amplitud 1/2 y tal que uno de
sus extremos sea un número entero.

Sol : [a1 , b1 ] = [ 1/2, 1], [a2 , b2 ] = [ 3/4, 1].


c) Sea la sucesión definida por la recurrencia x0 = 1, xn+1 = F (xn ), donde
la iteración es la determinada por el método de Newton. Estudiar si
la regla de Fourier aplicada al polinomio p en el intervalo [a1 , b1 ] del
apartado anterior garantiza la convergencia de la sucesión a la raı́z r.
¿Y en el intervalo [a2 , b2 ]?

Sol : En el primero no, en el segundo sı́ con x0 = 1.


d) Hallar la aproximación x1 del apartado anterior, determinando una cota
del error cometido.

Sol : x1 = 0.9375 con ε1 ≤ 0.0990 . . .


e) ¿Cuántas iteraciones se deben realizar para garantizar una aproximación
de r con veinte cifras decimales exactas?
1 n máx |f 00 (x)|
Indicación: En+1 = (kE1 )2 , con k = en un intervalo
k 2 mı́n |f 0 (x)|
adecuado.

Sol : 5 iteraciones (utilizar el intervalo (0.8385, 0.9375)).

Ejercicio 1.11 Dado el polinomio P (x) = x4 + 4x3 − 2x2 + 4x − 3 se pide:

a) Acotar las raı́ces y construir una sucesión de Sturm para probar que sólo
posee dos raı́ces reales, una positiva y otra negativa, dando intervalos de
amplitud 1 que las contengan.

Sol : x1 ∈ (−5, −4) y x2 ∈ (0, 1).


b) Partiendo de que la raı́z positiva se encuentra en el intervalo (0, 1) y
despejando la x del término lineal
1 1 3
x = − x4 − x3 + x2 + ⇐⇒ x = ϕ(x)
4 2 4
Ejercicios propuestos 61

¿se puede asegurar la convergencia de la sucesión x1 , x2 , . . . , xn , . . . defi-


nida de la forma x1 = 0, xn+1 = ϕ(xn ) ?

Sol : No. La función ϕ(x) no es contractiva en [0, 1].

c) Aplicar Fourier para determinar el valor inicial que debe tomarse para
garantizar la convergencia del método de Newton en el cálculo de la raı́z
negativa. ¿Tenemos las tres cifras exactas si tomamos como raı́z -4.646 ?

Sol : x0 = −5. Las tres cifras son exactas.

Ejercicio 1.12 Sea el polinomio p(x) = −3 − x + x3 .

a) Utilizar una sucesión de Sturm para probar que el polinomio p(x) sólo
tiene una raı́z α ∈ R y que ésta se encuentra en el intervalo I = [0, 3].

b) Comprobar que la gráfica adjunta se corresponde con la de la función


y = ϕ(x) cuya iteración, xn+1 = ϕ(xn ) = xn − p(xn )/p0 (xn ), es la obte-
nida con el método de Newton para resolver p(x) = 0. Tomando x1 = 0,
estudiar geométricamente (sobre el dibujo) si se obtendrı́a una sucesión
(xn ) convergente a α. ¿Y empezando en x1 = 3?

Sol : Con x1 = 0 no pero con x1 = 3 sı́.


62 Ecuaciones no lineales

c) Tomar un subintervalo de I en el que la regla de Fourier garantice la


convergencia del Método de Newton y, con un valor inicial apropiado,
obtener una aproximación de α con, al menos, tres cifras decimales exac-
tas.

Sol : x ∈ [1, 2], x0 = 2, x = 1.672.

Ejercicio 1.13 Dado el polinomio P (x) = x3 + 6x2 + 9x + k con k ∈ R se


pide:

a) ¿Puede carecer de raı́ces reales? ¿y tener dos y sólo dos raı́ces reales?

Sol : No puede carecer de raı́ces reales. Sı́ si una de ellas es doble.

b) Utilizar el método de Sturm para probar que tiene una única raı́z real
si, y sólo si, k < 0 o k > 4, y que sólo tiene raı́ces múltiples si k = 0 o
k = 4 no existiendo, en ningún caso, una raı́z triple.

c) Para k = −4 admite una única raı́z real en el intervalo [0, 1]. Si tomamos
como valor aproximado de la raı́z x = 0.3553 ¿de cuántas cifras decimales
exactas disponemos?

Sol : x = 0.35530 con las 5 cifras decimales exactas.

d) Si, en el caso anterior en que k = −4, aplicamos el método de Newton


para hallar la raı́z del polinomio, ¿cuál de los extremos del intervalo [0, 1]
deberı́amos tomar como valor inicial x0 para garantizar la convergencia?
y ¿qué valor obtendrı́amos para x2 ?

Sol : x0 = 1, x2 = 0.365079 . . ..
Ejercicios propuestos 63

Ejercicio 1.14 Dados los polinomios

P (x) = 2x3 − 2x2 − 2αx + 3α

Q(x) = x3 − 3x2 − 3αx + 2α

a) Determinar el valor de α sabiendo que se trata de un entero par y que


los valores de dichos polinomios sólo coinciden, para valores positivos de
x, en un punto del intervalo (1, 2).

Sol : α = −2 (estudiar el polinomio diferencia D(x) = P (x) − Q(x)).

b) Probar (mediante una sucesión de Sturm) que, para α = −2, el polinomio


P (x) sólo tiene una raı́z real, que ésta es positiva, y dar un intervalo de
amplitud 1 que la contenga.

Sol : x ∈ [1, 2].

c) ¿Verifica el polinomio P (x) las condiciones de Fourier para la convergen-


cia del método de Newton en el intervalo (1.2, 1.3)?

Sol : Sı́, x0 = 1.3.

d) Si tomamos como valor inicial x0 = 1.3, calcular el valor que se obtiene


para x1 dando una cota del error.

Sol : x1 = 1.27606263982103, ε1 ≤ 4.20 · 10−4 < 10−3 .

Ejercicio 1.15
“Cuando dos raı́ces positivas de una ecuación polinómica están muy próximas,
suele ser difı́cil separarlas mediante intervalos cerrados. Para alejarlas se
puede proceder como sigue:

Paso 1: Sea la ecuación polinómica

P (x) = an xn + an−1 xn−1 + · · · + a1 x + a0 = an (x − α1 ) · · · (x − αn ) = 0

Paso 2: Cambiar x por x2 en P (x) = 0

P (x2 ) = an (x2 − α1 ) · · · (x2 − αn ) = 0

Paso 3: Cambiar x por −x2 en P (x) = 0

P (−x2 ) = an (−x2 − α1 ) · · · (−x2 − αn ) = (−1)n an (x2 + α1 ) · · · (x2 + αn ) = 0


64 Ecuaciones no lineales

Paso 4: Multiplicar las dos ecuaciones anteriores para obtener la nueva


ecuación

P (x2 )P (−x2 ) = (−1)n a2n (x4 − α12 ) · · · (x4 − αn2 ) = 0

Paso 5: En el polinomio obtenido, cambiar x4 por una nueva variable t,


obteniendo una ecuación del tipo (t − α12 ) · · · (t − αn2 ) = 0.

Se obtiene ası́ una ecuación polinómica cuyas raı́ces son los cuadrados de las
raı́ces de la ecuación P (x) = 0. La relación entre las raı́ces de la nueva
ecuación con las de P (x) = 0 es αi2 − αj2 = (αi + αj )(αi − αj ). Ası́, se observa
que las nuevas raı́ces se alejan (o se acercan) αi + αj veces más que las raı́ces
de P (x) = 0.
Si este procedimiento se aplica dos veces se obtiene una ecuación de la forma
(t − α14 ) · · · (t − αn4 ) = 0”
Sea la ecuación P (x) = 2x2 − 9x + 10 = 0, y sea Q(x) = 0 la ecuación obtenida
al aplicar dos veces el método anteriormente descrito. Se pide:

a) Mediante una sucesión de Sturm, demostrar que P (x) = 0 posee dos


raı́ces reales.

b) Comprobar que se obtiene el polinomio Q(x) = 16x2 − 881x + 10000

c) Separando previamente las raı́ces de Q(x) = 0, utilizar una fórmula de


error a posteriori para calcular la mayor de ellas, con dos cifras decima-
les exactas, aplicando el método de Newton. Denotemos por α la raı́z
obtenida tomando sólo dos cifras decimales.

Sol : x1 ∈ [10, 20], x2 ∈ [30, 40], α = 39.06.

d) Para resolver la ecuación x4 − α = 0 por el método de Newton y ası́


calcular la raı́z de P (x) = 0, hacer lo siguiente:

d.1) Encontrar un intervalo [a, b] que sólo contenga a la mayor raı́z real
de esta ecuación y en donde se verifiquen las hipótesis de la regla
de Fourier.

Sol : [2, 3].


d.2) ¿Cuántas iteraciones son necesarias para obtener 25 cifras decimales
1 n máx |f 00 (x)|
exactas? Indicación: En+1 ≤ (kE1 )2 , con k = en un
k 2 mı́n |f 0 (x)|
intervalo adecuado.

Sol : 3 iteraciones (reducir el intervalo inicial al [2, 2.5]).


Ejercicios propuestos 65


d.3) Con una calculadora se ha obtenido β = 4 α = 2.49995999903 como
mejor aproximación.
¿Cuántas de las cifras decimales se podrı́an garantizar que coinciden
con las de la verdadera raı́z de P (x)?

Sol : A lo más de 2 que son las que tenı́a el valor de α.

Ejercicio 1.16

a) Dado el polinomio P (x) = x3 − 7x2 + 20x − 26, utilizar una sucesión de


Sturm para comprobar que P (x) = 0 sólo tiene una raı́z real positiva y
que se encuentra en el intervalo [3, 4].
b) Justificar la convergencia del método de Newton para aproximar la raı́z
real de la ecuación P (x) = 0 contenida en el intervalo [3, 4]. Realizar
dos iteraciones del método y dar una cota del error de la aproximación
obtenida. ¿Se trata de un problema bien o mal condicionado? Razonar
la respuesta.

Sol : x2 = 3.35483870967742, ε2 ≤ 0.01413849820416. La derivada de


P (x) oscila de 5 a 12, por lo que está bien condicionado.

Ejercicio 1.17 Queremos aproximar las raı́ces de la ecuación (5 − x)ex = 5.

a) Probar, gráficamente, que existen dos soluciones, una es x = 0 y la otra


x = α se encuentra en el intervalo [1, 5]. Aproximarla realizando dos
pasos del método de la Regula falsi.

Sol : x2 = 4.78799912600669
b) ¿Es posible aproximar α aplicando un método de iteración funcional
x
 
5 + xe
sobre la función ϕ1 (x) = ln partiendo de cualquier punto del
5
intervalo I = [1, 5]? Justifica tu respuesta.

Sol : No. Sólo en [1, ln 5]


5
c) ¿Y sobre la función ϕ2 (x) = 5 − partiendo de cualquier punto del
ex
intervalo I = [1, 5]? Justifica tu respuesta.

Sol : No. Sólo en [ln 5, 5]


d) ¿Y sobre ϕ2 (x) en I = [2, 5]? Justifica tu respuesta.

Sol : Sı́.
2. Sistemas de ecuaciones linea-
les

2.1 Normas vectoriales y matriciales


Definición 2.1 [Concepto de norma]

Sea E un espacio vectorial definido sobre un cuerpo K. Se define una norma


como una aplicación, que denotaremos por k k, de E en R que verifica las
siguientes propiedades:

• kxk ≥ 0 ∀x ∈ E siendo kxk = 0 ⇐⇒ x = 0. Definida positiva.

• kλ xk = |λ|kxk ∀λ ∈ K, ∀x ∈ E. Propiedad de homogeneidad.

• kx + yk ≤ kxk + kyk ∀x, y ∈ E. Desigualdad triangular.

Es frecuente que en el espacio E se haya definido también el producto de dos


elementos. En este caso, si se verifica que

kx · yk ≤ kxk · kyk

se dice que la norma es multiplicativa.


Esta propiedad de las normas es fundamental cuando trabajamos en el con-
junto de las matrices cuadradas de orden n.

Un espacio E en el que hemos definido una norma recibe el nombre de espacio


normado.

67
68 Sistemas de ecuaciones lineales

2.1.1 Normas vectoriales


Sea E un espacio vectorial de dimensión n y sea B = {u1 , u2 , . . . , un } una base
suya. Cualquier vector x ∈ E puede ser expresado de forma única en función
de los vectores de la base B.
n
X
x= xi ui
i=1

donde los escalares (x1 , x2 , . . . , xn ) se conocen como coordenadas del vector x


respecto de la base B.
Utilizando esta notación, son ejemplos de normas los siguientes:

n
X
• Norma-1 kxk1 = |xi |
i=1

v
u n
uX √
• Norma euclı́dea o Norma-2 kxk2 = t |xi |2 = x∗ x
i=1

• Norma infinito kxk∞ = máx |xi |


i

Ejemplo 2.1 Para los vectores

x = (2, 3, 0, −12)T y = (1 + i, i)T



• kxk1 = 2 + 3 + 0 + 12 = 17 kyk1 = |1 + i| + |i| = 2 + 1
√ p √
• kxk2 = 22 + 32 + 02 + 122 = 13 kyk2 = |1 + i|2 + |i|2 = 3

• kxk∞ = | − 12| = 12 kyk∞ = |1 + i| = 2


2.1.2 Distancia inducida por una norma


Definición 2.2 [Distancia]

Dado un espacio vectorial E, se define una distancia como una aplicación


d : E × E → R cumpliendo que:
Normas vectoriales y matriciales 69

• d(x, y) ≥ 0 ∀x, y ∈ E siendo d(x, y) = 0 ⇐⇒ x = y.

• d(x, y) = d(y, x) ∀x, y ∈ E.

• d(x, y) ≤ d(x, z) + d(z, y) ∀x, y, z ∈ E.

Teorema 2.1 [Distancia inducida por una norma]


 
Si E, k k es un espacio normado, la norma k k induce una distancia en E
que se conoce como distancia inducida por la norma k k y viene definida por:

d(x, y) = kx − yk

Demostración. Veamos que, en efecto, se trata de una distancia:

• d(x, y) ≥ 0 por tratarse de una norma, y además:

d(x, y) = 0 ⇐⇒ kx − yk = 0 ⇐⇒ kx − yk = 0 ⇐⇒ x = y.

• d(x, y) = kx − yk = k − 1(y − x)k = | − 1| · ky − xk = ky − xk = d(y, x).

• d(x, y) = kx − yk = kx − z + z − yk ≤ kx − zk + kz − yk =

= d(x, z) + d(z, y).

2.1.3 Convergencia en espacios normados


Una sucesión de vectores v1 , v2 , . . . de un espacio vectorial normado (V, k k) se
dice que es convergente a un vector v si

lim kvk − vk = 0
k→∞

Esta definición coincide con la idea intuitiva de que la distancia de los vectores
de la sucesión al vector lı́mite v tiende a cero a medida que se avanza en la
sucesión.

Teorema 2.2 Para un espacio vectorial normado de dimensión finita, el con-


cepto de convergencia es independiente de la norma utilizada.
70 Sistemas de ecuaciones lineales

2.1.4 Normas matriciales


Dada una matriz A y un vector x, consideremos el vector transformado Ax.
La relación existente entre la norma del vector transformado y la del vector
original va a depender de la matriz A. El mayor de los cocientes entre dichas
normas, para todos los vectores del espacio, es lo que vamos a definir como
norma de la matriz A, de tal forma que de la propia definición se deduce que
kAxk ≤ kAk kxk
cualquiera que sea el vector x del espacio. (Obsérvese que no es lo mismo que
la propiedad multiplicativa de una norma, ya que aquı́ se están utilizando dos
normas diferentes, una de matriz y otra de vector).

Definición 2.3 [Norma de una matriz]

Se define
kAxk
kAk = máx = máx{kAxk : kxk = 1}
x∈V −{0} kxk

de tal forma que a cada norma vectorial se le asociará, de forma natural, una
norma matricial.

• Norma-1 kAk1 = máx{kAxk1 : kxk1 = 1}.


n
X
Dado que Ax = y =⇒ yi = aik xk se tiene que
k=1
n X
X n
kAk1 = máx{ |aik xk | : kxk1 = 1}.
i=1 k=1

Por último, si descargamos todo el peso sobre una coordenada, es decir,


si tomamos un vector de la base canónica, obtenemos que
n
X
kAk1 = máx |aij |.
j
i=1
√ √
• Norma euclı́dea kAk2 = máx{ x∗ A∗ Ax : x∗ x = 1}

Descargando ahora el peso en los autovectores de la matriz A∗ A obtene-


mos que
p √ p
kAk2 = máx{ x∗ λi x : x∗ x = 1} = máx λi = máx σi
i i i

donde σi representa a los valores singulares de la matriz A, es decir, las


raı́ces cuadradas positivas de los autovalores de la matriz A∗ A.
Normas vectoriales y matriciales 71

Xn
• Norma infinito kAk∞ = máx{ |aij xj | : kxk∞ = 1}.
j=1

Como ahora se dará el máximo en un vector que tenga todas sus coor-
denadas iguales a 1, se tiene que
n
X
kAk∞ = máx |aij |.
i
j=1

Tenemos pues, que las normas asociadas (algunas veces llamadas subordinadas)
a las normas de vector estudiadas anteriormente son:

n
X
Norma-1 kAk1 = máx |aij |.
j
i=1
Norma euclı́dea kAk2 = máx σi .
i
n
X
Norma infinito kAk∞ = máx |aij |.
i
j=1

Si consideramos la matriz como un vector de m × n coordenadas, podemos


definir (de manera análoga a la norma euclı́dea de vector) la denominada
sX √
Norma de Frobenius kAkF = |aij |2 = tr A∗ A
i,j

 
1 1 2
Ejemplo 2.2 Para la matriz A =  2 −1 1  se tiene:
 

1 0 1
n
X
• kAk1 = máx |aij | = máx{(1 + 2 + 1), (1 + | − 1| + 0), (2 + 1 + 1)} = 4
j
i=1
 
6 −1 5
T
• El polinomio caracterı́stico de la matriz A A =  −1 2 1  es
 

5 1 6
p(λ) = λ3 − 14λ2 + 33λ = λ(λ − 3)(λ − 11)
Los autovalores de la matriz AT √
A son√0, 3 y 11, por lo que los valores
singulares de la matriz A son 0, 3 y 11 y, por tanto,

kAk2 = máx σi = 11
i
72 Sistemas de ecuaciones lineales

n
X
• kAk∞ = máx |aij | = máx{(1 + 1 + 2), (2 + | − 1| + 1), (1 + 0 + 1)} = 4
i
j=1
√ √ √
• kAkF = tr AT A = 6+2+6= 14. 

2.1.5 Transformaciones unitarias


Definición 2.4 [Matriz unitaria]

La matriz U ∈ Cn×n de una transformación se dice unitaria si


U ∗ U = U U ∗ = I ⇐⇒ U ∗ = U −1

Proposición 2.3 La norma de Frobenius y la norma euclı́dea de vector son


invariantes mediante transformaciones unitarias.

Demostración.

• Para la norma matricial de Frobenius:


p p p
kU AkF = tr [(U A)∗ (U A)] = tr (A∗ U ∗ U A) = tr (A∗ A) = kAkF
p p
kAU kF = tr [(A U )∗ (A U )] = tr [(A U )(A U )∗ ] =
p p p
= tr (A U U ∗ A∗ ) = tr (A A∗ ) = tr (A∗ A) = kAkF

• Para la norma euclı́dea de vector.


p √ √
kU xk2 = (U x)∗ (U x) = x∗ U ∗ U x = x∗ x = kxk2

Proposición 2.4 Las matrices A, A∗ , AU y U A, donde U es una matriz


unitaria, poseen los mismos valores singulares y, por tanto, lo misma norma
euclı́dea.

Demostración. Veamos, en primer lugar que las matrices A∗ A y AA∗ poseen


los mismos autovalores. En efecto:
Sea λ un autovalor de A∗ A y x un autovector asociado a λ.
A∗ Ax = λx =⇒ AA∗ Ax = λAx
y llamando y = Ax tenemos que AA∗ y = λy, por lo que λ es un autovalor de
la matriz AA∗ asociado al autovector y = Ax. Ası́ pues, cualquier autovalor
de A∗ A lo es también de AA∗ .
Razonando de igual forma se obtiene que cualquier autovalor de AA∗ lo es
también de A∗ A, por lo que ambas matrices poseen los mismos autovalores.
Normas vectoriales y matriciales 73

• Como los valores singulares de la matriz A son las raı́ces cuadradas posi-
tivas de los autovalores de A∗ A y los de A∗ las raı́ces cuadradas positivas
de los autovalores de AA∗ (los mismos que los de A∗ A), las matrices A
y A∗ poseen los mismos valores singulares.

• Los valores singulares de U A son las raı́ces cuadradas positivas de los


autovalores de (U A)∗ (U A) = A∗ U ∗ U A = A∗ A que eran precisamente los
valores singulares de la matriz A.

• Los valores singulares de AU son (por el primer apartado) los mismos


que los de (AU )∗ = U ∗ A∗ es decir, las raı́ces cuadradas positivas de los
autovalores de (U ∗ A∗ )∗ (U ∗ A∗ ) = AU U ∗ A∗ = AA∗ cuyos autovalores son
los mismos que los de A∗ A, por lo que AU tiene también los mismos
valores singulares que la matriz A.

Proposición 2.5 La norma euclı́dea de una matriz unitaria vale siempre 1.

Demostración.
kU xk2 kxk2
kU k2 = máx = máx =1
x∈V −{0} kxk2 x∈V −{0} kxk2

Proposición 2.6 La norma euclı́dea es invariante mediante transformaciones


de semejanza unitarias.

Demostración. Sea A y B dos matrices unitariamente semejantes, es decir,


tales que
B = U ∗ AU con U unitaria

B = U ∗ AU =⇒ kBk2 ≤ kU ∗ k2 kAk2 kU k2 = kAk2 
=⇒ kBk2 = kAk2
∗ ∗
A = U BU =⇒ kAk2 ≤ kU k2 kBk2 kU k2 = kBk2

2.1.6 Radio espectral


Definición 2.5 [Radio espectral]

Se define el radio espectral de una matriz A, y se denota por ρ(A) como el


máximo de los módulos de los autovalores de la referida matriz.

ρ(A) = máx |λi |


i

Geométricamente representa el radio del cı́rculo mı́nimo que contiene a todos


los autovalores de la matriz.
74 Sistemas de ecuaciones lineales

Teorema 2.7 El radio espectral de una matriz es una cota inferior de todas
las normas multiplicativas de dicha matriz.

Demostración. Sean {λ1 , λ2 , . . . , λr } los autovalores de la matriz A y sean


{x1 , x2 , . . . , xr } autovectores asociados a dichos autovalores.
kAxi k = kλi xi k = |λi | kxi k.
Por otra parte sabemos que kAxi k ≤ kAk kxi k. Por tanto:
|λi | kxi k ≤ kAk kxi k siendo kxi k =
6 0 por tratarse de autovectores.
Se obtiene entonces que |λi | ≤ kAk para cualquiera que sea i = 1, 2, . . . , r, de
donde máx |λi | ≤ kAk, es decir: ρ(A) ≤ kAk.
i

Definición 2.6 [Matriz de diagonal dominante]

Una matriz cuadrada de orden n A = (aij )i = 1, 2, . . . , n se dice que es una matriz


j = 1, 2, . . . , n
de diagonal dominante o de Hadamard si
n
X
|aii | > |aik | i = 1, 2, . . . , n
k=1
k 6= i

 
3 1 1
Ejemplo 2.3 La matriz A =  0 2 1  es de diagonal dominante por
 

2 −1 5
verificar que
3>1+1 2>0+1 y 5 > 2 + | − 1| = 3 

Teorema 2.8 Toda matriz de diagonal dominante es regular.

Demostración. Supongamos que A es de diagonal dominante y que su deter-


minante fuese nulo. En ese caso, el sistema Ax = 0 posee solución no trivial
(α1 , α2 , . . . , αn ) 6= (0, 0, . . . , 0).
Sea |αk | = máx |αi | > 0 y consideremos la k-ésima ecuación:
i

ak1 α1 + ak2 α2 + · · · + akk αk + · · · + akn αn = 0 =⇒


α1 α2 αn
ak1 + ak2 + · · · + akk + · · · + akn = 0 =⇒
αk αk αk
α1 αk − 1 αk + 1 αn
akk = −ak1 − · · · − ak k−1 − ak k+1 − · · · − akn =⇒
αk αk αk αk
Normas vectoriales y matriciales 75

n n
X αi X
|akk | ≤ |aki | ≤
|aki |
αk
i=1 i=1
i 6= k i 6= k

en contra de la hipótesis de que A es de diagonal dominante, por lo que toda


matriz de diagonal dominante es regular.

Definición 2.1 Matrices fundamentales de una matriz A

Se denominan matrices fundamentales de una matriz A, y se denotan por Ak , a


las submatrices constituidas por los elementos de A situados en las k primeras
filas y las k primeras columnas, es decir:
 
! a11 a12 a13
a11 a12
A1 = (a11 ) A2 = A3 =  a21 a22 a23  ···
 
a21 a22
a31 a32 a33

Teorema 2.9 Las matrices fundamentales Ak de una matriz A de diagonal


dominante, son también de diagonal dominante.

Demostración. La demostración es trivial, ya que si A es de diagonal domi-


nante se verifica que
n
X k
X
|aii | > |aij | ≥ |aij |
j =1 j =1
j 6= i j 6= i

luego Ak también lo es.

Definición 2.7 [Cı́rculos de Gerschgorin]

Sea A ∈ Kn×n . Se definen los cı́rculos de Gerschgorin como los conjuntos



C1 = {z : |z − a11 | ≤ r1 } 



C2 = {z : |z − a22 | ≤ r2 } 

 X n

.. con ri = |aij | para 1 ≤ i ≤ n


. 


 j =1

 j 6= i

Cn = {z : |z − ann | ≤ rn }

Teorema 2.10 [Teorema de Gerschgorin]

Sean C1 , C2 , . . . , Cn los cı́rculos de Gerschgorin de una matriz A. Si λ es un


n
[
autovalor de A, se verifica que λ ∈ Ci .
i=1
76 Sistemas de ecuaciones lineales

n
[
Demostración. Si λ 6∈ Ci es porque λ 6∈ Ci para ningún i = 1, 2, . . . , n,
i=1
por lo que
|λ − a11 | > r1
|λ − a22 | > r2
..
.
|λ − ann | > rn

y, por tanto, la matriz


 
λ − a11 −a12 ··· −a1n
−a21 λ − a22 ··· −a2n
 
 
λI − A =  .. .. .. .. 

 . . . .


−an1 −an2 · · · λ − ann

es una matriz de diagonal dominante, por lo que det(λI − A) 6= 0 y, por tanto,


λ no puede ser un autovalor de la matriz A en contra de la hipótesis.

Obsérvese que como det A = det AT se verifica que

det(λI − A) = det(λI − A)T = det(λI − AT )

es decir, A y AT tienen el mismo polinomio caracterı́stico y, por tanto, los


mismos autovalores.
Ello nos lleva a que los cı́rculos de Gerschgorin obtenidos por columnas de-
terminan también el dominio de existencia de los autovalores de la matriz A,
es más, la intersección de los cı́rculos obtenidos por filas y los obtenidos por
columnas contienen a todos los autovalores de la matriz A.

Teorema 2.11 Si un conjunto de k cı́rculos de Gerschgorin de una matriz A


constituyen un dominio conexo aislado de los otros cı́rculos, existen exacta-
mente k autovalores de la matriz A en dicho dominio.


0 2 3
Ejemplo 2.4 Dada la matriz A =  2 8 2 , sus cı́rculos de Gerschgorin
 

2 0 10
Sistemas de ecuaciones lineales 77

obtenidos por filas son

C1 = {z : |z − 0| ≤ 5}

C2 = {z : |z − 8| ≤ 4}

C3 = {z : |z − 10| ≤ 2}

Mientras que los obtenidos por columnas son

C1 = {z : |z − 0| ≤ 4}

C2 = {z : |z − 8| ≤ 2}

C3 = {z : |z − 10| ≤ 5}

Estos últimos nos dicen que la matriz tiene, al menos, un autovalor real (hay
un cı́rculo que sólo contiene a un autovalor y éste debe ser real ya que de
ser complejo el conjugado también serı́a autovalor de A y al tener el mismo
módulo se encontrarı́a en el mismo cı́rculo contra la hipótesis de que en dicho
cı́rculo sólo se encuentra un autovalor), es decir los cı́rculos obtenidos por filas
no nos dan información sobre el autovalor real, mientras que los obtenidos por
columnas nos dicen que existe un autovalor real en el intervalo (-4,4). 

2.2 Sistemas de ecuaciones lineales


En el capı́tulo anterior se estudiaron métodos iterados para la resolución de
ecuaciones no lineales. Dichos métodos se basaban en el teorema del punto
fijo y consistı́an en expresar la ecuación en la forma x = ϕ(x) exigiendo que
ϕ0 (x) ≤ q < 1 para cualquier x del intervalo en el cual se trata de buscar la
solución.
Para los sistemas de ecuaciones lineales, de la forma Ax = b, trataremos de
buscar métodos iterados de una forma análoga a como se hizo en el caso de las
ecuaciones, es decir, transformando el sistema en otro equivalente de la forma
x = F (x) donde F (x) = M x + N . Evidentemente habrá que exigir algunas
condiciones a la matriz M para que el método sea convergente (al igual que se
exigı́a que ϕ0 (x) ≤ q < 1 en el caso de las ecuaciones) y estas condiciones se
basan en los conceptos de normas vectoriales y matriciales.
78 Sistemas de ecuaciones lineales

Dada una aplicación f : Rm → Rn y un vector b ∈ Rn , resolver el sistema


de ecuaciones f (x) = b no es más que buscar el conjunto de vectores de Rm
cuya imagen mediante f es el vector b, es decir, buscar la imagen inversa de b
mediante f .
Un sistema de ecuaciones se dice lineal en su componente k-ésima si verifica
que
f (x1 , . . . , xk−1 , αx1k + βx2k , xk+1 , . . . , xm ) = αf (x1 , . . . , xk−1 , x1k , xk+1 , . . . , xm )+
+ βf (x1 , . . . , xk−1 , x2k , xk+1 , . . . , xm )
Diremos que un sistema es lineal si lo es en todas sus componentes, pudiéndose,
en este caso, escribir de la forma Ax = b.

Transformación de un sistema complejo en otro real

Si la aplicación f se define de Cm en Cn resulta un sistema complejo que puede


ser transformado en otro sistema real.

Ası́, por ejemplo, si el sistema es lineal



m×n
 M ∈C

f : Cm → Cn ⇐⇒ M z = k con x ∈ Cn×1

k ∈ Cm×1

podemos descomponer la matriz M en suma de otras dos de la forma


M = A + iB con A, B ∈ Rm×n
y análogamente
z = x + iy con x, y ∈ Rn×1

k = k1 + ik2 con k1 , k2 ∈ Rm×1


por lo que (A + iB)(x + iy) = k1 + ik2 es decir
     
 Ax − By = k1 A −B x k1
=⇒    =  
 Bx + Ay = k B A y k2
2

sistema real de 2m ecuaciones con 2n incógnitas.

Es por ello, que centraremos nuestro estudio en los sistemas reales.

Clasificación de los SS.EE.LL

Podemos clasificar los sistemas de ecuaciones lineales atendiendo a


Sistemas de ecuaciones lineales 79

• Su tamaño

– Pequeños: n ≤ 300 donde n representa el número de ecuaciones.


– Grandes: n > 300

(Esta clasificación corresponde al error de redondeo)

• Su estructura

– Si la matriz posee pocos elementos nulos diremos que se trata de


un sistema lleno.
– Si, por el contrario, la matriz contiene muchos elementos nulos,
diremos que la matriz y, por tanto, que el sistema es disperso o
sparce. Matrices de este tipo son las denominadas
 
a11 a12 0 0
 a
 21 a22 a23 0 

∗ Tridiagonales:  
 0 a32 a33 a34 
0 0 a43 a44
 
a11 a12 a13 a14
 0 a
22 a23 a24 

∗ Triangulares superiores: 


 0 0 a33 a34 
0 0 0 a44
 
a11 0 0 0
 a
 12 a22 0 0 
∗ Triangulares inferiores: 


 a31 a32 a33 0 
a41 a42 a43 a44

En cuanto a los métodos de resolución de sistemas de ecuaciones lineales,


podemos clasificarlos en

• Métodos directos

Aquellos que resuelven un sistema de ecuaciones lineales en un número


finito de pasos.

Se utilizan para resolver sistemas pequeños.

• Métodos iterados Aquellos que crean una sucesión de vectores que


convergen a la solución del sistema.

Se utilizan para la resolución de sistemas grandes, ya que al realizar un


80 Sistemas de ecuaciones lineales

gran número de operaciones los errores de redondeo pueden hacer ines-


table al proceso, es decir, pueden alterar considerablemente la solución
del sistema.

2.2.1 Número de condición


Definición 2.8 [Condicionamiento de un sistema]

Un sistema de ecuaciones lineales Ax = b se dice bien condicionado cuando


los errores cometidos en los elementos de la matriz A y del vector b producen
en la solución un error del mismo orden, mientras que diremos que el sistema
está mal condicionado si el error que producen en la solución del sistema es
de orden superior al de los datos. Es decir:

kA − Ak < ε  kx − xk ' ε
 sistema bien condicionado
=⇒
kb − bk < ε  kx − xk  ε sistema mal condicionado

Consideremos el sistema cuadrado Ax = b con A regular, es decir, un sistema


compatible determinado. En la práctica, los elementos de A y de b no suelen
ser exactos bien por que procedan de cálculos anteriores, o bien porque sean
irracionales, racionales periódicos, etc. Es decir, debemos resolver un sistema
aproximado cuya solución puede diferir poco o mucho de la verdadera solución
del sistema.
Ası́, por ejemplo, en un sistema de orden dos, la solución representa el punto
de intersección de dos rectas en el plano. Un pequeño error en la pendiente de
una de ellas puede hacer que dicho punto de corte se desplace sólo un poco o
una distancia considerable (véase la Figura 2.1), lo que nos dice que el sistema
está bien o mal condicionado, respectivamente.
Podemos ver que el sistema está mal condicionado cuando las pendientes de las
dos rectas son muy similares y que mientras más ortogonales sean las rectas,
mejor condicionado estará el sistema.

Ejemplo 2.5 Si consideramos el sistema de orden 2



 3x + 4y = 7
! !
x 1
de solución =

3x + 4.00001y = 7.00001 y 1
Sistemas de ecuaciones lineales 81

r1 r10 r1 r10

%
  s
%
  
%
@   %
@

  %

@s s
@   %

 %

@
s

%

@
@ r2
 %
 %

 @@ %


 r2 % 

 % 


 %


Sistema bien condicionado Sistema mal condicionado


Figura 2.1: Condicionamiento de un sistema.

y cometemos un pequeño error en los datos, podemos obtener el sistema



 3x + 4y = 7
! !
x 7.6̄
de solución =

3x + 3.99999y = 7.00004 y −4

o bien este otro



 3x + 4y = 7
! !
x 9.6̄
de solución =

3x + 3.99999y = 7.000055 y −5.5

lo que nos dice que estamos ante un sistema mal condicionado.


Si sustituimos la segunda ecuación por la que resulta de sumarle la primera
multiplicada por −1.0000016 (la ecuación resultante se multiplica por 106 y se
divide por −1.2) nos queda el sistema

 3x + 4y = 7
! !
x 1
de solución =

4x − 3y = 1 y 1

siendo éste un sistema bien condicionado.


Se puede observar entonces que si, en un sistema mal condicionado, sustituimos
una de las ecuaciones por una combinación lineal de las restantes, podemos
hacer que el sistema resultante esté bien condicionado o viceversa. 

El estudio del condicionamiento de un sistema se realiza a través del denomi-


nado número de condición que estudiamos a continuación.
82 Sistemas de ecuaciones lineales

Definición 2.9 Sea A una matriz cuadrada y regular. Se define el número de


condición de la matriz A y se denota por κ(A) como

κ(A) = kAk · kA−1 k

donde la norma utilizada ha de ser una norma multiplicativa.

Este número nos permite conocer el condicionamiento del sistema Ax = b.


Dado que en la práctica el cálculo de la matriz inversa A−1 presenta grandes
dificultades lo que se hace es buscar una cota del número de condición.

κ(A) = kAk · kA−1 k < kAk · k

siendo k una cota de la norma de la matriz inversa.


kIk
Si kI − Ak < 1 entonces kA−1 k ≤ . En efecto:
1 − kI − Ak
A · A−1 = I =⇒ [I − (I − A)]A−1 = I =⇒
A−1 − (I − A)A−1 = I =⇒ A−1 = I + (I − A)A−1 =⇒
kA−1 k = kI + (I − A)A−1 k ≤ kIk + k(I − A)A−1 k ≤ kIk + kI − Ak kA−1 k ⇒
kA−1 k − kI − Ak kA−1 k ≤ kIk =⇒ (1 − kI − Ak)kA−1 k ≤ kIk =⇒

kIk
kA−1 k ≤
1 − kI − Ak

Es decir:
kIk
κ(A) ≤ kAk · k con k=
1 − kI − Ak
Debemos tener cuidado con esta acotación ya que si tenemos una matriz casi
regular, es decir, con det(A) ' 0, quiere decir que tiene un autovalor próximo
a cero, por lo que la matriz I − A tiene un autovalor próximo a 1 y será el
mayor de todos. En este caso kI − Ak ' 1, por lo que k → ∞ y darı́a lugar a
un falso condicionamiento, ya que A no tiene que estar, necesariamente, mal
condicionada.

Ejemplo 2.6 Para estudiar el condicionamiento del sistema



 3x + 4y = 7

3x + 4.00001y = 7.00001

Sistemas de ecuaciones lineales 83

Se tiene que
!
3 4
A= =⇒ det(A) = 0.00003
3 4.00001
!
1 4.00001 −4
A−1 =
0.00003 −3 3

n
X
Utilizando la norma infinito kAk∞ = máx |aij | se tiene que
i
j=1


kAk∞ = 7.00001 
 56
=⇒ κ∞ (A) ' · 105 > 1.8 · 106
8.00001  3
kA−1 k∞ = 
0.00003
Se trata pues, de un sistema mal condicionado.
Xn
Si utilizamos la norma-1 kAk1 = máx |aij | obtenemos:
j
i=1


kAk1 = 8.00001 
 56
=⇒ κ1 (A) ' · 105 > 1.8 · 106
7.00001  3
kA−1 k1 = 
0.00003
obteniéndose, también, que se trata de un sistema mal condicionado. 

Propiedades del número de condición.

• κ(A) ≥ 1 cualquiera que sea la matriz cuadrada y regular A.


Demostración.

kxk = kIxk ≤ kIkkxk =⇒ kIk ≥ 1

cualquiera que sea la norma utilizada.

Como, por otra parte AA−1 = I se tiene que

1 ≤ kIk = kAA−1 k ≤ kAkkA−1 k = κ(A) =⇒ κ(A) ≥ 1.

• Si B = zA, con z ∈ C no nulo, se verifica que κ(B) = κ(A).


84 Sistemas de ecuaciones lineales

Demostración.
1 kA−1 k
κ(B) = kBk kB −1 k = kzAk k A−1 k = |z| kAk = kAk kA−1 k =
z |z|
= κ(A)

Dado que det(B) = z n det(A), donde n representa el orden de la matriz


A, y κ(B) = κ(A) se ve que el condicionamiento de una matriz no
depende del valor de su determinante.
σn
• Utilizando la norma euclı́dea, κ2 (A) = donde σ1 y σn representan,
σ1
respectivamente, al menor y al mayor de los valores singulares de la
matriz A.
Demostración. Sabemos que los valores singulares σi de la matriz A
son las raı́ces cuadradas positivas de los autovalores de la matriz A∗ A.
p
σi = λi (A∗ A)

Si suponemos σ1 ≤ σ2 ≤ · · · ≤ σn se tiene que


q
kAk2 = máx λi (A∗ A) = σn
i
q  q
kA−1 k2 = máx λi (A−1 )∗ A−1 = máx λi (A∗ )−1 A−1 =

i i
r s
q 1 1
= máx λi (AA∗ )−1 = máx = =
i i ∗
λi (AA ) mı́n λi (AA∗ )
i
s s
1 1 −1 1
= ∗ = 2 =⇒ kA k2 =
mı́n λi (A A) mı́n σi σ1
i i

Podemos concluir, por tanto, que



kAk2 = σn   σn
=⇒ κ2 (A) =
1  σ1
kA−1 k2 = 
σ1

En cuanto a su relación con los números de condición obtenidos con otras


normas de matriz se tiene que:
√ √
kAk2 ≤ kAkF ≤ nkAk2 =⇒ kA−1 k2 ≤ kA−1 kF ≤ nkA−1 k2

κ2 (A) = kAk2 kA−1 k2 ≤ kAkF kA−1 kF = κ(A)F


Sistemas de ecuaciones lineales 85

√ √
κF (A) = kAkF kA−1 kF ≤ n nkAk2 kA−1 k2 = nκ2 (A) =⇒

κ2 (A) ≤ κF (A) ≤ nκ2 (A)


 p
 kAk2 ≤ kAk1 kAk∞ p
Además: p ⇒ κ2 (A) ≤ κ1 (A)κ∞ (A)
 −1 −1 −1
kA k2 ≤ kA k1 kA k∞

• La condición necesaria y suficiente para que κ2 (A) = 1 es que A = zU


siendo z ∈ C (no nulo) y U una matriz unitaria (U U ∗ = U ∗ U = I).
Demostración.

⇐) A = zU =⇒ κ2 (A) = 1.

A = zU =⇒ A∗ A = zU ∗ zU = |z|2 U ∗ U = |z|2 I =⇒
λi (A∗ A) = |z|2 cualquiera que sea i = 1, 2, . . . , n y, por tanto,

σ1 = σ2 = · · · = σn = |z|

por lo que
σn
κ2 (A) = =1
σ1
⇒) κ2 (A) = 1 =⇒ A = zU .

Sabemos que si A es diagonalizable existe una matriz regular R


tal que R−1 AR = D con D = diag(λi ) (R es la matriz de paso
cuyas columnas son los autovectores asociados los autovalores λi ).
Por otra parte sabemos que toda matriz hermı́tica (A = A∗ ) es
diagonalizable mediante una matriz de paso unitaria.
Como A∗ A es hermı́tica existe una matriz unitaria R tal que
 
σ12
σ22
 
∗ ∗
 
R A AR =   ...


 
σn2
σn
κ2 (A) = = 1 =⇒ σ1 = σ2 = · · · = σn = σ, por lo que
σ1

R∗ A∗ AR = σ 2 I

Entonces
A∗ A = R(σ 2 I)R∗ = σ 2 (RIR∗ ) = σ 2 I
86 Sistemas de ecuaciones lineales

de donde   
1 ∗ 1
A A =I
σ σ
1 1
Llamando U = A se tiene que U ∗ = A∗ , ya que σ ∈ R ⇒ σ = σ.
σ σ
  
∗ 1 ∗ 1
U U= A A = I =⇒ U es unitaria
σ σ
y, por tanto,
A = σU con U unitaria

Los sistemas mejor condicionados son aquellos que tienen sus filas o columnas
ortogonales y mientras mayor sea la dependencia lineal existente entres ellas
peor es el condicionamiento del sistema.
Al ser κ(U A) = κ(A) trataremos de utilizar métodos de resolución de sistemas
de ecuaciones lineales que trabajen con transformaciones unitarias que no em-
peoren su condicionamiento como lo hace, por ejemplo, el método de Gauss
basado en la factorización LU y que también estudiaremos a continuación.

2.3 Métodos directos de resolución de siste-


mas lineales

2.3.1 Factorización LU
Al aplicar el método de Gauss al sistema Ax = b realizamos transformaciones
elementales para conseguir triangularizar la matriz del sistema.

Si este proceso puede realizarse sin intercambios de filas, la matriz triangular


superior U obtenida viene determinada por el producto de un número finito
de transformaciones fila Fk Fk−1 · · · F1 aplicadas a la matriz A.

Llamando L−1 = Fk Fk−1 · · · F1 (ya que el determinante de una transformación


fila es ±1 y, por tanto, su producto es inversible) se tiene que L−1 A = U , o lo
que es lo mismo, A = LU .

Además, la matriz L es una triangular inferior con unos en la diagonal.


Esta factorización es única ya que de existir otra

A = L0 U 0 = LU =⇒ L−1 L0 = U U 0−1
Métodos directos de resolución de sistemas lineales 87

Como L−1 también es triangular inferior con unos en la diagonal, el producto


L−1 L0 también es una matriz del mismo tipo.

Análogamente, el producto U U 0−1 resulta ser una triangular superior.

El hecho de que L−1 L0 = U U 0−1 nos dice que necesariamente L−1 L0 = I, ya que
es simultáneamente triangular inferior y superior y su diagonal es de unos.

Ası́ pues L−1 L0 = I, por lo que L = L0 y, por tanto U = U 0 es decir, la


factorización es única.

Debido a la unicidad de la factorización, ésta puede ser calculada por un


método directo, es decir, haciendo
  
1 0 0 ··· 0 u11 u12 u13 · · · u1n
 l21 1 0 · · · 0   0 u22 u23 · · · u2n 
  
  
A=  l31 l32 1 · · · 0   0 0 u33 · · · u3n 

 .. .. .. . . ..   .. .. .. . . .. 

 . . . . .  . . . . . 
ln1 ln2 ln3 · · · 1 0 0 0 · · · unn

y calculando los valores de los n2 elementos que aparecen entre las dos matrices.
 
3 1 2
Ejemplo 2.7 Considérese la matriz A =  6 3 2 
 

−3 0 −8
    
3 1 2 1 0 0 u11 u12 u13
 6 3 2  =  l21 1 0   0 u22 u23  =
    

−3 0 −8 l31 l32 1 0 0 u33


 
u11 u12 u13
=  l21 u11 l21 u12 + u22 l21 u13 + u23 
 

l31 u11 l31 u12 + l32 u22 l31 u13 + l32 u23 + u33
por lo que de la primera fila obtenemos que
u11 = 3 u12 = 1 u13 = 2
de la segunda (teniendo en cuenta los valores ya obtenidos) se tiene que

3l21 = 6   l21 = 2
l21 + u22 = 3 =⇒ u22 = 1

2l21 + u23 = 2 u23 = −2

88 Sistemas de ecuaciones lineales

y de la tercera (teniendo también en cuenta los resultados ya obtenidos)



3l31 = −3   l31 = −1
l31 + l32 = 0 =⇒ l32 = 1

2l31 − 2l32 + u33 = −8 u33 = −4

    
3 1 2 1 0 0 3 1 2
es decir:  6 3 2 = 2 1 0  0 1 −2  
    

−3 0 −8 −1 1 1 0 0 −4

Teorema 2.12 Una matriz regular A admite factorización LU si, y sólo si,
sus matrices fundamentales Ai (i = 1, 2, . . . , n) son todas regulares.

Demostración. Supongamos que A admite factorización LU . En ese caso


! ! !
Ak Lk Uk
A= = =⇒

Ak = Lk Uk =⇒ det(Ak ) = det(Lk ) det(Uk ) = 1 · r11 r22 · · · rkk 6= 0


ya que, por sea A regular, todos los pivotes rii i = 1, 2, . . . , n son no nulos.
Recı́procamente, si todas las matrices fundamentales son regulares, A admite
factorización LU , o lo que es equivalente, se puede aplicar Gauss sin intercam-
bio de filas. En efecto:
Dado que, por hipótesis es a11 6= 0, se puede utilizar dicho elemento como
pivote para anular al resto de los elementos de su columna quedándonos la
matriz  (2) (2) 
(2)
a11 a12 · · · a1n
 0 a(2) (2) 
· · · a2n 

(2) 22
A =  .. .. . . . 
 . . . ..  
(2) (2)
0 an2 · · · ann
(2)
donde a1i = a1i para i = 1, 2, . . . , n.
a21
Si nos fijamos ahora en a222 = a22 − a12 podemos ver que es no nulo, ya que
a11
de ser nulo serı́a
a11 a22 − a12 a21 = det(A2 ) = 0
en contra de la hipótesis de que todas las matrices fundamentales son regulares.
(2)
Por tanto, podemos utilizar a22 6= 0 como nuevo pivote para anular a los
elementos de su columna situados bajo él.
Métodos directos de resolución de sistemas lineales 89

Reiterando el procedimiento se puede ver que todos los elementos que vamos
obteniendo en la diagonal son no nulos y, por tanto, válidos como pivotes. Es
decir, puede realizarse la factorización LU .

Comprobar si una matriz admite factorización LU estudiando si todas sus


matrices fundamentales son regulares es un método demasiado costoso debido
al número de determinantes que hay que calcular.

Corolario 2.13 Toda matriz de diagonal dominante admite factorización LU .

Demostración. Es consecuencia directa de los Teoremas 2.8, 2.9 y 2.12.

Corolario 2.14 Toda matriz hermı́tica y definida positiva

hérmı́tica ⇐⇒ A = A∗
(
x∗ Ax ≥ 0 ∀ x
definida positiva ⇐⇒
x∗ Ax = 0 ⇐⇒ x = 0

admite factorización LU .

Demostración. Las matrices fundamentales de éstas tienen todas determi-


nante positivo, por lo que el Teorema 2.12 garantiza la existencia de las ma-
trices L y U .

Una vez realizada la factorización LU , el sistema Ax = b puede escribirse de la


forma LU x = b y llamando U x = y transformamos el problema de resolver el
sistema cuadrado Ax = b en la resolución de los sistemas triangulares Ly = b
y U x = y. 
 Ly = b
Ax = b ⇐⇒
Ux = y

Ejemplo 2.8 Consideremos el sistema Ax = b con


  

3 1 2 0
A= 6 3 2  b= 1 
   

−3 0 −8 5
90 Sistemas de ecuaciones lineales

En el Ejemplo 2.7 realizamos la factorización LU de la matriz A.


     

1 0 0 y1 0 0
Ly = b ⇐⇒  2 1 0   y2  =  1  =⇒ y =  1 
      

−1 1 1 y3 5 4
      
3 1 2 x1 0 1
U x = y ⇐⇒  0 1 −2   x2  =  1  =⇒ x =  −1 
      

0 0 −4 x3 4 −1 

2.3.2 Factorización de Cholesky


Es conocido que toda matriz hermı́tica y definida positiva tiene sus autovalores
reales y positivos y, además, en la factorización LU todos los pivotes son reales
y positivos.

Teorema 2.15 [Factorización de Cholesky]

Toda matriz A hermı́tica y definida positiva puede ser descompuesta de la


forma A = R∗ R siendo R una matriz triangular superior.

Demostración. Por tratarse de una matriz hermı́tica y definida positiva,


sabemos que admite factorización LU . Sea
  
1 0 ··· 0 u11 u12 · · · u1n
 l21 1 · · · 0   0 u22 · · · u2n 
  
A=  .. .. . . ..   . .. .. ..  =
 . . . .  .. . . . 


ln1 ln2 · · · 1 0 0 ··· unn
   
1 0 ··· 0 u11 0 · · · 0 1 u12/u11 · · · u1n/u11
 l21 1 · · · 0   0 u22 · · · 0  0 1 · · · u2n/u22 
   
=
 .. .. . . ..    ..
 .. . . .. .
. .. .. ..  =
 . . . .  . . . . . . . . 
ln1 ln2 · · · 1 0 0 · · · unn 0 0 ··· 1
 
u11 0 ··· 0
 0 u22 ··· 0
 

= L
 .. .. .. .. V =
 . . . .


0 0 · · · unn
Métodos directos de resolución de sistemas lineales 91

 √  √ 
u11 0 ··· 0 u11 0 ··· 0
√ √
 0 u22 ··· 0  0 u22 ··· 0
  

= L V ⇒
 .. .. ..  . .. ..
...  . ...
 . . .  . . .

√ √

0 0 ··· unn 0 0 ··· unn

A = BR
 √ 
u11 0 0 ··· 0

 0 u22 0 ··· 0 
 
 √ 
 0
B = L 0 u33 · · · 0   es triangular inferior.
 .. .. .. ... .. 
 . . . . 

0 0 0 ··· unn
 √ 
u11 0 0 ··· 0

 0 u22 0 ··· 0 
 
 √ 
R=  0 0 u33 · · · 0   V es triangular superior.
 .. .. .. .. .. 
 . . . . . 

0 0 0 ··· unn
Como A es hermı́tica, BR = A = A∗ = R∗ B ∗ , por lo que (R∗ )−1 B = B ∗ R−1 , y
dado que (R∗ )−1 B es triangular inferior y B ∗ R−1 es triangular superior, ambas
han de ser diagonales.
Por otra parte,

B ∗ R−1 = (LD)∗ (DV )−1 = D∗ L∗ V −1 D−1 = DL∗ V −1 D−1 = L∗ V −1

ya que las matrices diagonales conmutan.


Dado que la matriz L∗ V −1 tiene unos en la diagonal y es igual a B ∗ R−1 que
es diagonal, debe ser B ∗ R−1 = I, por lo que B ∗ = R o, lo que es lo mismo,
B = R∗ , es decir A = R∗ R con R = DV .

Hemos visto que toda matriz hermı́tica y definida positiva admite factorización
de Cholesky, pero podemos llegar más lejos y enunciar el siguiente teorema.

Teorema 2.16 Una matriz hermı́tica y regular A es definida positiva si, y


sólo si, admite factorización de Cholesky.

Demostración. Si es hermı́tica y definida positiva admite factorización LU


con todos los elementos diagonales de U (pivotes) positivos, por lo que admite
factorización de Cholesky.
92 Sistemas de ecuaciones lineales

Recı́procamente, si A admite factorización de Cholesky es A = R∗ R por lo que


A∗ = (R∗ R)∗ = R∗ R = A =⇒ A es hermı́tica
Para cualquier vector x no nulo es
x∗ Ax = x∗ R∗ Rx = (Rx)∗ (Rx) = kRxk2 ≥ 0
siendo cero sólo si Rx = 0 pero al ser R regular (si no lo fuese tampoco lo
serı́a A en contra de la hipótesis) Rx = 0 =⇒ x = 0 en contra de la hipótesis
de que x no es el vector nulo.
Se tiene pues que x∗ Ax > 0 para cualquier vector x no nulo, es decir, A es
definida positiva.

La unicidad de las matrices L y U implica la unicidad de la matriz R y, por


tanto, ésta puede ser calculada por un método directo.

Ejemplo 2.9 Consideremos el sistema


    
4 2i 4 + 2i x1 0
 −2i 2 2 − 2i   x2  =  0 
    

4 − 2i 2 + 2i 10 x3 −4

Realicemos la factorización R∗ R directamente, es decir


    
4 2i 4 + 2i r11 0 0 r11 r12 r13
 −2i 2 2 − 2i  =  r12 r22 0   0 r22 r23 
    

4 − 2i 2 + 2i 10 r13 r23 r33 0 0 r33

2
Se obtiene multiplicando, que r11 = 4 =⇒ r11 = 2.

 2r12 = 2i =⇒ r12 = i
Utilizando este resultado tenemos que
2r13 = 4 + 2i =⇒ r13 = 2 + i

2 2 2
r12 + r22 = 2 =⇒ r22 = 1 =⇒ r22 = 1.
r12 r13 + r22 r23 = 2 − 2i =⇒ 1 − 2i + r23 = 2 − 2i =⇒ r23 = 1.
2 2 2 2 2
r13 + r23 + r33 = 10 =⇒ 5 + 1 + r33 = 10 =⇒ r33 = 4 =⇒ r33 = 2.
Ası́ pues, el sistema nos queda de la forma
     
2 0 0 2 i 2+i x1 0
 −i 1 0  0 1 1   x2  =  0 
     

2−i 1 2 0 0 2 x3 −4
Métodos iterados de resolución de sistemas lineales 93

      
2 0 0 y1 0 0
R∗ y = b ⇐⇒  −i 1 0   y2  =  0  =⇒ y =  0 
      

2−i 1 2 y3 −4 −2
      
2 i 2+i x1 0 1
Rx = y ⇐⇒  0 1 1   x2  =  0  =⇒ x =  1 
      

0 0 2 x3 −2 −1


2.4 Métodos iterados de resolución de siste-


mas lineales
Un método iterado de resolución del sistema Ax = b es aquel que genera, a
partir de un vector inicial x0 , una sucesión de vectores (xn ) con xn+1 = f (xn ).

Definición 2.10 [Consistencia]

Un método iterado se dirá que es consistente con el sistema Ax = b, si el lı́mite


de dicha sucesión, en caso de existir, es solución del sistema.

Definición 2.11 [Convergencia]

Un método iterado para la resolución del sistema Ax = b se dirá que es con-


vergente si la sucesión generada por cualquier vector inicial x0 es convergente
a la solución del sistema.

Es evidente que si un método es convergente es consistente, sin embargo, el


recı́proco no es cierto como prueba el siguiente ejemplo.

Ejemplo 2.10 El método xn+1 = 2xn − A−1 b es consistente con al sistema


Ax = b pero no es convergente. En efecto:

xn+1 − x = 2xn − A−1 b − x = 2xn − 2x − A−1 b + x = 2(xn − x) − (A−1 b − x)

y como A−1 b = x, se tiene que

xn+1 − x = 2(xn − x)

Si existe lim xn = x∗ tendremos que


n→∞

x∗ − x = 2(x∗ − x) =⇒ x∗ − x = 0 =⇒ x∗ = x
94 Sistemas de ecuaciones lineales

es decir, el lı́mite es solución del sistema Ax = b, por lo que el método es


consistente.
Sin embargo, de xn+1 − x = 2(xn − x) obtenemos que

kxn+1 − xk = 2kxn − xk

es decir, el vector xn+1 dista de x el doble de lo que distaba xn , por lo que el


método no puede ser convergente. 

Los métodos iterados que trataremos son de la forma

xn+1 = Kxn + c

en los que K será la que denominemos matriz del método y que dependerá de
A y de b y en el que c es un vector que vendrá dado en función de A, K y b.

Teorema 2.17 Un método iterado, de la forma xn+1 = Kxn +c, es consistente


con el sistema Ax = b si, y sólo si, c = (I − K)A−1 b y la matriz I − K es
invertible

Demostración.

• Supongamos que el método es consistente con el sistema Ax = b.


Como x = Kx + (I − K)x = Kx + (I − K)A−1 b, se tiene que

xn+1 − x = K(xn − x) + c − (I − K)A−1 b (2.1)

Por ser consistente el método, de existir x∗ = lim xn ha de ser x∗ = x.


n→∞
Pasando al lı́mite en la Ecuación (2.1) obtenemos que

x∗ − x = K(x∗ − x) + c − (I − K)A−1 b

por lo que
(I − K)(x∗ − x) = c − (I − K)A−1 b (2.2)
y dado que x∗ = x nos queda que 0 = c − (I − K)A−1 b, es decir,

c = (I − K)A−1 b.

Además, dado que x = Kx + c, el sistema (I − K)x = c posee solución


única x y, por tanto, la matriz I − K es invertible.
Métodos iterados de resolución de sistemas lineales 95

• Si c = (I − K)A−1 b y la matriz I − K es invertible, cuando exista


lim xn = x∗ se tendrá de (2.2) que
n→∞

(I − K)(x∗ − x) = 0

Como I − K es invertible, x∗ = x, y el método es consistente.

Teorema 2.18 Un método iterado de la forma xn+1 = Kxn + c consistente


con el sistema Ax = b es convergente si, y sólo si, lim K n = 0.
n→∞

Demostración. Por tratarse de un método consistente con el sistema Ax = b,


se verifica que c = (I − K)A−1 b, por lo que

xn+1 = Kxn + (I − K)A−1 b

restando el vector solución x a ambos miembros, podemos escribir

xn+1 −x = Kxn −(K +I −K)x+(I −K)A−1 b = K(xn −x)+(I −K)(A−1 b−x)

y dado que A−1 b − x = 0 obtenemos que xn+1 − x = K(xn − x).


Reiterando el proceso se obtiene:

xn − x = K(xn−1 − x) = K 2 (xn−2 − x) = · · · = K n (x0 − x)

lim (xn − x) = ( lim K n )(x0 − x) (2.3)


n→∞ n→∞

• Si el método es convergente, lim (xn − x) = x − x = 0, por lo que de la


n→∞
ecuación (2.3) obtenemos que

lim K n = 0
n→∞

• Si lim K n = 0, obtenemos de la ecuación (2.3) que


n→∞

lim (xn − x) = 0 ⇐⇒ lim xn = x


n→∞ n→∞

por lo que el método es convergente.

Teorema 2.19 [Teorema del punto fijo]

Si para alguna norma matricial es kKk < 1, la sucesión (xn ) definida por
xn+1 = Kxn +c, donde x0 ∈ Rn es un vector cualquiera, converge a la solución
de la ecuación x = Kx + c que existe y es única.
96 Sistemas de ecuaciones lineales

Demostración.

• Existencia y unicidad

Veamos, en primer lugar, que la ecuación x = Kx + c posee solución


única.
En efecto: x = Kx + c =⇒ (I − K)x = c. Este sistema tiene solución
única si, y sólo si, el sistema homogéneo asociado (I − K)z = 0 admite
sólo la solución trivial z = 0, es decir, si I − K es invertible.
La solución z no puede ser distinta del vector nulo ya que de serlo, como
kKk < 1 se tiene que al ser (I − K)z = 0, o lo que es lo mismo, z = Kz

kzk = kKzk ≤ kKkkzk < kzk

lo cual es un absurdo, por lo que el sistema homogéneo sólo admite la


solución trivial y, por tanto, el sistema completo x = Kx + c posee
solución única.

• Convergencia

Probaremos ahora que la sucesión (xn ) converge a x.


Dado que xn+1 − x = (Kxn + c) − (Kx + c) = K(xn − x), podemos
reiterar el proceso para obtener que xn − x = K n (x0 − x) por lo que

kxn − xk ≤ kK n kkx0 − xk ≤ kKkn kx0 − xk

y dado que kKk < 1, pasando al lı́mite se obtiene

lim kxn − xk = 0 =⇒ lim xn = x


n→∞ n→∞

Teorema 2.20 [Condición necesaria y suficiente de convergencia]

La sucesión (xn ) definida por xn+1 = Kxn + c, donde x0 ∈ Rn es un vector


cualquiera, es convergente si, y sólo si, la matriz K tiene radio espectral menor
que 1.

xn+1 = Kxn + c con x0 ∈ Rn convergente ⇐⇒ ρ(K) < 1


Métodos iterados de resolución de sistemas lineales 97

Demostración.

• Condición suficiente

Si λ1 , . . . , λm son los autovalores de la matriz K, los de la matriz K n son


λn1 , . . . , λnm .

ρ(K) < 1 =⇒ |λi | < 1 (i = 1, . . . , m) =⇒ λi , λ2i , . . . , λni , . . . → 0

por lo que los autovalores de la matriz lı́mite lim K n son todos nulos,
n→∞
es decir, lim K n = 0 por lo que
n→∞

ρ(K) < 1 =⇒ el proceso es convergente.

• Condición necesaria

El teorema del punto fijo establece como condición necesaria para la


convergencia que kKk < 1 y dado que ρ(K) es una cota inferior de
cualquier norma multiplicativa, es ρ(K) ≤ kKk < 1, por lo que

El proceso es convergente =⇒ ρ(K) < 1.

Métodos de descomposición

Los métodos que vamos a estudiar consisten en descomponer la matriz inver-


tible A del sistema Ax = b de la forma A = M − N de manera que la matriz
M sea fácilmente invertible, por lo que reciben el nombre genérico de métodos
de descomposición.
El sistema queda entonces de la forma

(M − N )x = b =⇒ M x = N x + b =⇒ x = M −1 N x + M −1 b

es decir, expresamos el sistema de la forma



 K = M −1 N
Ax = b ⇐⇒ x = Kx + c con
 c = M −1 b

Dado que

(I −K)A−1 b = (I −M −1 N )(M −N )−1 b = M −1 (M −N )(M −N )−1 b = M −1 b = c

y la matriz (I − K) = (I − M −1 N ) = M −1 (M − N ) = M −1 A es invertible,
estamos en las condiciones del Teorema 2.17 por lo que xn+1 = Kxn + c es
consistente con el sistema Ax = b.
98 Sistemas de ecuaciones lineales

Es decir, si el proceso converge, lo hace a la solución del sistema.

Sabemos también, por el Teorema 2.19, que el proceso será convergente si se


verifica que kKk = kM −1 N k < 1 para alguna norma.

Para el estudio de los métodos que trataremos a continuación, vamos a des-


componer la matriz A de la forma A = D − E − F siendo
   
a11 0 0 ··· 0 0 0 0 ··· 0
0 a22 0 ··· 0 a21 0 0 ··· 0
   
   
   
D= 0 0 a33 ··· 0  −E = a31 a32 0 ··· 0 
.. .. .. .. .. .. .. ..
   
.. ..
. .
   
 . . . .   . . . . 
0 0 0 · · · ann an1 an2 an3 ··· 0

 
0 a12 a13 · · · a1n
0 0 a23 · · · a2n 
 

 
−F =  0 0 0 · · · a3n 
.. .. .. . 
 
..
. .. 

 . . .
0 0 0 ··· 0

2.4.1 Método de Jacobi


Consiste en realizar la descomposición

A = M − N = D − (E + F )

El sistema queda de la forma

Ax = b =⇒ Dx = (E + F )x + b =⇒ x = D−1 (E + F )x + D−1 b
(
J = D−1 (E + F )
Método de Jacobi xn+1 = Jxn + c con
c = D−1 E

La matriz J recibe el nombre de matriz de Jacobi.

Teorema 2.21 Si A es una matriz de diagonal dominante, el método de Ja-


cobi es convergente.
Métodos iterados de resolución de sistemas lineales 99

Demostración. La matriz J = D−1 (E + F ) tiene todos los elementos diago-


nales nulos y las sumas de los módulos de los elementos de sus filas son todas
menores que 1 ya que
n n
X X |aik |
|aii | > |aik | i = 1, 2, . . . , n =⇒ <1
|aii |
k=1 k=1
k 6= i k 6= i

por lo que los cı́rculos de Gerschgorin están todos centrados en el origen y


tienen radios menores que 1 es decir, todos los autovalores de J son menores
que 1, por lo que ρ(J) < 1 y el método converge.

2.4.2 Método de Gauss-Seidel


Este método es el resultado de realizar la descomposición

A = M − N = (D − E) − F

El sistema nos queda

Ax = b =⇒ (D − E)x = F x + b =⇒ x = (D − E)−1 F x + (D − E)−1 b


(
L1 = (D − E)−1 F
Método de Gauss-Seidel xn+1 = L1 xn + c con
c = (D − E)−1 b
La matriz L1 recibe el nombre de matriz de Gauss-Seidel.

Teorema 2.22 Si A es una matriz de diagonal dominante, el método de


Gauss-Seidel es convergente.

Teorema 2.23 Si A es una matriz simétrica y definida positiva, el método de


Gauss-Seidel es convergente.

2.4.3 Métodos de relajación (SOR)


Estos métodos realizan la descomposición
 
1 1−ω 1 1−ω
A= D− D − E − F = (D − ωE) − D+F =M −N
ω ω ω ω
100 Sistemas de ecuaciones lineales

El sistema se transforma entonces en


 
1 1−ω
(D − ωE)x = D + F x + b =⇒
ω ω
 
(D − ωE)x = (1 − ω)D + ωF x + ωb =⇒
 
x = (D − ωE)−1 (1 − ω)D + ωF x + ω(D − ωE)−1 b

Métodos de relajación xn+1 = Lω xn + c con


(  
−1
Lω = (D − ωE) (1 − ω)D + ωF
c = ω(D − ωE)−1 b
La matriz Lω recibe el nombre de matriz de relajación.

• Si ω = 1 la matriz se reduce a L1 = (D − E)−1 F , es decir, se trata del


método de Gauss Seidel.
• Si ω > 1 se dice que se trata de un método de sobre-relajación
• Si ω < 1 se dice que se trata de un método de sub-relajación

Teorema 2.24 Una condición necesaria para que converja el método de rela-
jación es que ω ∈ (0, 2).

Teorema 2.25 Si A es de diagonal dominante, el método de relajación es


convergente cualquiera que sea ω ∈ (0, 1].

Teorema 2.26 Si A es simétrica y definida positiva, el método de relajación


converge si, y sólo si, ω ∈ (0, 2)

2.5 Métodos del descenso más rápido y del


gradiente conjugado
Los métodos que vamos a tratar a continuación son válidos para sistemas
Ax = b cuya matriz A es simétrica y definida positiva, es decir, para matrices
tales que AT = A (simétrica) y xT Ax > 0 cualquiera que sea el vector x 6= 0
(definida positiva).
Métodos del descenso más rápido y del gradiente conjugado 101

Lema 2.27 Si A es simétrica y definida positiva, el problema de resolver el


sistema Ax = b es equivalente al de minimizar la forma cuadrática
q(x) = h x, Ax i − 2h x, b i
donde h x, y i = xT y representa el producto escalar de los vectores x e y.

Demostración. Fijemos una dirección v (rayo unidimensional) y vamos a ver


cómo se comporta la forma cuadrática q para vectores de la forma x+tv donde
t es un escalar.
Teniendo en cuenta que A es simétrica

q(x + tv) = h x + tv, A(x + tv) i − 2h x + tv, b i


= h x, Ax i + 2th x, Av i + t2 h v, Av i − 2h x, b i − 2th v, b i
= q(x) + 2th v, Ax i − 2th v, b i + t2 h v, Av i

q(x + tv) = q(x) + 2th v, Ax − b i + t2 h v, Av i (2.4)

La ecuación (2.4) (ecuación de segundo grado en t con el coeficiente de t2


positivo, tiene un mı́nimo que se calcula igualando a cero la derivada
d
q(x + tv) = 2h v, Ax − b i + 2th v, Av i
dt
es decir, en el punto
t̂ = h v, b − Ax i/h v, Av i.
El valor mı́nimo que toma la forma cuadrática sobre dicho rayo unidimensional
viene dado por

q(x + t̂v) = q(x) + t̂ [2h v, Ax − b i + t̂h v, Av i]


= q(x) + t̂ [2h v, Ax − b i + h v, b − Ax i]
= q(x) − t̂h v, b − Ax i
= q(x) − h v, b − Ax i2 /h v, Av i

Esto nos indica que al pasar de x a x + t̂v siempre hay una reducción en el
valor de q excepto si v ⊥ (b − Ax), es decir, si h v, b − Ax i = 0. Ası́ pues, si
x no es una solución del sistema Ax = b existen muchos vectores v tales que
h v, b − Ax i =
6 0 y, por tanto, x no minimiza a la forma cuadrática q. Por el
contrario, si Ax = b, no existe ningún rayo que emane de x sobre el que q tome
un valor menor que q(x), es decir, x minimiza el valor de q.

El lema anterior nos sugiere un método para resolver el sistema Ax = b pro-


cediendo a minimizar la forma cuadrática q a través de una sucesión de rayos.
102 Sistemas de ecuaciones lineales

En el paso k del algoritmo se dispondrá de los vectores

x(0) , x(1) , x(2) , . . . , x(k) .

Estos vectores nos permitirán buscar una dirección apropiada v (k) y el siguiente
punto de la sucesión vendrá dado por

x(k+1) = x(k) + tk v (k) ,

donde
h v (k) , b − Ax(k) i
tk =
h v (k) , Av (k) i
Gráficamente, si kv (k) k = 1, tk mide la distancia que nos movemos de x(k) para
obtener x(k+1)
tk v (k) - -
v (k)
3


x(k) 

(k+1)
x



2.5.1 Método del descenso más rápido


Si tomamos v (k) como el gradiente negativo de q en x(k) , es decir, como la
dirección del residuo r(k) = b − Ax(k) obtenemos el denominado método del
descenso más rápido.
Teniendo en cuenta que los diferentes vectores x(i) no es necesario conservarlos,
los podemos sobreescribir obteniéndose el siguiente algoritmo que teniendo
como entrada los valores de x, A, b y n tiene como salida la solución x:

Algoritmo del Descenso más rápido

for k = 1:n
v = b-A*x;
t = (v0 *v)/(v0 Av);
x = x+t*v;
end
x

Obsérvese que a medida que crece el valor de k, el residuo v = b − Ax va dis-


minuyendo, por lo que al encontrarnos en las proximidades de la solución, el
Métodos del descenso más rápido y del gradiente conjugado 103

cálculo de t se convierte prácticamente en una división de 00 lo que puede alte-


rar considerablemente el valor exacto que deberı́a tomar t y que generalmente
nos lleva a que el método diverge.
Este método resulta, en general, muy lento si las curvas de nivel de la forma
cuadrática están muy próximas, por lo que no suele utilizarse en la forma
descrita. Sin embargo, utilizando condiciones de ortogonalidad en las denomi-
nadas direcciones conjugadas, puede ser modificado de forma que se convierta
en un método de convergencia rápida que es conocido como método del gra-
diente conjugado.

2.5.2 Método del gradiente conjugado


Por no profundizar en el concepto de direcciones conjugadas y en cómo se
determinan, nos limitaremos a dar el algoritmo correspondiente al método que
tiene por entrada los valores de x, A, b, n,ε y δ y como salida la solución x.
Es necesario tener en cuenta las mismas precauciones que en el algoritmo del
descenso más rápido, es decir, debido a los errores de cálculo puede resultar
un algoritmo divergente.

Algoritmo del Gradiente conjugado

r = b-A*x;
v = r;
c = r0 *r;
for k = 1:n
if sqrt(v0 *v)< δ then stop
z = A*v;
t = c/(v0 *z);
x = x+t*v;
r = r-t*z;
d = r0 *r;
if d<ε then stop
v = r+(d/c)*v;
c = d;
end
x
104 Sistemas de ecuaciones lineales

2.6 Ejercicios resueltos


Ejercicio 2.1 Estudiar el número de condición de Frobenius de la matriz
!
a −b
A= .
a + ε −b

Solución: El determinante de A es |A| = −ab + b(a + ε) = b ε.


Si b 6= 0 y ε 6= 0 es |A| =
6 0 y, por tanto, A es invertible, siendo su inversa:
!
−1 1 −b b
A =
b ε −a − ε a

El número de condición de Frobenius viene dado por κF (A) = kAkF kA−1 kF .

kAk2F = a2 + b2 + (a + ε)2 + b2 = 2a2 + 2b2 + 2a ε + ε2

b2 + b2 + (−a − ε)2 + a2 2a2 + 2b2 + 2a ε + ε2


kA−1 k2F = =
b 2 ε2 b 2 ε2
Por lo que:

(2a2 + 2b2 + 2a ε + ε2 )2 |2a2 + 2b2 + 2a ε + ε2 |


κ2F (A) = =⇒ κF (A) = .
b 2 ε2 |b ε|

Obsérvese que cuando ε tiende a cero, el número de condición de Frobenius


κF (A) lo hace a infinito, por lo que la matriz A está mal condicionada.
Por ejemplo: para a = 10 y b = 1 se tiene que

202 + 20ε + ε2 202


κF (A) = = ± 20 + |ε|
|ε| |ε|

Si ε = 10−8 κF (A) ' 2 · 1010 .

Ejercicio 2.2 Dado el sistema:


(
3x + 4y = 7
3x + 5y = 8

a) Calcular su número de condición euclı́deo.


Ejercicios resueltos 105

b) Sustituir la segunda ecuación por una combinación lineal de ambas, de


forma que el número de condición sea mı́nimo.

Solución:
!
3 4
a) La matriz del sistema es A = .
3 5
! ! !
∗ 3 3 3 4 18 27
A A= =
4 5 3 5 27 41

λ − 18 −27
P (λ) = = (λ − 18)(λ − 41) − 272 = λ2 − 59λ + 9.

−27 λ − 41
√ √
59 ± 3481 − 36 59 ± 3445
Las raı́ces de P (λ) son: λ = = =⇒
2 2
s √ s √
59 − 3445 59 + 3445
σ1 = y σ2 =
2 2
s √ s √ √
σ2 59 + 3445 (59 + 3445)2 59 + 3445
κ2 (A) = = √ = = =⇒
σ1 59 − 3445 36 6
κ2 (A) = 19.61568707 . . .

b) La matriz resultante de la combinación lineal es


!
3 4
B= .
3a + 3b 4a + 5b
Una matriz tiene número de condición euclı́deo mı́nimo (y vale 1) si, y
sólo si, es proporcional a una matriz unitaria. Por tanto, B debe tener
las filas (o las columnas) ortogonales y de igual norma.
!
3a + 3b
• (3 4) = 0 ⇒ 3(3a + 3b) + 4(4a + 5b) = 0 =⇒
4a + 5b
25a + 29b = 0
• Ambas filas han de tener la misma norma, por lo que
! !
3 3a + 3b
(3 4) = (3a + 3b 4a + 5b) =⇒
4 4a + 5b
25 = 25a2 + 34b2 + 58ab
106 Sistemas de ecuaciones lineales

Las condiciones que tenemos son:



 29
25a + 29b = 0  a=±


3

=⇒
25a2 + 34b2 + 58ab = 25
  25
 b=∓

3

29 25
Tomando, por ejemplo, a = y b = − (el otro caso es análogo),
3 3
obtenemos:
! !
3 4 0.6 0.8
B= = 5 U con U = unitaria.
4 −3 0.8 −0.6
(
3x + 4y = 7
El sistema resultante es y su número de condición
4x − 3y = 1
euclı́deo es κ2 (B) = 1.

Ejercicio 2.3 Sea α ∈ {0.5, 1.5, 2.5} y consideremos el sistema iterado

1 1
   
! −1 1 ! 1−
xn+1  α  x  α 
n
= +
   
 
yn+1  1  yn  1 
−1 +1 1−
α α
Se pide

a) Resolver el sistema resultante de tomar lı́mites !


para probar
! que, !
en caso
!
x0 x1 x2
de que converja, el lı́mite de la sucesión , , ...
y0 y1 y2
no depende de α.

b) ¿Para qué valores de α converge la sucesión?

c) Para los valores anteriores que hacen que la sucesión sea convergente,
¿con cuál lo hace más rápidamente?
! !
x0 0.5
d) Comenzando con el vector = , aproximar iteradamente
y0 0.5
el lı́mite de la sucesión utilizando el valor de α que acelere más la con-
vergencia.
Ejercicios resueltos 107

Solución:

a) En caso de que converja, tomando lı́mites obtenemos que


   
! ! 1 ! 1
1 0 x  −1 1  x  1− α 
= α 1  +  1 
0 1 y −1 +1 y 1−
α α
o lo que es lo mismo
   
1 ! 1
 2 − α −1  x  1− α 
 1  =  1  =⇒
1 − y 1−
α α
 
1 1 !  
1 − −1 + 0
 α α  x = 1 
 1  y 1−
1 − α
α
por lo que

 x=y


1

1 =⇒ x = y = 1 ya que α 6= 1
 1−
 x=1−
α α
es decir, la solución (el lı́mite de la sucesión) no depende de α.
1
 
− 1 1
b) El polinomio caracterı́stico de la matriz  α  del método
 
1
−1 +1
α
2 1 1
iterado es P (λ) = λ2 − λ + 2 que admite la raı́z doble .
α α α
Dado que el radio espectral de la matriz debe ser menor que 1, α ha de
ser mayor que 1, por lo que converge para α = 1.5 y para α = 2.5, pero
no lo hace para α = 0.5.

c) El método converge más rápidamente para el valor de α que hace menor


el radio espectral de la matriz, es decir, para α = 2.5.
! !
x0 0.5
d) Partiendo de = y tomando α = 2.5 se obtiene:
y0 0.5
! ! ! ! ! !
x1 4/5 x2 23/25 x3 121/125
= = = ...
y1 4/5 y2 23/25 y3 121/125
108 Sistemas de ecuaciones lineales

! !
x 1
que podemos observar como converge a = que era la
y 1
solución del sistema.

2.7 Ejercicios propuestos


(
x + y = 2
Ejercicio 2.4 Dado el sistema
2x + y = 3

a) Calcular su número de condición de Frobenius.

Sol : κF (A) = 7.
b) Calcular “a” para que el número de condición del sistema resultante de
sumarle a la segunda ecuación la primera multiplicada por dicha cons-
tante “a”, sea mı́nimo.

Sol : a = −3/2.

Ejercicio 2.5 Comprobar que la matriz:


 
1 2 0 0 0
 1 4 3 0 0
 

 
A=  0 4 9 4 0 

 0 0 9 16 5
 

0 0 0 16 25
admite factorización LU y realizarla.
   
1 0 0 0 0 1 2 0 0 0
 1 1 0 0 0  0 2 3 0 0
   
 
   
Sol : L =  0 2 1 0 0  y U = 
 
 0 0 3 4 0 . Todas sus matrices

 0 0 3 1 0  0 0 0 4 5
   
 
0 0 0 4 1 0 0 0 0 5
fundamentales son regulares.

Ejercicio 2.6 Resolver, por el método de Cholesky, el sistema de ecuaciones:


    
6 −1 + 3i 1 − 2i x1 −1 − 2i
 −1 − 3i 3 −1 + i   x2  =  1 + i 
    

1 + 2i −1 − i 2 x3 1 − 2i
Ejercicios propuestos 109

Sol : x1 = −1 − 2i, x2 = 3 − i, x3 = 1 + 2i.


 
p −p 2p
Ejercicio 2.7 Dada la matriz A =  −p p + 2 −1  se pide:
 

2p −1 6p − 1

a) Determinar para qué valores de p es hermı́tica y definida positiva.

Sol : p ∈ ( 1/2, 3/2).

b) Para p = 1, efectuar la descomposición de Cholesky y utilizarla para


resolver el sistema Ax = b siendo b = (1 0 3)t .

Sol : x1 = −1, x2 = 0, x3 = 1.

Ejercicio 2.8 Resolver, utilizando MatLab y comenzando con el vector nulo,


el sistema:
10x1 − x2 + 2x3 = 6
−x1 + 11x2 − x3 + 3x4 = 25
2x1 − x2 + 10x3 − x4 = −11
3x2 − x3 + 8x4 = 15
por los métodos de Jacobi, Gauss-Seidel y SOR con ω = 1.2.

Sol : (x1 , x2 , x3 , x4 ) = (1, 2, −1, 1). Jacobi 42 iteraciones, Gauss-Seidel 16 y


SOR 24.

Ejercicio 2.9 Al resolver el sistema




 x − 3y + 5z = 5
8x − y − z = 8

−2x + 4y + z = 4

por el método de Gauss-Seidel, utilizando MATLAB, observamos que el pro-


grama se detiene en la iteración 138 dándonos el vector (inf inf -inf)T .

a) El método de Gauss-Seidel realiza el proceso xn+1 = L1 xn +c. Determina


la matriz L1 .
 
0 3 −5
Sol : L1 =  0 24 −41 
 

0 −90 154
110 Sistemas de ecuaciones lineales

b) Utilizar los cı́rculos de Gerschgorin para estimar el módulo de los auto-


valores de L1 .

Sol : |λi | ≤ 244.


c) Justificar el porqué de la divergencia del método.

Sol : ρ(L1 ) > 1.


d) ¿Existe alguna condición suficiente que deba cumplir la matriz de un
sistema para garantizar la convergencia del método de Gauss-Seidel?
Hacer uso de ella para modificar el sistema de forma que el proceso sea
convergente?

Sol : Llevando la primera ecuación al último lugar, la matriz del sistema


resultante es de diagonal dominante y por tanto converge el método.

Ejercicio 2.10 Sea el sistema Ax = b, donde


! ! !
1000 999 x1 1999
A= , x= y b= .
999 998 x2 1997

a) Obtener la factorización LU de la matriz A. ¿Se puede conseguir la fac-


torización de Cholesky?
! !
1 0 1000 999
Sol : L = , U = . No admite factori-
0.999 1 0 −0.001
zación de Cholesky.
b) Resolver el sistema Ax = b utilizando la factorización A = LU obtenida
en el apartado anterior.

Sol : (x1 , x2 ) = (1, 1).


c) Calcular kAk∞ , kA−1 k∞ y el número de condición de la matriz κ∞ (A).
¿Se puede decir que está bien condicionada?

Sol : kAk∞ = 1999, kA−1 k∞ = 1999, κ∞ (A) = 19992 ≈ 4 · 106 es decir,


la matriz está mal condicionada.
d) Comprueba que kAxk∞ = kAk∞ para la solución x = (1, 1)T del sistema
Ax = b.
¿Cuál es el máximo valor que puede tomar kAxk∞ , cuando x es un vector
unitario para la norma k k∞ ?

Sol : 1999.
Ejercicios propuestos 111

e) Si se perturba b en b + δb = (1998.99, 1997.01)T , calcular kδbk∞ /kbk∞ .


Si x + δx es la solución obtenida para el nuevo sistema Ax = b + δb, ¿es
el error relativo kδxk∞ /kxk∞ el máximo que se puede cometer?
kδxk∞ kδbk∞
Indicación: ≤ κ∞ (A) .
kxk∞ kbk∞
Sol : Es el máximo posible.

Ejercicio 2.11

a) Dado un sistema Ax = b, el método de Gauss-Seidel consiste en cons-


truir la sucesión xn+1 = L1 xn + c, a partir de un vector inicial x0 . Si
conocemos el valor de xn+1 ¿podrı́amos determinar el de xn haciendo
xn = L−11 (xn+1 − c)?

Sol : No. L1 no tiene inversa. ¿Porqué?, justifı́calo.


b) Si la matriz A del sistema es de diagonal estrictamente dominante,
¿puede ser el radio espectral de L1 mayor que 1?

Sol : No. ¿Porqué?, justifı́calo.


c) Si, para un determinado sistema y comenzando con un determinado vec-
tor x0 , el método de Gauss-Seidel requiere 50 iteraciones para aproximar
la solución con un error menor que ε y en la iteración 49 se pierde la pri-
mera coordenada del vector x49 y la sustituimos por un valor arbitrario,
¿se obtendrá en el paso siguiente la solución buscada con el mismo error
que si no hubiésemos perdido el dato? ¿qué ocurrirı́a si la coordenada
que perdemos del vector x49 es la segunda en vez de la primera?

Sol : Si se pierde la primera: Sı́. Si se pierde la segunda: No.


d) Tomando como vector inicial x0 = (2,−1, 2)T , realizar
  dos  pasos
 del

4 2 1 x 16
método de Gauss-Seidel para el sistema  0 2 1   y = 0 .
    

−1 0 2 z 0
¿Podrı́as decir cuál es la solución exacta del sistema?

Sol : (4,-1,2).

Ejercicio 2.12 Considérese el sistema Ax = b en el que


! ! !
a b x α
A= , x= y b= con α, β ∈ R.
c d y β
112 Sistemas de ecuaciones lineales

a) Determinar la matriz B1 , para que el método iterativo xn+1 = B1 xn + c1


sea el que se obtiene con el método de Jacobi aplicado al sistema Ax = b.
!
0 − b/a
Sol : B1 = .
− c/d 0

b) Hallar los autovalores de B1 y probar, en este caso particular, que si la


matriz A es simétrica y definida positiva, entonces el método de Jacobi
converge.
p p
Sol : λi = ± bc/ad =⇒ ρ(B1 ) = + bc/ad. Si A es simétrica y definida
positiva ρ(B1 ) < 1 y converge.

c) Determinar la matriz B2 , para que el método iterativo xn+1 = B2 xn + c2


sea el que se obtiene con el método de Gauss-Seidel aplicado al sistema
Ax = b.
!
0 − b/a
Sol : B2 = .
0 bc/ad

d) Hallar los autovalores de B2 y dar un ejemplo de matriz A (con a 6= 1)


para la que el método de Gauss-Seidel no converja. ¿Puede, en tal caso,
ser convergente el método de Jacobi?

Sol : λ1 = 0,!λ2 = bc/ad. Uno de los infinitos ejemplos para A serı́a


0 2
A= . Jacobi también diverge.
1 1
!
1 2
e) Comprobar la matriz A = es otro ejemplo para la no conver-
1 1
gencia del método de Gauss-Seidel.
!
1
Calcular, para dicha matriz y el vector b = el término general
1
de la sucesión xk obtenida
! por el método de Gauss-Seidel a partir del
m
vector x0 = y comprobar que dicha sucesión no converge para
n
valores arbitrarios de m y n.
¿Existe algún vector inicial x0 para el que converja el método? y, en
caso de existir, ¿contradice dicho ejemplo el hecho de que el método no
sea convergente?
Ejercicios propuestos 113

!
−2k n + 1
Sol : xk = que diverge si n 6= 0. No existe contradicción
2k n
¿porqué?. Justifı́calo.

Ejercicio 2.13 Se quiere encontrar una función de la forma f (x) = ax3 +bx+c
que pase por los puntos (1, 4), (−2, −23) y (2, 21).

a) Plantear un sistema de ecuaciones para calcular los coeficientes de f y


resolverlo usando la descomposición LU de la matriz del sistema.

Sol : f (x) = 2x3 + 3x − 1.

b) Usar una sucesión de Sturm para saber cuántas raı́ces reales tiene la
ecuación f (x) = 0.

Sol : Sólo una.

c) Separar dichas raı́ces por intervalos adecuados para que se den las hipó-
tesis de las condiciones de Fourier.

Sol : x ∈ [0.3, 0.4]

d) ¿Cuantas iteraciones son necesarias para obtener las raı́ces reales con 6
cifras decimales exactas usando para su cálculo el método de Newton?

Sol : Tres.

e) Aplicar dicho método para calcularlas con una precisión de 12 cifras


decimales exactas asegurando en cada paso del método el número de
cifras que se van obteniendo.

Sol : x = 0.312908409479.
3. Sistemas inconsistentes y sis-
temas indeterminados

3.1 Factorizaciones ortogonales


Si tratamos de resolver un sistema Ax = b mediante la factorización LU (o la
de Cholesky), lo que hacemos es transformar el sistema en Ax = LU x = b para
hacer U x = L−1 b que es un sistema triangular que se resuelve por sustitución
regresiva. Sin embargo, la matriz del nuevo sistema es U = L−1 A y dado que
L−1 no es una matriz unitaria (ortogonal en el caso real) el número de condición
de la matriz del sistema ha cambiado pudiendo estar peor condicionada que
la matriz A del sistema original.
Vamos a estudiar, a continuación, otro tipo de factorización A = QR donde
R es, al igual que U , una matriz triangular superior, pero donde Q va a ser
una matriz unitaria, por lo que el sistema Ax = b lo transformaremos en
Rx = Q−1 b = Q∗ b y, a diferencia del caso anterior, R = Q∗ A tiene el mismo
número de condición que la matriz A del sistema original, ya que Q∗ es unitaria.

3.1.1 Factorización QR de Gram-Schmidt


 
a11 a12 · · · a1n
 a21 a22 · · · a2n 
 
Consideremos la matriz regular A =  .. .. .. ..  = (a1 a2 · · · an )
 . . . .  
an1 an2 · · · ann
donde ai representa a su columna i-ésima.
Aplicando Gram-Schmidt existe un sistema ortonormal {y1 , y2 , . . . , yn } tal que
L{y1 , y2 , . . . , yk } = L{a1 , a2 , . . . , ak }, por lo que yk+1 ∈ L⊥ {a1 , a2 , . . . , ak }.
Sea Q la matriz cuyas columnas son los vectores yi , Q = (y1 y2 · · · yn ).

115
116 Sistemas inconsistentes y sistemas indeterminados

Entonces,

y1∗
   
h a1 , y 1 i · · · h an , y 1 i
 .  .. .. ..
Q∗ A =  ..  (a1 · · · an ) ⇐⇒ Q∗ A =  .
 
. . 
yn∗ h a1 , y n i · · · h an , y n i

Como yk+1 ∈ L⊥ {a1 , a2 , . . . , ak }, se tiene que h ai , yj i = 0 si, y sólo si, i < j,


por lo que la matriz Q∗ A es una triangular superior.
 
r11 r12 · · · r1n
 0 r22 · · · r2n
 
Q∗ A = R = 

 .. .. . . . 
 . . . .. 

0 0 · · · rnn

Como las columnas de Q constituyen un sistema ortonormal de vectores, Q es


unitaria, es decir Q∗ Q = I, por lo que A = QR.

El problema que plantea la descomposición QR es que la matriz Q no es otra


que la constituida por una base ortonormal obtenida a partir de las columnas
de A por el método de Gram-Schmidt. Las transformaciones que se realizan
para ortonormalizar los vectores columna de la matriz A mediante el método
de Gram-Schmidt son transformaciones no unitarias, por lo que aunque el
resultado sea una factorización ortogonal, los pasos que se han dado para
llegar a ella han sido transformaciones no ortogonales. Ello nos lleva a tratar
de buscar un método por el que podamos realizar una factorización QR en la
que todos los pasos que se realicen sean transformaciones ortogonales.

3.1.2 Factorización QR mediante rotaciones


Consideremos la matriz
 
a11 · · · a1i · · · a1j · · · a1n
 . .
 .. . . ... ..
.
.. 
. 
 
 ai1 · · · aii · · · aij · · · ain 
 
 . .. .. . .. 
A= . . ..
 . . . 

 aj1 · · · aji · · · ajj · · · ajn 
 
 . .. .. . . . 
 . . .. 
 . . . 
an1 · · · ani · · · anj · · · ann
Factorizaciones ortogonales 117

y tratemos de anular el elemento aji 6= 0. Para ello vamos a aplicar una


rotación  
1 ··· 0 ··· 0 ··· 0
 . . .. .. .. 
 .. . . . . . 
 
 0 · · · cos α · · · sen α · · · 0 
 
 . .. ... .. .. 
Qji =  .. . . . 
 
 0 · · · − sen α · · · cos α · · · 0 
 
 . .. .. . . .. 

 . .
 . . . . 
0 ··· 0 ··· 0 ··· 1
La matriz Qji A nos queda
 
a011 · · · a01i · · · a01j · · · a01n
 . .
 .. . . ... ..
.
.. 
. 
 
 0
 ai1 · · · a0ii · · · a0ij · · · a0in 

 . .. . . . .. .. 
Qji A =  .
 . . . . 

 0
 aj1 · · · a0ji 0 0
· · · ajj · · · ajn 

 . .. .. . . .. 
 . . . 
 . . . 
an1 · · · a0ni
0
· · · a0nj · · · a0nn

con a0ji = −aii sen α + aji cos α, por lo que

• Si aii = 0 =⇒ a0ji = aji cos α y si queremos anularlo aji cos α = 0.


Dado que suponemos que aji 6= 0, basta con hacer cos α = 0, es decir:
α = π/2.

• Si aii 6= 0 tendremos que hacer −aii sen α + aji cos α = 0, por lo que
aji
t = tg α = y, por tanto,
aii

t 1
sen α = √ cos α = √
1 + t2 1 + t2

Obsérvese además que los únicos elementos que se alteran en la matriz Qji A
son los correspondientes a la filas y columnas i y j.
Podemos, por tanto, mediante rotaciones, anular todos los elementos subdia-
gonales y llegar a una matriz R triangular superior

Qk · · · Q2 Q1 A = R ⇐⇒ Q∗ A = R con Q∗ = Qk · · · Q2 Q1
118 Sistemas inconsistentes y sistemas indeterminados

Dado que las matrices Qi de las rotaciones son ortogonales, su producto


también los es, por lo que Q∗ es una matriz ortogonal y, por tanto, A = QR.

En éste método de factorización QR, a diferencia del aplicado anteriormente


mediante el método de Gram-Schmidt todos los pasos que se dan están asocia-
dos a transformaciones ortogonales, sin embargo resulta costoso ya que cada
rotación hace un único cero en la matriz A, por lo que para una matriz de
n2 − n
orden n serı́an necesarias rotaciones.
2

Otra posibilidad es hacer reflexiones en vez de rotaciones, ya que éstas consi-


guen anular todos los elementos situados por debajo de uno prefijado de una
determinada columna. Este tipo de transformaciones vamos a estudiarlas a
continuación con las denominadas transformaciones de Householder.

3.1.3 Factorización QR de Householder


Consideremos un espacio vectorial de dimensión n definido sobre un cuerpo
K, que denotaremos por Kn (en general trabajaremos en Rn ó Cn ).

Definición 3.1 [Transformaciones de Householder]

Dado un vector v ∈ Kn se define la transformación H de Householder asociada


al vector v a la que viene definida por la matriz:

n×n
 I∈K si v = 0


H=
2
vv ∗ si v 6= 0

 I−


v v

Proposición 3.1 La transformación H de Householder asociada a un vector


v ∈ Kn posee las siguientes propiedades:

a) H es hermı́tica (H ∗ = H).

b) H es unitaria (H ∗ H = HH ∗ = I).

c) H 2 = I o lo que es lo mismo, H −1 = H.
Factorizaciones ortogonales 119

Demostración.
 ∗  
∗ 2 2 2
a) H = I − ∗ vv ∗ ∗
=I − ∗
(vv ∗ )∗ = I − ∗ vv ∗ = H
v v v v v v

Obsérvese que v ∗ v = h v, v i = kvk2 ∈ R, por lo que v ∗ v = v ∗ v

b) Teniendo en cuenta que H ∗ = H


  
∗ 2 ∗ 2 ∗
HH = HH = I − ∗ vv I − ∗ vv =
v v v v
 2
4 2
= I − ∗ vv ∗ + vv ∗ vv ∗ =
v v v∗v
4 4 4 4
= I − ∗ vv ∗ + ∗ 2 v(v ∗ v)v ∗ = I − ∗ vv ∗ + ∗ vv ∗ = I
v v (v v) v v (v v)
c) H 2 = HH = HH ∗ = I.

Interpretación geométrica en Rn

Sean v ∈ Rn un vector tal que kvk2 = 1 y H la transformación de Householder


asociada a él:
H = I − 2vv T
Dado un vector x ∈ Rn se tiene que

Hx = I − 2vv T x = x − 2vv T x = x − 2vh x, v i =
= x − 2v(kxk kvk cos α) = x − 2v(kxk cos α) =
= x − 2λv con λ = kxk cos α

donde α representa el ángulo que forman los vectores x y v.


3
x 







α v

 -
 λ -

Figura 3.1: λ = kxk cos α.


120 Sistemas inconsistentes y sistemas indeterminados

Sea y el vector simétrico de x respecto del hiperplano perpendicular a v.

6Q y
Q
k x 
36
y + λv Q
Q 

x − λv
Q 
−v Q
Q 
 v
 Q
- -
λv −λv
Figura 3.2: Un vector x y su transformado y = Hx.

Podemos observar que


y + λv = x − λv ⇐⇒ y = x − 2λv = Hx

H refleja al vector x respecto del hiperplano perpendicular al vector v, por lo


que las transformaciones de Householder son también conocidas como refle-
xiones.

El siguiente resultado, válido para cualquier espacio vectorial (real o complejo),


es fácil de comprobar, geométricamente, en el caso real.

Proposición 3.2 Sea H la transformación de Householder asociada a un vec-


tor no nulo v.

a) x ⊥ v =⇒ Hx = x.
b) x k v =⇒ Hx = −x en particular Hv = −v.

Demostración.

a) Por ser x ⊥ v, su producto escalar v ∗ x es nulo, por lo que


2 2
Hx = (I − ∗
vv ∗ )x = x − ∗ v(v ∗ x) = x
v v v v
b) x k v =⇒ x = λv
2 ∗ 2 ∗ 2λ
Hx = (I − vv )λv = λv − vv λv = λv − v(v ∗ v) =
v∗v v∗v v∗v
= λv − 2λv = −λv = −x
En particular, para x = v se obtiene Hv = −v.
Factorizaciones ortogonales 121

Interpretación geométrica en Cn

Cualquier vector x ∈ Cn puede ser descompuesto de forma única en la suma


de uno proporcional a v y otro w perteneciente a la variedad W ortogonal a
v, es decir
x = λv + w con w ⊥ v
Ası́ pues,
Hx = H(λv + w) = H(λv) + Hw = −λv + w
Hx es el vector simétrico de x respecto del hiperplano ortogonal a v.

Determinación de las transformaciones

• Caso real

Proposición 3.3 Si x 6= y son dos vectores de Rn con kxk = kyk, la


transformación de Householder asociada al vector v = x − y transforma
al vector x en el vector y, es decir, Hx = y.

Demostración. Dado que ambos vectores tienen la misma norma,

h x + y, x − y i = kxk2 − h x, y i + h y, x i − kyk2 = 0

6x + y

y x
KA 
A 
A 
A 
A x −-y

Figura 3.3: Hx−y transforma x en y.

Además, los vectores x e y son simétricos respecto de la dirección del vec-


tor x + y (véase la Fig. 3.3), por lo que la transformación de Householder
asociada al vector v = x − y transforma a x en y.
Considérense los vectores de igual norma

 x = (x1 , x2 , . . . , xn )T

y = (x1 , x2 , . . . , xk , k(xk+1 , . . . , xn )T k, 0, . . . , 0)T



122 Sistemas inconsistentes y sistemas indeterminados

La transformación de Householder asociada al vector v = x − y trans-


forma x en y y deja invariante a cualquier vector que tenga nulas todas
sus coordenadas a partir de la k + 1-ésima.

Ejemplo 3.1 Sean



 x = (1, 1, 1, 2, 2)T

y = (1, 1, 12 + 22 + 22 , 0, 0)T = (1, 1, 3, 0, 0)T

La transformación de Householder asociada al vector


v = x − y = (0, 0, −2, 2, 2)T
2 ∗ 2 ∗
H=I− vv = I − vv
v∗v 12
verifica que:
2 ∗ 2 2
Hx = (I − vv )x = x − v(v ∗ x) = x − v6 = x − v = y
12 12 12
y para cualquier vector que tenga sus tres últimas coordenadas nulas
w = (a, b, 0, 0, 0)T
2 ∗ 2 2
Hw = (I − vv )w = w − v(v ∗ w) = w − v · 0 = w
12 12 12


• Caso complejo

Considérense los vectores de igual norma



T
 x = (x1 , x2 , . . . , xn )

±k(xk+1 , . . . , xn )T k
 y = (x1 , x2 , . . . , xk , xk+1 , 0, . . . , 0)T


|xk+1 |
La transformación de Householder asociada al vector v = x − y trans-
forma x en y y deja invariante a cualquier vector que tenga nulas todas
sus coordenadas a partir de la k + 1-ésima.

Ejemplo 3.2 Sean




 x = (i, 3i, 4i)T

p
|3i|2 + |4i|2
 y = (i, 3i, 0)T = (i, 5i, 0)T


|3i|
Factorizaciones ortogonales 123

La transformación de Householder asociada al vector

v = x − y = (0, −2i, 4i)T

2 2
H=I− ∗
vv ∗ = I − vv ∗
v v 12
verifica que:

2 ∗ 2 2
Hx = (I − vv )x = x − v(v ∗ x) = x − v10 = x − v = y
20 20 20
y para cualquier vector que tenga su última coordenada nula

w = (a, b, 0)T

2 ∗ 2 2
Hw = (I − vv )w = w − v(v ∗ w) = w − v · 0 = w
20 20 20 

Factorización QR de Householder

Sea A = (a1 a2 · · · an ), donde ai representa la columna i-esima de la matriz.


     
a11 kx1 k r11
 a21   0   0 
     
Sean x1 = a1 =  .  e y1 =  .  =  . 
    
.
 ..   ..   .. 
an1 0 0
La transformación de Householder H1 , asociada al vector v1 = x1 − y1 , trans-
forma x1 en y1 , es decir, anula a todos los elementos de la primera columna
situados debajo de a11 .
 (1) (1)

r11 a12 · · · a1n
 0 a(1) (1) 
· · · a2n 

22 (1) (1) (1)
H1 A =  . .. . . ..  = (a1 a2 · · · an )

 . . . . . 
(1) (1)
0 an2 · · · ann

(1)
en la que ai representa la columna i-ésima de la matriz H1 A.
Busquemos ahora otro vector v2 tal que la transformación de Householder H2
(1) (1)
asociada a él, deje invariante al vector a1 y transforme al vector a2 en otro
de la forma (r12 , r22 , 0, . . . , 0)T .
124 Sistemas inconsistentes y sistemas indeterminados

 (1)   (1) 
a21 a21
(1) (1) (1)
a22 k(a22 , . . . , an2 )T k
   
   
(1)
 (1)   
Tomando x2 = a2 = a32  e y2 =  0 , la trans-
.. ..
   
   
 .   . 
(1)
an2 0
(1)
formación H2 asociada al vector v2 = x2 − y2 deja invariante al vector a1 y
(1)
transforma x2 = a2 en y2 .
Reiterando al procedimiento se puede transformar la matriz A en una trian-
gular superior R en, a lo más, n − 1 transformaciones.
Llegados a ese paso se tiene que
Hk Hk−1 · · · H1 A = R ⇐⇒ Q∗ A = R con Q∗ = Hk Hk−1 · · · H1
de donde
A = QR. con Q = H1 H2 · · · Hk

Si lo que nos interesa es resolver el sistema aplicamos las transformaciones al


sistema y no sólo a la matriz A.
Hk Hk−1 · · · H1 Ax = Hk Hk−1 · · · H1 b ⇐⇒ Rx = b0
sistema triangular de fácil resolución.
 
1 −1 −1
Ejemplo 3.3 Consideremos la matriz A =  2 0 1 .
 

−2 7 1
   p   
1 12 + 22 + (−2)2 3
Como x1 =  2  e y1 =  0  =  0 , se tiene que
     

−2 0 0
 
−2
v1 = x 1 − y1 =  2 
 

−2
   
−2  1/3 2/3 − 2/3
2 2  
H1 = I − ∗ v1 v1∗ = I −  2  −2 2 −2 =  2/3 1/3 2/3 
  
v1 v1 12
−2 − 2/3 2/3 1/3
    
1/3 2/3 − 2/3 1 −1 −1 3 −5 − 1/3
H1 A =  2/3 1/3 2/3   2 0 1 = 0 4 1/3 
    

− 2/3 2/3 1/3 −2 7 1 0 3 5/3


Factorizaciones ortogonales 125

       
−5 −5 −5 0
 √
x2 =  4  y2 =  42 + 32  =  5  =⇒ v2 = x2 −y2 =  −1 
      

3 0 0 3
   
0  1 0 0
2 2  
H2 = I − ∗ v2 v2∗ = I −  −1  0 −1 3 =  0 4/5 3/5 
  
v2 v2 10
3 0 3/5 − 4/5
    
1 0 0 3 −5 − 1/3 3 −5 − 1/3
H2 H1 A =  0 4/5 3/5   0 4 1/3  =  0 5 19/15  = R
    

0 3/5 − 4/5 0 3 5/3 0 0 − 17/15


 
1/3 2/15 14/15

Q = H1 H2 =  2/3 2/3 − 1/3 


 

− 2/3 11/15 2/15


Verificándose que A = QR con Q unitaria y R triangular superior. 

 (1) (1)

α11 a12 ··· a1n
 
0
 siendo A(1) una matriz de
 
Obsérvese que H1 A =  ..

 . A(1) 

0
un orden inferior al de la matriz A.
El vector v2 tiene la primera coordenada nula, por lo que
 
1 0 ··· 0
 
2 ∗
 0 
H2 = I − ∗ v2 v2 =   .. (2)

v2 v2  . H 

0
  (1) (1)

1 0 ··· 0 α11 a12 ··· a1n
  
 0  0 
H2 (H1 A) = 
 ..
 ..  =⇒
 . H(2) 
 . A(1) 

0 0
 (1) (1)

α11 a12 ··· a1n
 
 0 
H2 H1 A = 
 ..

 . H(2) A(1) 

0
126 Sistemas inconsistentes y sistemas indeterminados

Es decir, H2 deja invariantes a los elementos de la primera fila y la primera


columna de H1 A.
 
1 0 0 ··· 0
 0 1 0 ··· 0 
 
 
Análogamente, H3 =  0 0  dejará invariantes a los elemen-
 .. ..
 
(3)
H

 . . 
0 0
tos de las dos primeras filas y las dos primeras columnas de H2 H1 A y ası́
sucesivamente.
Podemos, por lo tanto, trabajar, para cada transformación, en un espacio de
una dimensión inferior que en la transformación anterior.

Ejemplo 3.4 Para la matriz del Ejemplo 3.3 se tiene:


   p   
1 12 + 22 + (−2)2 3
x1 =  2  y1 =  0  =  0  =⇒
     

−2 0 0
 
−2
v1 = x 1 − y1 =  2 
 

−2
   
−2  1/3 2/3 − 2/3
2 2  
H1 = I − ∗ v1 v1∗ = I −  2  −2 2 −2 =  2/3 1/3 2/3 
  
v1 v1 12
−2 − 2/3 2/3 1/3
    
1/3 2/3 − 2/3 1 −1 −1 3 −5 − 1/3
H1 A =  2/3 1/3 2/3   2 0 1 = 0 4 1/3 
    

− 2/3 2/3 1/3 −2 7 1 0 3 5/3

Hasta aquı́, igual que en el Ejemplo 3.3.


!
(1) 4 1/3
Nos fijamos ahora en la matriz A = .
3 5/3

Tomando
! √ ! ! !
4 42 + 32 5 −1
x2 = y2 = = =⇒ v2 = x2 − y2 =
3 0 0 3
! !
2 2 −1   4/5 3/5
H(2) = I2 − ∗ v2 v2∗ = I2 − −1 3 =
v2 v2 10 3 3/5 − 4/5
Sistemas superdeterminados. Problema de los mı́nimos cuadrados 127

 
1 0 0
Por lo que H2 =  0 4/5 3/5 
 

0 3/5 − 4/5

Teniendo en cuenta que


! ! !
4/5 3/5 4 1/3 5 19/15
H(2) A(1) = =
3/5 − 4/5 3 5/3 0 − 17/15

Podrı́amos obtener  
3 −5 − 1/3
H2 H1 A =  0 5 19/15 
 

0 0 − 17/15
que es el mismo resultado que el obtenido en el Ejemplo 3.3 pero trabajando
cada vez con una dimensión menos. 

3.2 Sistemas superdeterminados. Problema de


los mı́nimos cuadrados
Sea A = (a1 a2 · · · an ) una matriz cuadrada de orden n, A ∈ Kn×n , donde ai
representa la columna i-ésima de la matriz A, y sean x y b son vectores de Kn .
Sabemos, por el teorema de Rouche-Fröbenius, que el sistema Ax = b tiene
solución si, y sólo si, existen x1 , x2 , . . . , xn ∈ Kn tales que

x 1 a1 + x 2 a2 + · · · + x n an = b

Es decir, el vector b puede expresarse como una combinación lineal de las


columnas ai de la matriz A, por lo que b ∈ C(A) (espacio columna de A).

Sin embargo, existen problemas en los que no ocurre ası́. Supongamos que
se tienen tres puntos en el plano y se desea calcular la recta que pasa por
ellos. Evidentemente, y dado que una recta la determinan sólo dos puntos, el
problema no tiene solución (salvo que los tres puntos estén alineados). Desde
el punto de vista algebraico este problema se expresa de la siguiente forma:
sean P = (a1 , b1 ), Q = (a2 , b2 ) y R = (a3 , b3 ). Si tratamos de hallar la ecuación
de la recta y = mx + n que pasa por ellos se obtiene
   
ma1 + n = b1 a1 1 ! b1
 m
ma2 + n = b2 ⇐⇒  a2 1  =  b2 
  
n
ma3 + n = b3 a3 1 b3
128 Sistemas inconsistentes y sistemas indeterminados

Decir
 queel sistema no posee solución equivale a decir que el vector

b1 a1 1
b =  b2  no pertenece al espacio columna de la matriz A =  a2 1 .
   

b3 a3 1

Definición 3.2 [Sistema superdeterminado]

Se define un sistema superdeterminado como aquel sistema de ecuaciones li-


neales Ax = b en el que A ∈ Km×n con m > n, x ∈ Kn y b ∈ Km .

Supongamos que se tiene un sistema superdeterminado

   
a11 · · · a1n b1
 . .. ..   . 
 ..  .. 

. .  x1
..
   
 an1 · · · ann  =  bn 
    
 .
 .
 .. ..   . 
 .. 
 . 
 xn  
am1 · · · amn bm

con m > n, en el que rg A = n es decir, en el que la matriz del sistema tiene


rango máximo, y denotemos por a1 , a2 , . . . , an las columnas de A.
Si el sistema es incompatible es debido a que el vector b no pertenece al espacio
columna de A. Tomando cualquier vector b ∈ C(A) se sabe que el sistema
Ax = b posee solución única.

Definición 3.3 [Problema de los mı́nimos cuadrados]

Se conoce como problema de los mı́nimos cuadrados al problema de encontrar,


de entre todos los vectores del espacio columna de A, aquel que minimiza su
distancia al vector b, es decir, aquel vector b̃ ∈ C(A) tal que kb− b̃k es mı́nima.

Dicho vector es la proyección ortogonal de b sobre el espacio C(A) y, respecto


de la base formada por las columnas ai (1 ≤ i ≤ n) de la matriz A, tiene por
coordenadas
b̃ = (h b, a1 i, h b, a2 i, . . . , h b, an i}
Sistemas superdeterminados. Problema de los mı́nimos cuadrados 129

Dado que b 6∈ C(A) y b̃ ∈ C(A) (b̃ proyección ortogonal de b sobre C(A)),


podemos expresar b como suma de b̃ más otro vector c de la variedad ortogonal
a C(A) y, además, de forma única.

6 b


c






- 

 C(A) b̃ 

 

Figura 3.4: La proyección de b en el espacio columna de A.

Entonces:

h b, ai i = h b̃ + c, ai i = h b̃, ai i + h c, ai i = h b̃, ai i 1≤i≤n

El sistema Ax = b̃ posee solución única es decir, existen (α1 , α2 , . . . , αn ) únicos,


tales que
 
α1
 . 
α1 a1 + α2 a2 + · · · + αn an = b̃ ⇐⇒ A  ..  = b̃
αn

Multiplicando esta ecuación por a1 , a2 , . . ., an , obtenemos

α1 h a1 , a1 i + · · · + αn h a1 , an i = h b̃, a1 i = h b, a1 i
.................................................
.................................................
α1 h an , a1 i + · · · + αn h an , an i = h b̃, an i = h b, an i

que equivale a

a∗1 a1 · · · a∗1 an a∗1 b


    
α1
 .. ... ..   ..   .. 
 . .  .  =  . 
∗ ∗
an a1 · · · an an αn a∗n b

es decir
a∗1 a∗1
     
 α1
 ..   .   .. 

 .  a1 · · · an  ..  =  . b
a∗n αn a∗n
130 Sistemas inconsistentes y sistemas indeterminados

o, lo que es lo mismo:
 
α1
 . 
A∗ A  ..  = A∗ b
αn

Ası́ pues, la solución del sistema A∗ Ax = A∗ b nos proporciona las coordenadas,


respecto de la base formada por las columnas de la matriz A, del vector b̃
proyección ortogonal de b sobre el espacio columna C(A).

Definición 3.4 [Ecuaciones normales de un sistema]

Las ecuaciones A∗ Ax = A∗ b reciben el nombre de ecuaciones normales del


sistema superdeterminado Ax = b.

Definición 3.5 [Soluciones en mı́nimos cuadrados: Pseudosolución]

Las soluciones del sistema determinado por las ecuaciones normales de un sis-
tema superdeterminado Ax = b reciben el nombre de solución(es) en mı́nimos
cuadrados y de todas las posibles soluciones en mı́nimos cuadrados, la de me-
nor norma recibe el nombre de pseudosolución del sistema.

Obsérvese que si la matriz A no tiene rango máximo, lo único que se dispone del
espacio columna de A es de un sistema generador y no de una base, por lo que
las coordenadas del vector proyección respecto de dicho sistema generador no
son únicas obteniéndose infinitas soluciones en mı́nimos cuadrados del sistema.

3.2.1 Transformaciones en sistemas superdeterminados


Sabemos que dado un sistema compatible Ax = b y mediante transformaciones
elementales puede obtenerse otro sistema BAx = Bb equivalente al anterior,
es decir, obtenemos un sistema que posee la misma (o las mismas) soluciones
que el sistema dado.
Si partimos de un sistema superdeterminado y realizamos, al igual que antes,
transformaciones elementales, puede que el sistema obtenido no posea la misma
pseudosolución que el sistema dado.

Obsérvese que para que los sistemas superdeterminados

Ax = b y BAx = Bb
Sistemas superdeterminados. Problema de los mı́nimos cuadrados 131

posean la misma pseudosolución, han de tener igual solución (han de ser equi-
valentes) los sistemas

A∗ Ax = A∗ b

(BA)∗ BAx = (BA)∗ Bb ⇐⇒ A∗ (B ∗ B)Ax = A∗ (B ∗ B)b

por lo que sólo podremos garantizar que ambos sistemas son equivalentes si
B ∗ B = I ya que, en dicho caso, ambos sistemas son el mismo.
Es decir, las únicas transformaciones que podemos garantizar que no alterarán
la solución de un sistema superdeterminado son las unitarias.
Dado que las transformaciones de Householder son unitarias, podemos utili-
zarlas para resolver sistemas superdeterminados.

Consideremos el sistema superdeterminado Ax = b (en el que suponemos A


de rango máximo). Mediante transformaciones de Householder H1 , H2 , . . . , Hn
podemos transformar la matriz A en otra de la forma
 
t11 t12 · · · t1n
 
 0 t22 · · · t2n 
.. .. .. 
 
..
. . . . 
 !

  T
HA = Hn · · · H1 A =  0 0 · · · tnn =
 Θ
0 0 ··· 0 
 

 .. .. .. 

 . . . 

0 0 ··· 0

La pseudosolución de este sistema superdeterminado es la solución del sistema


!
  T  
(HA)∗ (HA)x = (HA)∗ Hb ⇐⇒ T∗ Θ x= T∗ Θ Hb
Θ

 
b01
 . 
 ..  !
0
    T  
b0 .
 0  ∗ ∗
o llamando Hb = b =  bn , T Θ x= T Θ
 . 
 ..  Θ
 
0
bm
132 Sistemas inconsistentes y sistemas indeterminados

 
b01
 . 
 . 
 0 
 .  b1
. 


Es fácil comprobar que T ∗ Θ  b0n  = T  .. , por lo que el cálculo
  
 . 
 ..  b0n
 
b0m
de la pseudosolución del sistema superdeterminado Ax = b se hace resolviendo
el sistema  0 
b1
∗ ∗  .. 
T Tx = T  . 
b0n
y dado que estamos suponiendo que A tiene rango máximo, la matriz T posee
inversa y por tanto T ∗ , por lo que la solución es la misma que la del sistema
triangular
 0 
b1
 .. 
Tx =  .  ⇐⇒ T x = b̃
b0n

Una vez calculada la pseudosolución, la norma del error está representada por
la distancia kb − b̃k que viene dada por
   
  b 0 b 0
1 1

b01
 ..   .. 

 .   .   .   0
 ..  

!    bn+1
T   b0   b0 
  . 

x −  b0n  =  n  −  0 n  =  .. 
    

Θ  .   0   bn+1 
 ..   b 0
  ..   .. 
  
m
 .   . 

b0m


0 b0m

Por último, si la matriz A no tiene rango máximo, sus columnas no son li-
nealmente independientes, por lo que sólo constituyen un sistema generador
(no una base) del espacio columna C(A). Ello nos lleva a la existencia de
infinitas n-uplas (α1 , α2 , . . . , αn ) soluciones del sistema Ax = b̃ y, por tanto, a
infinitas soluciones en mı́nimos cuadrados del sistema superdeterminado, pero
teniendo en cuenta que al ser única la proyección ortogonal b̃ de b sobre el es-
pacio columna C(A), todas ellas representan diferentes coordenadas del vector
b̃ respecto del sistema generador de C(A) dado por las columnas de A.
Sin embargo, el error cometido kb − b̃k es el mismo para todas las soluciones
en mı́nimos cuadrados del sistema. De entre todas ellas, la de menor norma
euclı́dea es la pseudosolución.
Descomposición en valores singulares y pseudoinversa de Penrose 133

3.3 Descomposición en valores singulares y


pseudoinversa de Penrose
La descomposición en valores singulares es otra factorización matricial que
tiene muchas aplicaciones.

Teorema 3.4 [Descomposición en valores singulares]

Toda matriz compleja A, de orden m × n puede ser factorizada de la forma


A = U ΣV ∗ donde U es una matriz unitaria m × m, Σ una matriz diagonal
m × n y V una unitaria de orden n × n.

Demostración. La matriz A∗ A es hermı́tica de orden n × n y semidefinida


positiva, ya que
x∗ (A∗ A)x = (Ax)∗ (Ax) ≥ 0
Resulta, de ello, que sus autovalores son reales no negativos σ12 , σ22 , . . . , σn2
(pudiendo estar repetidos, pero ordenados de forma que los r primeros son no
nulos y los n − r últimos son nulos). Los valores σ1 , σ2 , . . . , σn son los valores
singulares de la matriz A.
Sea {v1 , v2 , . . . , vn } un conjunto ortonormal de vectores propios de A∗ A, dis-
puestos de forma que
A∗ Avi = σi2 vi
Se verifica entonces que

kAvi k22 = vi∗ A∗ Avi = vi∗ σi2 vi = σi2

Esto nos muestra que Avi = 0 si i ≥ r + 1. Obsérvese que

r = rg(A∗ A) ≤ mı́n{rg(A∗ ), rg(A)} ≤ mı́n{m, n}

Construyamos la matriz V de orden n × n cuyas columnas son v1 , v2 , . . . , vn y


definamos
ui = σi−1 Avi 1≤i≤r
Los vectores ui constituyen un sistema ortonormal, ya que para 1 ≤ i, j ≤ r
se tiene que

u∗i uj = σi−1 (Avi )∗ σj−1 (Avj ) = (σi σj )−1 (vi∗ A∗ Avj ) = (σi σj )−1 (vi∗ σj2 vj ) = δij

Eligiendo vectores adicionales ur+1 , ur+2 , . . . , um de tal forma que {u1 , . . . , um }


constituya una base ortonormal de Cm y construyendo las matrices U de orden
134 Sistemas inconsistentes y sistemas indeterminados

m × m cuyas columnas son los vectores ui y la matriz Σ de orden m × n cuyos


elementos diagonales Σii = σi y los restantes elementos nulos, se tiene que

A = U ΣV ∗

Para probarlo vamos a ver que U ∗ AV = Σ. En efecto:

(U ∗ AV )ij = u∗i Avj = u∗i σj uj = σj u∗i uj = σj δij = Σij

3.3.1 Pseudoinversa de Penrose


Definición 3.6 [Pseudoinversa]

Para las matrices D de orden m × n tales que dij = 0 si i 6= j y dii > 0, se


define la pseudoinversa como la matriz n × m D+ cuyos elementos diagonales
son los inversos de los elementos diagonales de D y el resto de los elementos
son nulos.
En el caso general de una matriz A de orden m × n se define la pseudoinversa
A+ a través de la factorización en valores singulares A = U ΣV ∗ de la forma
A+ = V Σ + U ∗

La pseudoinversa comparte algunas propiedades con la inversa, pero sólo al-


gunas ya que, por ejemplo

A ∈ Km×n con m > n =⇒ A+ ∈ Kn×m =⇒ AA+ ∈ Km×m

rg AA+ ≤ mı́n{rg A, rg A+ } ≤ n < m =⇒ AA+ 6= I

Teorema 3.5 [Propiedades de Penrose]

Para cada matriz A existe, a lo más, una matriz X que verifica las siguientes
propiedades:

a) AXA = A

b) XAX = X

c) (AX)∗ = AX

d) (XA)∗ = XA
Descomposición en valores singulares y pseudoinversa de Penrose 135

Demostración. Sean X e Y dos matrices que verifique las cuatro propiedades.


Se tiene entonces que

X = XAX (b)
= XAY AX (a)
= XAY AY AY AX (a)
= (XA)∗ (Y A)∗ Y (AY )∗ (AX)∗ (d) y (c)
= A ∗ X ∗ A ∗ Y ∗ Y Y ∗ A∗ X ∗ A∗
= (AXA)∗ Y ∗ Y Y ∗ (AXA)∗
= A ∗ Y ∗ Y Y ∗ A∗ (a)
= (Y A)∗ Y (AY )∗
= Y AY AY (d) y (c)
= Y AY (b)
= Y (b)

Teorema 3.6 La pseudoinversa de una matriz tiene las cuatro propiedades


de Penrose y, por tanto, es única.

Demostración. Sea A = U ΣV ∗ la descomposición en valores singulares de


una matriz A. Sabemos que A+ = V Σ+ U ∗ .
Si la matriz A es de orden m × n y tiene rango r, la matriz Σ es también del
mismo orden y tiene la forma
(
σi si i = j ≤ r
Σij =
0 en caso contrario

Se tiene entonces que


ΣΣ+ Σ = Σ
ya que
n
X m
X
+
(ΣΣ Σ)ij = Σik Σ+
kl Σlj .
k=1 l=1

Los términos Σik y Σlj hacen que el segundo miembro de la igualdad sea nulo
excepto en los casos en que i, j ≤ r en cuyo caso
r
X r
X r
X
−1
+
(ΣΣ Σ)ij = Σik Σ+
kl Σlj = σi Σ+
il Σlj = σi σi Σij = Σij .
k=1 l=1 l=1

Razonamientos análogos nos permiten probar que Σ+ verifica las otras tres
propiedades de Penrose.
136 Sistemas inconsistentes y sistemas indeterminados

Si nos fijamos ahora en A+ , se tiene que

AA+ A = U ΣV ∗ V Σ+ U ∗ U ΣV ∗ = U ΣΣ+ ΣV ∗ = U ΣV ∗ = A

y razonamientos similares nos permiten probar las otras tres propiedades.

Si la matriz A es de rango máximo, la matriz A∗ A es invertible. Las ecuaciones


normales del sistema Ax = b vienen dadas por A∗ Ax = A∗ b y dado que A∗ A
es invertible se tiene que
x = (A∗ A)−1 A∗ b. (3.1)
Por otra parte, si hubiésemos resuelto el sistema a través de la pseudoinversa
de Penrose habrı́amos obtenido

x = A+ b. (3.2)

por lo que comparando las ecuaciones (3.1) y (3.2) obtenemos, teniendo en


cuenta la unicidad de la pseudoinversa, que si A es de rango máximo, la pseu-
doinversa viene dada por
A+ = (A∗ A)−1 A∗ .

3.4 Ejercicios resueltos


Ejercicio 3.1 Dado el sistema:

4x + 5y = 13
3x + 5y = 11

a) Realizar la factorización QR de la matriz, y resolverlo basándose en ella

a.1) Mediante el método de Gram-Schmidt,


a.2) Mediante transformaciones de Householder.

b) Calcular el número de condición euclı́deo del sistema inicial y del trans-


formado, comprobando que son iguales.

Solución:
! ! !
4 5 x 13
a) El sistema a resolver es Ax = b ⇐⇒ =
3 5 y 11
Ejercicios resueltos 137

a.1) Utilizando el método de Gram-Schmidt:


! ! !
4 5 4
v1 = v2 = +λ
3 5 3

v1 ⊥ v2 =⇒ h v1 , v2 i = 0 =⇒ 35 + 25λ = 0 =⇒ λ = − 7/5
por tanto,
" ! !# ! !
1 25 4 − 3/5 4/5 − 3/5
v2 = −7 = ⇒ Q=
5 25 3 4/5 3/5 4/5

! ! !
4/5 3/5 4 5 5 7

R=Q A= =
− 3/5 4/5 3 5 0 1
Se obtiene, por tanto, que A = QR donde Q es unitaria y R trian-
gular superior. El sistema se transforma en otro triangular de la
manera siguiente:

Ax = b ⇐⇒ QRx = b ⇐⇒ Rx = Q∗ b

En nuestro caso:
! ! !
4/5 3/5 13 17
Q∗ b = =
− 3/5 4/5 11 1

quedándonos el sistema triangular


! ! !
5 7 x 17
=
0 1 y 1

cuya solución es
x=2 y = 1.

a.2) Utilizando transformaciones de Householder se obtiene:


! √ ! ! !
4 42 + 32 5 −1
x= y= = v =x−y =
3 0 0 3

! ! !
2 1 0 1 1 −3 4/5 3/5
H = I − ∗ vv ∗ = − =
v v 0 1 5 −3 9 3/5 − 4/5
138 Sistemas inconsistentes y sistemas indeterminados

Al sólo ser necesaria una transformación de Householder, se tiene


que !
4/5 3/5
Q = H∗ = H =
3/5 − 4/5

! ! !
4/5 3/5 4 5 5 7
R = Q∗ A = HA = =
3/5 − 4/5 3 5 0 −1
Transformando el sistema obtenemos:

Ax = b ⇐⇒ QRx = b ⇐⇒ Rx = Q∗ b = Hb

Dado que
! ! !
4/5 3/5 13 17
Hb = =
3/5 − 4/5 11 −1

nos queda el sistema triangular


! ! !
5 7 x 17
=
0 −1 y −1

cuya solución
x=2 y = 1.
σ2
b) El número de condición euclı́deo viene dado por κ2 (A) = donde σ2 el
σ1
mayor y σ1 el menor de los valores singulares de la matriz A.
Los valores singulares son las raı́ces cuadradas positivas de los autovalo-
res de la matriz A∗ A.
Cuando calculamos el número de condición de la matriz R del sistema
transformado, realizaremos el mismo proceso con esta nueva matriz, es
decir, debemos calcular los autovalores de la matriz R∗ R.
Dado que ! ! !
4 3 4 5 25 35
A∗ A = =
5 5 3 5 35 50
! ! !
∗ 5 0 5 7 25 35
R R= =
7 1 0 1 35 50
los valores singulares de las matrices A y R son los mismos, por lo que
se obtiene el mismo número de condición euclı́deo.
Ejercicios resueltos 139

El polinomio caracterı́stico de A∗ A es p(λ) = λ2 − 75λ + 25, por


lo que sus autovalores son λ1 ' 74.665 y λ2 '√0.335 y, por tanto,
los valores
√ singulares de la matriz A son σ2 ' 74.665 ' 8.64 y
σ1 ' 0.335 ' 0.58, de donde
σ2
κ2 (A) = κ2 (R) = ' 14.9
σ1

Ejercicio 3.2 Resolver por el método de Householder el sistema:


    
1 −1 −1 x 0
 2 0 1  y  =  4 
    

−2 7 1 z −7

Solución:
  
 
1 3 −2
x= 2  y= 0  v1 = x − y =  2 
     

−2 0 −2


−2 
2  
H1 = I3 − 2
v1 v1∗ = I3 −  2  −2 2 −2 =

v1∗ v1
12
−2
   
2 −2 2 1/3 2/3 − 2/3
1
= I3 −  −2 2 −2  =  /3 1/3 2/3 
  2 
3
2 −2 2 − 2/3 2/3 1/3

Aplicando la transformación al sistema se obtiene


    
3 −5 − 1/3 x 22/3

 0 4 1/3   y  =  − /3 
     10 

0 3 5/3 z 1/3

Dado que la segunda transformación no va a afectar ni a la primera ecuación


ni a la primera columna de la matriz A, la calculamos sólo para el menor
asociado al elemento a11 .
! ! !
4 5 −1
x= y= v2 = x − y =
3 0 3
140 Sistemas inconsistentes y sistemas indeterminados

! !
2 1 −1   4/5 3/5
H2 = I2 − ∗ v2 v2∗ = I2 − −1 3 =
v2 v2 5 3 3/5 − 4/5
! ! ! !
4 1/3 5 19/15 − 10/3 − 37/15
H2 = H2 =
3 5/3 0 − 17/15 1/3 − 34/15

Por lo que nuestro sistema ha quedado reducido a


    
3 −5 − 1/3 x 22/3

 0 5 19/15   y  =  − 37/15 
    

0 0 − 17/15 z − 34/15
cuya solución es x = 1, y = −1, z = 2.

Ejercicio 3.3 Buscar la solución de mı́nimos cuadrados del sistema Ax = b,


siendo:    
3 −1 0
A= 4 2  y b= 2 
   

0 1 1

a) A través de sus ecuaciones normales.


b) Por el método de Householder.

Solución:

a) Las ecuaciones normales, dadas por A∗ Ax = A∗ b son


   
! 3 −1 ! ! 0
3 4 0   x 3 4 0  
 4 2  =  2 
−1 2 1 y −1 2 1
0 1 1
Es decir: ! ! !
25 5 x 8
=
5 6 y 5
sistema que es equivalente a
! ! !
25 5 x 8
=
0 5 y 17/5

y cuya solución (la solución en mı́nimos cuadrados buscada) es


23 17
x= , y= .
125 25
Ejercicios resueltos 141

b)
       
3 kx1 k 5 −2
x1 =  4  =⇒ y1 =  0  =  0  =⇒ v1 = x1 −y1 =  4 
       

0 0 0 0
 
−2 
2 ∗ 2  
H1 = I3 − v∗ v1 2v1 v1 = I3 −  4  −2 4 0 =

1 20
0
 
3/5 4/5 0
=  /5 − 3/5 0 
 4 

0 0 1
Aplicando la transformación al sistema, se obtiene
   
5 1 ! 8/5
 x
 0 −2  =  − 6/5 
  
y
0 1 1
!
(1)
! √ !
(1) −2 (1) kx2 k 5
Para que x2 = se transforme en y2 = =
1 0 0
(2)
construimos la transformación H2 de Householder asociada al vector
√ !
(1) (1) −2 − 5
v2 = x2 − y2 =
1
 
√ √ ! 1 0 0
(2) − 2 5/5 5/5 √ √
H2 = √ √ =⇒ H2 =  0 − /5
 2 5 5/5 
5/5 5/5 √ √
2

0 5/5 2 5/5

que aplicada al sistema anterior nos da


   
5 1 ! 8/5
√  x √ 
 0 5  =  17/5 5 
 
y √
0 0 4/5 5

23 17
porlo que la pseudosolución del sistema es x = ,y= y el error
125 25
4
viene dado por √ ' 0.3578.
5 5
142 Sistemas inconsistentes y sistemas indeterminados

3.5 Ejercicios propuestos


Ejercicio 3.4 Se considera el sistema de ecuaciones Ax = b con
   
1 2 3
 1 0   2 
A=  y b =  .
   
 1 1   0 
1 1 1

Se pide:

a) Calcular la pseudosolución, a través de las ecuaciones normales, utili-


zando el método de Cholesky.

Sol : x = 1, y = 1/2.
b) Sea v = (−1, 1, 1, 1)T . Demostrar que la transformación de Householder
asociada al vector v transforma la primera columna de la matriz A en el
vector (2, 0, 0, 0)T dejando invariante la segunda columna de A ası́ como
al vector b.
c) Calcular la pseudosolución del sistema utilizando transformaciones de
Householder, ası́ como la norma del error.

Sol : x = 1, y = 1/2, E = 3 2/2.
d) Si la matriz A del sistema fuese cuadrada y su número de condición fuese
mayor que 1, ¿qué ventajas e inconvenientes tendrı́a el resolver el sistema
multiplicando por la traspuesta de A y el resolverlo por transformaciones
de Householder?

Sol : Si κ(A) > 1, κ(AT A) >> 1 mientras que Householder no altera el


condicionamiento.

Ejercicio 3.5 Hallar la recta de regresión de los puntos:

(1.1, 5), (1, 5.1), (2, 7.3), (1.8, 6.9), (1.5, 6.1), (3, 8.8), (3.1, 9) y (2.9, 9.1)

Sol : y = mx + n = 1.959803x + 3.1449029.

Ejercicio 3.6 Hallar la parábola de regresión de los puntos:

(1, 0), (0, 0), (−1, 0), (1, 2) y (2, 3)


1 1
Sol : y = ax2 + bx + c = x2 + x.
2 2
Ejercicios propuestos 143

Ejercicio 3.7 Dado el sistema superdeterminado:


   
1 1 0   1
 1 0 1  x  2 
 y  = 
    
 
 1 1 1   0 
z
1 2 1 −1

calcular, mediante transformaciones de Householder, la solución en mı́nimos


cuadrados (pseudosolución) ası́ como la norma del error.

Sol : x = 5/2, y = −3/2, z = −2/3, kEk = 6/6.

Ejercicio 3.8 Resolver el sistema


   
2 1 ! 1
x
 2 0  = 1 
   
y
−1 2 −5

y obtener la norma del error:

a) Mediante sus ecuaciones normales.

b) Mediante transformaciones de Householder.

c) Hallando la inversa generalizada de la matriz del sistema.


!
√ 2/9 2/9 −1/9
Sol : x = 1, y = −9/5, kEk = 3 5/5, A+ =
1/5 0 2/5

Ejercicio 3.9 Se considera el sistema superdeterminado Ax = b con


   
1 7 15 7
 1 4 8   7 
A= y b=
   
 
 1 0 1   −5 
1 3 6 −9

a) Resolverlo mediante transformaciones de Householder, dando la norma


del vector error.

Sol : x1 = −8, x2 = −2, x3 = −2, kEk = 10.


144 Sistemas inconsistentes y sistemas indeterminados

b) Hallar la inversa generalizada A+ de la matriz A.


 
−49 43 49 57
1 
Sol : A+ =  −86 102 −114 98 .

100
50 −50 50 −50

c) Utilizar la inversa generalizada para resolver el sistema y hallar la norma


del vector error.

Ejercicio 3.10 Resolver el sistema superdeterminado


   
−3 1 1   8
 1 −3 x
1    4
  
 y  = 
 
 
 1 1 −3   0 
z
1 1 1 4

calculando la inversa generalizada de la matriz A.


 
− 1/4 0 0 1/4

Sol : x = −1, y = 0, z = 1, kEk = 8, A+ =  0 − 1/4 0 1/4 


 

0 0 − 1/4 − 1/4

Ejercicio 3.11 Dado sistema superdeterminado Ax = b con


   
1 5 5 7
 1 2 3   16 
A= y b=
   
 
 1 1 3   −3 
1 2 1 10

a) Resolverlo mediante transformaciones de Householder, dando la norma


del vector error.

Sol : x = 9, y = 3, z = −3, kEk = 12.


b) Teniendo en cuenta el rango de la matriz A, hallar su inversa generali-
zada.
 
−20 10 12 34
1 
Sol : A+ = 8 −4 −12 8 .

36

3 3 9 −15

c) Utilizar la inversa generalizada obtenida en el apartado anterior para


calcular la pseudosolución del sistema y hallar la norma del vector error.
Ejercicios propuestos 145

Ejercicio 3.12 Consideremos el sistema de ecuaciones Ax = b, con


   
2 −2 ! 6
x1
A =  1 −1  , x = y b =  3 ,
   
x2
−2 2 3

y un vector unitario u. Se pide:

a) Demostrar que si H = I − 2uuT es la matriz de Householder, asociada al


vector u, entonces: H es ortogonal, H 2 = I y kHak2 = kak2 cualquiera
que sea el vector a.

b) Obtener la matriz de Householder que transforma el vector (2, 1, −2)T


en otro de la forma (α, 0, 0)T , con α > 0.
 
2 1 −2
Sol : H =  1 2 2 .
 

−2 2 −1

c) Aplicando el método de Householder, probar que el sistema Ax = b


posee infinitas soluciones en cuadrados mı́nimos y que el error cometido,
al considerar cualquiera de ellas, es el mismo.

Sol : x = (1 + λ, λ)T ∀ λ ∈ R, kEk = 3.

d) Obtener la pseudosolución del sistema Ax = b.

Sol : ( 1/2 , − 1/2)T .

Ejercicio 3.13 Sea el sistema Ax = b, donde


   
0 3 ! −10
x
A =  −3 5  , x = y b= 6 .
   
y
4 0 −8

a) Probar que la matriz AT A es definida positiva, obteniendo la factori-


zación de Cholesky.
! ! !
25 −15 5 0 5 −3
Sol : AT A = = .
−15 34 −3 5 0 5

b) Plantear la iteración Xn+1 = L1 · Xn + c que se obtiene de aplicar el


método de Gauss-Seidel a las ecuaciones normales del sistema Ax = b.
146 Sistemas inconsistentes y sistemas indeterminados

¿Será convergente el proceso iterativo a la pseudosolución?


! ! !
0 3/5 xn −2
Sol : xn+1 = + . Convergente por ser un
0 9/34 yn − 15/17
sistema de diagonal dominante.

c) Hallar la matriz Hu = I − βuuT de la reflexión que transforma el vector


a = (0, −3, 4)T en el vector r = (−5, 0, 0).
 
0 15 −20
1 
Sol : Hu =  15 16 12 .

25
−20 12 9

d) Obtener la solución en mı́nimos cuadrados del sistema Ax = b, utilizando


el método de Householder, y determinar la norma del error.

Sol : x = −68/25, y = −6/5, kEk = 8.

e) Sin haber resuelto el apartado anterior, ¿podrı́an predecirse Hu A y Hu b


de las relaciones geométricas entre L =< u >, L⊥ y los vectores columnas
implicados?

Sol : Sı́. Si A = (a1 a2 ), Hu a1 = (−5, 0, 0)T , Hu a2 = a2 , Hu b = −b.

Ejercicio 3.14 Se considera el sistema superdeterminado Ax = b con


   
3 2 3
A= 4 5  y b= 1 
   

12 0 13

a) Calcular la pseudosolución (solución de mı́nimos cuadrados) ası́ como la


norma del error utilizando transformaciones de Householder.

Sol : x = 71/65, y = −3/5, kEk = 1.


 
1 0 0
b) Sea T =  0 1 0  la matriz asociada a la transformación elemen-
 

0 0 1/12
tal que divide por 12 la tercera de las ecuaciones del sistema:
   
3 2 ! 3
 x
T Ax = T b ⇐⇒  4 5  = 1 
  
y
1 0 13/12
Ejercicios propuestos 147

Calcular su pseudosolución haciendo uso de las ecuaciones normales. De-


terminar la norma del error.

Sol : x = 113/72, y = −37/36, kEk = 5 78/72.

c) ¿A qué se debe que no coincidan las pseudosoluciones obtenidas en los


dos apartados anteriores? ¿Qué habrı́a ocurrido si la matriz T hubiese
sido unitaria?

Sol : T no es unitaria. Si T hubiese sido unitaria se hubiesen obtenido


las mismas pseudosoluciones.

Ejercicio 3.15 Sea el sistema Ax = b, donde


   
3 −2 ! 2
x
A= 0 3 , x = y b =  0 .
   
y
4 4 1

a) Probar que la matriz B = AT A es definida positiva, obteniendo la fac-


torización de Cholesky B = GT G.
! !
25 10 5 2
Sol : B = , G= .
10 29 0 5

b) Hacer uso de la factorización obtenida en el apartado anterior para hallar


la pseudosolución mediante las ecuaciones normales del sistema. Calcular
el número de condición, κ∞ (B), de la matriz B para la norma k k∞ .
¿Hasta que punto se podrı́a considerar fiable la pseudosolución obtenida
con aritmética de ordenador?

Sol : x = 58/125, y = −4/25, κ∞ (B) = 1521/625 ' 2.4336. Es fiable.

c) Hallar la matriz de la reflexión (matriz de Householder) Hu que trans-


forma el vector a = (3, 0, 4)T en el vector r = (−5, 0, 0)T . Una vez de-
terminado el vector u, justificar que se pueden conocer Hu A y Hu b sin
necesidad de efectuar los productos.
 
− 3/5 0 − 4/5
Sol : Hu =  0 1 0 . Si A = (a1 a2 ), Hu a2 = a2 H2 b = −b.
 

− 4/5 0 3/5

d) Obtener la solución en mı́nimos cuadrados del sistema Ax = b, utilizando


el método de Householder y determinar la norma del error. Operando
con el ordenador, ¿puede obtenerse una pseudosolución distinta de la
148 Sistemas inconsistentes y sistemas indeterminados

obtenida en el apartado b? Si ası́ ocurriera, ¿puede ser mayor el error?

Sol : x = 58/125, y = −4/25, kEk = 3/5. Es posible obtener en el


ordenador soluciones distintas. Nunca, ya que las transformaciones de
Householder son unitarias.

Ejercicio 3.16 Sea el sistema Ax = b, donde


     
1 −1 2 x 0
A= 0 3 −3  , x =  y  y b =  1 .
     

0 −4 4 z 2

a) Hallar kAk∞ . ¿Qué se puede decir sobre el número de condición de la


matriz A para la norma infinito? ¿Qué estimación darı́a MATLAB para
el número de condición espectral obtenido con el comando cond(A)?

Sol : cond(A) = ∞.
b) Utilizar la descomposición LU de la matriz AT A para resolver el sistema
AT Ax = AT b. ¿Qué propiedad caracteriza a las soluciones en relación al
sistema Ax = b? Interpreta geométricamente el resultado.

Sol : x = t − 1/5, y = 3t − 1/5, z = t.


c) Encontrar una matriz ortogonal Q que transforme el vector a= (0, 3, −4)T
en el vector r = (0, 5, 0)T . Obtener la norma del error para las soluciones
en mı́nimos cuadrados del sistema QAx = Qb.
 
1 0 0
Sol : Q =  0 3/5 − 4/5 . kEk = 2.
 

0 − 4/5 − 3/5
d) ¿Qué relación hay entre las soluciones obtenidas en los apartados ante-
riores?
Si se obtienen las soluciones en mı́nimos cuadrados del sistema Ax = b,
escalonando previamente la matriz A, ¿se debe obtener mismo resultado
que en alguno de los apartados anteriores?

Sol : Son las mismas. No, el escalonado no se hace mediante transforma-


ciones unitarias.
 
2 3 4

 3 25 25

 1 3 4 
e) Probar que la matriz P =  3 25 − 25  es la pseudoinversa de A,
 
1
3
0 0
Ejercicios propuestos 149

verificando las propiedades de Penrose. (Hacer la comprobación sólo con


dos de ellas).
De entre todas las soluciones en mı́nimos cuadrados del sistema Ax = b,
hallar la de menor norma euclı́dea.

Solución: x = −1/5, y = −1/5, z = 0.

Ejercicio 3.17

a) En lo que sigue, Hv denota la transformación de Householder asociada al


vector v. Sean x, y, v, z vectores no nulos, con Hv x = y y z ⊥ v. Probar
que Hv v = −v y Hv z = z. Determinar razonadamente todos los vectores
w tales que Hw x = y.

b) Se considera el sistema de ecuaciones dado por


    
− 12 1 0 x 2
 1 2 1   y  =  −1 
    

1 0 −1 z −1

b.1) Estudiar el condicionamiento del sistema, utilizando la norma 1.

Sol : κ1 (A) = 6.
b.2) Resolver el sistema por medio de transformaciones de Householder.

Sol : x = −2, y = 1, z = −1.


b.3) Desde un punto de vista numérico, ¿serı́a razonable resolver el sis-
tema escalonando por Gauss? Razonar la respuesta.

Sol : No.
4 1 4a
c) Demostrar que el vector c = (− , , − − 1)T y la matriz
3 2 3
 
0 − 23 0
L1 =  0 0 − 12 
 

0 − 2a
3
0

son los propios del método de Gauss-Seidel asociado al sistema


    
3
2
1 0 x −2
 0 2 1  y  =  1 
    

a 0 −1 z 1
150 Sistemas inconsistentes y sistemas indeterminados

d) Estudiar, en función del parámetro a, el carácter diagonal dominante


por filas de la matriz de coeficientes del sistema dado, ası́ como el radio
espectral de L1 . ¿Para qué valores de a es convergente el método ante-
rior?
p
Sol : Diagonal dominante si |a| < 1, ρ(L1 ) = a/3. Converge si |a| < 3.

e) Para a = 0 el método resulta convergente. Utilizando aritmética exacta,


y tomando como vector inicial x0 = (0, 0, 0)T , realizar dos iteraciones,
acotando el error cometido. Razonar qué ocurre cuando se itera por
tercera vez. ¿Hubiera ocurrido otro tanto al trabajar con aritmética de
ordenador?
   
− 4/3 − 5/3
Sol : x1 =  1/2  y x2 =  1  , kEk = 1/2. x3 es la solución
   

−1 −1
exacta pero con aritmética de ordenador es sólo una buena aproximación.

Ejercicio 3.18 Sea el sistema Ax = b, donde


   
1 1 ! 2
x
A =  α 0 , x = y b= β  con α > 0 y β, γ ∈ R
   
y
−2 2 γ

a) Hallar α sabiendo que que existe una matriz de Householder, Hv , que


transforma la primera columna de la matriz A en el vector r = (3, 0, 0)T .
¿Quién es Hv ?
 
1/3 2/3 − 2/3

Sol : α = 2, Hv =  2/3 1/3 2/3 .


 

− 2/3 2/3 1/3

b) Determinar el conjunto de vectores b para los que se verifica Hv b = b,


siendo Hv la matriz del apartado anterior. Encontrar, entre ellos, el que
tiene menor norma euclı́dea.

Sol : b = (2, β, β − 2)T con β ∈ R. (2, 1, −1)T .

c) Hallar la pseudosolución del sistema Ax = bm , para α = 2 y bm =


(2, 1, −1)T , utilizando transformaciones ortogonales para determinar el
error.

Sol : x = 5/6, y = 1/2, kEk = 1.


Ejercicios propuestos 151

d) Probar que si una matriz real B tiene sus columnas linealmente inde-
pendientes, entonces B T B es definida positiva.

e) Sea el sistema AT A x = AT bm , con α y bm como en el apartado (c).

e.1) ¿Serı́a posible utilizar una descomposición AT A = GGT , con G


triangular inferior, para resolver el sistema?

Sol : Sı́, AT A admite factorización de Cholesky.


e.2) Utilizando la norma k k∞ para medir el condicionamiento, ¿es un
sistema mal condicionado para utilizar aritmética de ordenador en
su resolución?

Sol : No.
e.3) Sea (s0 , s1 , s2 , . . .) la sucesión que se obtiene al aplicar el método
de Gauss-Seidel al sistema, con s0 = (0, 0)T . Probar que, operando
en aritmética exacta, la sucesión (sn ) es convergente y obtener su
lı́mite s.

Sol : AT A simétrica y definida positiva =⇒ Gauss-Seidel converge.


Al tratarse de las ecuaciones normales, lo hace a la pseudosolución.

Ejercicio 3.19 Se considera el sistema Ax = b con


   
0 5 ! 5
x
A =  3 0 , x = y b= 2 
   
y
4 0 11

a) ¿Existe alguna transformación de Householder que permute las columnas


de la matriz A? Justificar la respuesta.

Sol : Sı́, ambas tienen igual norma.

b) Calcular la pseudosolución del sistema mediante transformaciones de


Householder dando la norma del vector error.

Sol : x = 2, y = 1, kEk = 5.

c) Calcular la inversa generalizada A+ de la matriz A a través de su des-


composición en valores singulares y hacer uso de ella para encontrar la
pseudosolución del sistema Ax = b dando la norma del vector error.
!
0 3/25 4/25
Sol : A+ =
1/5 0 0
152 Sistemas inconsistentes y sistemas indeterminados

d) ¿Hubiésemos podido, en éste caso, calcular la inversa generalizada sin


necesidad de realizar su descomposición en valores singulares?

Sol : Sı́ ya que rg A = 2.

Ejercicio 3.20 Se considera el sistema Ax = b con


   
1 2 ! 1
x
A= 4 8 , x = y b= 5 
   
y
−1 −2 3

Determinar la pseudosolución del sistema dando la norma del error:

a) Mediante transformaciones de Householder.



Sol : x = 1/5, y = 2/5, kEk = 17.

b) A través de la inversa generalizada de la matriz A.


!
1/90 2/45 − 1/90
Sol : A+ = .
1/45 4/45 − 1/45

Ejercicio 3.21 Hallar la pseudosolución del sistema Ax = b en el que


   
3 −4 65
A= 4 3  y b =  −65 
   

0 12 0

ası́ como la norma del error a través de la pseudoinversa de la matriz A calcu-


lada mediante la descomposición en valores singulares.
 
3/25 4/25 0
Sol : A+ =   , x = −13/5, y = −35/13, kEk = 84.
− /169 /169
4 3 12/169

Ejercicio 3.22 Se considera el sistema superdeterminado Ax = b con


   
2 1 ! 3
 2 0  x  6 
A= x= y b=
   
 
 1 −2  y  0 
0 2 3
Ejercicios propuestos 153

a) Encontrar una transformación de Householder que transforme la primera


columna de la matriz A en el vector r = (3, 0, 0, 0)T .
 
2/3 2/3 1/3 0
 2/ − 1/ − 2/ 0 
 3 3 3
Sol : H =  .

 /3 − /3
1 2 2/3 0 
0 0 0 1

b) Probar que el producto de dos matrices de Householder es una matriz


unitaria.

Hallar una matriz ortogonal Q tal que A = QR siendo R una matriz


triangular superior de las mismas dimensiones que A.
 
2/3 1/3 0 2/3
 2/
 3 0 − 1/3 − 2/3 
Sol : Q =  .

 1/3 − 2/3 2/3 0 
0 2 2 − 1/3

c) Probar que si Q es ortogonal, los sistemas Ax = b y QT Ax = QT b tienen


las mismas soluciones en mı́nimos cuadrados.

Hallar el error cometido al obtener la pseudosolución del sistema Ax = b,


utilizando transformaciones ortogonales.

Sol : x = 2, y = 1, kEk = 3.
d) Teniendo en cuenta el rango de la matriz A, calcular el vector s = A+ b
donde A+ representa la pseudoinversa de la matriz A.
!
2/9 2/9 1/9 0
Sol : A+ = .
1/9 0 − 2/9 2/9

e) Sea xn+1 = L1 xn +c la sucesión resultante de aplicar el método de Gauss-


Seidel a la resolución de las ecuaciones normales del sistema Ax = b.
¿Cuántas iteraciones son necesarias para la convergencia del método?
Determina la pseudosolución ası́ como la norma del error.

Sol : Sólo una iteración.

Ejercicio 3.23 El equipo Astronomı́a para aficionados, adquirido por el pro-


fesor Dana este verano, permitı́a determinar el plano Π ≡ αx + βy + γz = 1
donde se encuentra la trayectoria de Marte alrededor del Sol. En las instruc-
ciones indicaba introducir en el “calculador mágico” una serie de coordenadas
154 Sistemas inconsistentes y sistemas indeterminados

locales (xi , yi , zi ), obtenidas con el “telescopio marciano”, y automáticamente


proporcionarı́a los coeficientes α, β, γ. Entre otras cosas, sugerı́a introducir
entre 5 y 10 coordenadas para que el ajuste obtenido en el sentido de
los mı́nimos cuadrados promediara “cientı́ficamente” los errores de obser-
vación...

a) Plantear el sistema superdeterminado, Aα= b, con α=(α, β, γ)T , para


determinar el plano Π, cuando las coordenadas locales son
(2, 1, 0), (−1, 2, 1), (0, 1, 2), (−1, 0, 1), (0, 1, 0).
¿Puede ser nulo el error cometido para la pseudosolución del sistema?

Sol : El error no puede ser nulo.


b) Poniendo A = [a1 a2 a3 ], donde ai indica la correspondiente columna de
A, razonar si es posible encontrar una transformación de Householder
que transforme a1 en a2 . Hallar una matriz unitaria, Q, de modo que
Qa1 = a3 .
 
0 0 1 0 0
 0 −1 0 0 0 
 
Sol : Q =  1 0 0 0 0 .

 0 0 0 −1 0 
0 0 0 0 1
c) Obtener las ecuaciones normales, Bα= c, del sistema inicial Aα= b.
¿Está la matriz B mal condicionada para la norma || ||∞ ?

Sol : κ∞ (B) = 15/2. Bien condicionada.


d) Probar que los métodos iterados de Jacobi y Gauss-Seidel aplicados al
sistema Bα= c son convergentes. ¿Cuál de ellos converge más rápido?

Sol : Gauss-Seidel más rápido que Jacobi.


e) Partiendo de α0 = (0, 0, 0)T , obtener la aproximación α3 , al aplicar 3
pasos del método de Gauss-Seidel al sistema Bα= c, operando con dos
cifras decimales. ¿Cuál es el error obtenido al tomar α3 como la solución
en mı́nimos cuadrados de Aα= b?

Sol : α3 = (0.09, 0.55, 0.33)T con kE3 k ' 1.01.


 
1 5 5
Ejercicio 3.24 Dada la matriz A =  1 2 1 , se pide:
 

1 2 3
Ejercicios propuestos 155

a) Estudiar si admite factorizaciones LU y/o de Cholesky.

Sol : Sólo LU .
b) Utilizar dichas factorizaciones
  (encasode existir) para resolver el sistema
x 3
Ax = b con x =  y  y b =  2 .
   

z 1

Sol : x = 1/2, y = 1, z = −1/2.


c) Resolver, mediante transformaciones de Householder el sistema superde-
terminado resultante de añadir a nuestro sistema la ecuación x+y +3z =
α. Hallar la norma del error.

Sol : x = (2α + 3)/6, y = (3 − α)/3, z = (α − 2)/4, kEk = |α|/2.


d) ¿Se puede calcular el valor de α que minimiza la norma del error sin
resolver el sistema anterior?

Sol : Sı́, α = 0.

Ejercicio 3.25 En R4 se busca un hiperplano de la forma αx + βy + γz = t


que pase por los puntos
      
x 
 1 1 −1 
 y     0 
 0  2 
  ∈ 
     
  
 z  
  0  4   1 


 

t 0 1 2

a) Plantear el sistema de ecuaciones y resolverlo usando la factorización LU


de la matriz del sistema.

Sol : El hiperplano buscado es 7y − 4z + 2t = 0.


b) Comenzando por el vector x0 = (2, 2, 2)T , resolverlo iterativamente por
los métodos de Jacobi y Gauss-Seidel. ¿Qué método es más rápido?
Razona la respuesta.

Sol : Jacobi 3, Gauss-Seidel 1 aunque ambos son igualmente convergentes.


c) Al obligar que, además, pase por el punto (−1, 2, 0, −1) se obtiene una
ecuación más que hace incompatible al sistema.
Usar transformaciones de Householder para encontrar la pseudosolución
del sistema incompatible dando la norma del error.
156 Sistemas inconsistentes y sistemas indeterminados

p
Sol : x = −2/3, y = −8/9, z = 8/9, kEk = 2/3.

Ejercicio 3.26 Se sabe que un móvil en R3 sigue una velocidad instantánea


dada por una expresión de la forma V (x, y, z) = ax + by + cz con a, b, c ∈ R.
Con un velocı́metro se han tomado los datos siguientes:

V (1, 2, − 53 ) = −3
V (1, 2, −4) = 2
V (2, −1, 2) = −2
V (1, 0, −2) = −1
V (3, 2, −1) = −2

a) Demostrar que el velocı́metro está desajustado. Es decir, que los datos


obtenidos son incompatibles.

b) Una vez planteado el sistema incompatible y usando las ecuaciones nor-


males de dicho sistema, usar el método de Cholesky para calcular el
grado de desajuste del velocı́metro. Es decir, el error al suponer la pseu-
dosolución como los verdaderos valores de a, b y c.

Sol : kEk = 3.0651.

c) Calcular el error usando transformaciones de Householder en el sistema


incompatible.

Sol : kEk = 3.0651.


4. Autovalores y autovectores

4.1 Conceptos básicos


Definición 4.1 [Variedad lineal invariante]

Una variedad lineal V de Kn se dice que es invariante para una aplicación A


si cualquier vector x ∈ V se transforma, mediante A, en otro vector de V

Ax ∈ V ∀x ∈ V

Las variedades invariantes más simples son aquellas que tienen dimensión 1,
por lo que una base está constituida por un único vector v 6= 0.
Podemos observar que, en ese caso, cualquier vector x ∈ V puede expresarse
de la forma x = αv con α 6= 0 si x 6= 0 y que, por tratarse de una variedad
invariante, ha de ser Ax = βv, pero entonces:
β
Ax = Aαv = αAv = βv =⇒ Av = v = λv
α

Definición 4.2 [Autovalores y autovectores de una matriz]

Las variedades invariantes de dimensión 1 vienen determinadas por un vector


v 6= 0 tal que Av = λv.

Estos vectores reciben en nombre de autovectores o vectores propios de la ma-


triz A y los correspondientes valores de λ reciben el nombre de autovalores o
valores propios de A.

Proposición 4.1 Si v 6= 0 es un autovector de la matriz A asociado al au-


tovalor λ, cualquier vector v proporcional a él, es también autovector de A
asociado a λ.

157
158 Autovalores y autovectores

Demostración. Por ser v un autovector asociado a λ se tiene que Av = λv.


Si x = αv se verifica que

Ax = Aαv = αAv = αλv = λ(αv) = λx

La proposición anterior establece que lo que caracteriza a un autovector no es


su norma ni su sentido, sino su dirección.

Proposición 4.2 Autovectores asociados a autovalores diferentes son lineal-


mente independientes

Demostración. Sean u y v dos autovectores de la matriz A asociados a los


autovalores λ y µ respectivamente con λ 6= µ.

Si u y v fuesen linealmente dependientes se verificarı́a que u = αv con α 6= 0.


Entonces:
λu = Au = A(αv) = αAv = αµv = µ(αv) = µu
y por tanto (λ − µ)u = 0, pero dado que u 6= 0 se tiene que λ = µ en contra
de la hipótesis de que λ 6= µ, lo que prueba el resultado.

Los autovalores de una matriz son, en general, números complejos. Sin em-
bargo, las matrices hermı́ticas (en el caso real, las simétricas) tienen todos sus
autovalores reales como prueba el siguiente teorema.

Teorema 4.3 Los autovalores de una matriz hermı́tica son todos reales y au-
tovectores correspondientes a dos autovalores diferentes son ortogonales.

Demostración. Sea A una matriz hermı́tica, es decir, una matriz tal que
A∗ = A y sea λ un autovalor de A asociado al autovector x. Se verifica
entonces que Ax = λx.
Multiplicando la expresión anterior, por la izquierda por x∗ obtenemos que

x∗ Ax = x∗ λx = λx∗ x (4.1)

Trasponiendo y conjugando la expresión (4.1) obtenemos

(x∗ Ax)∗ = (λx∗ x)∗ =⇒ x∗ A∗ x = λ̄x∗ x =⇒ x∗ Ax = λ̄x∗ x (4.2)

Si comparamos las expresiones (4.1) y (4.2) obtenemos que

λx∗ x = λ̄x∗ x
Conceptos básicos 159

y dado que x es un autovector (un vector no nulo) sabemos que x∗ x = kxk2 6= 0,


por lo que podemos dividir por x∗ x para obtener que λ = λ̄, es decir, λ ∈ R.
Por otra parte, si x e y son autovectores asociados a dos autovalores λ 6= µ de
una matriz hermı́tica A se verifica que

Ax = λx =⇒ (Ax)∗ = (λx)∗ =⇒ x∗ A = λx∗


x∗ Ay = λx∗ y =⇒ x∗ µy = λx∗ y =⇒ µx∗ y = λx∗ y =⇒ (λ − µ)x∗ y = 0
y dado que λ 6= µ =⇒ λ − µ 6= 0 obtenemos que

x∗ y = 0 ⇐⇒ x ⊥ y

Teorema 4.4 Si A una matriz regular y λ un autovalor suyo asociado al


autovector v, se verifica que 1/λ es un autovalor de A−1 asociado al mismo
autovector v.

Demostración. Si λ es un autovalor de A asociado a v sabemos que Av = λv.


Al tratarse de una matriz invertible (det(A) 6= 0) sus autovalores son todos
no nulos, por lo que podemos dividir por λ y multiplicar por A−1 la última
1
igualdad para obtener que A−1 v = v es decir, 1/λ es un autovalor de A−1
λ
asociado a v.

Teorema 4.5 Si λ es un autovalor de una matriz A asociado a un autovector


v y α una constante cualquiera se verifica que λ − α es un autovalor de la
matriz A − αI asociado al mismo autovalor v.

Demostración. Sabemos, por hipótesis, que Av = λv, por lo que Av − αv =


λv − αv y, por tanto,
(A − αI)v = (λ − α)v
es decir, λ − α es un autovector de A − αI asociado a v.

Teorema 4.6 Si λ es un autovalor de una matriz A asociado a un autovector


v y α (una constante cualquiera) no es autovalor de A entonces 1/(λ − α) es
un autovalor de la matriz (A − αI)−1 asociado al autovector v.

La demostración se basa en los Teoremas 4.4 y 4.5 y se deja al lector.

Sea A una matriz cuadrada de orden n y supongamos que existen V1 , V2 , . . . , Vk


subespacios invariantes tales que Kn = V1 ⊕ V2 ⊕ · · · ⊕ Vk .
160 Autovalores y autovectores

Si {xi1 , xi2 , . . . , xini } es una base de Vi se tiene que

B = {x11 , . . . , x1n1 , x21 , . . . , x2n2 , . . . , xk1 , . . . , xknk }

constituye una base de Kn . Si P es la matriz del cambio de base de la base


canónica a la base B, se tiene que
 
J1 Θ ··· Θ
 Θ J2 · · · Θ 
 
P −1 AP =  .. .. . . . 
 . . . .. 

Θ Θ · · · Jk

donde cada Ji es una caja cuadrada de dimensión ri = dim(Vi ).


La justificación es que Axij = (0, . . . , 0, αi1 , . . . , αini , 0, . . . , 0)TB con 1 ≤ i ≤ k,
1 ≤ j ≤ ni y, por tanto, puede verse fácilmente que
 
J1 Θ · · · Θ
 Θ J2 · · · Θ 
 
AP = P   .. .. . . . .. 

 . . . 
Θ Θ · · · Jk

Definición 4.3 [Matriz diagonalizable]

Una matriz A se dice que es diagonalizable, si existe una matriz P , llamada


matriz de paso tal que P −1 AP = D siendo D = diag(λ1 , . . . , λn ) la matriz
diagonal cuyos elementos diagonales son los autovalores de la matriz A.

Es obvio que si A posee un autovector es porque existe un vector v 6= 0 tal que


Av = λv, o lo que es lo mismo, tal que (λI − A)v = 0. Por tanto, el sistema
(λI − A)x = 0 es compatible y además indeterminado (infinitas soluciones), ya
que si v 6= 0 es solución del sistema, cualquier vector proporcional a él también
lo es.
Se verifica entonces que rg(λI − A) < n (donde n representa el orden de la
matriz) y, por tanto det(λI − A) = 0.

Definición 4.4 [Polinomio caracterı́stico]

Al polinomio p(λ) = det(λI − A) se le denomina polinomio caracterı́stico de


la matriz A y a la ecuación p(λ) = 0 ecuación caracterı́stica.
Conceptos básicos 161

Nótese que si λ es una raı́z de la ecuación caracterı́stica de la matriz A, existe


un autovector v asociado al autovalor λ. Por tanto, desde el punto de vista
teórico, el problema del cálculo de los autovectores de una matriz se reduce
a la resolución de los sistemas (λi I − A)x = 0 obtenidos para las diferentes
raı́ces λi de la ecuación caracterı́stica.
Es decir, el cálculo de los autovectores de una matriz, una vez calculados los
autovalores, se reduce, teóricamente, a la resolución de un sistema de ecuacio-
nes por cada autovalor.
Trataremos, por tanto, en primer lugar, de calcular sus autovalores a partir
de la propiedad de ser las raı́ces del polinomio caracterı́stico de la matriz.
Es decir, dada una matriz cuadrada A de orden n pretendemos calcular su
polinomio caracterı́stico P (λ) = det(λI − A) para, posteriormente, hallar sus
raı́ces mediante alguno de los métodos de resolución de ecuaciones estudiados.
Al ser P (λ) = det(λI − A) su obtención conlleva el cálculo de un determinante
de orden n que no es numérico, pues contiene al parámetro λ, lo cual no es
fácil de realizar.

¿Cómo evitar el cálculo del determinante con el parámetro λ?

Método interpolatorio para la obtención del polinomio carac-


terı́stico

Este método consiste en dar n valores a λ, para calcular n determinantes y,


posteriormente, resolver el sistema de n ecuaciones con n incógnitas resultante.

Sea P (λ) = det(λI − A) = λn + a1 λn−1 + · · · + an−2 λ2 + an−1 λ + an .


Dando a λ n valores λ1 , λ2 , . . . , λn se tiene que:

λ = λ1 =⇒ λn1 + a1 λn−1 1 + · · · + an−2 λ21 + an−1 λ1 + an = det(λ1 I − A)


λ = λ2 =⇒ λn2 + a1 λn−1 2 + · · · + an−2 λ22 + an−1 λ2 + an = det(λ2 I − A)
.........................................................................
.........................................................................
λ = λn =⇒ λnn + a1 λn−1 n + · · · + an−2 λ2n + an−1 λn + an = det(λn I − A)

donde det(λi I − A) 1 ≤ i ≤ n son determinantes numéricos.

La solución del sistema resultante nos proporciona los coeficientes del polino-
mio caracterı́stico.
162 Autovalores y autovectores

 
1 3 2 5
 4 2 −1 0 
Ejemplo 4.1 Dada la matriz A =  , su polinomio ca-
 
 0 1 0 1 
2 −2 −1 1
4 3 2
racterı́stico es de grado cuatro P (λ) = λ + a1 λ + a2 λ + a3 λ + a4 , por lo que
vamos a dar a λ cuatro valores:
λ= 0 =⇒ a4 = det (−A) = 41
λ= 1 =⇒ 1 + a1 + a2 + a3 + a4 = det(I − A) = 74
λ = −1 =⇒ 1 − a1 + a2 − a3 + a4 = det(−I − A) = −20
λ= 2 =⇒ 16 + 8a1 + 4a2 + 2a3 + a4 = det(2I − A) = 67
dado que a4 = 41 el sistema se reduce a

a1 + a2 + a3 = 32  


−a1 + a2 − a3 = −62 =⇒ a1 = −4, a2 = −15 y a3 = 51



8a1 + 4a2 + 2a3 = 10 
por lo que su polinomio caracterı́stico es
P (λ) = λ4 − 4λ3 − 15λ2 + 51λ + 41 

4.2 Matrices normales


Un ejemplo de matriz, de orden n, no diagonalizable lo constituyen las matrices
de la forma  
0
 
 0 In−1 
A=  0


 
0 0 0 0
cuyo polinomio caracterı́stico es PA (λ) = λn y por tanto, con sus n autovalores
nulos.
Si introducimos en la matriz una perturbación y en vez de la matriz A tomamos
la matriz  
0
 
 0 I n−1 
B =A+E =  0


 
ε 0 0 0
Matrices normales 163

siendo ε > 0 muy pequeño (incluso más pequeño que la resolución del orde-
nador) se obtiene como polinomio caracterı́stico PB (λ) = λn + (−1)n ε que
posee n raı́ces distintas (las raı́ces n-ésimas de (−1)n−1 ε), por lo resultan muy
sensibles a cualquier perturbación que se produzca en la matriz, por pequeña
que ésta sea.
Nos preguntamos entonces,

¿Cómo afecta una pequeña perturbación a los autovalores de una matriz


diagonalizable?

Teorema 4.7 Sean A una matriz diagonalizable, B = A+E una perturbación


de dicha matriz, λi los autovalores de la matriz A y µ uno cualquiera de los
autovalores de la matriz B con λi 6= µ.

En las condiciones anteriores se tiene que

mı́n |µ − λi | ≤ kP k P −1 kEk = kEkκ(P )



i

donde P representa a la matriz de paso que diagonaliza a la matriz A.

Demostración. Por ser A diagonalizable existe P tal que P −1 AP = D.


Sea x un autovector de B asociado a µ. Entonces Bx = µx o lo que es lo
mismo:

(A + E)x = µx =⇒ (µI − A)x = Ex =⇒ (µI − P DP −1 )x = Ex =⇒

P (µI − D)P −1 x = Ex =⇒ (µI − D)(P −1 x) = P −1 Ex = P −1 EP P −1 x


Supuesto que µ 6= λi cualquiera que sea i = 1, 2, . . . , n, la matriz µI − D es
regular, por lo que

P −1 x = (µI − D)−1 (P −1 EP )P −1 x

y para cualquier norma multiplicativa se tiene


−1
P x ≤ (µI − D)−1 P −1 EP P −1 x

es decir
1 ≤ (µI − D)−1 P −1 EP

 
−1 1 1
Dado que (µI − D) = diag ,..., tenemos que
µ − λ1 µ − λn
 
1 −1
1 ≤ máx P kEk kP k
i µ − λi
164 Autovalores y autovectores

por lo que
mı́n |µ − λi | ≤ P −1 kP k kEk = kEkκ(P )

i

Obsérvese que la perturbación cometida en los autovalores depende del número


de condición de la matriz de paso P y dado que esta no es única.
Trataremos de elegir, entre todas las posibles matrices de paso, aquella cuyo
número de condición sea mı́nimo.

Corolario 4.8 Si A es unitariamente diagonalizable (diagonalizable mediante


una matriz de paso unitaria), la perturbación producida en los autovalores es
menor o igual que la perturbación producida en la matriz.
mı́n |µ − λi | ≤ kEk
i

Por tanto, las mejores matrices para el cálculo efectivo de sus autovalores y
autovectores son las diagonalizables unitariamente y éstas reciben el nombre
de matrices normales.

Es evidente que no podemos estudiar si una matriz es normal calculando sus


autovalores y autovectores para comprobar que se puede diagonalizar por se-
mejanza mediante una matriz de paso unitaria (matriz constituida por una
base ortonormal de autovectores).

Es necesario, por tanto, encontrar alguna forma de detectar si una matriz es,
o no es, normal sin necesidad de calcular sus autovalores y autovectores para
ver si es posible diagonalizarla mediante una matriz de paso unitaria.

Caracterización de las matrices normales

Proposición 4.9 Sea T una matriz triangular. Si T ∗ T = T T ∗ entonces T es


diagonal.

Demostración. Probaremos que se trata de una matriz diagonal por in-


ducción en el orden de la matriz.
Para n = 1 es obvio.
! !
a b a 0
Para n = 2 es T = =⇒ T ∗ = .
0 c b c
! ! !
a 0 a b |a|2 ab
T ∗T = =
b c 0 c ab |b| + |c|2
2
Matrices normales 165

! ! !
a b a 0 |a|2 + |b|2 bc
TT∗ = =
0 c b c bc |c|2
Dado que T ∗ T = T T ∗ , igualando ambas matrices se obtiene que |b|2 = 0 es
decir b = 0 y, por tanto, T es diagonal.

Supongamos ahora que el teorema es cierto para cualquier matriz triangular


con T ∗ T = T T ∗ de orden n y vamos a probarlo para otra de orden n + 1.
   
a1 a2 · · · an+1 a1 0 · · · 0
   
 0  ∗
 a2 
Sean T =   . .  y T = .
 .

 . Tn  . Tn∗
 
 
0 an+1
 n+1
X

!
2
|ai | |a1 |2
TT∗ =  T ∗T =
 
i=1
Tn∗ T

Tn Tn∗

De la igualación de ambas obtenemos que

T T ∗ = T ∗ T =⇒ |a2 |2 + · · · + |an+1 |2 = 0 =⇒ a2 = a3 = · · · = an+1 = 0

Como, además, es Tn Tn∗ = Tn∗ Tn , por hipótesis de inducción sabemos que Tn


es diagonal y, por tanto, T es diagonal.

Teorema 4.10 [Teorema de Schur]

Cualquier matriz cuadrada A es unitariamente semejante a una triangular


superior T . Es decir, existe una unitaria U tal que

U ∗ AU = T.

Demostración. Aplicamos inducción en el orden de la matriz A.


Si n = 1 e obvio. Supuesto cierto para n vamos a probarlo para una matriz
de orden n + 1.
Sean A ∈ K(n+1)×(n+1) , λ un autovalor de A y x un autovector asociado a λ
con kxk = 1.
Consideremos la matriz P = (x e2 · · · en ) en la que sus columnas x, e2 , . . . , en
constituyen una base ortonormal de Kn+1
!
λ α ij
P ∗ AP =
Θ An
166 Autovalores y autovectores

!
1 Θ
Sea Q = en donde Un es la matriz unitaria que, por hipótesis de
Θ Un
inducción, verifica que Un∗ An Un = Triangular superior.
Si consideremos la matriz U = P Q es fácil comprobar que U ∗ AU = Q∗ P ∗ AP Q
es una triangular superior.

Teorema 4.11 [Caracterización de las matrices normales]

Una matriz A es normal si, y sólo si, AA∗ = A∗ A.

Demostración. Supongamos que AA∗ = A∗ A. Por el Teorema 4.10 sabemos


que existe una matriz unitaria U tal que U ∗ AU = T con T triangular superior.
Entonces A = U T U ∗ , por lo que
)
∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗
AA = (U T U )(U T U ) = U T U U T U = U T T U
∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗
=⇒ T T ∗ = T ∗ T
A A = (U T U ) (U T U ) = U T U U T U = U T T U
por lo que al ser T una matriz normal y triangular, la Proposición 4.9 nos
asegura que es diagonal y, por tanto, A es diagonalizable unitariamente, es
decir, es normal.

Recı́procamente, si A es unitariamente diagonalizable (normal) existe una ma-


triz unitaria U tal que U ∗ AU = D o lo que es lo mismo, A = U DU ∗ .
)
AA∗ = U DU ∗ (U DU ∗ )∗ = U DD∗ U ∗ = U diag(|d1 |2 , . . . , |dn |2 )U ∗
=⇒
A∗ A = (U DU ∗ )∗ U DU ∗ = U D∗ DU ∗ = U diag(|d1 |2 , . . . , |dn |2 )U ∗
AA∗ = A∗ A

¿Cómo podemos prever el comportamiento de los autovalores ante una pertur-


bación cuando la matriz no es normal?
En otras palabras, ¿cómo estudiar el condicionamiento de una matriz para el
cálculo de sus autovalores?

• Desviación de la normalidad
Por el Teorema 4.10 cualquier matriz cuadrada A es unitariamente se-
mejante a una triangular superior T donde
     
t11 t12 · · · t1n t11 0 · · · 0 0 t12 · · · t1n
 0 t22 · · · t2n 0 t22 · · · 0 0 0 · · · t2n 
     
   
T =
 .. .. . . .. = .. .. . . .. + .. .. . . . 
 . . . . . . . . . . . .. 
    
   
0 0 · · · tnn 0 0 · · · tnn 0 0 ··· 0
Matrices normales 167

Es decir, T = D + M y, obviamente, A es normal si, y sólo si, M = Θ.


La norma de la matriz M recibe el nombre de desviación de la normalidad
y nos va a medir el condicionamiento del problema.
Además, kM k2 no depende de U ni de T sino sólo de A ya que
n
X
kM k22 = kT k22 − kDk22 = kU ∗ AU k22 − kDk22 = kAk22 − |λi |2 =⇒
i=1
v
u n
X
2
|λi |2
u
kM k2 = kAk2 −
t
i=1

• Matriz conmutatriz

Hemos visto que A es normal si, y sólo si,


A∗ A = AA∗ ⇐⇒ A∗ A − AA∗ = Θ

Se denomina matriz conmutatriz de una matriz cuadrada A a la matriz


C(A) = A∗ A − AA∗
Evidentemente, A no es normal si A∗ A − AA∗ 6= Θ.
La matriz C(A) = A∗ A − AA∗ se le llama matriz conmutatriz y su norma
euclı́dea también nos permite medir el condicionamiento del problema.

Ambas formas de medir el condicionamiento están relacionadas como muestra


el siguiente resultado:

Teorema 4.12 Dada una matriz A ∈ Kn×n se verifica:

kC(A)k22 2
• 2 ≤ kM k2 Desigualdad de Eberlein.
6 kAk2
r
n3 − 3
• kM k22 ≤ kC(A)k22 Desigualdad de Heurici.
12

Teorema 4.13 [Teorema espectral para matrices hermı́ticas]

Sea A una matriz hermı́tica de orden n. Existe una base de Cn constituida


por autovectores de A. Dicho de otra forma, toda matriz hermı́tica es diago-
nalizable por semejanza (es normal).
168 Autovalores y autovectores

4.3 Métodos iterados para la obtención de au-


tovalores y autovectores
Los métodos que veremos a continuación tratan de encontrar una sucesión
convergente cuyo lı́mite nos permitirá conocer los autovalores y autovectores
de una matriz dada. El primero que estudiaremos consiste en buscar una
sucesión de vectores que convergen a la dirección del autovector asociado al
autovalor de mayor módulo de la matriz dada.
Vamos a comenzar, por ello, a estudiar cómo podemos aproximar el autovalor
correspondiente a un determinado autovector cuando lo que conocemos es una
aproximación de éste.

Cociente de Rayleigh

Si nos limitamos a calcular la sucesión (xn ) hasta obtener una aproximación x


adecuada del autovector podemos obtener el autovalor resolviendo el sistema
vectorial λ x = Ax. Este sistema resulta, en general, incompatible por no
ser x exactamente un autovector sino sólo una aproximación, por lo que la
solución que mejor se ajusta es la pseudosolución del sistema, que nos dará
una aproximación del autovalor λ.
x∗ Ax
λ x∗ x = x∗ Ax =⇒ λ =
x∗ x

Definición 4.5 [Cociente de Rayleigh]

Dada una matriz cuadrada A y un vector x, se denomina cociente de Rayleigh



del vector x respecto de la matriz A al cociente xx∗Ax
x
.

Podemos, por tanto, obtener una aproximación del autovector por un método
iterado para más tarde aproximar el autovalor mediante el cociente de Ray-
leigh.

4.3.1 Método de la potencia simple y variantes


Método de la potencia simple

Sea A ∈ Rn×n una matriz diagonalizable y supongamos que sus autovalores


verifican que:
|λ1 | > |λ2 | ≥ · · · ≥ |λn |
en cuyo caso diremos que λ1 es el autovalor dominante de la matriz.
Métodos iterados para la obtención de autovalores y autovectores 169

Sea B = {x1 , x2 , · · · , xn } una base de Rn formada por autovectores asociados


a λ1 , λ2 , . . . , λn respectivamente. Se verifica entonces que

A2 xi = A(Axi ) = A(λi xi ) = λi Axi = λi (λi xi ) = λ2i xi

por lo que es fácil probar, por inducción, que

Ak xi = λki xi para cualquier i = 1, 2, . . . , n

Dado un vector z0 ∈ Rn se define, a partir de él, la sucesión (zn ) con

zn = Azn−1 = A2 zn−2 = · · · = An z0 .

Si las coordenadas del vector z0 respecto de la base B son (α1 , α2 , . . . , αn ) se


tiene que z0 = α1 x1 + α2 x2 + · · · + αn xn , por lo que

zk = Ak z0 = Ak (α1 x1 + · · · + αn xn ) = α1 Ak x1 + · · · + αn Ak xn =
" n  k #
X λ i
= λk1 α1 x1 + · · · + λkn αn xn = λk1 α1 x1 + αi xi
i=2
λ 1

 k
λi
Dado que |λ1 | > |λi | se tiene que lim =0 ∀i = 2, 3, . . . , n.
k→∞ λ1
zk
Se verifica entonces que lim = α1 x1 que es un autovector de A asociado al
k→∞ λk
1
autovalor λ1 .
Si k es suficientemente grande, se tiene

Azk = zk+1 ≈ λk+1 k


1 α1 x1 = λ1 (λ1 α1 x1 ) = λ1 zk

por lo que la sucesión (zn ) nos proporciona un método para aproximar el


autovalor λ1 .
Teniendo en cuenta que, para valores de k suficientemente grandes se verifica
que
Azk = zk+1 ≈ λ1 zk (4.3)
el método no convergerá a un vector en concreto ya que

zk+1 ≈ λ1 zk 6= zk .

Ahora bien, dado que zk+1 y zk tienen la misma dirección, ambos representan
al autovector buscado.
170 Autovalores y autovectores

Geométricamente la matriz A transforma al vector zk (para valores de k su-


ficientemente grandes, en otro proporcional a él y dado que se verifica la
ecuación (4.3) ese factor de proporcionalidad es precisamente el autovalor bus-
cado λ1 .

Escalado

Si |λ1 | > 1 la sucesión (zn ) converge a una dirección determinada (la del
autovector), pero las normas de los vectores van creciendo llegando a diverger
a un vector de coordenadas infinitas. Si, por el contrario, |λ1 | < 1, la sucesión
(zn ) converge al vector nulo. Es decir: en ninguno de los dos casos podremos
calcular ni el autovalor ni el autovector.
Como sólo nos interesa la dirección y los vectores de la sucesión (zn ) convergen
a una determinada dirección, podemos dividir o multiplicar en cada paso el
vector zk por una constante sin que ello modifique su dirección. Con ello
conseguiremos que la sucesión (zn ) converja a un autovector asociado a λ1 .
Este proceso de modificar las normas de los vectores recibe el nombre de
escalado.
La cantidad por la que se escala puede ser arbitraria, pero lo más útil es escalar
por la coordenada de mayor módulo.
zk
De esa forma los vectores escalados wk y wk+1 = al ser muy próximos
kzk k∞
tendrán la coordenada de mayor módulo en en la misma posición y además
valdrán 1 por lo que se evita el problema de la divergencia a infinito o la
convergencia al vector nulo. Además, dado que llamando α al factor de pro-
porcionalidad se verifica que
αwk = zk = Awk−1
el factor de proporcionalidad α existente entre los vectores zk y wk es precisa-
mente el autovalor λ1 buscado. En otras palabras, escalando los vectores por
su coordenada de mayor módulo, el proceso converge a un autovector cuya
coordenada de mayor módulo (antes de escalar) es el autovalor buscado.

Ejemplo 4.2 Para calcular, por el método de la potencia simple, el autovalor


de mayor valor absoluto de la matriz
 
6 2 5
A= 2 2 3 
 

5 3 6

partiendo del vector z0 = (1 1 1)T obtenemos:


Métodos iterados para la obtención de autovalores y autovectores 171

       
13.0000 11.5714 11.6824 11.7013
z1 =  7.0000  z2 =  5.8571  z3 =  5.8706  z4 =  5.8748 
       

14.0000 12.1429 12.2118 12.2254


     
11.7039 11.7042 11.7042
z5 =  5.8753  z6 =  5.8754  z7 =  5.8754
     

12.2273 12.2275 12.2275

El vector z7 es una aproximación del autovector asociado al autovalor domi-


nante. Su coordenada de mayor módulo es 12.2275, por lo que λ1 ≈ 12.2275.
No obstante, dado que no hemos obtenido el lı́mite sino una aproximación, no
todas sus coordenadas tendrán el mismo factor de proporcionalidad (variará
en poco, pero variará), por lo que es más correcto decir: si z7 es un autovector
asociado a λ es porque Az7 = λz7 , sistema que, en general es incompatible,
por lo que buscamos λ resolviendo el sistema superdeterminado en término de
mı́nimos cuadrados, es decir, mediante el cociente de Rayleigh.

z7T Az7
λ1 = T = 12.22753579693696. 
z7 z7

Algoritmo de la Potencia Simple

z = ones(length(A),1);
w = zeros(length(A),1);
n = 0;
while norm(z-w)>10^ (-14)
n = n + 1;
w = z;
z = A*w;
for i = 1:length(A)
if abs(z(i)) == max(abs(z))
break
end
end
z= z/z(i);
end
n
autovalor = (z’*A*z)/(z’*z)
Error = norm(A*z-autovalor*z)
172 Autovalores y autovectores

Ejecutando este algoritmo con MatLab para la matriz del Ejemplo 4.2 obtene-
mos la aproximación 12.22753579693706 del autovalor con un error del orden
de 1.986027322597819 · 10−15 en 17 iteraciones.

Una forma de acelerar el proceso es la siguiente: una vez calculado el va-


lor de wn (vector zn escalado) aproximar el autovector mediante el sistema
homogéneo (A − λI)wn = 0 donde λ es la aproximación obtenida para el auto-
valor mediante el cociente de Rayleigh aplicado a la matriz A y el vector wn .
Esta aproximación del autovector es la que utilizaremos en el siguiente paso
del método de la potencia simple.
Hay que tener cuidado ya que puede darse le caso de que al aproximar el
autovalor mediante el cociente de Rayleigh (cuando el vector wn está aún
distante del autovector) nos acerquemos a otro autovalor de la matriz y, al
final, el proceso nos conduzca a un autovalor diferente del dominante.

Algoritmo de la Potencia Simple Mejorado

z = ones(length(A),1);
w = zeros(length(A),1);
n = 0;
while norm(z-w)>10^ (-14)
n = n + 1;
w = z;
z = A*w;
l=(z’*A*z)/(z’*z);
if rcond(A-l*eye(length(A)))>10^ (-15)
z = (A-l*eye(length(A)))z;
end
for i = 1:length(A)
if abs(z(i)) == max(abs(z))
break
end
end
z= z/z(i);
end
n
autovalor = (z’*A*z)/(z’*z)
Error = norm(A*z-autovalor*z)
Métodos iterados para la obtención de autovalores y autovectores 173

Ejecutando este algoritmo con MatLab para la matriz del Ejemplo 4.2 obtene-
mos la aproximación 12.22753579693706 del autovalor con un error del orden
de 2.664535259100376 · 10−15 en tan sólo 4 iteraciones, frente a las 17 que eran
necesarias con algoritmo anterior.
Este método sólo nos permite calcular, en caso de existir, el autovalor do-
minante de una matriz. Existen sin embargo otras variantes del método de
la potencia simple que nos permiten calcular cualquiera de sus autovalores a
partir de una aproximación de ellos. Debido a la existencia de dichas variantes
es por lo que el método estudiado anteriormente es conocido como método de
la potencia simple para distinguirlo de los que estudiaremos a continuación.

Método de la potencia inversa

Sea A ∈ Rn×n una matriz diagonalizable regular para la que sus autovalores
verifican que:
0 < |λ1 | < |λ2 | ≤ · · · ≤ |λn | (4.4)

Los autovalores µ1 , µ2 , . . . , µn de la matriz A−1 son los inversos de los autova-


lores de A,
1
µi = para i = 1, 2, . . . , n.
λi

Invirtiendo la expresión (4.4) nos queda

1 1 1
> ≥ ··· ≥ ⇐⇒ |µ1 | > |µ2 | ≥ · · · ≥ |µn |
|λ1 | |λ2 | |λn |

es decir, el autovalor de menor valor absoluto de la matriz A se corresponde


con el de mayor valor absoluto de A−1 , por lo que aplicando el método de
la potencia simple a la matriz A−1 obtenemos el autovalor de menor valor
absoluto de la matriz A.

Obsérvese que debemos ir calculando, en cada paso, los vectores zn = A−1ωn−1


zn
y ωn = . Pues bien, el cálculo de zn se realiza resolviendo, por alguno
kzn k∞
de los métodos estudiados, el sistema Azn = ωn−1 lo que nos evita calcular
A−1 y arrastrar los errores que se cometan a lo largo de todo el proceso.

Este método es conocido como método de la potencia inversa y nos permite


calcular, en caso de existir, el autovalor de menor valor absoluto de una matriz
invertible A.
174 Autovalores y autovectores

Ejemplo 4.3 Para calcular, por el método de la potencia inversa, el autovalor


de menor valor absoluto de la matriz del Ejemplo 4.2 aplicamos el método de
la potencia inversa y partiendo del vector z0 = (1 1 1)T obtenemos:

       
0.5000 1.6667 1.8846 1.9106
z1 =  1.5000  z2 =  4.3333  z3 =  4.7308  z4 =  4.7724
       

−1.0000 −3.6667 −4.0769 −4.1220
       
1.9140 1.9144 1.9145 1.9145
z5 =  4.7777  z6 =  4.7784  z7 =  4.7785  z8 =  4.7785
       

−4.1278 −4.1285 −4.1286 −4.1287
 
1.9145
z9 =  4.7785
 

−4.1287

Tenemos, por tanto, que z9 es una aproximación al autovector asociado al


autovalor de menor valor absoluto de la matriz A, por lo que el cociente de
Rayleigh nos proporcionará una aproximación de éste.
z9T Az9
λ3 = = 0.20927063325837. 
z9T z9

Algoritmo de la Potencia Inversa

z = ones(length(A),1);
w = zeros(length(A),1);
n = 0;
while norm(z-w)>10^ (-14)
n = n + 1;
w = z;
z = A\w;
for i = 1:length(A)
if abs(z(i)) == max(abs(z))
break
end
end
z= z/z(i);
end
n
autovalor = (z’*A*z)/(z’*z)
Error = norm(A*z-autovalor*z)
Métodos iterados para la obtención de autovalores y autovectores 175

Al igual que hicimos con el método de la potencia simple, podemos acelerar la


convergencia del método de la potencia inversa.

Algoritmo de la Potencia Inversa Mejorado

z = ones(length(A),1);
w = zeros(length(A),1);
n = 0;
while norm(z-w)>10^ (-14)
n = n + 1;
w = z;
z = A\w;
l=(z’*A*z)/(z’*z);
if rcond(A-l*eye(length(A)))>10^ (-15)
z = (A-l*eye(length(A)))z;
end
for i = 1:length(A)
if abs(z(i)) == max(abs(z))
break
end
end
z = z/z(i);
end
n
autovalor = (z’*A*z)/(z’*z)
Error = norm(A*z-autovalor*z)

Para la matriz de nuestro Ejemplo 4.2 obtenemos, con MatLab, mediante el al-
goritmo del método de la potencia inversa, la aproximación 0.20927063325837
del autovalor de menor módulo con un error 5.119756492560000 · 10−16 en 18
iteraciones, mientras que con el mejorado, obtenemos, en tan solo 8 iteraciones,
la misma aproximación con un error del orden de 9.723368807669973 · 10−16 .

Veamos, por último, una nueva variante de este método nos permite calcular
un autovalor cualquiera de una matriz regular A a partir de una aproximación
suya. Sin embargo, hay que tener en cuenta que si el autovalor que vamos a
aproximar es múltiple o existen otros con el mismo módulo aparecen dificul-
tades que sólo podremos solventar utilizando otros métodos.
176 Autovalores y autovectores

Método de la potencia inversa con desplazamiento

Consideremos una matriz A regular tal que todos sus autovalores tengan dife-
rente módulo y supongamos conocida una aproximación α de un determinado
autovalor λk . Si la aproximación es buena se verificará que |λk − α| < |λi − α|
para cualquier i = 1, 2, . . . n con i 6= k.
Dado que 1/(λi − α) son los autovalores de A − αI y ésta posee un autovalor
(λk − α) de menor valor absoluto que los demás, el método de la potencia
1
inversa nos proporcionará el valor µk = pudiéndose, a partir de éste
λk − α
último, hallar el valor de λk .
Está variante es conocida como método de la potencia inversa con desplaza-
miento.

Ejemplo 4.4 Supongamos ahora que sabemos que el otro autovalor de la


matriz A del Ejemplo 4.2 es aproximadamente 1.5.
Para calcular dicho autovalor, por el método de la potencia inversa con des-
plazamiento, aplicamos el método de la potencia inversa a la matriz
 
4.5 2 5
(A − 1.5I) =  2 0.5 3 
 

5 3 4.5

Partiendo del vector z0 = (1 1 1)T obtenemos:

       
−3.1429 −15.8701 −15.8499 −15.8233
z1 =  2.5714  z2 =  13.8442  z3 =  13.7466  z4 =  13.7272 
       

2.0000 8.5455 8.5663 8.5501


     
−15.8244 −15.8244 −15.8244
z5 =  13.7280  z6 =  13.7279  z7 =  13.7279 
     

8.5508 8.5508 8.5508

Tenemos, por tanto, que z7 es una aproximación al autovector asociado al


autovalor buscado, por lo que

z7T Az7
λ2 = T = 1.56319356980456.
z7 z7 
Métodos iterados para la obtención de autovalores y autovectores 177

Algoritmo de la Potencia Inversa con


Desplazamiento

z = ones(length(A),1);
w = zeros(length(A),1);
n = 0;
while norm(z-w)>10^ (-14)
n = n + 1;
w = z
z = (A-αI)\w;
for i = 1:length(A)
if abs(z(i)) == max(abs(z))
break
end
end
z = z/z(i);
end
n
autovalor = (z’*A*z)/(z’*z)
Error = norm(A*z-autovalor*z)

Para la matriz del Ejemplo 4.2 y conociendo que tiene un autovalor próximo
a 1.5, el algoritmo de la potencia inversa con desplazamiento, ejecutado con
MatLab, nos proporciona la aproximación 1.56319356980457 del autovalor con
un error de 3.845925372767128 · 10−16 en 12 iteraciones.
También, en este caso, podemos hacer la misma mejora que en los anteriores
algoritmos.
178 Autovalores y autovectores

Algoritmo de la Potencia Inversa con


Desplazamiento Mejorado

z = ones(length(A),1);
w = zeros(length(A),1);
n = 0;
while norm(z-w)>10^ (-14)
n = n + 1;
w = z;
z = (A-αI)\w;
l=(z’*A*z)/(z’*z);
if rcond(A-l*eye(length(A)))>10^ (-15)
z = (A-l*eye(length(A)))z;
end
for i = 1:length(A)
if abs(z(i)) == max(abs(z))
break
end
end
z = z/z(i);
end
n
autovalor = (z’*A*z)/(z’*z)
Error = norm(A*z-autovalor*z)

Este algoritmo mejorado nos proporciona la aproximación 1.56319356980456


del autovalor con un error de 5.978733960281817 · 10−16 en tan solo 3 iteracio-
nes.

4.3.2 Algoritmo QR de Francis


Dada una matriz A ∈ Kn×n , se pretende encontrar una sucesión de matrices
(An )n∈N convergente a la matriz triangular de Schur T (en cuya diagonal
aparecen los autovalores de la matriz A).
La construcción de dicha sucesión se hace de la siguiente manera: A0 = A.
Supuesta encontrada An , se realiza la factorización An = Qn Rn mediante
matrices de Householder y An+1 = Rn Qn . En otras palabras:
Métodos iterados para la obtención de autovalores y autovectores 179


A0 = A = Q0 R0 


A1 = R0 Q0 = Q∗0 AQ0 = Q1 R1




A2 = R1 Q1 = Q∗1 Q∗0 AQ0 Q1 = Q2 R2



.. =⇒
. 


An+1 = Rn Qn = Q∗n · · · Q∗1 Q∗0 AQ0 Q1 · · · Qn = Qn+1 Rn+1




.. 

.

An+1 = (Q0 Q1 · · · Qn )∗ A(Q0 Q1 · · · Qn )


Al ser An semejante a A cualquiera que sea n ∈ N, todas las matrices de las
sucesión tienen los mismos autovalores.

Si λ1 , λ2 , . . . , λn son los autovalores de una matriz A tales que


|λ1 | > |λ2 | > · · · > |λn | > 0
el algoritmo converge.
En general, si existen autovalores de igual módulo, la sucesión converge a una
matriz triangular por cajas en la que cada caja contiene a los autovalores del
mismo módulo.
En otras palabras,

• Si todos los autovalores tienen distinto módulo el lı́mite de la sucesión


es una matriz triangular superior en la que los elementos de su diagonal
son los autovalores de la matriz.
• Si existen autovalores de igual módulo la matriz lı́mite es una matriz
triangular superior por cajas en la que cada caja de orden k de su diagonal
es una matriz cuyos autovalores son todos los k autovalores de igual
módulo de la matriz A.

Ası́, por ejemplo, si una matriz A de orden 3 tiene un autovalor real


y dos autovalores complejos conjugados (por tanto de igual módulo) de
distinto módulo que el autovalor real se llegarı́a a una matriz del tipo
 
a11 a12 a13
 0 a22 a23 
 

0 a32 a33
!
a22 a23
donde a11 es el autovalor real y los autovalores de la matriz
a32 a33
son los dos autovalores complejos de la matriz A.
180 Autovalores y autovectores

De forma más general, si A es una matriz cualquiera (normal o no), al aplicarle


el algoritmo, la sucesión converge (en la mayorı́a de los casos) a su forma de
Schur.

 
1 2 3
Ejemplo 4.5 Para el cálculo de los autovalores de la matriz A =  2 2 3 
 

3 3 3
se tiene:
   
1 2 3 7 −1.9415 0.6671
A0 = A =  2 2 3  A1 =  −1.9415 −0.5385 0.1850 
   

3 3 3 0.6671 0.1850 −0.4615


   
7.5034 0.3365 0.0344 7.5162 −0.0530 0.0016
A2 =  0.3365 −1.1474 −0.1174  A3 = −0.0530 −1.1758 0.0348 
   

0.0344 −0.1174 −0.3554 0.0016 0.0348 −0.3404


   
7.5165 0.0083 0.0001 7.5165 −0.0013 0.0000
A4 =  0.0083 −1.1775 −0.0100  A5 = −0.0013 −1.1776 0.0029 
   

0.0001 −0.0100 −0.3390 0.0000 0.0029 −0.3389


   
7.5165 0.0002 0 7.5165 0 0
A6 =  0.0002 −1.1776 −0.0008  A7 =  0 −1.1776 0
   

0 −0.0008 −0.3389 0 0 −0.3389
Por lo que los autovalores de la matriz A son:

−1.1776 − 0.3389 y 7.5165 

 
2 3 5

Ejemplo 4.6 La matriz A =  1 4 6  tiene por autovalores 7 y ± 2.
 

−1 3 1
Al tener dos autovalores de igual módulo no converge a una matriz triangular,
sino a la matriz triangular por cajas.
Realizando el proceso con MatLab hemos obtenido en la iteración 31 que
 
7.0000 6.7412 −0.6901
A31 =  −0.0000 0.5797 2.4374 
 

0.0000 0.6826 −0.5798


Métodos iterados para la obtención de autovalores y autovectores 181

por lo que sabemos que un autovalor es 7 y los otros dos son los autovalores
de la matriz !
0.5797 2.4374
B=
0.6826 −0.5798

cuyos autovalores son ± 2. 

4.3.3 Método de Jacobi para matrices simétricas reales


Comenzaremos viendo el método para dimensión dos y, más tarde, generaliza-
remos para una dimensión cualquiera.
!
a b
Dada una matriz simétrica y real A = el método trata de buscar un
b c
!
cos α sen α
valor para α de tal forma que la rotación P = haga que
− sen α cos α
la matriz P −1 AP sea diagonal.
! ! ! !
cos α − sen α a b cos α sen α ∗ 0
P −1 AP = =
sen α cos α b c − sen α cos α 0 ∗
Se debe verifica, por tanto, que
(a − c) cos α sen α + b(cos2 α − sen2 α) = 0
es decir:
b(cos2 α − sen2 α) = (c − a) cos α sen α
π
Si c = a basta tomar α = .
4
Si c 6= a podemos dividir por c − a y obtenemos que
2b 2 cos α sen α sen 2α
= 2 2
= = tg 2α
c−a cos α − sen α cos 2α
2b
Llamando m = se tiene que tg 2α = m, por lo que
c−a

−1 ± 1 + m2
t = tg α =
m
y, a partir del valor de t obtenido, se pueden calcular
1 t
cos α = √ y sen α = √
1 + t2 1 + t2
valores, estos últimos, que nos permiten determinar la matriz P .
182 Autovalores y autovectores

Algoritmo de cálculo
!
a b
a) Dada A =
b c

a.1) Si b = 0 FIN.
a.2) Si b 6= 0 y a = c
 √ √   
2/2 2/2 ∗ 0
P = √ √
 y P −1 AP =  . FIN.
− 2/2 2/2 0 ∗

2b −1 ± 1 + m2
b) m = t= .
c−a m
1 t
c) cos α = √ sen α = √ .
1+t 2 1 + t2
   
cos α sen α ∗ 0
P =  y P −1 AP =  . FIN.
− sen α cos α 0 ∗

Para dimensiones superiores sea P la matriz diagonal por bloques


 
Ip−1
P = Tq−p+1
 

In−q
en la que  
cos α sen α
Tq−p+1 =  Iq−p−1
 

− sen α cos α
y todos los demás elementos nulos.

• Si apq = 0, hacemos cos α = 1 y sen α = 0.



2
• Si app = aqq , hacemos cos α = sen α = .
2

2apq −1 ± 1 + m2
• Si app 6= aqq llamando m = y t= hacemos
aqq − app m
1 t
cos α = √ y sen α = √
1 + t2 1 + t2
Métodos iterados para la obtención de autovalores y autovectores 183

Entonces, los elementos que ocupan los lugares pq y qp de la matriz P −1 AP


son nulos.
El método de Jacobi consiste en buscar el elemento apq con p 6= q de mayor
módulo, anularlo mediante una matriz P1 , buscar el siguiente elemento de
mayor módulo y anularlo mediante otra matriz P2 y ası́ sucesivamente hasta
diagonalizar la matriz A.
Dado que las matrices Pk , o matrices de Jacobi, son ortogonales, se verifica
que Pk−1 = PkT por lo que se trata, en definitiva, de buscar P1 , P2 , . . . , Pk de la
forma descrita anteriormente, para obtener

PkT · · · P1T AP1 · · · PK = D

Lo más importante de este método es que el cálculo de las matrices Pi puede


hacerse simultáneamente ya que no se requiere el conocimiento de ninguna de
ellas en el cálculo de cualquier otra. Es decir, el método es paralelizable.
 
1 −2 3 1
 −2 0 4 2 
Ejemplo 4.7 Consideremos la matriz A =   que es
 
 3 4 1 1 
1 2 1 0
simétrica y real.
El elemento extradiagonal de mayor valor absoluto es a23 = 4, por lo que
comenzamos haciendo

2a23 −1 + 1 + m2 1 t
m= t= cos α = √ sen α = √
a33 − a22 m 1 + t2 1 + t2
P23 = I4 p22 = p33 = cos α p23 = −p32 = sen α
obteniéndose  
1 0 0 0
 0 0.7497 0.6618 0 
P23 =
 

 0 −0.6618 0.7497 0 
0 0 0 1
por lo que
 
1 −3.4848 0.9254 1
T
 −3.4848 −3.5311 0 0.8376 
P23 AP23 =
 

 0.9254 0 4.5311 2.0733 
1 0.8376 2.0733 0
184 Autovalores y autovectores

Obsérvese que la transformación de semejanza sólo ha afectado a las filas y


columnas 2 y 3 dejando invariantes a los demás elementos.
T
Si queremos aplicar el método a la matriz P23 AP23 obtenida, utilizando como
referencia el elemento a14 = 1, podemos observar que todos los cálculos nece-
sarios para obtener la nueva matriz P14 podı́amos haberlos realizados al mismo
tiempo que los realizados para P23 ya que sólo necesitamos los valores de los
T
elementos (1, 1), (1, 4), (4, 1) y (4, 4) de la matriz P23 AP23 , que por haber
quedado invariantes son los mismos que los de la matriz A.
Realizando los cálculos necesarios de forma análoga al caso anterior obtenemos
 
0.8507 0 0 −0.5257
 0 1 0 0 
P14 = 
 

 0 0 1 0 
0.5257 0 0 0.8507
T T T
que aplicarı́amos a P23 AP23 para obtener P14 P23 AP23 P14 = P T AP donde la
matriz P viene dada por P = P23 P14 .
Ahora bien, la matriz
 
0.8507 0 0 −0.5257
 0 0.7497 0.6618 0 
P = P23 P14 =
 

 0 −0.6618 0.7497 0 
0.5272 0 0 0.8507

puede ser escrita directamente sin necesidad de construir previamente P23 y


P14 y multiplicarlas.
En resumen, se pueden enviar a un ordenador los valores de a22 , a23 = a32
y a33 para que calcule el ángulo de giro correspondiente y nos devuelva los
valores de p22 = p33 y p23 = −p32 , mientras que de forma simultánea enviamos
a otro ordenador los valores de a11 , a14 y a44 y nos devolverá los de p11 = p44
y p14 = −p41 .
En el ordenador central construimos la matriz P con los datos recibidos y
calculamos
 
1.6180 −2.5240 1.8772 0
 −2.5240 −3.5311 0 2.5445 
P T AP = 
 

 1.8772 0 4.5311 1.2771 
0 2.5445 1.2771 −0.6180

que volveremos a renombrar con A.


Reducción del problema a matrices hermı́ticas 185

A la vista de la matriz enviarı́amos al Ordenador 1 los datos de los elementos


a22 , a24 = a42 y a44 mientras que enviarı́amos al Ordenador 2 los de a11 ,
a13 = a31 y a33 que nos devolverı́an los elementos necesarios para construir
una nueva matriz
 
0.8981 0 0.4399 0
 0 0.8661 0 0.5016 
P =
 

 −0.4399 0 0.8981 0 
0 −0.5016 0 0.8651

y a partir de ella
 
0.6986 −1.6791 0 −1.6230
T
 −1.6791 −5.0065 −1.5358 0 
P AP = 
 

 0 −1.5358 5.4506 0.4353 
−1.6230 0 0.4353 0.8573

Reiterando el proceso llegamos a la matriz


 
2.5892 0 0 0

 0 −5.6823 0 0 

 
 0 0 5.7118 0 
0 0 0 −0.6188

cuyos elementos diagonales son los autovalores de la matriz original. 

4.4 Reducción del problema a matrices hermı́-


ticas
Los autovalores de una matriz normal cualquiera pueden ser reales o com-
plejos mientras que los de una matriz hermı́tica son todos reales, por lo que
si pudiéramos transformar el cálculo de los autovalores de una matriz nor-
mal en los de otra hermı́tica habrı́amos simplificado el problema. Es más,
si pudiéramos transformarlo en el cálculo de los autovalores de una matriz
simétrica real, podrı́amos trabajar en el campo real en vez de hacerlo en el
campo complejo y, entre otras cosas, podrı́amos utilizar el método de Jacobi a
partir de una matriz normal cualquiera, previa transformación en un problema
de autovalores de una matriz simétrica real.
186 Autovalores y autovectores

Proposición 4.14 [Componentes hermı́ticas de una matriz]

Dada cualquier matriz cuadrada A, existen dos matrices hermı́ticas H1 y H2


tales que A = H1 +iH2 las cuales reciben el nombre de componentes hermı́ticas
de la matriz A.

Demostración. Si se quiere que A = H1 + iH2 con H1 y H2 hermı́ticas, se


tendrá que A∗ = H1∗ − iH2∗ = H1 − iH2 , por lo que resolviendo el sistema
resultante se tiene que
A + A∗ A − A∗
H1 = H2 =
2 2i
además, la solución es única.

Teorema 4.15 Sea A = H1 +iH2 una matriz normal con H1 y H2 hermı́ticas.


Si x 6= 0 es un autovector de A asociado al autovalor α + iβ (α, β ∈ R) se
verifica que
H1 x = αx y H2 x = βx

Demostración. Por ser A normal, existe una matriz unitaria U tal que
U ∗ AU = D
 
α + iβ 0 ··· 0
0 α2 + iβ2 ··· 0
 

 
D = U AU =  .. .. ... ..  =⇒
. . .
 
 
0 0 · · · αn + iβn
   
α 0 ··· 0 β 0 ··· 0
0 α2 ··· 0 0 β2 ··· 0
   
  ∗   ∗
A=U .. .. .. ..  U + iU  .. .. .. ..  U =⇒

 . . . .



 . . . .


0 0 · · · αn 0 0 · · · βn

   
α 0 ··· 0 β 0 ··· 0
0 α2 ··· 0 0 β2 ··· 0
   
  ∗   ∗
H1 = U  .. .. ... .. U H2 = U  .. .. .. .. U

 . . .



 . . . .


0 0 · · · αn 0 0 · · · βn
donde H1 y H2 son hermı́ticas. Se tiene entonces que α es un autovalor de
H1 asociado a x (primera columna de U ) y β un autovalor de H2 asociado
también a x.
Reducción del problema a matrices simétricas reales 187

Las componentes hermı́ticas H1 y H2 de una matriz cuadrada A nos propor-


cionan otro método para estudiar si la matriz A es, o no es, normal.

Teorema 4.16 Una matriz cuadrada A es normal si, y sólo si, sus compo-
nentes hermı́ticas conmutan.

A es normal ⇐⇒ H1 H2 = H2 H1

Demostración.
A + A∗ A − A∗ A2 − AA∗ + A∗ A + (A∗ )2
H1 H2 = · =
2 2i 4i
A − A∗ A + A∗ A2 + AA∗ − A∗ A + (A∗ )2
H2 H1 = · =
2i 2 4i

• Si A es normal se verifica que AA∗ = A∗ A por lo que

A + A∗ A − A∗ A2 + (A∗ )2 

H1 H2 = · = 
2 2i 4i


=⇒ H1 H2 = H2 H1
A − A∗ A + A∗ A2 + (A∗ )2 

H2 H1 = · =


2i 2 4i

• Si H1 H2 = H2 H1 se verifica que

A2 − AA∗ + A∗ A + (A∗ )2 = A2 + AA∗ − A∗ A + (A∗ )2

por lo que

−AA∗ + A∗ A = A2 + AA∗ − A∗ A ⇐⇒ 2A∗ A = 2AA∗ ⇐⇒ A∗ A = AA∗

y, por tanto, A es normal.

4.5 Reducción del problema a matrices simé-


tricas reales
Sea H una matriz hermı́tica y sean hij = aij + ibij con 1 ≤ i, j ≤ n sus
elementos.
Podemos descomponer la matriz H de la forma H = A + iB donde A y B son
matrices reales con A = (aij ) y B = (bij ).
188 Autovalores y autovectores

Por ser H hermı́tica se verifica que



 A = AT
A+iB = H = H ∗ = A∗ −iB ∗ = AT −iB T (por ser A y B reales) =⇒
B = −B T

Sea x = a + ib un autovector de H asociado al autovalor α (recuérdese que


α ∈ R por ser H una matriz hermı́tica). Se verifica entonces que

Hx = (A + iB)(a + ib) = (Aa − Bb) + i(Ab + Ba) 

αx = α(a + ib) = αa + iαb




 Aa − Bb = αa
Hx = αx ⇒
Ab + Ba = αb

por lo que ! ! !
A −B a a

B A b b
!
A −B
Obsérvese además que la matriz real es simétrica, ya que
B A
!T ! !
A −B AT B T A −B
= =
B A −B T AT B A
!
A −B
Los autovalores de la matriz son, por tanto, los mismos que los
B A
!
A −B
de H y si un autovector de es (x1 , . . . , xn , xn+1 , . . . , x2n ), el co-
B A
 
rrespondiente autovector de la matriz H es (x1 + ixn+1 ), . . . , (xn + ix2n ) .

Dada una matriz normal calcularemos sus autovalores de la siguiente forma:

Algoritmo de cálculo de los autovalores de una matriz normal

Paso 1 Calcular las componentes hermı́ticas


A + A∗ A − A∗
H1 = y H2 =
2 2i
de la matriz A.
Aplicación al cálculo de las raı́ces de un polinomio 189

Paso 2 Calcular los autovalores λi (1 ≤ i ≤ n) de la primera componente


hermı́tica H1 y sus autovectores asociados vi reduciendo previamente el
problema al caso de matrices reales y simétricas.

vi∗ H2 vi
Paso 3 Calcular los cocientes de Rayleigh µi = .
vi∗ vi
Como los vectores vi (1 ≤ i ≤ n) son también autovectores de H2 , los µi
obtenidos son sus autovalores asociados.

Paso 4 Los autovectores de A son los mismos vectores vi y sus autovalores


asociados vienen dados por λi + iµi .

4.6 Aplicación al cálculo de las raı́ces de un


polinomio
Consideremos el polinomio

P (x) = a0 xn + a1 xn−1 + a2 xn−2 + · · · + an−1 x + an

Dado que el polinomio caracterı́stico de la matriz


 
−a1 /a0 −a2 /a0 · · · −an−1 /a0 −an /a0
 
 0 
A= ..


 In−1 .


0

(donde In−1 representa la matriz unidad de orden n − 1) es precisamente P (x),


la raı́ces de dicho polinomio coinciden con los autovalores de la matriz A, por
lo que dichas raı́ces pueden ser obtenidas, en bloque, mediante un método
iterado de cálculo de autovalores.
Ası́, por ejemplo, MATLAB en su comando roots(P) para calcular las raı́ces
de un polinomio P construye, en primer lugar, la matriz A definida anterior-
mente y se limita luego a calcular sus autovalores aplicando internamente el
comando eig(A) de cálculo de los autovalores de una matriz. Este comando
lo que hace, en primer lugar, es aplicar un algoritmo para llevar la matriz A a
una matriz de Hessenberg y posteriormente aplicarle el algoritmo QR mediante
transformaciones de Householder.
190 Autovalores y autovectores

4.7 Ejercicios resueltos


Ejercicio 4.1 Realizar la descomposición de Schur de la matriz
 
1 0 1
A= 0 1 1 
 

−1 0 −1

Solución: El polinomio caracterı́stico de la matriz A es



λ−1 0 −1

p(λ) = det(λI − A) = 0 λ−1 −1 = λ3 − λ2 = λ2 (λ − 1)


1 0 λ+1
por lo que los autovalores de A son 1 simple y 0 doble.
Para λ = 1 el autovector asociado viene dado por la solución del sistema
     
0 0 1 0 0
(A − I)v = 0 ⇐⇒  0 0 1 v =  0  =⇒ v =  1 
     

−1 0 −2 0 0

Para ampliar hasta una base ortonormal de R3 podemosutilizar losvectores


0 1 0
de la base canónica para obtener la matriz de paso P =  1 0 0 , por lo
 

0 0 1
que  
1 0 1
P −1 AP = P T AP =  0 1 1 
 

0 −1 −1
!
1 1
La submatriz tiene como autovalores el 0 doble y un autovec-
−1 −1
tor asociado a él es el vector (1 − 1)T que puede ser ampliado hasta una
base ortogonal de R2 con el vector (1 1)T por lo que una base ortonor-
2
mal de
 R es le constituida
 por ambos vectores normalizados y, por tanto
1 0 0
1 1
Q= 0 √ √  obteniéndose que
 
2 2
0 − √12 √1
2
 √ √ 
1 − 22 22
QT P T AP Q = U T AU =  0 0 2 
 

0 0 0
Ejercicios resueltos 191

que es una forma de Schur de la matriz A con


 
0 √1 √1
2 2
U = PQ =  1 0 0 
 

0 − √12 √1
2
!
0.6 0.8
Ejercicio 4.2 Comprobar que la matriz U = es unitaria (or-
−0.8 0.6
togonal) y obtener, basándose en ella, una matriz normal A que tenga por
autovalores 2 y 3i. Calcular la conmutatriz de A y comprobar que sus compo-
nentes hermı́ticas conmutan.

Solución:
! ! !
0.6 −0.8 0.6 0.8 1 0
U ∗U = U T U = = =I
0.8 0.6 −0.8 0.6 0 1

Por tanto, la matriz es unitaria.


Si A debe ser normal y ha de tener los autovalores 2 y 3i, tiene que ser
diagonalizable unitariamente y, la matriz diagonal tendrá a los autovalores
en su diagonal.
!
2 0
U ∗ AU = D = =⇒ A = U DU ∗
0 3i
Podemos utilizar cualquier matriz unitaria, por ejemplo, la del enunciado del
ejercicio.
! ! !
0.6 −0.8 2 0 0.6 0.8
A =
0.8 0.6 0 3i −0.8 0.6
!
0.72 + 1.92i −0.96 + 1.44i
= .
−0.96 + 1.44i 1.28 + 1.08i
Hallemos, por último, la conmutatriz de la matriz A.
C(A) = AA∗ − A∗ A = 2i(H2 H1 − H1 H2 )
! !
1 ∗ 0.72 −0.96 1 ∗ 1.92 1.44
H1 = (A + A ) = H2 = (A − A ) =
2 −0.96 1.28 2i 1.44 1.08
! !
0 0 0 0
H1 H2 = =Θ H2 H1 = = Θ =⇒ H1 H2 = H2 H1
0 0 0 0
Por tanto, C(A) = Θ.
192 Autovalores y autovectores

Ejercicio 4.3 Probar, basándose en el teorema de Gerschgorin, que la matriz:


 
9 1 −2 1
 0 8 1 1 
A=
 

 −1 0 7 0 
1 0 0 1

tiene, al menos, dos autovalores reales.

Solución:
Los cı́rculos de Gerschgorin por filas son:

a11 = 9 r1 = 1 + 2 + 1 = 4 '$
 
a22 = 8 r2 = 1 + 1 = 2

1 
7 9

&%
a33 = 7 r3 = 1
a44 = 1 r4 = 1
El cı́rculo C4 (1, 1) es disjunto con los demás:

|a44 − a11 | = 8 > r4 + r1


|a44 − a22 | = 7 > r4 + r2
|a44 − a33 | = 6 > r4 + r3

Por tanto, en él hay un autovalor λ1 y los otros tres se encuentran en C1 ∪


C2 ∪ C3 .
El autovalor λ1 debe ser real ya que, si fuese complejo, su conjugado λ1 también
serı́a autovalor de la matriz(1) y deberı́a pertenecer a C4 cosa que no sucede,
pues en C4 sólo existe un autovalor.
En conclusión: la matriz tiene, al menos, un autovalor real λ1 con 0 ≤ λ1 ≤ 2.
Los tres autovalores restantes no pueden ser complejos ya que P (λ) es una
ecuación polinómica de grado cuatro con coeficientes reales, por lo que debe
existir, al menos, otra raı́z real de P (λ) y, por tanto, la matriz A tiene, al
menos, dos autovalores reales.
!
2 + 3i 1 + 2i
Ejercicio 4.4 Dada la matriz A = se pide:
1 + 2i 2 + 3i
(1)
En una matriz real, P (λ) tiene coeficientes reales y, por tanto, sus raı́ces o son reales o
son complejas conjugadas.
Ejercicios resueltos 193

a) Comprobar que es normal sin calcular la matriz conmutatriz.

b) Calcular sus autovalores a partir de los de sus componentes hermı́ticas.

c) Comprobar que estos autovalores están en el dominio de Gerschgorin.

Solución:
! !
1 2 1 1 3 2
a) H1 = (A + A∗ ) = H2 = (A − A∗ ) =
2 1 2 2i 2 3
! !
8 7 8 7
H1 H2 = H2 H1 = =⇒ H1 H2 = H2 H1 =⇒
7 8 7 8
A es normal.

b) Calculemos, en primer lugar los autovalores y autovectores de sus com-


ponentes hermı́ticas H1 y H2 .

• Componente
H1
λ − 2 −1
P (λ) = = λ2 − 4λ + 3 = (λ − 1)(λ − 3) =⇒

−1 λ − 2

λ11 = 1 y λ12 = 3

Los autovectores viene dados por las soluciones de los sistemas:


– Para λ11 = 1 =⇒ (I − H1 )x = 0
! ! ! !
−1 −1 x1 0 1
= ⇒ x1 + x2 = 0 ⇒ u11 =
−1 −1 x2 0 −1

– Para λ12 = 3 =⇒ (3I − H1 )x = 0


! ! ! !
1 −1 x1 0 1
= ⇒ x1 − x2 = 0 ⇒ u12 =
−1 1 x2 0 1

• Componente H2
Los autovectores son los mismos que los de H1 .
Sus autovalores vienen dados por

uT11 H2 u11 uT12 H2 u12


λ21 = =1 λ22 = =5
uT11 u11 uT12 u12
194 Autovalores y autovectores

La matriz A tiene, por tanto, los autovectores v1 = (1, −1)T y v2 =


(1, 1)T asociados, respectivamente, a los autovalores λ1 = 1 + i y λ2 =
3 + 5i.
c) Dominio de Gerschgorin.
√ 
a11 = 2 + 3i r1 = |1 + 2i| = 5  √
√  =⇒ C1 ∪ C2 ≡ C(2 + 3i, 5).
a22 = 2 + 3i r1 = |1 + 2i| = 5
√ 
d(λ1 , 2 + 3i) = |(1 + i) − (2 + 3i)| = 5 
√  =⇒
d(λ2 , 2 + 3i) = |(3 + 5i) − (2 + 3i)| = 5
Ambos se encuentran en la frontera del dominio.
 
6 2 5
Ejercicio 4.5 Dada la matriz A =  2 2 3  se pide:
 

5 3 6

a) Utilizar el método de la potencia simple para aproximar su autovalor


 T
dominante partiendo del vector z0 = 1 1 1

b) Hacer uso del método de la potencia inversa para, partiendo de z0 , apro-


ximar el autovalor minimante de la matriz A.
c) Sabiendo que una aproximación del tercer autovalor de la matriz A es
1.5, aproximarlo haciendo uso del método de la potencia inversa con
desplazamiento.

Solución:

a) Escalando los vectores zn por su coordenada de mayor valor absoluto


(renombrados como wn ) y haciendo zn+1 = Awn obtenemos:

       
13.0000 11.5714 11.6824 11.7013
z1 =  7.0000  z2 =  5.8571  z3 =  5.8706  z4 =  5.8748 
       

14.0000 12.1429 12.2118 12.2254


     
11.7039 11.7042 11.7042
z5 =  5.8753 z =
 6  5.8754 z =
 7  5.8754
     

12.2273 12.2275 12.2275
por lo que
z7T Az7
λ1 ' ' 12.22753579693696
z7T z7
Ejercicios resueltos 195

b) Escalando los vectores zn (renombrados como wn ) y resolviendo los sis-


temas Azn+1 = wn :
       
0.5000 1.6667 1.8846 1.9106
z1 =  1.5000  z2 =  4.3333  z3 =  4.7308  z4 =  4.7724
       

−1.0000 −3.6667 −4.0769 −4.1220
       
1.9140 1.9144 1.9145 1.9145
z5 =  4.7777 z =
 6  4.7784 z =
 7  4.7785 z =
 8  4.7785
       

−4.1278 −4.1285 −4.1286 −4.1287
 
1.9145
z9 =  4.7785
 

−4.1287

por lo que
z9T Az9
λ3 ' ' 0.20927063325837
z9T z9

c) Escalando los vectores zn (renombrados como wn ) y resolviendo los sis-


temas (A − 1.5 I)zn+1 = wn :

       
−3.1429 −15.8701 −15.8499 −15.8233
z1 =  2.5714  z2 =  13.8442 z3 =  13.7466  z4 =  13.7272 
       

2.0000 8.5455 8.5663 8.5501
     
−15.8244 −15.8244 −15.8244
z5 =  13.7280  z6 =  13.7279 z7 =  13.7279
     
 
8.5508 8.5508 8.5508

por lo que
z7T Az7
λ2 ' T ' 1.56319356980456
z7 z7

!
1 + i −2 + i
Ejercicio 4.6 Dada la matriz A = se pide:
2−i 1+i

!
−i
a) Comprobar que es normal y que v1 = es un autovector de su
1
primera componente hermı́tica H1 asociado al autovalor λ1 = 0.
b) Calcular el otro autovalor (y un autovector asociado) de la matriz H1
aplicando el método de la potencia simple.
196 Autovalores y autovectores

!
x y
c) Considérese la matriz real y simétrica S = . Probar que la
y x
!
cos α sen α
transformación de Jacobi Qt SQ con Q = y α = π/4
− sen α cos α
nos anula los elementos extradiagonales.
d) Transformar el problema del cálculo de los autovalores de la matriz H2
(segunda componente hermı́tica de la matriz A) al del cálculo de los au-
tovalores de una matriz C simétrica real y comprobar que son suficientes
dos transformaciones de Jacobi Q1 y Q2 , del tipo de las del apartado
anterior, para diagonalizar dicha matriz C y obtener los autovalores de
H2 .
e) Obtener, a partir de las columnas de la matriz Q = Q1 Q2 , los autovec-
tores de la matriz H2 . ¿Cuáles son los autovalores de la matriz A?

Solución:

a)
! ! ! 
1−i 2+i 1 + i −2 + i 7 6i
A∗ A =

= 

−2 − i 1 − i 2−i 1+i −6i 7


! ! ! =⇒
1 + i −2 + i 1−i 2+i 7 6i 
AA∗ =

= 

2−i 1+i −2 − i 1 − i −6i 7

A∗ A = AA∗ , por lo que la matriz es normal.


! !
A + A0 1 i A − A0 1 2i
H1 = = y H2 = =
2 −i 1 2i −2i 1
! ! ! ! !
−i 1 i −i 0 −i
H1 = = =0·
1 −i 1 1 0 1
lo que prueba
! que λ1 = 0 es una autovalor de H1 asociado al autovector
−i
v1 = .
1

!
1
b) Partiendo, por ejemplo, de z0 = obtenemos w0 = z0
1
! !
1+i z1 i
z1 = H1 w0 = =⇒ w1 = =
1−i 1−i 1
Ejercicios resueltos 197

! !
2i z2 i
z2 = H1 w1 = =⇒ w2 = = .
2 2 1

!
i
Hemos obtenido que w2 = w1 , por lo que v2 = es un autovector
1
de H1 asociado al autovalor
v2∗ H1 v2
λ2 = =2
v2 ∗ v2
 
∗ y(cos2 α − sen2 α)
c) QT SQ =   por lo que, para
y(cos2 α − sen2 α) ∗
α = π/4, se anulan los elementos extradiagonales.
! !
1 0 0 2
d) Hacemos M = real(H2 ) = yN = imag(H2 ) =
0 1 −2 0
para construir la matriz simétrica y real
 
! 1 0 0 −2
M −N  0
 1 2 0 
C= =


N M  0 2 1 0 
−2 0 0 1

Las transformaciones que debemos realizar son


 √ √   
2/ 0 0 2/2 1 0 0 0
2
 0 1 0 0   0 √2/ √
2/
2 0 

2
Q1 =  y Q2 = 
  
 √ √ 
 0 0 1 0   0 − 2/2 2/2 0 
√ √
− 2/2 0 0 2/2 0 0 0 1
 √ √ 
2/ 0 0 2/
2 2
 0 √ √
2/ 2/ 0 
2 2
Es decir, la transformación Q = Q1 Q2 = 
 
√ √ 
 0 − /22 2/2 0 
√ √
− 2/2 0 0 2/
2
 
3 0 0 0
 0 −1 0 0 
T
y obtenemos Q CQ =   por lo que los autovalores
 
 0 0 3 0 
0 0 0 −1
de H2 son -1 y 3.
198 Autovalores y autovectores

e) Las columnas de Q son los autovectores de C asociados, respectivamente,


a los autovalores 3, −1, 3 y -1, por lo que los autovectores de C asociados
   
0 1 !
 1   0  −i
a −1 son   y  , que nos definen el autovector de
   
 −1   0  1
0 1
la matriz H2 asociado al autovalor -1.
 
1
 0 
De manera análoga, los autovectores de C asociados a 3 son  y
 
 0 
−1
 
0 !
 1  i
 , que nos definen el autovector de la matriz H2 asociado
 
 1  1
0
al autovalor 3.
Los autovalores de A son, visto todo lo anterior,
! −i !
y 2 + 3i, asociados,
−i i
respectivamente, a los autovectores y .
1 1

Ejercicio 4.7 Justifica todas tus respuestas.

2
a) Se considera el proceso iterado xn+1 = ϕ(xn ) = xn − 1 + .
exn
a.1) ¿Se puede garantizar que, partiendo de cualquier número real
x0 ∈ [0.5, 1], el proceso convergerá a un punto fijo?
a.2) En caso de converger, ¿cuál es el punto fijo de la sucesión?
a.3) Utiliza la figura adjunta para justificar, geométricamente, la con-
vergencia del proceso para cualquier valor inicial x0 ∈ [0.5, 1].
Ejercicios resueltos 199

a.4) Si el proceso xn+1 = φ(xn ) verifica que |φ0 (x)| < 0.1 en el intervalo
[0.5, 1] ¿cuál de los dos procesos anteriores tendrá una convergencia
más rápida?
 
0 1/2 1/3
b) Se considera la matriz A =  1/4 0 1/5 
 
1/6 α 0

b.1) A la vista de los cı́rculos de Gerschgorin, ¿convergerá el proceso


xn+1 = Axn para cualquier valor de α ∈ [0, 1/2] y cualquier vector
inicial x0 ?
b.2) Probar que si α ∈ [0, 1/2], A no puede tener el autovalor 1.
b.3) ¿Cuál es el vector x (punto fijo) lı́mite de la sucesión (xn ) del pro-
ceso anterior?
b.4) Para α = 1/2, los autovalores de A son 0.6130 y −0.3065 ± 0.0352 i.
¿Se puede calcular el autovalor real aplicando el método de la po-
tencia simple?
Si no se realiza ningún tipo de escalado de los vectores y trabajamos
con un ordenador que cualquier número menor que 10−10 lo hace
cero (tolerancia del ordenador), ¿qué ocurrirı́a con el vector xN si
hacemos un excesivo número N de iteraciones?
¿Ocurrirı́a lo mismo haciendo ese número N de iteraciones esca-
lando los vectores?
¿Por qué es una buena estrategia escalar por la coordenada de ma-
yor módulo de los vectores que se obtienen?

Solución:

2
a) a.1) Tenemos un método de la forma xn+1 = ϕ(xn ) con ϕ(x) = x−1+ x .
e
0 2
ϕ (x) = 1 − x .
e
2
Dado que ϕ00 (x) = x es siempre positiva, sabemos que ϕ0 (x) es
e
creciente pasando de ϕ0 (0.5) = −0.2131 a ϕ0 (1) = 0.2642 es decir

|ϕ0 (x)| ≤ 0.2642 < 1

por lo que la función es contractiva y el método es convergente a


un punto fijo.
200 Autovalores y autovectores

2
a.2) Aplicando lı́mites, y llamando lim xn = x, se obtiene x = x − 1 + x
e
de donde
2
x
= 1 =⇒ ex = 2 =⇒ x = ln 2
e
a.3) Basta ver el comportamiento de la red que se forma al ir de la
gráfica a la recta, de la recta a la gráfica y ası́ sucesivamente.

a.4) Teniendo en cuenta que ϕ0 (ln 2) = 0 es decir, que la tangente en


dicho punto es horizontal, el método tiene una convergencia de se-
gundo orden.
Si φ0 (ln 2) 6= 0 el proceso xn+1 = φ(xn ) tendrá una convergencia
de primer orden y será más lento, y sólo será más rápida su con-
vergencia si φ0 (ln 2) = 0 y además es |φ00 (x)| < |ϕ00 (x)| en dicho
intervalo.

b) b.1) Para que el método sea convergente ha de ser el radio espectral de


la matriz A menor que 1.
Los cı́rculos de Gerschgorin de la matriz A vienen dados por
1 1 5
C1 : centro en el origen y radio + =
2 3 6
1 1 9
C2 : centro en el origen y radio + =
4 5 20
1
C2 : centro en el origen y radio α +
6
Como el radio del tercer cı́rculo puede oscilar en el intervalo

[0 + 1/6, 1/2 + 1/6] = [ 1/6, 2/3]

los dos últimos están incluidos dentro del primero, por lo que el
módulo de cualquiera de sus autovalores es menor que 5/6 < 1, es
decir, el radio espectral de la matriz A es ρ(A) < 1 y, por tanto, el
método es convergente.
Ejercicios propuestos 201

b.2) Dado que, a la vista de los cı́rculos de Gerschgorin, los autovalores


tienen módulos menores o iguales a 5/6 < 1, la matriz A no puede
tener el autovalor 1.
b.3) El método nos dice que si x es el vector al que converge, se verifica
que
x = Ax ⇐⇒ Ax = 1 · x
por lo que si converge a un vector x 6= 0 resultarı́a que dicho vector
serı́a un autovector de la matriz A asociado al autovalor 1 y, dado
que 1 no es autovalor de la matriz, el método no puede converger
a ningún vector no nulo, por lo que lim xn = 0 es decir, el método
converge al vector nulo.
b.4) Al ser |0.6130| > | − 0.3065 ± 0.0352 i|, el autovalor real es domi-
nante y, por tanto, podemos aproximarlo mediante el método de la
potencia simple.
Al aplicar el método de la potencia simple (sin escalar los vectores),
es evidente que convergerá al vector nulo, por lo que si hacemos
un número excesivo de iteraciones podrı́a el ordenador ir anulando
todas sus coordenadas, obtener en dicha iteración el vector nulo y
no permitir el cálculo del autovalor.
Si escalamos los vectores evitamos que converja al vector nulo, por
lo que lo hará a un vector que tiene la dirección del autovector
asociado al autovalor dominante y podremos calcular este último.
Al escalar por la coordenada de mayor valor absoluto el proceso per-
mite calcular el autovalor y la sucesión de vectores que obtenemos
tendrá siempre su mayor coordenada igual a 1.

4.8 Ejercicios propuestos


Ejercicio 4.8 Realizar la descomposición de Schur de la matriz
 
−6 9 3
A =  −2 3 1 .
 

−4 6 2
 √   √ √ 
0 0 − 7√14 14 6 2 5
5
1  √ 
Sol :  0 0 − √175  con U = √  0 5 −3 5  .
 
70 √ √
0 0 −1 2 14 −3 − 5
202 Autovalores y autovectores

 
a 1 1
Ejercicio 4.9 Dada la matriz A =  1 a 1  donde a es un número com-
 

1 1 a
plejo cualquiera, se pide:

a) Obtener su polinomio caracterı́stico.

Sol : P (λ) = λ3 − 3aλ2 + 3(a2 − 1)λ − (a3 − 3a + 2).


b) Probar que tiene por autovalores: λ = a − 1 doble y λ = a + 2 simple.
c) Calcular los autovectores y comprobar que no dependen de a.

Sol : v1 = (1, 0, −1)T , v2 = (0, 1, −1)T , v3 = (1, 1, 1)T .


 
2−i 0 −2 + 4i
Ejercicio 4.10 Dada la matriz A =  0 4 − 5i 2 − 4i , se pide:
 

−2 + 4i 2 − 4i 3 − 3i

a) Probar que es normal.


b) Obtener su primera componente hermı́tica H1 y calcular el polinomio
caracterı́stico de dicha componente.
 
2 0 −2
Sol : H1 =  0 4 2 , P (λ) = λ3 − 9λ2 + 18λ.
 

−2 2 3
c) Calcular los autovalores y los autovectores de H1 .

T
 λ1 = 0 v1 = (2, −1, 2)

Sol : λ2 = 3 v2 = (2, 2, −1)T .

λ3 = 6 v3 = (−1, 2, 2)T

d) Teniendo en cuenta que estos autovectores también lo son de la matriz


H2 (segunda componente hermı́tica), calcular sus autovalores.

Sol : µ1 = 3, µ2 = −3, µ3 = −9.


e) Obtener, a partir de los resultados anteriores, los autovalores y autovec-
tores de A, ası́ como la matriz de paso unitaria U tal que U ∗ AU = D.
  
T
 λ1 = 3i v1 = (2, −1, 2)
 2/3 2/3 − 1/3

Sol : λ2 = 3 − 3i v2 = (2, 2, −1)T U =  − 1/3 2/3 2/3 .


 

λ3 = 6 − 9i v3 = (−1, 2, 2)T 2/3 − 1/3 2/3

Ejercicios propuestos 203

!
2 1
Ejercicio 4.11 Dada la matriz A = se pide:
1 0

a) Calcular su polinomio caracterı́stico por el método interpolatorio.

Sol : λ2 − 2λ − 1.

b) Tomar una aproximación, con dos cifras decimales exactas, del mayor de
los autovalores y afinarla con el cociente de Rayleigh.

Sol : λ = 1 + 2 ' 2.41 =⇒ λ ' 2.41421.
 
1 2 3
Ejercicio 4.12 Dada la matriz A =  2 2 3 
 

3 3 3

a) Hallar sus autovalores mediante el algoritmo QR.

Sol : Se obtienen con MatLab 7.5165, −1.1776, −0.3389.

b) Hallar el autovalor de mayor valor absoluto, por el método de la potencia,


partiendo del vector (10, 11, 1)

Sol : 7.51653848519179, kEk ≤ 6.280369834735101 · 10−15 .

Ejercicio 4.13 Sea λ = α + iβ, α, β ∈ R, autovalor de la matriz


!
2i −2
A= .
2 2i

a) Utilizar el teorema de Gerschgorin para probar que el único autovalor


real de la matriz A sólo puede ser λ = 0.

b) Probar que A∗ = −A y deducir, a partir de ello, que A es una matriz


normal. ¿Puede no ser diagonalizable una matriz compleja que verifique
esa relación?

Sol : No. Siempre es diagonalizable.

c) Utilizar la descomposición hermı́tica de la matriz, A = H1 + iH2 , para


deducir que la parte real de los autovalores de A tiene que ser α = 0.

Sol : Basta observar que H1 es la matriz nula.


204 Autovalores y autovectores

d) Hallar el autovalor dominante de la componente hermı́tica H2 aplicando


el método de la potencia. ¿Quién es el autovalor dominante de A?
Sugerencia: Iniciar el método con el vector v1 = (1, 0)T .

Sol : 4i en ambos casos.

e) Si se perturba la matriz A en la matriz


!
(2 − 10−3 ) i −2
A + δA = ,
2 (2 + 10−2 ) i

hallar la norma euclı́dea de la matriz δA. ¿Puedes encontrar una cota


del error E = |µ − λ|, transmitido al autovalor dominante?
Indicación: |µ − λ| ≤ kP k kP −1 k kδAk, siendo P −1 AP diagonal.

Sol : kδAk = 10−2 , |λ − µ| ≤ 10−2 .

Ejercicio 4.14

a) Probar que las raı́ces del polinomio bλ + cλ2 + λ3 son los


 P (λ) = a +
0 1 0
autovalores de la matriz A(p) =  0 0 1 .
 

−a −b −c

Sol : P (λ) es el polinomio caracterı́stico de A(p).

b) Si el método de la potencia simple aplicado a la matriz A(p) converge a


un vector v, ¿qué relación tiene v con las raı́ces del polinomio P (λ)?

v T A(p)v
Sol : La raı́z de mayor módulo de P (λ) viene dada por .
vT v
c) Si el algoritmo QR aplicado a la matriz A(p) converge a una matriz
triangular T , ¿qué relación tiene T con las raı́ces del polinomio P (λ)?

Sol : Sus elementos diagonales son las raı́ces del polinomio.

d) Si se puede obtener la factorización LU de la matriz P A(p), siendo P


una matriz de permutación, ¿quiénes tienen que ser P, L y U ?
   
0 0 1 −a −b −c
Sol : P =  1 0 0  , L = I y U =  0 1 0 .
   

0 0 1 0 0 1
Ejercicios propuestos 205

Ejercicio 4.15 Sean el polinomio p(x) = x3 +2x2 −2x−4 y su correspondiente


matriz A = A(p), definido en el ejercicio 4.14

a) Utilizar una sucesión de Sturm para probar que el polinomio p(x) tiene
sus raı́ces reales y que sólo una de ellas, que denotaremos α, es positiva.

Sol : α ∈ [1, 2].

b) Utilizar el método de Newton para obtener una aproximación de la raı́z


α, garantizando 5 cifras decimales exactas.

Sol : α = 1.41421, ε ≤ 8.481 · 10−9 .

c) Obtener la pseudosolución, β, del sistema (A2 v)x = A3 v, determinando


la norma del error, para v = (1, 1, 1)T . ¿Deberı́a ser β una aproximación
de α?

Sol : β = −1.71428, kEk ≤ 14.6385. A2 vx = A3 v ⇐⇒ Av = xv β


hubiese sido una aproximación de α si v lo hubiese sido del autovector
asociado a α.

d) Obtener la matriz de Householder que transforma el vector a = (0, 0, 4)T


en el vector b = (4, 0, 0)T . ¿Se podı́a haber predicho el resultado?
 
0 0 1
Sol : H =  0 1 0  y se podrı́a haber predicho.
 

1 0 0

e) Obtener la factorización QR de la matriz A, utilizando el método de


Householder. (Sugerencia: ¡el apartado anterior!)
 
4 2 −2
Sol : Q = H, R =  0 1 0 .
 

0 0 1

f) Dar el primer paso del algoritmo QR aplicado a la matriz A. Indicar


cómo podrı́a el método de Gram-Schmidt utilizarse para los sucesivos
pasos del algoritmo y si esto serı́a una buena decisión para obtener las
raı́ces del polinomio p(x).
 
−2 4 2
Sol : A1 =  0 0 1 . Gram-Schmidt no es una buena opción.
 

1 0 0
206 Autovalores y autovectores

Ejercicio 4.16

a) ¿Qué pasos se dan para calcular los autovalores de una matriz cuadrada
A mediante el algoritmo QR? y ¿que forma tiene la matriz a la que
converge el algoritmo en los siguientes casos?

a.1) Si todos sus autovalores tienen distinto módulo.


a.2) Si existen autovalores de igual módulo.
 
−4 2 −4 3
 1 0 0 0 
b) El polinomio caracterı́stico de la matriz A =   es
 
 0 1 0 0 
0 0 1 0
4 3 2
el polinomio del Ejercicio 1.11 P (x) = λ +4λ −2λ +4λ−3. Calculando
sus autovalores mediante el algoritmo QR el proceso converge a la matriz
 
−4.64575131106459 4.07664693269566 1.32820441231845 −2.21143157264058

 0 −0.24888977635522 −0.86635866374600 0.58988079050108 

 
 0 1.22575806673700 0.24888977635522 0.03848978825890 
0 0 0 0.64575131106459

Calcular, a partir de dicha matriz, las raı́ces del polinomio (autovalores


de A).

Sol : −4.64575131106459, 0.64575131106459, i, −i.

c) Al aplicar el método de la potencia y comenzando el proceso con el vec-


   
1 1
 1   −0.2152 
tor x =   se obtiene en la cuarta iteración el vector  .
   
 1   0.0463 
1 −0.0100
Determinar una aproximación de la raı́z de mayor valor absoluto del po-
linomio P (x) (autovalor correspondiente) utilizando el cociente de Ray-
leigh.

Sol : −4.64565808596372.

Ejercicio 4.17 Sean las matrices A, An y B definidas como:


     
0 1 0 1.671 0.242 2.164 0 1 0
A =  0 0 1 , An =  0.00 −0.50 1.47  y B =  0 0 1 .
     

3 1 0 0.00 −0.81 −1.16 3 1 0.1


Ejercicios propuestos 207

a) Aplicando el algoritmo QR real a la matriz A se obtiene (iterando sufi-


cientemente), como aproximación “aceptable” del método, la matriz An .
¿Por qué las matrices A y An deben tener los mismos autovalores?

Hallar las aproximaciones de los autovalores de la matriz A que se ob-


tienen de An .

Sol : 1.671, −0.83 + 1.04 i, −0.83 − 1.04 i.


b) Tomando v0 aleatoriamente, ¿se debe esperar convergencia o divergencia
en el método de la potencia aplicado a la matriz A?

Empezar en v0 = (1, 1, 1)T y determinar los tres primeros vectores v1 ,


v2 y v3 que proporciona el método. Hallar la mejor aproximación del
autovalor dominante de A, en norma k k2 , que se obtiene con v3 .

Sol : Se espera convergencia. v1 = (0.25, 0.25, 1)T , v2 = (0.25, 1, 1)T ,


v3 = (0.5714, 0.5714, 1)T y una aproximación del autovalor dominante es
1.9259.
c) Estudiar si A es una matriz normal. Si se perturba A en la matriz
B = A + δA, hallar la medida de la perturbación kδAk2 .

¿Se podrı́a asegurar que los autovalores dominantes de las matrices A y


B difieren, a lo más, en 0.1?

Sol : No es normal. kδAk2 = 0.1. No se puede asegurar.


   
1 1 2 0
Ejercicio 4.18 Sean A =  0 1 1  con 0 < ε ≤ 1, b =  −1  y
   

1 −1 ε 2
 
0 −1 −2
J = 0 0 −1 .
 

−1 1 0

a) Obtener la factorización A = LU . Utilizar la factorización obtenida para


resolver el sistema Ax = b.
   
1 0 0 1 1 2
Sol : L =  0 1 0 , U =  0 1 1 , x = (1, −1, 0)T .
   

1 −2 1 0 0 ε

b) Hallar el número de condición κ∞ (A) de la matriz A para la norma k k∞ .


Razonar si el resultado del apartado anterior, obtenido con aritmética
208 Autovalores y autovectores

de ordenador, podrı́a ser considerado fiable para ε próximo a cero.


16
Sol : κ∞ (A) = 8 + . No, mientras más pequeño sea ε, peor condicio-
ε
nada.

c) Para ε = 1, comprobar que J es la matriz de la iteración xn+1 = J ·


xn + c que se obtiene al aplicar el método de Jacobi al sistema Ax = b.
Determinar c y, empezando en x1 = (1, 0, 0)T , hallar el vector x3 .

Sol : x3 = (−1, −2, 1)T .

d) Hallar la aproximación λ3 del autovalor dominante λ de la matriz J


utilizando el método de la potencia, con v0 = (1, 0, 0)T , y el cociente de
Rayleigh para determinar λ3 con el valor obtenido para v3 .

Sabiendo que λ3 tiene una cota de error estimada en e < 0.5. ¿Es
suficiente dicha aproximación para analizar la convergencia de la sucesión
(xn ) del método de Jacobi?

Sol : λ3 = −1.5. Jacobi no converge.

e) Para ε = 0, hallar la solución en mı́nimos cuadrados del sistema A0 x = b


que se obtiene al suprimir la primera columna de A, utilizando las ecua-
ciones normales. Determinar el error y justificar el resultado obtenido.

Sol : x = (−2, 1)T , kEk = 0 pues se trata de un sistema compatible


determinado

f) Analizar si es posible encontrar la matriz H de Householder que trans-


forma la segunda columna de A0 en el vector b. En caso afirmativo, ¿es
normal la matriz H resultante?

Sol : Es posible encontrarla y además es normal.


 
3 0 −1
Ejercicio 4.19 Considérese la matriz A =  1 −2 2 .
 

−1 −1 8

a) Hacer uso de los cı́rculos de Gerschgorin para estudiar el número de


autovalores reales que posee.
Obtener su polinomio caracterı́stico P (λ) y un intervalo de amplitud 1
que contenga a su autovalor dominante.

Sol : Los tres son reales. P (λ) = λ3 − 9λ2 + 3λ + 39. [8, 9].
Ejercicios propuestos 209

b) Comprobar que la fórmula de Newton-Raphson asociada a dicho polino-


mio es
2λ3n − 9λ2n − 39
λn+1 = ϕ(λn ) = 2 .
3λn − 18λn + 3
Sabiendo que la gráfica de la función y = ϕ0 (λ) en el intervalo [8, 9]
viene dada por la figura adjunta, ¿podemos garantizar la convergencia
del método de Newton partiendo de cualquier punto λ0 ∈ [8, 9]?

Nota: ϕ(λ) es la función que aparece en la fórmula de Newton-Raphson.

Sol : Si, ϕ(x) es contractiva.

c) Si tomamos λ0 = 8 ¿con qué error se obtiene la aproximación λ1 ?

Sol : ε1 ≤ 1.1323 · 10−4 .

d) ¿Existe algún vector v0 para el que podamos garantizar la convergencia


del método de la potencia simple aplicado a la matriz A? ¿Qué aproxi-
mación se obtiene para el autovalor dominante aplicando el cociente de
Rayleigh al vector v1 si partimos de v0 = (1 0 0)T ?

Sol : Cualquiera no nulo. λ1 = 3.7272.

e) Aplicando el método QR para el cálculo de los autovalores de A, con


una aritmética de ordenador con una precisión de cuatro decimales, el
método se estabiliza en la matriz An en la que hemos omitido dos de sus
elementos x e y
 
8.0195 −0.5134 2.7121
An =  0 2.7493 1.5431 
 

0 x y

¿Puede ser nulo el elemento x?, ¿se pueden determinar los elementos
que faltan sin necesidad de volver a aplicar el algoritmo QR? ¿Sabrı́as
decir cuál es la aproximación obtenida para los otros dos autovalores de
210 Autovalores y autovectores

la matriz A?

Solución: x = 0, y = −1.7461, λ2 = 2.7493, λ3 = −1.7461.


 
0 1 0
Ejercicio 4.20 Se considera la matriz A =  0 0 1 .
 

−0.25 −0.125 1

a) Demostrar que las raı́ces del polinomio P (x) = 2+x−8x2 +8x3 coinciden
con los autovalores de A. Acotar y separar las raı́ces de P (x), indicando
cuántas raı́ces reales y complejas tiene. Comparar los resultados con la
información que se desprende del estudio de los cı́rculos de Gerschgorin.

Sol : La ecuación caracterı́stica es P (x)/8 = 0 ⇐⇒ P (x) = 0. Sólo una


real en (−1, 0). Gerschgorin no mejora la información.
b) Determinar un intervalo de amplitud 0.5 con un extremo entero que
contenga a la raı́z negativa de P (x). Razonar si se verifican en dicho in-
tervalo las condiciones de Fourier. Aproximar por el método de Newton-
Raphson dicha raı́z con 2 cifras decimales exactas.

Sol : En [−0.5, 0] se verifican las condiciones de Fourier. x = −0.38.


c) Tomando como vector inicial z0 = (0, 1, 0)T , realizar dos iteraciones del
método de la potencia inversa. Por medio del cociente de Rayleigh aso-
ciado al vector hallado, determinar una aproximación del autovalor de A
correspondiente. ¿Qué relación existe entre éste valor y la aproximación
hallada en el apartado anterior? ¿Puede haber autovalores de la matriz
A en el cı́rculo de centro 0 y radio 14 ? Razonar las respuestas.

Sol : λ = −0.3768. No existen autovalores en dicho cı́rculo.


d) Al aplicar el algoritmo QR a la matriz A se obtiene como salida la matriz
T = Q∗ AQ, para cierta matriz unitaria Q. ¿Puede ser T una matriz
triangular superior? Justificar la respuesta.

Sol : T no puede ser triangular.

Ejercicio 4.21

a) Utilizar el método interpolatorio para determinar el polinomio carac-


terı́stico P (λ) de la matriz
 
2 −1 0
A =  0 −2 1 
 

1 0 5
Ejercicios propuestos 211

Sol : P (λ) = λ3 − 5λ2 − 4λ + 21.

b) A la vista de los cı́rculos de Gerschgorin, ¿se puede garantizar que el


algoritmo QR aplicado a la matriz A convergerá a una matriz triangular
con sus autovalores en la diagonal? ¿Se puede garantizar la convergencia
del método de la potencia simple si comenzamos a iterar con el vector
v = (1 1 1)T ?

Sol : Gerschgorin no nos garantiza una triangular pero sı́ la convergencia


del método de la potencia simple.

c) Haciendo uso de los cı́rculos de Gerschgorin, determinar cuántos auto-


valores reales posee y calcular un intervalo de amplitud 1 y extremos
enteros que contenga al autovalor dominante.

Sol : Los tres son reales y el dominante se encuentra en (4, 5).

d) Comprobar que, en dicho intervalo, se verifican las hipótesis de Fou-


rier para la convergencia del método de Newton. ¿En qué extremo de-
berı́amos comenzar a iterar?

Sol : x0 = 5

e) Tomando x0 = 5 y aplicando el método de Newton, ¿con cuántas cifras


exactas se obtiene x1 ?

Sol : Dos cifras decimales exactas.

Ejercicio 4.22 Dado el polinomio P (x) = x3 − 3x2 + 3x + 5

a) Probar, mediante una sucesión de Sturm, que sólo tiene una raı́z real
y determinar α ∈ Z para que dicha raı́z esté contenida en el intervalo
[α, α + 1].

Sol : α = −1.

b) Comprobar, mediante las condiciones de Fourier, que el método de New-


ton converge tomando como valor inicial x = α.

c) Si tomamos como aproximación de la raı́z el valor x = −0.50 ¿se tiene


garantizada alguna cifra decimal exacta?

Sol : No.
212 Autovalores y autovectores

d) Utilizar el método interpolatorio


 para comprobar
 que el polinomio carac-
3 −3 −5
terı́stico de la matriz A =  1 0 0  es el polinomio P (x) dado.
 

0 1 0

e) Para resolver el sistema (A + 0.5 · I3 )x = (1, −1, 1)T observamos que


resulta más cómodo llevar la primera ecuación
 al último lugar, es decir,
0 1 0
multiplicar el sistema por la matriz P =  0 0 1 . ¿Se altera de
 

1 0 0
esta forma el condicionamiento del sistema? Comprueba que la solución
1
es el vector x = 21 (−50, 58, −74)T .

Sol : No se altera el condicionamiento por ser P ortogonal.


f) Tomando −0.50 como una primera aproximación de su autovalor real,
partiendo del vector z0 = (1, −1, 1)T y trabajando sólo con dos cifras de-
cimales, realizar una iteración del método de la potencia inversa con des-
plazamiento para calcular, mediante el cociente de Rayleigh, una nueva
aproximación de dicho autovalor. ¿Se puede garantizar ahora alguna ci-
fra decimal exacta?

Sol : λ = −0.83. La primera cifra decimal es exacta.

Ejercicio 4.23 Sean A, B y C las matrices definidas por


! ! !
−1 − i 3 − 3i 1 1 i 2 + 2i 0
A= B=√ C=
−3 + 3i −1 − i 2 i 1 0 −4 − 4i

a) Probar que A∗ = −iA y que B ∗ = B −1 . ¿Es normal la matriz BCB ∗ ?

Sol : BCB ∗ es normal.


b) Comprobar que se verifica la igualdad A = BCB ∗ . Hallar los autovalores
y autovectores de las componentes hermı́ticas de la matriz A.

Sol : H1 = H2 . Autovalores 2 y -4. Autovectores (1, i)T y (i, 1)T .


c) Probar que si una matriz M verifica la propiedad M ∗ = −iM , entonces
es normal y sus autovalores son de la forma α + iα, con α ∈ R. ¿Puede
la matriz M tener únicamente autovalores reales?
Indicación: De M = QDQ∗ , deducir D∗ = −iD.

Sol : M tendrá todos sus autovalores reales sólo si es la matriz nula.


Ejercicios propuestos 213

d) Se perturba la matriz A en A+δA, de modo que ||δA||2 ≤ 10−6 . Razonar


si los autovalores de A + δA, obtenidos con MatLab, pueden ser muy
diferentes de los de la matriz A. ¿Sucederı́a lo mismo para una matriz
M , con M ∗ = −iM y dimensión elevada?

Sol : No, |µ − λ| ≤ 10−6 y no depende de la dimensión de M .

e) Hallar la aproximación del autovalor dominante de A que se obtiene con


un paso del método de la potencia, partiendo de q0 = (1, 0)T , y utilizando
el cociente de Rayleigh.
Explicar cómo se aplicarı́a el algoritmo QR para obtener aproximaciones
de los autovalores y autovectores de la matriz A. ¿Cuál serı́a la forma
de Schur de A?

Sol : −2.8 − 2.8 i. T es diagonal.

Ejercicio 4.24 En R4 se considera el vector a = (1, −1, 1, −1)T .

a) Determinar el valor que debe tomar β ∈ R − {0} para que la matriz


Q = I − βaaT verifique la igualdad Q2 = I. Probar que, entonces, Q es
una matriz normal.

Sol : β = 1/2.

b) Utilizar las ecuaciones normales para obtener la solución en mı́nimos


cuadrados del sistema superdeterminado S1 ≡ Ax = −a, donde x =
(x, y)T y la matriz de coeficientes A = [a1 a2 ] está formada por las dos
primeras columnas a1 , a2 de la matriz B = 2I − aaT .
¿Está mal condicionada la matriz AT A para la norma || ||∞ ?

Sol : (1/2, −1/2)T . No puede estar mejor condicionada, kAT Ak∞ = 1.

c) Hallar la matriz H de Householder que transforma el vector a2 , definido


en el apartado anterior, en un vector de la forma r = (0, σ, 0, 0)T , con
σ > 0.
Partir del sistema S2 ≡ HAx = −Ha, para evaluar el error en el sistema
S1 del apartado anterior utilizando, en caso necesario, transformaciones
unitarias. Justificar que los sistemas S1 y S2 tienen la misma pseudoso-
lución y el mismo error.

Sol : H = Q (primer apartado). kEk = 2. Al tratarse de transforma-
ciones unitarias los dos sistemas son equivalentes.
214 Autovalores y autovectores

d) Para calcular un autovector de la matriz H del apartado anterior, aplicar


el método de la potencia simple partiendo del vector x = (1, 2, 3, 4)T .
¿Por qué no funciona el método en este caso?
Describir cómo se aplica el algoritmo QR a la matriz H. En este caso,
¿por qué no converge a la forma de Schur de H?
Indicación: ¿Cuál es la factorización QR de cualquier matriz ortogonal?

Sol : H no tiene un autovalor dominante. Sus autovalores son 1, 1, 1, −1


todos de igual módulo. La sucesión resultante es x, Hx, x, Hx, . . . que
sólo es convergente si se parte de un autovalor asociado al autovalor 1.
El algoritmo QR no converge a la forma de Schur (una diagonal) ya que
la sucesión que se obtiene es constante igual a H.

e) Probar que Ha = −a y que si v es ortogonal al vector a, entonces Hv = v.


En virtud de esto, encontrar razonadamente los autovalores de H y un
autovector v1 asociado al autovalor negativo.
Si {v1 } se completara a una base {v1 , v2 , v3 , v4 } formada por autovectores
de H, ¿cómo se podrı́a ortonormalizar dicha base de una forma compu-
tacionalmente estable?

Sol : -1 simple con autovector a y 1 triple. Se deberı́a ortonormalizar


mediante transformaciones unitarias (ortogonales).

Ejercicio 4.25
 
0 3 0
a) Calcular el polinomio caracterı́stico de la matriz A =  3 28 4 
 

0 4 5
mediante el método interpolatorio. ¿Puede no ser real alguno de sus
autovalores?

Sol : P (λ) = λ3 − 33λ2 + 115λ + 45. No, ya que A simétrica.

b) Haciendo uso de los cı́rculos de Gerschgorin, estudiar si resultará conver-


gente el método de la potencia simple aplicado a la matriz A partiendo
de un vector arbitrario z0 .

Sol : Convergerá por existir un autovalor dominante.

c) Realizar la factorización QR de la matriz A mediante transformaciones


de Householder. (Dar las matrices Q y R).
Ejercicios propuestos 215

   
0 0.6 0.8 3 28 4
Sol : Q =  1 0 0  R= 0 5 4 .
   

0 0.8 −0.6 0 0 −3

d) Utilizar la factorización anterior para resolver el sistema Ax = b con


b = (−3, 6, 1)T .

Sol : x = (10, −1, 1)T .

e) Comenzando por el vector z0 = (−3, 6, 1)T calcular el vector z2 del


método de la potencia inversa (al ser sólo dos pasos no merece la pena
escalar el vector, es decir, dividir en cada paso por su norma infinito) y
aproximar el autovalor de menor valor absoluto de la matriz A mediante
el cociente de Rayleigh.

Sol : z2 = (−28.1555, 3.3333, −2.4666)T , λ ' −0.3548

f) Teniendo en cuenta que el autovalor de menor valor absoluto es negativo,


determinar, haciendo uso del polinomio caracterı́stico, una cota del error
de la aproximación obtenida en el apartado anterior.

Sol : ε ≤ 4.8 · 10−5 .

Ejercicio 4.26 Se considera el polinomio P (x) = x3 + 3x2 + 3ax + a con


a ∈ R.

a) Hacer uso de una sucesión de Sturm para determinar, en función del


parámetro “ a”, el número de raı́ces reales de dicho polinomio ası́ como
su multiplicidad.


 a < 0 =⇒ tres raı́ces reales.

 a = 0 =⇒ una real doble (0) y una real simple (-3).



Sol : 0 < a < 1 =⇒ una real simple y dos complejas conjugadas.

a = 1 =⇒ una real triple (-1).





 a > 1 =⇒ una real simple y dos complejas conjugadas.

b) Para a = 3, determinar un intervalo adecuado en el que se encuentre


la raı́z real del polinomio y en el que se verifiquen las condiciones de
Fourier para garantizar la convergencia del método de Newton. ¿Qué
valor debemos dar inicialmente a x para comenzar a iterar?

Sol : [−0.5, 0], x0 = 0.


216 Autovalores y autovectores

c) Realizar dos iteraciones del método de Newton y determinar una cota


del error.

Sol : x2 = −0.3737373737, ε2 ≤ 4.739279 · 10−4 .


 
−3 −9 −3
d) Teniendo en cuenta que la matriz A =  1 0 0  tiene, como
 

0 1 0
polinomio caracterı́stico, el polinomio P (x) cuando a = 3, ¿podemos
garantizar la convergencia del método de la potencia simple? ¿y del de
la potencia inversa?

Sol : La potencia simple no (los autovalores complejos tienen módulo


mayor que el real), pero el de la potencia inversa sı́.

e) ¿Convergerá a una matriz triangular superior el algoritmo QR aplicando


aritmética real a la matriz A?

Sol : No, lo hará a una triangular por bloque con un bloque de orden 2
(las dos raı́ces complejas conjugadas).

 
4 5 3
Ejercicio 4.27 Se considera la matriz A =  3 5 1 .
 

0 2 3

a) Realizar la factorización QR (dar las matrices Q y R) de la matriz A:

a.1) Mediante rotaciones o giros


a.2) Mediante reflexiones
   
20 15 0 5 7 3
1  √ √ √   √ √
Sol : Q =  −3 5 4 5 10 5  R =  06 5 5 .

25 √ √ √ √
6 5 −8 5 5 5 0 0 5

b) Determinar su polinomio caracterı́stico por el método interpolatorio.

Sol : P (λ) = λ3 − 12λ2 + 30λ − 25.

c) Probar, mediante una sucesión de Sturm, que A sólo tiene un autovalor


real y que se encuentra en el intervalo [8,9].

d) Sabiendo que el producto de los autovalores de una matriz coincide con


su determinante, probar que A posee un autovalor dominante.
Ejercicios propuestos 217

e) Partiendo del vector z0 = (1, 1, 1)T realizar dos iteraciones del método
de la potencia simple (trabajar con 2 cifras decimales) y utilizar z2 para
aproximar el autovalor real de la matriz A.

Solución: λ ' 8.95.


f) ¿Se ha obtenido, en el apartado anterior, la aproximación del autovalor
real con un error menor que 10−2 ?

Sol : ε ≤ 0.04 < 10−1 por lo que sólo se dispone de un decimal exacto.
 
2 −2 0
Ejercicio 4.28 Sea la matriz A =  2 3 ω 
 

1 0 2

a) Para ω = −3, se pide:


a.1) Utilizar los cı́rculos de Gerschgorin por filas para probar que A
carece de autovalores mayores que 10. De la observación de dichos
cı́rculos, ¿puede deducirse que A tiene un autovalor de máximo
módulo?

Sol : No puede garantizarse la existencia de un autovalor dominante.


a.2) Demostrar que el método de Gauss-Seidel aplicado al sistema
Ax = (1, 34 , 0)T es convergente empezando con cualquier vector
x0 ∈ R3 . Hacer dos iteraciones de dicho método partiendo del
vector x0 = (− 12 , 54 , 13 )T y hallar la norma del error.

Sol : Es convergente por ser ρ(L1 ) < 1. x2 = (− 1/12, − 41/72, 1/24)T ,


kEk = 2.987241.
b) Para ω = 0, se pide:
b.1) Partiendo del vector z0 = (1, 1, 1)T , aplicar el método de la potencia
inversa a la matriz A haciendo dos iteraciones y usar el cociente de
Rayleigh para aproximar el autovalor de menor módulo de A.

Sol : λ = 2.5.
 
1 0
b.2) Siendo F =  0 −1  y B = AF , hallar la pseudosolución del sis-
 

0 −1
 
2
tema Bx =  7  resolviendo el sistema formado por las ecuaciones
 

4
218 Autovalores y autovectores

normales usando el método de Cholesky. Calcular la norma del


error.
! !
9 −4 22
Sol : Las ecuaciones normales son x = .
−4 17 −25
!
4 − 4/3
Para la facrorización de Cholesky R = √ . La pseu-
0 137/3
dosolución es (2, −1)T y el error kEk = 0.

4 4 2
 
 9+9i 9
i 
Ejercicio 4.29 Consideremos la matriz A = 
 . Se pide:
2 5 5 
+ i
9 9 9

a) Hallar las componentes hermı́ticas de la matriz A y probar que ésta es


normal.
!
4 1 1
9 9
+ 9
i
Sol : H1 = H2 = 1 1 5
.
9
− 9
i 9

b) A partir de H1 , construir una matriz S real y simétrica, de dimensión el


doble de la de H1 , de forma que a partir de los autovalores y autovectores
de S se deduzcan los de H1 .
 
4/9 1/9 0 − 1/9
 1/ 5/9 1/9 0 
9
Sol : 
 

 0 1/9 4/9 1/9 

− 1/9 0 1/9 5/9

c) Usando MATLAB se tiene que el polinomio caracterı́stico de la matriz


S es
13 4 4
P (λ) = λ4 − 2λ3 + λ2 − λ +
9 9 81
Sin realizar ningún cálculo ¿podrı́as garantizar que P (λ) es el cuadrado
de un polinomio de segundo grado?.

Sol : Sı́. Las raı́ces de P (λ) son los autovalores de H1 pero todos dupli-
cados.

d) Reducir la multiplicidad de las raı́ces de P (λ) y encontrar una sucesión


de Sturm para el polinomio reducido Q(λ).

Sol : Q(λ) = λ2 − λ + 2/9. g0 (λ) = Q(λ), g1 (λ) = 2λ − 1 y g2 (λ) = 1.


Ejercicios propuestos 219

e) Haciendo uso de la sucesión de Sturm, separar las raı́ces de Q(λ).

Sol : [0, 1/2] y [1/2, 1].

f) Encontrar un intervalo que contenga a la menor de las raı́ces de Q(λ)


y en el que se pueda garantizar la convergencia del método Newton.
Determina las raı́ces exactas de Q(λ).

Sol : [0, 0.4]. Las raı́ces son 1/3 y 2/3.

g) En virtud de los resultados anteriores, calcular los autovalores y auto-


vectores de la matriz A.

Sol : Autovalores λ1 = 1/3 + 1/3 i y λ2 = 2/3 + 2/3 i. Autovectores


v1 = (1 + i, −1)T y v2 = (1 + i, 2)T respectivamente.
 
1 −1 1
Ejercicio 4.30 Se considera la matriz A =  −1 2 1 
 

1 2 2

a) Calcular su polinomio caracterı́stico por el método interpolatorio.

Sol : P (λ) = λ3 − 5λ2 + 4λ + 5.

b) Separar sus raı́ces mediante una sucesión de Sturm.

Sol : [−1, 0], [2, 3] y [3, 4].

c) ¿Convergerá el método de la potencia simple comenzando por el vector


x0 = (1, 1, 1)T ? Justifica la respuesta.

Sol : Si por tener un autovalor dominante.

d) Realiza dos iteraciones del método de la potencia simple comenzando por


el vector x0 = (1, 5, 8)T y aproxima el autovalor dominante mediante el
cociente de Rayleigh.

Sol : λ ' 3.38685028129986.

e) Realiza dos iteraciones del método de la potencia inversa comenzando


por el vector x0 = (6, 5, −6)T . ¿De quién es una aproximación x2 ?

Sol : x1 = (−10, −7, 9)T , x2 = (15, 11, −14)T . Es una aproximación del
autovector asociado al autovalor de menor valor absoluto.
Bibliografı́a

[1] Burden, R.L. y Faires, J.D. Análisis Numérico (Sexta edición). Interna-
cional Thomson Ed. 1998.

[2] Golub, G.H. y Van Loan, C.F. Matrix Computations (Third edition). Johns
Hopkins University Press

[3] Hager, W. Applied Numerical Linear Algebra. Ed. Prentice-Hall Interna-


tional. 1988.

[4] Kincaid, D. y Cheney, W. Análisis Numérico. Ed. Addison-Wesley Ibe-


roamericana. 1994.

[5] Noble, D. y Daniel, J.W. Álgebra Lineal Aplicada. Ed. Prentice-Hall. 1989.

[6] Watkins, D.S. Fundamentals of MATRIX Computations. John Wiley &


Sons. 1991.

221

Você também pode gostar