Está en la página 1de 43

3.

Valores y Vectores Característicos

3.1. Introducción
El producto de una matriz cuadrada, A, por un vector (matriz columna), x, es otro vector,
cuyas componentes son habitualmente no proporcionales a las de x. Sin embargo,
puede existir un vector  no nulo tal que:

A =  (3.1a)

Se dice entonces que  es un vector característico (también llamado vector propio,


eigenvector o modo) de la matriz A. El correspondiente escalar  es un valor
característico (también llamado valor propio, autovalor o eigenvalor). Nótese que si un
vector satisface las ecuaciones (3.1a) también un múltiplo arbitrario (un vector "paralelo")
es solución. Sin embargo, se trata esencialmente de la misma solución; los vectores
característicos sólo se califican como distintos si sus componentes no son
proporcionales.

Por ejemplo,

 2  11 1
    1  
  1 2 1 1
 2  1 1  1
    3  
1 2  1  1
1 1
en este caso 1    y  2    son vectores característicos, a los que corresponden
1  1
los valores propios 1 y 3, respectivamente. Otros vectores, no paralelos a los dos antes
mencionados, no cumplen la condición (3.1a). Por ejemplo:

 2  11 0
     
1 2 2 3

0 1
El vector   no puede expresarse como un múltiplo de   .
3 2 
El problema clásico de valores y vectores característicos consiste en la determinación de
los vectores  y los correspondientes escalares  para los que se cumple (3.1a). Con
frecuencia se presenta el problema general:

A = B  (3.1b)

En muchas aplicaciones las matrices A y B son simétricas y definidas positivas. En


algunos casos se hacen hipótesis simplificadoras que resultan en B diagonal. El
problema clásico, definido en (3.1a), corresponde al caso particular B = I.

3.1.1 Conversión del Problema General a la Forma Clásica

Un problema de la forma general (3.1b) puede convertirse a otro equivalente de la forma


clásica (3.1a). Así por ejemplo, si B es no singular podría escribirse:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-1


B-1 A = 
Sin embargo, si A y B son simétricas (como es, por ejemplo, el caso en problemas de
vibración, en los que esas matrices son respectivamente rigideces y masas) conviene
más hacer la descomposición (Cholesky):
B = RT R
y efectuar entonces el cambio de variables

= R-1 z (3.2a)

con lo que se obtiene:

(R ) A R z= z
-1 T -1

Esto es particularmente fácil si B es diagonal.


B = B ½ B½
= B-½ z
B-½ A B-½ z= H z = z (3.2b)
aij
Donde hij  .
bi b j

Nótese que los valores característicos son los mismos que los del problema original; los
correspondientes vectores característicos se relacionan mediante (3.2a).

3.1.2 Polinomio Característico y Valores Propios

Las ecuaciones A = B  pueden también rescribirse como:

(A - B)  = 0 (3.3a)

que tiene soluciones no triviales sólo si la matriz (A - B) es singular, es decir, si:
p   det  A  B   0 (3.3b)

p   se denomina polinomio característico. Siendo A y B matrices cuadradas de orden


n, p   es un polinomio de grado n, cuyas raíces son 1, 2, ۰۰۰ n. En lo que sigue se
supone, sin perder generalidad, que: 1   2   3       n

3.1.3 Independencia Lineal de los Vectores Característicos

Asociado a cada uno de los n valores característicos i se tiene un vector i. Si i es
una raíz de multiplicidad m, el correspondiente vector i puede obtenerse resolviendo el
sistema de ecuaciones homogéneas: (A - iB) i = 0 suponiendo m componentes
arbitrarias en i.

Los vectores característicos correspondientes a valores característicos distintos son


linealmente independientes. Supóngase que éste no fuera el caso, pudiéndose obtener
uno de los vectores como combinación lineal de otros que sí son linealmente
independientes:
j
s  c 
i 1
i i

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-2


Y entonces:
j j
s  
i 1
ci  i   c λ 
i 1
i ι i

Por otro lado, por la definición del problema, (3.1b):


j
s  λs  s  c λi 1
i s  i

j
Restando las dos expresiones precedentes se obtiene:  c λ
i 1
i s   i  i  0

Si λs   i debería entonces tenerse ci = 0 para todo i, lo que se opone a la hipótesis.

Excepcionalmente pueden presentarse valores característicos repetidos. Aún en este


caso es factible obtener vectores característicos linealmente independientes. Sin
embargo, el conjunto de vectores asociados a los valores característicos repetidos define
un subespacio, tal que cualquier vector del subespacio (es decir una combinación lineal
de aquellos tomados como base) es también un vector característico:

A  i =  i B i
A  i =  i B i
A ( c 1 1 + c 2 2 + c 3 3 + … ) =  i B ( c 1 1 + c 2 2 + c 3 3 + … )
Teniéndose n vectores característicos linealmente independientes de dimensión n, estos
constituyen una base completa. Cualquier otro vector de tal dimensión puede
expresarse como combinación lineal de los vectores característicos:
v = 1 1 + 2 2 + 3 3 + … + n n
Por ejemplo, con los vectores característicos antes obtenidos:

1 3 1 1  1 
  2  2 
2  1  1

3.1.4 Ortogonalidad de los Vectores Característicos

Si las matrices A y B son Hermitianas (o simplemente simétricas) y definidas positivas,


los valores característicos de A  =  B  son todos reales y positivos. Para probar
esto basta considerar:

 *s Α r   r  *s B r (3.4a)

 *r Α s   s  *r B s

El superíndice * denota aquí conjugada traspuesta. La conjugada transpuesta de la


segunda de estas expresiones es (recuérdese que  s es un escalar):

 *s Α r  *s  *s B r (3.4b)

y al ser A y B Hermitianas (es decir A* = A y B* = B), restando (3.4b) de (3.4a) se


obtiene:

 r 
 *s  *s B r  0 (3.4c)

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-3


Si r=s, al ser B una matriz definida positiva se tendría  *r B r  0 . Por lo tanto, siendo
 r   s , se tendría  r  *r  0 lo que implica que todos los  son números reales. Si
además A es definida positiva, es decir  *r A r  0 , se concluye que los valores
característicos son todos positivos.

Por otro lado, si  r   s se tiene que  r  *s  0 y en consecuencia (3.4c) implica que:

 *s B  r  br  rs (es decir, cero si r  s ) (3.5a)

y además, observando las expresiones precedentes:

 *s A  r  a r  rs (3.5b)

Las propiedades de ortogonalidad expresadas en (3.5) son la base para la


descomposición modal utilizada al resolver sistemas de ecuaciones diferenciales en
aplicaciones tales como el análisis sísmico lineal.

Refiriéndose nuevamente al ejemplo inicial:

 2  1 1
1 1   2
1 2  1

 2  1  1 
1  1   6
1 2   1

 2  1  1 
1 1   0
1 2   1

3.1.5 Normalización de los Vectores Característicos

Como se mencionó anteriormente los vectores característicos se definen por la


proporción de sus elementos, pudiéndose escalar o "normalizar" en forma arbitraria. Es
frecuente escalarlos de modo que:

 *s B  r   rs (3.6a)

Se dice entonces que los vectores están normalizados respecto a la matriz B. En tal
caso se tiene también:

 *s A  r   r  rs (3.6b)

3.1.6 Cociente de Rayleigh

Si se conoce un vector característico i, el correspondiente valor i puede determinarse


con el cociente de Rayleigh:

Ti Α i
 i   (3.7)
Ti B i

Esta expresión puede aplicarse también con aproximaciones a los vectores propios. Si x
es una aproximación a un vector característico con un error de orden , el cociente de
2
Rayleigh, (x), aproxima el correspondiente valor característico con un error de orden  .

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-4


3.1.7 Teorema de Gershgorin

Supóngase que  i es un valor característico de la matriz A y que  i es el


correspondiente vector, con componentes v1 v 2 v 3  :

A i  i i

La componente de mayor valor absoluto en  i es v s . Dividiendo la ecuación s entre


v s e intercambiando ambos miembros:
v  v  v 
 i  a s1  1   a s 2  2     a ss    a sn  n 
 vs   vs   vs 
y por lo tanto:
 i  a ss  a s1  a s 2    0    a sn

En consecuencia, cada valor característico  i está dentro de por lo menos uno de los
círculos con centro en a ss y radio igual a la suma de los valores absolutos de la
correspondiente fila s.

Por ejemplo, considerando la matriz:

 2  1
A   
1 4 
que es definida positiva, puede asegurarse que sus valores característicos (que son
números reales) están dentro de los intervalos (1,3) y (3,5). Efectivamente, en este caso
 3 2 .

3.1.8 Formas polinómicas

Supóngase que se conocen los valores y vectores característicos de una matriz, A:

A  = 
2
¿Cuáles son los valores característicos de la matriz A = A A?

(AA)  = A (A  = A (  =  (A =  
k
Este resultado puede extenderse para la matriz A (siendo k un exponente). Los
vectores característicos son los mismos que los de la matriz A, mientras que los
correspondientes valores característicos son k:
Ak  = k 
Esto es incluso válido para exponentes negativos. Por ejemplo, multiplicando ambos
miembros por  A se obtiene:
-1 -1

A-1  = -1 
Por otro lado, combinando linealmente expresiones como las anteriores y teniendo en
cuenta que A = I (así como  = 1):
0 0

(c0 I+ c1 A+ c2 A2 + c3 A3 +...)  = (c0 + c1 + c2 2 + c3 3 +...) 


Por ejemplo, si:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-5


 2  1
A   
1 2 

tiene valores característicos 1 y 3, la matriz:

 5  4
A 2  AA   
 4 5 

tiene valores característicos 1 y 9 (es decir, los cuadrados de 1 y 3). Los vectores
característicos son los mismos para ambas matrices.

3.2 Métodos de Iteración con Vectores


Los métodos que se presentan en esta sección son los más eficientes cuando sólo se
requieren un valor característico y su vector asociado, o en todo caso cuando el número
de valores y vectores característicos por determinar es pequeño.

3.2.1 Iteración Directa

En la iteración "directa" se considera un vector inicial x 0 y se obtiene una secuencia de


vectores corregidos, x k , mediante:
B x j 1  A x j (3.8a)

x j 1
x j 1  (3.8b)
r j 1
donde rj+1 es un escalar que normaliza el vector utilizado en la iteración. Lo habitual es
tomar rj+1 como el elemento de máximo valor absoluto en x j 1 , lo que significa escalar el
vector de aproximación de modo que la mayor componente sea igual a 1..

Este proceso converge al vector característico  n , asociado al valor característico de


mayor módulo,  n . En efecto, la aproximación inicial x0 puede escribirse como:

x0 = 1 1 + 2 2 + 3 3 + … + n-1 n-1 + n n
Recuérdese que los n vectores característicos son linealmente independientes y
constituyen una base completa en el espacio de dimensión n. Entonces (suponiendo
que B no es singular):

A x0    A     B
i i i i i

x1  B 1 Ax 0 = (1 1) 1 + (2 2) 2 + …+ (n n) n

y por lo tanto:

    
1
x1  i i i
r1 n

Se observa que, si las componentes de x0 eran i, aquellas de x1 resultan proporcionales


a i i. Repitiendo pasos análogos a los antes indicados, puede comprobarse que la
aproximación xk puede expresarse como combinación lineal de los vectores
característicos con coeficientes proporcionales a  i  i (en este caso k es un exponente).
k

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-6


En consecuencia, si  n   n 1   n  2     1 , las componentes según n crecen
más rápidamente que las otras y se tiene que:

Lim x k  n (3.9a)
k 

Lim rk   n (3.9b)
k 

Esto es válido aún cuando n = 0 puesto que, por lo menos al tratar con grandes
matrices, los errores de redondeo (debidos a la aritmética imperfecta del computador)
introducen siempre una componente según n. La convergencia es muy rápida si
 n   n 1  o si x0 es aproximadamente paralelo a n (es decir, si la componente n
es importante en relación a las demás). En cambio, si los últimos valores característicos
son similares la convergencia es en general muy lenta. Por otro lado, no se tienen
dificultades para el caso (más académico que práctico) en que  n   n 1 : en tal caso el
proceso converge a un vector característico que resulta ser la proyección de x0 en el
subespacio definido por los vectores n y n-1.

Considérese por ejemplo el problema A = B  con las matrices:

 5 2 0 1 0 0
   
A   2 3  1 B  0 2 0
 0 1 1  0 3 
  0
Aún cuando en este caso se tienen matrices simétricas, el procedimiento descrito se
aplica a matrices cuadradas cualesquiera.

En este caso se obtienen:

k xk Ax k x k 1 r k+1  (xk+1)

0 1.00000 5.00000 5.00000 5.00000


0.00000 -2.00000 -1.00000
0.00000 0.00000 0.00000 5.481481

1 1.00000 5.40000 5.40000 5.40000


-0.20000 -2.60000 -1.30000
0.00000 0.20000 0.06667 5.502594

2 1.00000 5.48148 5.48148 5.48148


-0.24074 -2.73457 -1.36728
0.01235 0.25309 0.08436 5.503559

3 1.00000 5.49887 5.49887 5.49887


-0.24944 -2.76370 -1.38185
0.01539 0.26483 0.08828 5.503603

4 1.00000 5.50259 5.50259 5.50259


-0.25130 -2.76994 -1.38497
0.01605 0.26735 0.08912 5.503605

5 1.00000 5.50339 5.50339 5.50339


-0.25169 -2.77128 -1.38564
0.01620 0.26789 0.08930 5.503605

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-7


6 1.00000 5.50356 5.50356 5.50356
-0.25178 -2.77156 -1.38578
0.01623 0.26801 0.08934 5.503605

 1.00000
 
El procedimiento converge al valor característico: 3 =  0.25180
 0.01623
 
que corresponde al valor característico de mayor módulo, 3 = 5.503605.

El valor de r es aproximadamente n, pero el cociente de Rayleigh, (x)" proporciona


siempre una aproximación mejor.

3.2.2 Iteración Inversa

El proceso de iteración directa antes descrito converge al vector característico asociado


al valor característico de mayor módulo. Éste puede ser útil al considerar el
condicionamiento de las matrices de coeficientes en grandes sistemas de ecuaciones, o
al analizar la estabilidad numérica de ciertos métodos para integrar sistemas de
ecuaciones diferenciales, pero por lo general tiene poca importancia en la respuesta del
sistema estudiado. Para determinar la respuesta de un sistema se requieren más bien
los valores característicos de menor módulo y sus vectores asociados.

Para determinar el vector característico asociado al valor propio de menor módulo (el
modo fundamental) puede usarse una "iteración inversa":
A x j 1  B x j (3.10a)

x j 1
x j 1  (3.10b)
r j 1

En este caso si:

x0 = 1 1 + 2 2 + 3 3 + … + n-1 n-1 + n n
la aproximación xk puede expresarse como combinación lineal de los vectores
característicos con coeficientes proporcionales a  i  i (nuevamente, k es aquí un
k

exponente):
1 2 3  n 1 n
xk = 1 + 2 + 3 + … + n-1 + n
k1 k2 k3 kn 1 kn

En consecuencia, si  1   2   3       n al emplear la iteración inversa se tiene


que:

Lim x k  1 (3.11a)
k 

1
Lim rk  (3.11b)
k  1

Los comentarios anteriores relativos a la convergencia de la iteración directa son


también válidos. En este caso la velocidad de convergencia depende de la razón 2 / 1.

Para las matrices del caso anterior y considerando, por ejemplo, el vector inicial:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-8


0
 
x 0  1 
2 
 
se obtiene el vector asociado al valor característico de menor módulo, es decir, 1.

Nótese que r es ahora una aproximación de 1 / 1, mientras que en la iteración directa lo
era de n. También en este caso se observa que el cociente de Rayleigh es siempre una
mejor aproximación al valor característico.

k xk Bx k x k 1 r k+1  (xk+1)

0 0.00000 0.00000 2.66667 12.66667


1.00000 2.00000 6.66667
2.00000 6.00000 12.66667 0.154734

1 0.21053 0.21053 1.42105 6.44737


0.52632 1.05263 3.44737
1.00000 3.00000 6.44737 0.154625

2 0.22041 0.22041 1.42993 6.46463


0.53469 1.06939 3.46463
1.00000 3.00000 6.46463 0.154624

3 0.22119 0.22119 1.43102 6.46696


0.53594 1.07187 3.46696
1.00000 3.00000 6.46696 0.154624

4 0.22128 0.22128 1.43116 6.46727


0.53610 1.07221 3.46727
1.00000 3.00000 6.46727 0.154624

5 0.22129 0.22129 1.43118 6.46731


0.53613 1.07225 3.46731
1.00000 3.00000 6.46731 0.154624

6 0.22129 0.22129 1.43118 6.46731


0.53613 1.07226 3.46731
1.00000 3.00000 6.46731 0.154624

En muchas aplicaciones B es diagonal y A no lo es, por lo que la iteración directa es


más simple. Sin embargo, un paso típico de la iteración inversa requiere
aproximadamente el mismo número de operaciones que un paso de iteración directa.
Supóngase que se tienen matrices de orden n y que A es una matriz de alta densidad
(es decir, con pocos coeficientes no significativos). El número de operaciones
2
requeridas para efectuar el producto Ax es de orden n . Aquí se cuenta como una
"operación" la combinación de una multiplicación o división con una suma o resta.
2
También se ha supuesto que n es grande, por lo que n es mucho mayor que n. La
división de Ax entre los coeficientes (de la diagonal principal) de B requiere un número
de operaciones de orden n, que puede despreciarse. Es interesante observar que si

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3-9


previamente se realizó (una sola vez) la factorización A = LU, la solución del sistema de
ecuaciones Ax = b requiere también un número de operaciones de orden n2, mientras
que el producto Bx demanda sólo n operaciones. Por otro lado, si la matriz A es de baja
densidad y tiene un ancho de semibanda promedio m, tanto un producto de la forma Ax
como la solución de las ecuaciones Ax = b requieren aproximadamente mn operaciones.

3.2.3 Traslación

La velocidad de convergencia de la iteración inversa depende de las razones 1 / i. Si


 2   1 la convergencia es lenta; siendo en cambio muy rápida si  1   2 . La
convergencia puede acelerarse mediante una "traslación"    1 :

A = B  (3.12a)

(A - B) = (B  (3.12b)

Nótese que el nuevo sistema (3.12b) tiene los mismos vectores característicos que el
sistema original (3.12a) y valores característicos i - . Desde el punto de vista del
polinomio característico, se ha trasladado el origen:
150
p()

100

50

0
0 1 2 3 4 5 6 7


-50

1 1
Si    1 puede lograrse que:  1     2   y por tanto: 
1   2   ,
con lo que la convergencia mejora en forma apreciable.

Para el ejemplo anterior, efectuando una traslación  = 0.154 se tiene:

 4.846 2 0 
 
A  0.154 B    2 2.692 1 
 0 1 0.538

y por iteración inversa:

k xk Bx k x k 1 r k+1  (xk+1)

0 0.00000 0.00000 692.29 3129.01


1.00000 2.00000 1677.41
2.00000 6.00000 3129.01 0.000624

1 0.22125 0.22125 354.79 1603.26


0.53608 1.07216 859.55
1.00000 3.00000 1603.26 0.000624

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 10


2 0.22130 0.22130 354.80 1603.29
0.53613 1.07226 859.57
1.00000 3.00000 1603.29 0.000624

0.22129
 
Se obtienen: 1 = 0.154 + 0.000624 = 0.154624 y 1 = 0.53613 .
1.00000

El siguiente algoritmo usa el cociente de Rayleigh para efectuar la traslación. Iniciando


el proceso con y 0  B x 0 y 0 = 0:
A   k B  x k 1  y k
y k 1  B x k 1

x Tk 1 y k
 k 1   k  (3.13)
x Tk 1 y k 1


y k 1  x Tk 1 y k 1 1
2 y k 1

En relación con las expresiones precedentes:

Lim y k  B 1 (3.14a)
k 

Lim  k   1 (3.14b)
k 

La convergencia es cúbica.

3.2.4 Determinación de Otros Vectores Característicos

En los párrafos precedentes se ha visto cómo mediante iteración directa o inversa


pueden obtenerse n o 1 respectivamente. Podría determinarse un valor característico
intermedio y su vector asociado por iteración inversa con una traslación adecuada; sin
embargo, esto requeriría un procedimiento previo para definir la traslación.

En los que sigue se describe la determinación de sucesivos vectores característicos


aprovechando las condiciones de ortogonalidad para el caso en que las matrices A y B
son simétricas. La idea básica consiste en iterar con vectores ortogonales a los
previamente obtenidos. Desafortunadamente, el proceso acumula los errores de los
vectores previos y cada nuevo vector se determina siempre con menos precisión que el
anterior. En la práctica se observa que se pierde una cifra significativa por cada nuevo
vector; por tanto, no es factible determinar por este método más de unos 10 vectores
característicos. En algunas aplicaciones esto puede no ser suficiente.

A partir de un vector arbitrario:

v = 1 1 + 2 2 + 3 3 + ... + n n (3.15a)

puede obtenerse un vector ortogonal a los vectores característicos ya conocidos


haciendo uso de las relaciones de ortogonalidad:

iT B v = 1 iT B 1 + 2 iT B 2 + ... + n iT B n


iT B v = i iT B i

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 11


es decir:

i = ( iT B v ) / ( iT B i (3.15b)

Luego es suficiente restar de v los i i para obtener un vector que (salvo por la
imprecisión en la aritmética no tiene componentes según los vectores característicos
previamente hallados.

Para el ejemplo antes tratado, suponiendo que se haya obtenido el primer vector
característico:

0.221295029
 
1 = 0.536128843
1.000000000
 

0
y considerando v = 1  se obtiene 1 = 0.295889928, de donde:
0
 0.06548
 
x0 = v - 1 1 =  0.84136
 0.29589
 
es un vector ortogonal a 1. Si se hace una iteración inversa con x0 se obtiene
(suponiendo que se operara con una aritmética infinitamente precisa) el vector
característico 2:

k xk Bx k x k 1 r k+1  (xk+1)

0 -0.06548 -0.06548 0.24319 0.64072


0.84136 1.68272 0.64072
-0.29589 -0.88767 -0.24696 1.20534

1 0.37956 0.37956 0.40775 0.82960


1.00000 2.00000 0.82960
-0.38544 -1.15631 -0.32671 1.17649

2 0.49150 0.49150 0.43668 0.84594


1.00000 2.00000 0.84594
-0.39382 -1.18147 -0.33553 1.17517

3 0.51620 0.51620 0.44210 0.84715


1.00000 2.00000 0.84715
-0.39663 -1.18990 -0.34275 1.17504

4 0.52187 0.52187 0.43603 0.82913


1.00000 2.00000 0.82913
-0.40460 -1.21379 -0.38466 1.17113

Es importante hacer notar que, como consecuencia de los errores de redondeo se


introducen en las aproximaciones xj componentes según los vectores característicos
originalmente eliminados.. En los resultados precedentes se tienen las siguientes
componentes según 1:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 12


k 1

0 -1.565 x 10-6
1 -1.580 x 10-5
2 -0.000123
3 -0.000941
4 -0.007188
5 -0.056063

Como estas componentes tienden a crecer más rápidamente que la propia solución, es
necesario eliminarlas cada 4 ó 5 pasos, utilizando el mismo proceso inicial:
j 1
xj = v - 
i 1
i i

Para el caso del ejemplo:

 0.52588 0.221295029  0.53829


     
x 0   1.00000   0.056093 0.536128843   1.03006
 0.46393 1.000000000  0.40787
     
y luego de escalar este vector:

k xk Bx k x k+1 r k+1  (xk+1)

5 0.52258 0.52258 0.44489 0.85094


1.00000 2.00000 0.85094
-0.39597 -1.18790 -0.33696 1.17511

6 0.52282 0.52282 0.44496 0.85098


1.00000 2.00000 0.85098
-0.39599 -1.18796 -0.33698 1.17511

7 0.52288
1.00000
-0.39599
 0.52288
1  
se obtienen:  2   1.17511 y 2 =  1.00000
0.85098  0.39599

3.2.5 Deflación
~ ~
Otra alternativa es hacer una deflación, obteniendo un nuevo sistema A    B  , de
orden menor, con los mismos valores característicos del problema original, excepto los
previamente determinados. En lo que sigue se aplica esta idea a un problema de la
forma clásica H     .

Considérese una matriz ortogonal, P , cuya última columna es igual al vector


característico 1 previamente determinado:

P   p1 p 2  p n 1 1 

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 13


Al hacer el cambio de variable   P z se obtiene H P z   P z y premultiplicando por
PT : P T

HP z  z . Sin embargo, al ser la última columna de P igual a 1 y
suponiendo que ese vector haya sido normalizado de modo que 1T 1  1 se tiene:

H~
 0 
P HP 
T
(3.16)
0 1 

Esta matriz tiene los mismos valores característicos que la matriz original, H . Lo mismo
~
se puede decir de H , excepto por 1 .

Hay múltiples posibilidades para formar P . En el proceso propuesto por Rutishauser se


hacen las operaciones equivalentes a trabajar con P  J1 J 2  J n 1 , donde:

1 
 
  
 ck sk  fila k
Jk   
  sk ck  fila k  1 (3.17a)
 
  
 1 

columna k columna k  1

T T T T
 
Nótese que P H P  J n 1  J 2 J 1 H J 1 J 2  J n 1 , pudiéndose evaluar fácilmente los
sucesivos productos, ya que en cada caso sólo se alteran dos filas y dos columnas.

Los coeficientes ck y sk se determinan a partir de las componentes x1 x2 x3  del


vector característico previamente hallado, 1 . Definiendo:

qk2  x12  x22  x32   xk2 (3.17b)

se tiene:
qk
sk 
q k 1
(3.17c)
x
c k  k 1
q k 1

Para el ejemplo considerado anteriormente, sería necesario primero convertir el


problema a la forma clásica. Al ser B diagonal:

 5  1.414214 0 
1 1  
H B 2 AB 2    1.414214 1.5  0.408248
  0.408248 0.333333 
 0

Y para H     pueden obtenerse (por iteración inversa):


Para H     pueden obtenerse (por iteración inversa):

0.11625
 
1  0.39827
0.90987
 
Luego:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 14


q1  0.11625 s1  0.28019 c1  0.95994
q 2  0.41489 s 2  0.41489 c 2  0.90987
q 3  1.00000
Con el propósito de observar que, efectivamente, la última columna de P es igual a 1
se está evaluando aquí la referida matriz:

 0.95994 0.28019 0  1 0 0 
  
P    0.28019 0.95994 0  0 0.90987  0.41489
 1   0 0.90987 
 0 0 0.414898
es decir:

 0.95994 0.25494 0.11625


 
P    0.28019 0.87342 0.39827 
  0.41489 0.90987 
 0
de donde:

 5.48594  0.27561 0 
 
P H P    0.27561
T
1.19271 0 
 0.15462
 0 0

Nótese el  1 en la esquina inferior derecha. Los valores característicos de


~  5.48594  0.27561
H    son  2  1.1751 y  3  5.5036 , es decir, iguales a los
  0.27561 1.19271 
restantes valores característicos del problema original. Los correspondientes vectores
resultan:

0.0638  0.9980 
z2    y z3   
0.9980  0.0638
de donde:

1 z k 
k  B 2P
 
0
1
El factor B 2 se requiere para obtener los vectores del problema general en su forma
original.

3.3 Métodos de Transformación


Los métodos de este grupo son eficientes sólo si se requieren todos o una alta
proporción de los valores y vectores característicos. La idea básica de estos procesos
consiste en hacer un cambio de variables:

= P z (3.18a)

para transformar A = B  en:

( P A P ) z=  P B P  z
-1 -1
(3.18b)

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 15


Este sistema tiene los mismos valores característicos que el sistema original y vectores
propios relacionados por (3.29a). Si las transformaciones son tales que las nuevas
matrices tienen valores y vectores característicos fáciles de determinar, se ha resuelto
indirectamente el problema original.

3.3.1 Método de Jacobi

El método de Jacobi (1846) puede considerarse como prototipo de los métodos de


transformación. En este procedimiento se transforma el problema original a uno de la
forma:

 a1   z1   b1   z1 
 a2    b2  
 z
 2  z2  (3.19)
         
 a n   z n   bn   z n 
 
que tiene como vectores característicos las columnas de la matriz identidad y como
valores característicos los  i  a i bi . Los valores característicos del sistema original
son los mismos. P es en este caso una matriz ortogonal:
P-1 = PT
cuyas columnas son la propia solución buscada. Ésta se determina mediante un
proceso iterativo que se describe a continuación.

En la forma que aquí se presenta, este método se aplica a problemas de la forma


clásica, A = , siendo A una matriz simétrica (real). Más adelante se consideran las
modificaciones requeridas para problemas de la forma general.

Empezando con A(0) = A y llamando 


(0)
a los vectores característicos del problema
original, el paso k del proceso se define como:

(k) = Pk (k+1) (3.20a)

A(k) ( Pk (k+1) ) =  ( Pk (k+1) )


y si P es una matriz ortogonal, premultiplicando por PT se obtiene:

( Pk A Pk )  =
T (k) (k+1) (k+1)

Lo que equivale a considerar un problema similar al original:

A(k+1) (k+1) =  (k+1) (3.20b)

Siendo:
A(k+1) = PkTA(k) Pk (3.20c)

Nótese que se mantiene la simetría de la matriz. Los valores característicos de esta


nueva matriz son los mismos de la matriz original; los correspondientes vectores se
relacionan por expresiones de la forma (3.20a).

En el método de Jacobi las matrices Pk corresponden a una rotación plana:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 16


col i col j
1 
 
  
 cos  k  sen  k 
Pk    fila i (3.21)
 sen  k cos  k  fila j
 
  
 1

El objetivo de un paso es hacer cero un coeficiente aij = aji. Puede verificarse
fácilmente que:

aij(k 1 )  a (kji 1 )  a (k) 
jj  a ii cos  k sen  k  a ij
(k) (k )

cos 2  k  sen 2  k  0  (3.22a)

y por tanto:
2 aij( k ) 
tg 2 k  0  k  (3.22b)
aii( k )  a (jjk ) 4

Sólo los elementos de dos filas y de dos columnas i, j  se alteran en cada paso.

Además, como se mantiene la simetría de la matriz A sólo deben calcularse los


coeficientes de la submatriz triangular superior (o inferior) de A(k+1). Con la notación
c = cos k; s = sen k:

aii(k 1 )  aii(k)c 2  2aij(k)cs  a (k)


jj s
2

a (kjj 1 )  aii( k ) s 2 -2aij( k ) cs  a (jjk ) c 2 (3.23a)

aij(k 1 )  a (kji 1 )  a (k) 


jj  a ii cs  a ij
(k) (k )

c2  s2  0  
air(k 1 )  a ri(k 1 )  air(k)c  a (jrk ) s
(3.23b)
a (kjr 1 )  a rj(k 1 )  air(k)s  a (jrk ) c

En un cierto paso se hacen cero los elementos aij y aji. Sin embargo, las sucesivas
rotaciones reintroducen valores significativos en estas posiciones, por lo que es
necesario repetir el proceso en varios "ciclos" para todos los elementos de fuera de la
diagonal principal. El proceso es convergente. Si en un ciclo dado los cocientes

 ij 
a  (k ) 2
ij
(3.24)
a ii( k ) a (jjk )

son de orden , éstos se reducen a orden  en el siguiente ciclo.


2

El número de ciclos completos necesarios para que la matriz A sea suficientemente


aproximada a una matriz diagonal depende del orden de la matriz. Para matrices de
3
orden 50 ó 60 pueden ser necesarios 8 a 10 ciclos. Cada ciclo demanda O(2n )
operaciones.

Desde un punto de vista teórico sería más eficiente hacer cero los elementos aij en
orden decreciente de los  ij , definidos por (3.24), pero las comparaciones necesarias
son relativamente lentas. Por eso se prefiere seguir un orden fijo en la selección de los

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 17


elementos y efectuar las rotaciones sólo si  ij es mayor que una tolerancia, variable en
función del número de ciclo, m (por ejemplo 10-2m). La convergencia del proceso se
puede verificar con una medida similar.
Para determinar los vectores característicos es suficiente efectuar el producto de las
matrices Pk ya que:

(k) = Pk (k+1) (3.25a)


y por lo tanto:

 = (0) = P1 P2 P3 ... Pm (3.25b)

Para ilustrar el método de Jacobi considérese el problema A =  con:

2 -3 1 0 
 
- 3 6 -3 1 
A (0) 
1 -3 6  3
 
0 3 4 
 1

En el primer paso se hacen cero los coeficientes a12 y a21. En las expresiones
precedentes:
( 0)
a11  2 a 22
( 0)
 6 a12
(0)
 a 21
(0)
 3
2  3
tg2   1.5  cos   0.881675 sen   0.471858
26
 0.881675 -0.471858 0 0
 
 0.471858 0.881675 0 0
P1  
0 0 1 0
 
 1 
 0 0 0

 0.394449 0 -0.533899 0.471858


 
 0 7.60555 -3.11688 0.881675 
A (1)  P1 A P1  
T (0)
-0.533899 -3.11688 6 -3 
 
 0.471858 
 0.881675 -3 4 
Luego se hacen cero los coeficientes a31:
(1)
a11  0.394449 a 33
(1)
 6 a13
(1)
 a 31
(1)
 0.533899
cos   0.995574 sen   0.093978

 0.995574 0 - 0.0939783 0
 
 0 1 0 0
P2  
0.0939783 0 0.995574 0
 
 1 
 0 0 0

 0.344051 -0.292919 0 0.187835 


 
 -0.292919 7.60555 -3.10309 0.881675
A ( 2)  P2 A P2  
T (1)
0 -3.10309 6.0504 -3.03107 
 
 0.187835 
 0.881675 -3.03107 4 

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 18


Nótese que se tienen nuevamente valores significativos en las posiciones 12 y 21. Por
otro lado:

 0.877773 - 0.471858 - 0.0828582 0


 
 0.469770 0.881675 - 0.0443444 0
P1 P2  
0.0939783 0 0.995574 0
 
 1 
 0 0 0

Procediendo en forma similar:


( 2)
a 22  7.60555 a 33
( 2)
 6.0504 a 23
( 2)
 a 32
( 2)
 3.10309
cos   0.788374 sen   0.615196

 0.344051 - 0.23093 - 0.180203 0.187835


 
 - 0.23093 10.027 0 2.55979 
A ( 3)  P3 A P3  
T (2)
- 0.180203 0 3.62895 - 1.84721
 
 0.187835 
 2.55979 - 1.84721 4 
 0.877773 - 0.321026 - 0.355609 0
 
 0.46977 0.72237 0.507443 0
P1 P2 P3  
0.0939783 - 0.612474 0.784885 0
 
 1 
 0 0 0
( 3)
a11  0.344051 a 44
( 3)
 4 a14
( 3)
 a 41
( 3)
 0.187835
cos   0.99869 sen   0.0511758

 0.334426 -0.361627 -0.0854342 0 


 
 -0.361627 10.027 0 2.54462 
A ( 4)  P4 A P4  
T (3)
-0.0854342 0 3.62895 -1.85401
 
 4.00963 
 0 2.54462 -1.85401

 0.876622 - 0.321026 - 0.355609 0.0449207 


 
 0.469154 0.722370 0.507443 0.0240408 
P1 P2 P3 P4  
0.0938551 - 0.612474 0.784885 0.00480941
 
 - 0.0511758 0.99869 
 0 0
( 4)
a 22  10.027 a 44
( 4)
 4.00963 a 24
( 4)
 a 42
( 4)
 2.54462
cos   0.939025 sen   0.343849

 0.334426 -0.339576 -0.0854342 0.124345


 
 -0.339576 10.9588 -0.6375 0 
A ( 5)  P5 A P5  
T (4)
-0.0854342 -0.6375 3.62895 -1.74096 
 
 0.124345 3.07785 
 0 -1.74096

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 19


 0.876622 - 0.286006 - 0.355609 0.152566 
 
 0.469154 0.686590 0.507443 - 0.225811
P1 P2 P3 P4 P5  
0.0938551 - 0.573474 0.784885 0.215115 
 
 - 0.0511758 0.937795 
 0.343398 0
(5)
a 33  3.62895 a 44
( 5)
 3.07785 a 34
( 5)
 a 43
( 5)
 1.74096
cos   0.760371 sen   0.649489

 0.334426 -0.339576 -0.145722 0.0390598


 
 -0.339576 10.9588 -0.484737 -0.414049 
A (6)  P6 A P6  
T (5)

-0.145722 -0.484737 5.11603 0
 
 0.0390598 1.59076 
 -0.414049 0

 0.876622 - 0.286006 - 0.369485 - 0.114957


 
 0.469154 0.686590 0.532507 0.157878 
Φ  P1 P2 P3 P4 P5 P6  
0.0938551 - 0.573474 0.457089 0.673341 
 
 - 0.0511758 0.713072 
 0.343398 - 0.609087

con lo que termina un primer “ciclo”. Análogamente, al terminar el segundo ciclo:

 0.317649 - 0.007656 - 0.0006033 - 0.0003418


 
 - 0.007656 11.0268 0.0015155 0.0000149 
A (12)  
- 0.0006033 0.0015155 5.08272 0
 
 - 0.0003418 1.57279 
 0.0000149 0

 0.856314 - 0.275908 - 0.421440 - 0.11397


 
 0.505117 0.619208 0.566580 0.201062
Φ  P1 P2  P12  
0.0771368 - 0.640155 0.399623 0.651578
 
 - 0.0750522 0.722518
 0.361467 - 0.584532

y al finalizar el tercer ciclo:

 0.317644 
 
 11.0269 
A (18)  
5.08272
 
 1.57279

-6
No se muestran los coeficientes con valor absoluto menor que 10 . Los coeficientes
(18)
de la diagonal de A son (aproximaciones a) los valores característicos de la matriz
A. Nótese que no se obtienen en orden ascendente o descendente. Las columnas del
producto P1 P2  P18 son los correspondientes vectores, que se obtienen normalizados:
  = I. Esto se comprueba fácilmente, ya que las matrices Pk son todas
T

ortogonales.

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 20


 0.856032 - 0.276628 - 0.421478 - 0.114202
 
 0.505686 0.618991 0.566358 0.200923 
Φ  P1 P2  P18  
0.076907 - 0.640107 0.399777 0.651558 
 
 - 0.074671 0.361373 - 0.584614 0.722537 
 

3.3.2 Caso de Matrices Hermitianas.

El método de Jacobi puede también emplearse para hallar los valores y vectores
característicos de una matriz Hermitiana, H , cuyos coeficientes (en general complejos)
tienen simetría conjugada. En este caso se hacen productos de la forma:

H ( k 1)  U *k H ( k ) U k (3.26)

en los que U k es una matriz unitaria, es decir, tal que U k 1  U *k (el superíndice *
denota en este caso la conjugada traspuesta). Para hacer cero el coeficiente hij se
utiliza:
col i col j
1 
 
  
 cos   e i  sen  
Uk   
fila i (3.27a)
i
 e sen  cos   fila j
 
  
 1

Suponiendo que:

hii( k )  a hij( k )  b  ic
(3.27b)
h (jik )  b  ic h (jjk )  d

Las partes real e imaginaria de los nuevos coeficientes i, j  resultan:

d  a  cos  sen  cos   b cos 2   b sen 2  cos 2  c sen 2  sen 2  0


a  d  cos  sen  sen   b cos 2   c sen 2  sen 2  c sen 2  cos 2  0
de donde:
c
tan  
b
2 b cos   c sen 
(3.27c)
tan 2 
ad

3.3.3 Método de Jacobi Generalizado.

Es posible modificar el método de Jacobi "clásico" antes descrito para resolver


directamente el problema general A = B .

En lo que sigue se supone que A y B son simétricas y que esta última es definida
positiva (y posiblemente no diagonal). Debe anotarse que si B fuera diagonal sería
más eficiente transformar el problema a la forma clásica.

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 21


Un paso del proceso general se define por:
A(k+1) = PkTA(k) Pk (3.28)
(k+1) T (k)
B = Pk B Pk

donde Pk es una matriz similar a la utilizada para el proceso clásico:


col i col j
1 
 
  
 1  
Pk    fila i (3.29a)
  1  fila j
 
  
 1 

 y  se determinan de:
aij(k 1 )  a (kji 1 )   aii(k)  1    aij( k )   a (k)
jj  0

bij(k 1 )  b (kji 1 )   bii(k)  1    bij( k )   b (k)


jj  0 (3.29b)

Estas dos ecuaciones son independientes, excepto en el caso en que

aii(k) aij(k) a (k)


jj
 
bii(k) bij(k) b (k)
jj

aij(k)
en el que puede considerase, por ejemplo:  0 
a (k)
jj

Definiendo:

c1  a (jjk ) bij( k )  b (jjk ) a ij( k )


c 2  a ii( k ) bij( k )  bii( k ) a ij( k ) (3.29c)

c3  1
2
a (k )
ii b (jjk )  bii( k ) a (jjk ) 
d  c3  ( signo c3 ) c32  c1c 2
se obtienen:
c2 c1
   (3.29d)
d d
El radical en la expresión de d es siempre positivo si B es una matriz definida positiva.
Puede observarse que si B fuera la matriz identidad se obtendrían:     tg  y
la matriz Pk resulta un múltiplo de aquella considerada en el método de Jacobi clásico.

Los comentarios precedentes relativos a la convergencia son también aquí aplicables.


3
El número de operaciones en cada ciclo es de O(3n ).

El siguiente ejemplo ilustra los aspectos nuevos introducidos en esta sección. Se


pretende determinar los valores y vectores característicos del sistema: A = B ,
donde:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 22


 4 2 1  1 
   
A    2 4  2 B 2 
 1 2 4   3 
  
En el primer paso se hacen cero los coeficientes a12  a 21 y b12  b21 . Con las
expresiones precedentes:
i  1, j  2

a11  4 a 22  4 a12  a 21  2

b11  1 b22  2 b12  b21  0

c1  4 c 2  2 c3  2
d  5.464102   0.732051   0.366025

 1  0.366025 0   4  2 1   1 0.732051 0 
   
A (1)
 P1T A ( 0) P1   0.732051 1 0    2 4  2    0.366025 1 0 
 1   1  2 4   1 
 0 0 0 0

 6 0 1.732051 
 
 0 3.215390 - 1.267949
1.732051 - 1.267949 
 4 

 1  0.366025 0   1 0 0   1 0.732051 0 
   
B (1)
 P1T Β ( 0) P1   0.732051 1 0   0 2 0    0.366025 1 0 
 1   0 0 3   1 
 0 0 0 0

1.267949 0 0
 
 0 2.53589 0 
 3 
 0 0

Luego se hacen cero los coeficientes a13  a 31 y b13  b31 :

i  1, j  3

a11  6 a 33  4 a13  a 31  1.732051

b11  1.267949 b33  3 b13  b31  0

c1  5.196152 c 2  2.196152 c3  6.464102


d  13.757671   0.377691   0.159631

 1 0 - 0.377691
 
P2   0 1 0 
 0.159631 0 
 1 
 6.654907  0.202404 0 
 
A ( 2)
 P2T A (1) P2    0.202404 3.215390 - 1.267949
 - 1.267949 3.547543 
 0

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 23


1.344395 0 0 
 
B ( 2)
 P2T Β (1) P2  0 2.53589 0 
 3.180874
 0 0

Y se termina el primer ciclo haciendo cero los coeficientes a 23  a 32 y b23  b32 :

i  2, j  3

a 22  3.215390 a 33  3.547543 a 23  a 32  1.267949

b22  2.53589 b33  3.180874 b13  b31  0

c1  4.033186 c 2  3.215390 c3  0.615771


d  4.269186   0.944720   -0.753162

 1 0 0.944720
 
P3   0 1 0 
 - 0.753162 0 
 1 
 6.654907  0.202404 - 0.191215
 
A ( 3)
 P3T A ( 2) P3    0.202404 7.137690 0 
 - 0.191215 4.021553 
 0

1.344395 0 0 
 
B ( 3)
 P3T Β ( 2) P3  0 4.340260 0 
 5.444154 
 0 0

( 3)
Se puede observar que en A los coeficientes de fuera de la diagonal principal no
son suficientemente pequeños (en términos relativos a los coeficientes de la diagonal
principal en las correspondientes fila y columna) por lo que se hace necesario continuar
la iteración. Al terminar el siguiente ciclo se obtienen:

 6.665499 0.000073 0.000000


 
A ( 6)
  0.000073 7.133095 0 
 0.000000 4.016229 
 0

1.345636 0 0 
 
B (6)
 0 4.343063 0 
 5.445705
 0 0

Y completando un ciclo adicional:

 6.665499 0.000000 0.000000


 
A (9)
  0.000000 7.133095 0 
 0.000000 4.016229 
 0

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 24


1.345636 0 0 
 
B (9)
 0 4.343063 0 
 5.445705
 0 0

De donde se obtienen los valores característicos:

3  a11(9) / b11(9)  4.953418


 2  a 22
(9) (9)
/ b22  1.642411
1  a 33
(9) (9)
/ b33  0.737504

Cabe anotar que el proceso no necesariamente produce los valores característicos en


orden ascendente o descendente, como en este caso. Por otro lado, los vectores
característicos pueden ser obtenidos del producto:

 0.847452 0.509309 0.149762


 
Φ  P1 P2  P9 diag  
b ii-1/2   - 0.334199 0.420986 0.459436
 0.139578 - 0.358769 0.430274
 
3 2 1

Los vectores resultan en el mismo orden de los valores característicos. La post


 
multiplicación de P1 P2  P9 por diag b ii-1/2 sólo es necesaria para escalar los vectores
de modo que  Ti B  j   ij .

3.3.4 El Método QR (Francis, 1961 y Kublanovskaya, 1962)

Este proceso se aplica al problema clásico A  =   La matriz A no requiere ser


simétrica, pudiendo tener valores característicos cero (o incluso negativos).

En el caso más general, para una matriz A cualquiera, el método QR es poco eficiente,
3 2
ya que requiere O( 4 3 n ) operaciones por paso. Sin embargo, sólo se requieren O(4n )
operaciones por paso si A es de la forma Hessemberg, es decir, si es casi triangular
superior, excepto por una codiagonal inferior. :

 a11 a12 a13 a14 a15 


 
 a 21 a 22 a 23 a 24 a 25 
 
0 a 32 a 33 a 34 a 35
A  (3.30)
 0 0 a 43 a 44 a 45 
 
 0 0 0 a 54 a 55 
 
 

Para el caso particular en que la matriz A es además simétrica (y por lo tanto


tridiagonal):

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 25


 a1 b1 
 
 b1 a2 b2 
 
A b2 a3 b3  (3.31)
 b3 a 4 
 
  

el método QR es aún más eficiente, requiriendo tan solo O(12n) por paso.

En todo caso es siempre posible efectuar la transformación a la forma Hessemberg


3
(tridiagonal si A y B son simétricas), requiriéndose un total de O( 5 3 n ) operaciones
(una sola vez).

Debe anotarse además que, a diferencia del método de Jacobi, el método QR mantiene
la posible configuración banda de la matriz y permite efectuar traslaciones (análogas a
las de una iteración inversa), tanto para acelerar la convergencia como para mejorar la
precisión en los valores característicos de interés. El objetivo del proceso conocido
como QR es la determinación de los valores característicos; conocidos estos, los
correspondientes vectores pueden obtenerse por iteración inversa con traslación.
(0)
Considerando A = A, el paso básico del método QR consiste en hacer la
descomposición:

A (k )  Q k R k (3.32a)

donde Q k es una matriz ortogonal (es decir, Q k Q k  I ) y R k es una matriz triangular


T

superior. Luego se efectúa el producto en orden cambiado:

A ( k 1)  R k Q k (3.32b)

T
Obsérvese que premultiplicando (3.32a) por Q k se obtiene:

Q Tk A ( k )  R k

y por lo tanto:

A ( k 1)  R k Q k  Q Tk A ( k ) Q k
(k ) ( k 1)
Nótese que si A es simétrica A también resulta simétrica.
Esta expresión
( k 1) (k )
indica además que A es "similar" a A : sus valores característicos son los
mismos y los correspondientes vectores se relacionan por una transformación lineal:

A (k )  (k )    (k )
Al efectuar el cambio de variables:

 ( k )  Q k  ( k 1) (3.32c)
se obtiene:

A ( k ) Q k  ( k 1)   Q k  ( k 1)

Q T
kA
(k )
Qk  ( k 1)
   ( k 1)

Ambas matrices tienen los mismos valores característicos (que en consecuencia son
los de la matriz original) y vectores característicos relacionados por (3.32c).

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 26


(k )
A medida que k crece A converge a una matriz triangular superior (cuyos valores
(k )
característicos son los elementos de la diagonal principal); para el caso simétrico A
converge a una matriz diagonal. Los valores característicos se obtienen en orden
descendente; así la aproximación al valor característico de menor módulo se obtiene en
la posición nn de la matriz.
La convergencia del proceso es análoga a la de la iteración inversa. Cuando en pasos
sucesivos se obtienen valores similares en el extremo inferior de la diagonal principal,
puede afirmarse que se tiene una aproximación al primer valor característico. La
convergencia puede acelerarse efectuando traslaciones:

 k  a nn
(k )
(3.33a)

A ( k 1)  R k Q k   k I (3.33b)

Nótese que los valores característicos de esta nueva matriz son iguales a los de la
matriz original menos la translación. Cuando se logra que a nn  0 puede hacerse una
(k )

traslación:

 k  a n( k)1,n 1 (3.33c)

para mejorar la convergencia al segundo valor característico y análogamente se


procede para los otros valores requeridos. Por regla general se requieren sólo 2 pasos
por cada valor característico adicional. Al finalizar el proceso debe agregarse a los
valores  obtenidos la suma de las traslaciones  k efectuadas.

Los vectores característicos podrían obtenerse con el producto:

 ( 0 )  Q 1Q 2 Q 3 

pero este proceso es poco eficiente, siendo más conveniente obtener estos vectores
por iteraciones inversas con traslaciones iguales a los valores característicos ya
determinados. Esto permite también mejorar la precisión en los  .

La determinación de Q y R en un paso puede hacerse en diversas formas. El proceso


más eficiente consiste en transformar A en una matriz triangular superior utilizando
matrices de rotación plana (como en el método de Jacobi):

P T T
n , n 1  P31
T

P21 AR (3.34a)

y por lo tanto:

Q  P21 P31  Pn ,n 1 (3.34b)

La matriz P ji , que permite hacer cero el coeficiente ji:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 27


col i col j
1 
 
  
 cos  k  sen  k 
Pk    fila i (3.34c)
 sen  k cos  k  fila j
 
  
 1

se obtiene mediante:

aii( k )
cos  
d
a (jik )
sen   (3.34d)
d

d a   a 
(k ) 2
ji
(k ) 2
ii

Sólo se requiere un ciclo de estas transformaciones para obtener R. No es necesario


iterar.
 2 1 0
 
Para un ejemplo del proceso considérese la matriz: A
(0)
 1 4 1
 
 0 1 2
Esta es una matriz simétrica (lo cual no es un requisito para emplear el método QR) y,
siendo tridiagonal, tiene la “forma Hessemberg”.

Para transformar A en una matriz triangular superior R se hace primero cero el


coeficiente a21:
(0)
a11 2 ( 0)
a 21 1 d  2.236068
cos   0.894427 sen   0.447214

 .894427 - .447214 0 
 
P21   .447214 .894427 0 
 
 0 0 1

 2.236068 2.683282 0.447214


 
T
P21 A (0)  0 3.130494 .894427 
 
 0 1 2 
Luego se hace cero a32, con lo que se obtiene una matriz triangular superior:
(0)
a 22  3.130494 ( 0)
a32 1 d  3.286335
cos   0.952579 sen   0.304290

1 0 0 
 
P32   0 .952579 - .304290
 
 0 .304290 .952579 

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 28


 2.236068 2.683282 0.447214
 
R1  T T
P32 P21 A ( 0)  0 3.286332 1.460532 
 1.632993
 0 0

Y se completa el primer paso efectuando el producto:

 3.200000 1.469694 0 
 
A (1)
 R 1Q1  R 1 P21 P32   1.469694 3.244444 .496904 
 
 0 .496904 1.555556

Análogamente, en el segundo paso:

 .908739 - .417365 0 
 
P21   .417365 .908739 0 
 
 0 0 1

1 0 0 
 
P32   0 .978097 - .208150
 
 0 .208150 .978097 
 3.521363 2.689686 0.207390 
 
R2  T T
P32 P21 A (1)  0 2.387242 0.765454
 1.427493
 0 0

 4.322581 0.996351 0 
 
A (2)
 R 2 Q 2  R 2 P21 P32   0.996351 2.281193 0.297132
 0.297132 1.396226 
 0

En el tercer paso:

 .974449 - .224610 0 
 
P21   .224610 .974449 0 
 
 0 0 1

1 0 0 
 
P32   0 .989134 - .147017
 
 0 .147017 .989134 
 4.435924 1.483271 0.066739
 
R3  T T
P32 P21 A ( 2)  0 2.021076 0.491663
 1.338488 
 0 0

 4.655738 0.453953 0 
 
A (3)
 R 3 Q 3  R 3 P21 P32   0.453953 2.020319 0.196780
 0.196780 1.323944 
 0

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 29


Y en sucesivos pasos:

 4.718610 0.191812 0 
 
A (4)
  0.191812 1.989971 0.129212
 0.129212 1.291420 
 0

 4.729677 0.080614 0 
 
A (5)
  .0.080614 1.992765 0.083349
 0.083349 1.277559 
 0

Suponiendo que el coeficiente a 33  1.277559 sea una buena aproximación al primer


(5)

valor característico, se efectúa una traslación:

 3.452118 0.080614 0 
 
A (5)
 1.277559 I   .0.080614 0.715206 0.083349
 
 0 0.083349 0 
obteniéndose en el siguiente paso:

 3.454389 0.016762 0 
 
A (6)
  0.016762 0.722542 - 0.001123
 - 0.001123 0.009608 
 0
Se hace entonces una nueva traslación:

 6  0.009608      k  1.287167

obteniéndose:

 3.444880 0.003469 0 
 
A (7)
  0.003469 0.712838 0.000000
 0.000000 0.000001
 0
y nuevamente:

 7  0.000001      k  1.287168
obteniéndose:

 3.444882 0.000718 0 
 
A (8)
  0.000718 0.712832 0 
 0 
 0 0

Se observa ahora que el coeficiente a33 es menor que 10-6, lo que implica que 1 es
aproximadamente igual a la suma de las traslaciones previamente realizadas:
1  1.287168

Conviene luego hacer una traslación igual al resultado obtenido para a22 a fin de
mejorar la precisión para el segundo valor característico:

 8  0.712832      k  2

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 30


 2.732050 0.000718 0 
 
A (8)
 0.712832 I   0.000718 0 0 
 - 0.712832
 0 0

Y puede trabajarse con la submatriz de un orden menor:

 2.732050 0.000718
A (8)   
 0.000718 0 
(8)
a11  2.732050 (8)
a 21  0.000718 d  2.732050
cos  1.000000 sen   0.000263

 1.000000 - 0.000263
P21  Q 8   
 0.000263 1.000000 
 2.732050 0.000718
R 8  P21
T
A (8)   
 0 0.000000

 2.732051 0 
A (9)   
 0 0 

Los coeficientes indicados como 0 son menores que 10-6. Los valores característicos
de esta matriz son 0 y 2.732051. Para obtener aquellos de la matriz original deben
sumarse las traslaciones previas:
2 = 0 + 2 = 2
3 = 2.732051 + 2 = 4.732051

3.3.5. Transformación a la Forma Hessemberg

Si el método QR se aplicara a una matriz cualquiera sería en general poco eficiente,


puesto que requiere O  4 n3  operaciones por paso. Para reducir el número de
  por paso debe previamente transformarse la matriz a la forma
3
2
operaciones a O 4n
"Hessemberg" (es decir, una matriz que es casi triangular superior, teniendo además
coeficientes significativos en la primera codiagonal inferior):

 h11 h12 h13 h14  h1n 


 
 h21 h22 h23 h24  h2 n 
 
0 h32 h33 h34  h3n 
H   (3.35)
0 0 h43 h44  h4 n 
 
      
 
 0 0 0 0 hn ,n1 hnn 

Si la matriz original fuera simétrica, la transformación a la forma Hessemberg, que


puede hacerse conservando la simetría, produce una matriz tridiagonal. En tal caso el
QR requiere apenas 12 n operaciones por paso. Cabe anotar que la forma
Hessemberg (tridiagonal para el caso simétrico) no se pierde en los sucesivos pasos
del método QR.

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 31


La transformación a la forma Hessemberg sólo requiere hacerse una vez. Por lo tanto
las O  5
3 
n 3 que se gastan en la transformación están plenamente justificadas.
Entre los procedimientos que se encuentran en la literatura para efectuar la
transformación, se propone el cambio de variables   B  , con lo que el problema
original Α     se reescribiría como B 1 Α B     o bien H     . En este
caso B 1 Α B  H o, lo que es lo mismo, Α B  B H . En el proceso original de
Hessemberg se usa una matriz B de la forma:

1 0 0 0  0
 
0 1 0 0  0
 
0 b32 1 0  0
B (3.36a)
0 b b43 1  0
 42

 
 
 0 bn 2 bn 3 bn 4  1

con coeficientes arbitrarios en la primera columna (que por simplicidad se ha escrito


como la primera columna de la matriz identidad). Los coeficientes de las sucesivas
filas de H y columnas de B pueden entonces obtenerse con las expresiones:
n r
hir  air  a
k  r 1
ik bkr  b
k 1
ik hkr i  1, 2,  r  1 (3.36b)

1  
n r
bi ,r 1 
hr 1,r 
air  
k  r 1
aik bkr  b
k 1
ik hkr



i  r  2,  n (3.36c)

Este procedimiento podría fallar si en algún paso hr 1,r  0 . El proceso podría


recomenzarse con una primera columna de B diferente, lo que en general evitaría el
error, aunque esto no puede garantizarse. Por otro lado, el procedimiento antes
expuesto no mantiene la posible simetría de la matriz A .

También puede hacerse la transformación a la forma Hessemberg por rotaciones


planas (método de Givens) o reflexiones (Householder). El método de Householder
(Householder, 1958) utiliza matrices ortogonales y simétricas, de la forma:

P  I  2 w wT (3.37)
1
es un vector unitario: w T w  1 . Es fácil probar que P  P  P .
T
donde w
La matriz P refleja al espacio en el "plano" que pasa por el orígen y es ortogonal a w .
Considérese un vector cualquiera v   0 w   1u donde u T w  0 . Entonces,

P v  I  2 w wT    w   u    w   u .
0 1 0 1 Nótese que la componente según w
ha cambiado de signo; es decir, el vector v ha sido reflejado en el plano ortogonal a w
.

La transformación de A en H mediante el método de Householder requiere n  2


pasos ( n es aquí el orden del sistema) de la forma:

A ( k 1)  Pk A ( k ) Pk (3.38a)

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 32


donde:

Pk  I   k w k w Tk
2
k  (3.38b)
w Tk w k
w k  v k  signo a k( k)1, k v k e k 1

siendo:

 0 
  
 
 0 
  una matriz que contiene los coeficientes de la columna k de
v k   a k( k)1, k 
a ( k )  A (k ) que están por debajo de la diagonal principal, y
 k  2,k 
  
 (k ) 
 a nk 

0
 
 
 
e k 1  1 la columna k  1 de la matriz identidad (de orden n ).
 
 
0

Para que el proceso sea más eficiente, debe observarse que al premultiplicar A , cuyas
columnas son a 1 a 2 a 3  , por la matriz P , cada columna se modifica en forma
independiente. Las columnas de A  PA resultan:

 
a j  I   k w k w Tk a j  a j   k w Tk a j w k   (3.39a)

Igualmente, al postmultiplicar A por P las filas se modifican en forma independiente.


Llamando ahora a i a la fila i de la matriz A  PA , la correspondiente fila de A  A P
resulta:

 
ai  a i I   k w k w Tk  a i   k  a i w k  w Tk (3.39b)

Por ejemplo, considérese la matriz:

4 3 2 1
 
3 4 3 2
A A
(1)

2 3 4 3
1 4 
 2 3

Transformación de la primera columna a la forma Hessemberg:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 33


0
 
3 
v1    v1  3.74166
2 
1 
 
0  0  0 
     
3  1 6.74166
w 1  v 1  v 1 e 2     3.74166      1  0.03964
2  0  2 
1  0  1 
     

1 w 1T A (1)  1.00000 1.38619 1.23786 0.93096

 4.00000 3 2 1 
 
 - 3.74166 - 5.34522 - 5.34522 - 4.27618
P1 A (1)  
 0 0.22762 1.52428 1.13809 
 3.06904 
 0 0.61381 1.76214

 1.00000
 
 2.02190
1 P1 A (1) w 1   
 0.22681
 0.42543
 

 4.00000 - 3.74166 0 0 
 
 - 3.74166 8.28571 - 1.30143 - 2.25428
A ( 2)  P1 A P1  
(1)

 0 - 1.30143 1.07067 0.91128 
 2.64362 
 0 - 2.25428 0.91128

Transformación de la segunda columna a la forma Hessemberg:

 0 
 
 0 
v2    v 2  2.60298
  1 . 30143 
 2.25428
 
 0  0  0 
     
 0  0  0 
w 2  v 2  v 2 e3     2.60298       2  0.09840
  1.30143 1   3.90441
     
 2.25428 0  2.25428

 2 w T2 A ( 2)  0 1.00000 - 0.61346 - 0.93647

 4.00000 - 3.74166 0 0 
 
 - 3.74166 8.28571 - 1.30143 - 2.25428
P2 A ( 2)  
 0 2.60298 - 1.32452 - 2.74510
 0.53254 
 0 0 - 0.47162

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 34


 0 
 
 1 
 2 P2 A ( 2) w 2   
1.11774
0.06306
 

 4.00000 - 3.74166 0 0 
 
 - 3.74166 8.28571 2.60298 0 
H  A ( 3)  P2 A P2  
( 2)

 0 2.60298 3.03959 - 0.22540
 0.67470 
 0 0 - 0.22540

3.4 Métodos Mixtos


Los dos procesos que se describen en lo que sigue son adecuados para sistemas de
orden grande en el caso en que se requieran muchos vectores característicos.

3.4.1 Iteración con la Determinante de (A - B)

Los valores propios de A    B  son los ceros del polinomio característico


p   det A   B   0 . Por ejemplo, si:
4 2 0 0 1 0 0 0
   
2 8 2 0 0 2 0 0
A  B 
0 2 8 2 0 0 2 0
0 4  0 1 
 0 2  0 0

Las raíces del polinomio:

4   2 0 0 
 
 2 8  2 2 0 
p   det 
0 2 8  2 2 
 
 0 4   
 0 2
 4 4  64 3  364 2  864   720  0

son los valores característicos. La determinación de los coeficientes del polinomio


característico es factible (utilizando, por ejemplo, el método de Hessemberg). Una vez
obtenidos los coeficientes del polinomio característico, se requiere determinar los
valores de  para los que p   0 . Sin embargo, éste es frecuentemente un
problema mal condicionado: pequeños errores en los coeficientes causan grandes
errores en las raíces. Por ello, los métodos en los que se hace una determinación
explícita del polinomio característico sólo son adecuados para pequeñas matrices.

Para matrices de orden elevado, pero con un ancho de banda comparativamente


pequeño, pueden determinarse los valores característicos por iteración, evaluando la
determinante de A   k B para una secuencia de valores  k que se corrigen con
procesos tales como el método de la secante. Así, dadas las aproximaciones  k 1 y

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 35


 k a una raíz y habiéndose calculado p k 1   A   k 1 B y p k   A   k B se
obtiene una mejor aproximación,  k 1 , mediante:

  k   k 1 
 k 1   k     p( k ) 1   2 (3.40)
 p( k )  p( k 1 ) 
La evaluación de p   no requiere tener el polinomio p   en forma explícita.

Si A   B se descompone en el producto de una matriz triangular inferior, L , con


unos en la diagonal principal, por una matriz triangular superior, U , se tiene que:
p   det A   B   det LU   det L  det U  (3.41a)

donde:
det L   l11 l 22 l 33 l 44   1
(3.41b)
det U   u11 u 22 u 33 u 44 

y por lo tanto: p   u11 u 22 u 33 u 44  u nn

La descomposición de A   B en factores triangulares LU requiere pocas


operaciones si el ancho de banda es pequeño.

Particularmente importante es el caso en el que las matrices A y B son simétricas y


definidas positivas (todos los valores característicos son reales y positivos). En tal caso
puede aplicarse la propiedad de Sturm: el número de coeficientes negativos en la
diagonal principal de U al hacer la descomposición A   B  LU es igual al número
de valores característicos menores que  k . Esta propiedad, combinada con la
iteración (3.59) u otra similar, permite obtener una primera aproximación a una raíz. Sin
embargo, el proceso debe combinarse con iteraciones inversas usando el cociente de
Rayleigh para refinar los valores obtenidos.

Para las matrices A y B antes indicadas, con   1.5 :

 2.5 2 0 0   1 0 0 0   2.5 2 0 0 
    
 2 5 2 0   .800 1 0 0   0 3.4 2 0 
A  1.5 B     
 0 2 5 2   0 .588 1 0  0 0 3.824 2 
 0 0 2 2.5   0 1   0 1.454 
 0 .523 0 0

p1.5  2.5  3.4  3.824  1.454  47.25

Análogamente se obtienen:
k p ( k ) Número de coeficientes negativos
en la diagonal principal de U

1.5 47.25 0
1 2.0 0 0
2.5 -8.75 1
2 3.0 0 1
3.5 11.25 2
4.0 16.00 2
4.5 11.25 2

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 36


3 5.0 0 2
5.5 -8.75 3
4 6.0 0 3
6.5 47.25 4

3.4.2 Iteración en Subespacio

El método tratado en la sección precedente es eficiente cuando las matrices tienen


ancho de banda relativamente pequeño. Cuando el ancho de banda es grande es más
adecuado un proceso de iteración en subespacio, como se describe en este acápite.
Este método tiene por objeto determinar en forma simultánea los p vectores
característicos asociados a los valores característicos de menor módulo. La idea
básica es que es mucho más fácil iterar para obtener un subespacio que contenga a
estos vectores que iterar para obtener cada uno de ellos por separado.

Se trabaja con una colección de q vectores linealmente independientes ( q  p ). Los


q vectores iniciales definen un subespacio que no necesariamente contiene a los p
vectores de interés. Si esos p vectores característicos si estuvieran contenidos en el
subespacio, sería suficiente proyectar A    B  para obtener el sistema A z   B z
, de orden q  n , que sería fácil de resolver por métodos de transformación. Los
valores característicos del problema proyectado serían los mismos del problema
original, mientras que sus vectores característicos, z , corresponderían a las
proyecciones de los vectores  en el subespacio. No siendo éste el caso, se hacen
iteraciones inversas para mejorar los q vectores con los que se trabaja, de modo que
el subespacio por ellos definido sea más y más “paralelo” a los p vectores propios de
interés.
En lo que sigue, se supone que A y B son matrices simétricas. Siendo X k los q
vectores de aproximación, en cada ciclo del proceso se realizan los pasos siguientes:

a. Iteración inversa:

AX k 1  BX k
La matriz A debe factorizarse antes de iniciar las iteraciones. Los vectores X k 1
son más “paralelos” a los primeros p vectores característicos.

b. Proyección de A y B en el subespacio definido por los vectores X k 1 :

A ( k 1)  X Tk 1 A X k 1

B ( k 1)  X Tk 1 B X k 1
( k 1) ( k 1)
Las matrices A y B son cuadradas, simétricas, de orden q .

c. Solución del problema de valores y vectores característicos proyectado:

A ( k 1) Q k 1  B ( k 1) Q k 1  k 1
 k 1 es una matriz diagonal, cuyos coeficientes son los valores característicos del
problema proyectado. Si los X k 1 definen un subespacio que contiene a los p
primeros vectores propios, los p menores valores en  k 1 son parte de la solución
buscada.

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 37


d. Determinación de nuevos vectores:

X k 1  X k 1 Q k 1

Como consecuencia de los pasos c y d:

 
X Tk 1 A X k 1  Q Tk 1 X Tk 1 A X k 1 Q k 1  Q Tk 1 A ( k 1) Q k 1   q

X Tk 1 B X k 1  Q Tk 1 X T
k 1 B X k 1 Q k 1  Q Tk 1 B ( k 1) Q k 1  I q

es decir, los vectores X k 1 satisfacen las condiciones de ortogonalidad, lo que asegura


que la iteración inversa no produce q vectores todos iguales a 1 .

Si en las X 0 hay componentes según todos los p vectores característicos de interés:

Lim  k  diag  1  2  p  
k 

Lim X k  diag 1  2  p  
k 
( k 1)
Habiéndose obtenido en dos ciclos sucesivos los estimados  p y  p
(k )
para el mayor
de los valores característicos requeridos, el cociente (pk 1)  (pk ) (pk 1) da una
medida adecuada del error relativo y es útil para verificar la convergencia.
Adicionalmente, debe comprobarse que los valores y vectores obtenidos corresponden
a los p menores valores característicos. Para ello puede usarse la propiedad de
Sturm, factorizando A   B en LU con valores de  ligeramente mayores a los 
calculados.

Si A y B son simétricas, de orden n , ancho de semibanda m , y A es definida


positiva, el número de operaciones iniciales requeridas es de O 12 nm 2 ,  
esencialmente para la factorización de A . En cada ciclo de la iteración, considerando
q  n , deben hacerse O  nq  4m  2q  3 operaciones. Esto puede reducirse a
O  nq  2m  2q  3 cuando B es diagonal. Para el procedimiento como se ha
descrito en los párrafos precedentes, se trabaja con q  min  2 p, p  8 .
Habitualmente unos 10 ciclos de iteración son suficientes para obtener 6 cifras
significativas correctas en los p valores y vectores característicos. Las operaciones
 
finales requieren O 12 nm 2 p operaciones adicionales.

Aproximación Inicial

Para iniciar el proceso se requieren q vectores linealmente independientes, agrupados


en X 0 . Si A y B fueran diagonales, los vectores característicos serían las columnas
e k de la matriz identidad. Aún cuando A y B no sean diagonales, éste puede ser un
buen criterio para construir la aproximación inicial X 0 . En particular, deberían
escogerse las columnas cuyo índice k corresponde a los máximos bkk a kk . Con el
propósito de introducir componentes según todos los vectores característicos, se
acostumbra además considerar dos columnas con componentes arbitrarios (que
podrían ser todos iguales a 1, o iguales a los bkk a kk ).

En algunas aplicaciones es fácil obtener una buena aproximación al primer vector


característico, por ejemplo, como solución de un sistema de ecuaciones de la forma
A x1  b . Las sucesivas columnas x k para una excelente aproximación inicial pueden

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 38


entonces obtenerse como vectores de Ritz, mediante un proceso recursivo que
combina pasos de iteración inversa con ortogonalización:
A y k  B x k 1
k 1  y Tk B x j 
xk  y k   
 T
j 1  x j B x j
x
 j

Determinación de Grupos de Vectores Característicos Haciendo Traslaciones

Si se requieren muchos vectores característicos, el procedimiento estándar de iteración


en subespacio puede hacerse más eficiente utilizando sucesivas traslaciones en
combinación con procedimientos de eliminación de las componentes según los
vectores ya conocidos.

En este caso se trabaja con subespacios de dimensión q , con el propósito de



determinar grupos de p  q 2 vectores. Habitualmente q  máx 4, m , siendo m el 
ancho (promedio) de semibanda. Para cada grupo de vectores, se realizan cómputos
iniciales que incluyen:

a. Determinación de la traslación (el proceso se inicia con   0 )


~
  0.1  n  0.9  n 1
 n es el último valor característico para el que se ha logrado convergencia;
~
 n 1 es la aproximación al siguiente valor característico.
b. Factorización: A  B  L U

c. Determinación de q vectores de aproximación inicial, X 0 .

La iteración incluye los pasos siguientes:

a. Eliminación de las componentes de X k según los vectores característicos


previamente determinados (ver acápite 3.2.4).

b. Iteración inversa:
Yk 1  B X k
L U Z k 1  Yk 1

c. Proyección de A  B y B en el subespacio definido por los vectores Yk 1 :

A ( k 1)  Z Tk 1 Yk 1

B ( k 1)  Z Tk 1 B Z k 1
( k 1) ( k 1)
Las matrices A y B son cuadradas, simétricas, de orden q .

d. Solución del problema de valores y vectores característicos proyectado:

A ( k 1)

  B ( k 1) Q k 1  B ( k 1) Q k 1  k 1

e. Determinación de nuevos vectores:


X k 1  Z k 1 Q k 1

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 39


f. Verificación de la convergencia

Como en el procedimiento estándar, debe verificarse que se tienen los valores


característicos correctos utilizando la propiedad de Sturm.

Un ejemplo simple

Supóngase que se requieren dos vectores característicos de A    B  , siendo:

 2 1 0 0 0 
   
1 2 1 0  1 
A  B 
 0 1 2  1  0 
 0 1 2   2 
 0 
En este caso particular la iteración inversa produce en un solo paso el subespacio que
incluye a los dos primeros vectores característicos, ya que dos de los valores
característicos son infinitos. Para hacer más eficiente el proceso debe factorizarse
primero la matriz A :

 1 0 0 0  2 1 0 0
  
  0.5 1 0 0  0 1.5 1 0
A    LU
 0  .6667 1 0  0 0 1.3333  1
 0  0.75 1   0 0 1.25 
 0 0

0 0
 
0 1
Con la aproximación inicial: X 0   
0 0
1 0 

Se obtiene por iteración inversa:

0 0  0.4 0.6 
   
0 1  0.8 1.2 
B X0    L U X1  B X 0 X1   
0 0  1.2 0.8 
2 0   1.6 0.4 
 
Proyectando las matrices A y B en el subespacio definido por los vectores X1 :

 3.2 0.8   5.76 2.24 


A (1)  X1T A X1    B (1)  X1T B X1   
 0.8 1.2   2.24 1.76 

se resuelve el problema proyectado (método de Jacobi generalizado):


c1  1.28 d  2.56
c 2  2.56    -0.50
c 3  -0.64   1.00

 1   1  0.5 
P      
  1  1 1 

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 40


 6.00 0  12 0 
P T A P    P T B P   
 0 1.20   0 0.96 
 a11 b11 0   0.50 0 
de donde:     
 0 a 22 b2   0 1.25 

 0.288 675  0.510 310 


Q   
 0.288 675 1.020 621 
y finalmente se expresan los vectores en el sistema de referencia original:

 0.288 675 0.408 248 


 
 0.577 350 0.816 497 
X 1  X1Q    1 2 
0.577 350 0.204124 
 
 0.577 350  0.408 248 
 

Referencias
 Bathe, K.J. (2014) Finite Element Procedures. 2ª edición. K.J.Bathe, Watertown, MA.
 Faddeev, D:K. y Faddeeva, V.N. (1960) Computational Methods of Linear Algebra.
W.H.Freeman and Company, San Francisco.
 Francis J.G. (1961) "The QR transformation". Computer Journal 4
 Householder, A.S. (1958). "Unitary Triangularization of a Nonsymmetric Matrix". Journal of the
ACM. 5 (4)
 Jacobi, C.G.J. (1846) "Über ein leichtes Verfahren die in der Theorie der Säcularstörungen
vorkommenden Gleichungen numerisch aufzulösen", Crelles Journal, 30.
 Kublanovskaya, V.N. (1962) "On some algorithms for the solution of the complete eigenvalue
problem".USSR Comput. Math. and Math. Phys. 1
 Wilkinson, J.H. (1965) The Algebraic Eigenvalue Problem. Clarendon Press, Oxford.
 Wilkinson, J.H. y Reinsch, C. (1971) Handbook for Automatic Computation. Vol.II Linear
Algebra. Springer, Berlín.

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 41


Ejercicios
Los ejercicios siguientes deben ser resueltos empleando una hoja de cálculo. Para los ítems 1 al
4 considere un problema de valores y vectores característicos de la forma:

a b 0 0
 
c a b 0
 Φ  Φ
0 c a 
 
 
0 0  
1

 c 2
para el que se tienen los valores característicos:  s  a  2b   cos  s
b
  c 2 1

   sen  s 
b 
c 
   sen 2 s 
y los vectores característicos:  s    b  
 3 
 c  sen 3 
2

 b  s
  
 
s
En estas expresiones  s  . n el orden de la matriz y s un entero en el rango entre 1 y n .
n 1

1. Suponga n  4 y valores arbitrarios para bc y a  b  c . Determine el mayor valor


característico y el correspondiente vector usando iteración directa. Note que los vectores
característicos quedan definidos por su orientación, no por su magnitud

2. Para la misma matriz, determine el menor valor característico y el correspondiente vector usando
iteración inversa.

3. Nuevamente para la misma matriz, determine los valores característicos intermedios  2 y 3 .


Luego haga traslaciones apropiadas y obtenga los correspondientes vectores propios por iteración
inversa.

4. La matriz planteada para los ejercicios anteriores es simétrica. ¿Es definida positiva? (se requiere
que todos los valores característicos sean reales y positivos). En tal caso, verifique la
ortogonalidad de los vectores característicos.

5. Para el problema de valores y vectores característicos:

 4 1 1 0
  Φ     Φ
 1 6  0 2
Obtenga el polinomio característico y calcule sus raíces. Luego determine los valores y vectores
característicos utilizando el método de Jacobi.

6. Usando el método de Jacobi, determine los valores y vectores característicos de la matriz:

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 42


 4 1 0
 
A  1 4 1
 0 1 4
 
Para verificar la solución pueden emplearse las expresiones presentadas al inicio de esta sección.
Note que a lo largo del proceso la traza de la matriz (la suma de los coeficientes de la diagonal
principal) se mantiene constante. Por otro lado, se producen coeficientes significativos en
a13  a 31 , aún cuando inicialmente se tenía un valor 0 .
 6 5 4
 
7. Dada la matriz:: H   5 3 2 
4 2 1
 
determine otra matriz, de la forma Hessemberg, que tenga los mismos valores característicos.

8. Empleando el método QR, determine una aproximación al menor valor característico de la matriz:

 6 - 6.403124 0 
 
H   - 6.403124 4.170732 - 0.536585
 - 0.536585 - 0.170732
 0

4 2  0 
   
2 8 2   1 
9. Para el problema:   φ φ
2 8 2 2 
   
 2 4   0 
 
Determine dos vectores característicos haciendo un paso del método de iteración en subespacio
(el proceso converge en un solo paso porque dos de los valores característicos son  ).

H. Scaletti - Métodos Numéricos: Valores y Vectores Característicos 3 - 43

También podría gustarte