11.07.2015 Views

Métodos numéricos para la determinación de autovalores

Métodos numéricos para la determinación de autovalores

Métodos numéricos para la determinación de autovalores

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

don<strong>de</strong> condT = ‖T‖‖T −1 ‖ es el número <strong>de</strong> condición <strong>de</strong> <strong>la</strong> matriz T. Así‖∆A‖‖A‖≤ (condT)2 ‖∆B‖‖B‖Entonces es <strong>de</strong> esperar que <strong>para</strong> condT ≫ 1 el problema <strong>para</strong> B estará peor condicionando queel problema <strong>para</strong> A. Puesto quecondT = cond (T 1 . . .T m ) ≤ condT 1 . . .condT mun buen condicionamiento estará asegurado si escogemos matrices <strong>de</strong> transformación T i talesque cond T i no sea <strong>de</strong>masiado gran<strong>de</strong> 1 . Este es el caso, en particu<strong>la</strong>r, <strong>para</strong> <strong>la</strong> norma máxima‖x‖ ∞ = max 1≤i≤n |x i | 2 y <strong>la</strong>s matrices <strong>de</strong> eliminación <strong>de</strong> <strong>la</strong> forma⎡⎤1 0. .. 1T i = G j =. l .., |l kj | ≤ 1j+1,j ⎢⎣. ⎥. .. ⎦0 l nj 0 1<strong>la</strong> cual es una matriz triangu<strong>la</strong>r inferior que difiere <strong>de</strong> <strong>la</strong> i<strong>de</strong>ntidad en <strong>la</strong> columna j-ésima y cuyainversa es⎡⎤1 0. .. G −11j =. −l ..j+1,j ⎢⎣. ⎥. .. ⎦0 −l nj 0 1Para estas matricescond ∞ T i ≤ 4Para lo norma eucli<strong>de</strong>ana ‖x‖ 2 = √ x t x 3 un ejemplo son <strong>la</strong>s matrices ortogonales T i <strong>para</strong> <strong>la</strong>s cualescond 2 T i = 1 4 . De acuerdo a lo anterior, es <strong>de</strong> esperar que algoritmos basados en transformacionesortogonales sean muy estables (como contrapartida estos algoritmos requieren más aritmética queaquellos basados en transformaciones <strong>de</strong> semejanza generales).1 Recuér<strong>de</strong>se que condA ≤ 1 <strong>para</strong> cualquier matriz no singu<strong>la</strong>r A. En efecto, 1 = ‖I‖ = ‖AA −1 ‖ ≤ ‖A‖‖A −1 ‖ =condA.2 PCuya norma matricial subordinada es ‖A‖ = max n1≤i≤n j=1 |a ij|.3 Cuya norma matricial subordinada es ‖A‖ 2 = µ 1 don<strong>de</strong> µ 1 es el máximo valor <strong>de</strong> <strong>la</strong>s raíces cuadradas nonegativas <strong>de</strong> los <strong>autovalores</strong> (necesariamente reales y no negativos) <strong>de</strong> <strong>la</strong> matriz simétrica semi<strong>de</strong>finida positivaA t A.4 En efecto, si T es ortogonal TT t = I y como los <strong>autovalores</strong> <strong>de</strong> <strong>la</strong> matriz i<strong>de</strong>ntidad son 1 (con multiplicidadn), cond 2 T = ‖T‖‖T t ‖ = 1 × 1 = 1.4


La transformación <strong>de</strong> JacobiUna <strong>de</strong> <strong>la</strong>s transformaciones ortogonales más simples es una rotación en un p<strong>la</strong>no, l<strong>la</strong>madausualmente transformación <strong>de</strong> Jacobi. La matriz <strong>de</strong> transformación T i = Ω j,k es <strong>de</strong> <strong>la</strong> forma⎡1Ω jk =⎢⎣. ..c . . . −s. 1 .s . . . c⎤. ⎥ .. ⎦1Aquí todos los elementos diagonales son <strong>la</strong> unidad excepto los dos elementos c en <strong>la</strong>s fi<strong>la</strong>s (ycolumnas) j y k. Todos los elementos fuera <strong>de</strong> <strong>la</strong> diagonal son nulos excepto los dos elementos sy −s. Los números c y s son el seno y el coseno <strong>de</strong> cierto ángulo <strong>de</strong> rotación φ así que no son, enmagnitud, mayores que <strong>la</strong> unidad yc 2 + s 2 = 1Esta re<strong>la</strong>ción <strong>de</strong> normalización implica que solo un valor pue<strong>de</strong> ser escogido libremente. Esta matrizes utilizada <strong>para</strong> transformar a <strong>la</strong> matriz segúnA ′ = Ω t jk AΩ jkAhora bien, <strong>la</strong> multiplicación Ω t jkA cambia solo <strong>la</strong>s fi<strong>la</strong>s j y k <strong>de</strong> A, mientras que <strong>la</strong> multiplicaciónAΩ jk cambia solo <strong>la</strong>s columnas j y k. Así A ′ difiere <strong>de</strong> A solo en los elementos <strong>de</strong> <strong>la</strong>s columnas yfi<strong>la</strong>s j y k. Si realiza <strong>la</strong> multiplicación matricial se obtienen fórmu<strong>la</strong>s explícitas <strong>para</strong> los elementos<strong>de</strong> estas fi<strong>la</strong>s y columnas. La i<strong>de</strong>a <strong>de</strong>l método <strong>de</strong> Jacobi es escoger el valor <strong>de</strong> c <strong>de</strong> manera <strong>de</strong>anu<strong>la</strong>r el elemento <strong>de</strong> A ′ situado en <strong>la</strong> posición correspondiente a +s en T, esto es, hacer quea ′ kj = 0Esta condición permite <strong>de</strong>terminar unívocamente el valor apropiada <strong>de</strong>l ángulo <strong>de</strong> rotación ylos valores <strong>de</strong> c y s que <strong>de</strong>finen a <strong>la</strong> correspondiente matriz <strong>de</strong> transformación Ω jk . Nótese quesi A es simétrica entonces también a ′ jk = 0 ya que A′ <strong>de</strong>be ser simétrica como lo requiere <strong>la</strong>transformación ortogonal.Sin embargo, aunque po<strong>de</strong>mos producir ceros fuera <strong>de</strong> <strong>la</strong> diagonal en forma efectiva con estatransformación, una sucesión finita <strong>de</strong> transformaciones <strong>de</strong> Jacobi no reducirán una matriz simétricageneral a una matriz tridiagonal o a otra forma simple, <strong>de</strong>bido a que <strong>la</strong> siguiente transformación<strong>de</strong>struirá los ceros obtenidos por <strong>la</strong> anterior. Para ver ésto consi<strong>de</strong>remos <strong>la</strong> matriz simétrica <strong>de</strong>nsa4 × 4 <strong>de</strong> <strong>la</strong> figura 0.2. Inicialmente po<strong>de</strong>mos elegir libremente cualesquiera dos columnas y suscorrespondientes fi<strong>la</strong>s; los ceros aparecerán en <strong>la</strong>s dos intersecciones que no se encuentran sobre<strong>la</strong> diagonal principal. Así si elegimos <strong>la</strong>s dos últimas fi<strong>la</strong>s y columnas <strong>la</strong> transformación producirálos ceros mostrados en <strong>la</strong> figura y alterará todos los elementos <strong>de</strong> estas dos fi<strong>la</strong>s y columnas. Siahora intentamos anu<strong>la</strong>r otro elemento ubicado, por ejemplo, en <strong>la</strong> última columna <strong>la</strong> siguientetransformación <strong>de</strong> Jacobi involucrará esta columna y el cero actualmente localizado en <strong>la</strong> posición(3, 4) será <strong>de</strong>struido. Así no hay posibilidad <strong>de</strong> alcanzar ninguna forma simple a través <strong>de</strong>una sucesión finita <strong>de</strong> transformaciones <strong>de</strong> Jacobi eliminando un elemento a <strong>la</strong> vez. Sin embargo,pue<strong>de</strong> probarse que, <strong>para</strong> una matriz real simétrica, una sucesión <strong>de</strong> transformaciones <strong>de</strong> Jacobien un or<strong>de</strong>n a<strong>de</strong>cuado 5 hacen cada vez más y más pequeños los elementos fuera <strong>de</strong> <strong>la</strong> diagonal<strong>de</strong> <strong>la</strong>s matrices transformadas <strong>de</strong> tal manera que, <strong>para</strong> una sucesión infinita <strong>de</strong> transformaciones,5 A saber, llevando inicialmente a 12 a cero y posteriormente haciendo que a 13 , . . . , a 1n , a 23 , . . . , a 2n . . . , a n−1,nvayan a cero en este or<strong>de</strong>n y repitiendo nuevamente el ciclo.5


¾¢¢¢¢¢¢¢ ¢¢¢ ¿ Figura 0.2.<strong>la</strong> matriz A (i) converge a una matriz diagonal, cuyos elementos son precisamente los <strong>autovalores</strong>buscados. Dado que este proceso es infinito, en una implementación práctica uno <strong>de</strong>bería iterarhasta una matriz A (i) cuya suma <strong>de</strong> los módulos <strong>de</strong> los elementos fuera <strong>de</strong> <strong>la</strong> diagonaln∑i=1n∑j=1(j≠i)|a (i)ij |sea suficientemente pequeña <strong>de</strong>ntro <strong>de</strong> <strong>la</strong> precisión <strong>de</strong> los cálculos. Los <strong>autovalores</strong> <strong>de</strong> A pue<strong>de</strong>naproximarse entonces por <strong>la</strong>s componentes diagonales <strong>de</strong> A.Sin embargo, este es un proceso generalmente lento; en <strong>la</strong> práctica se requieren <strong>de</strong> alre<strong>de</strong>dor<strong>de</strong> 6n 3 multiplicaciones antes <strong>de</strong> consi<strong>de</strong>rar los elementos fuera <strong>de</strong> <strong>la</strong> diagonal suficientementepequeños, y con matrices gran<strong>de</strong>s esto es mucho trabajo. Otras estrategias que consi<strong>de</strong>raremosque pronto consi<strong>de</strong>raremos realizan una mejor <strong>la</strong>bor.Mencionemos también que el método <strong>de</strong> Jacobi pue<strong>de</strong> ser implementado <strong>de</strong> manera <strong>de</strong> llevaruna matriz no simétrica a una matriz triangu<strong>la</strong>r, proceso que, en general, requerirá <strong>de</strong> alre<strong>de</strong>dor<strong>de</strong> 12n 3 multiplicaciones antes <strong>de</strong> que converga.Reducción <strong>de</strong> GivensAunque <strong>la</strong> transformación <strong>de</strong> Jacobi no es útil en <strong>la</strong> forma presentada, una pequeña modificaciónpermite una estrategia finita <strong>para</strong> reducir una matriz simétrica A a una forma tridiagonal. En lugar<strong>de</strong> producir un cero en <strong>la</strong>s “esquinas” <strong>de</strong>l cuadrado que <strong>de</strong>fina <strong>la</strong> rotación en el p<strong>la</strong>no, se escoge elparámetro c <strong>de</strong> manera <strong>de</strong> llevar a cero un elemento que no esté localizado en una <strong>de</strong> estas cuatroesquinas, esto es, que no estén en <strong>la</strong>s posiciones a jj , a jk , a kk . Específicamente, tomamos primeroT 1 = Ω 23<strong>de</strong> manera <strong>de</strong> anu<strong>la</strong>r el elemento en <strong>la</strong> posición a 31 (si <strong>la</strong> matriz es simétrica esto anu<strong>la</strong>rá tambiéna a 13 ). Después elegimos T 1 = Ω 23 <strong>de</strong> manera <strong>de</strong> anu<strong>la</strong>r el elemento en <strong>la</strong> posición a 41 , etc. Engeneral, elegimos <strong>la</strong> sucesión <strong>de</strong> transformaciones T i dados porΩ 23 , Ω 24 , . . ., Ω 2nΩ 34 , . . ., Ω 3n..Ω n−1,n<strong>de</strong> manera tal que Ω jk , j = 2, . . .,n − 1, k = j + 1, j + 2, . . .,n anule el elemento <strong>de</strong> <strong>la</strong> posicióna k,j−1 . En <strong>la</strong> figura 0.3 se ilustra el procedimiento <strong>para</strong> una matriz 4 × 4.El método funciona <strong>de</strong>bido a que los elementos en <strong>la</strong>s posiciones fuera <strong>de</strong>l cuadrado que <strong>de</strong>fine <strong>la</strong>rotación Ω jk (esto es, a rj y a rk con r ≠ j, r ≠ k) son simples combinaciones lineales <strong>de</strong> los valores6


La ortogonalidad se <strong>de</strong>duce como sigueP 2 = (I − 2ww t )(I − 2ww t )= I − 4ww t + 4w(w t w)w t= IAsí P −1 = P, pero como P t P, tenemos que P − 1 = P t , lo que prueba <strong>la</strong> ortogonalidad.El vector w se escoge <strong>de</strong> manera tal que <strong>para</strong> un vector x dadoPx = ke 1don<strong>de</strong> e 1 es el vector [1, 0, . . .,0] t ; es <strong>de</strong>cir <strong>la</strong> matriz P actuando sobre un dado vector x lleva a cerotodos sus componentes excepto el primero. Nótese que el módulo <strong>de</strong>l esca<strong>la</strong>r k es necesariamente<strong>la</strong> norma eucli<strong>de</strong>ana <strong>de</strong> x 8 .Para reducir una matriz simétrica A a <strong>la</strong> forma tridiagonal construimos <strong>la</strong> matriz <strong>de</strong> transformaciónT 1 como una matriz particionada que consiste <strong>de</strong> un 1 en <strong>la</strong> posición (1, 1), una matrizP 1 <strong>de</strong> Househol<strong>de</strong>r <strong>de</strong> or<strong>de</strong>n (n − 1) × (n − 1) y ceros en el resto como se muestra a continuación⎡T 1 =⎢⎣1 0 0 · · · 000. P 10Nótese que esta matriz así construida es ortogonal y simétrica, con lo cual T −11 = T t 1 = T.Si tomamos como vector x los (n − 1) elementos inferiores <strong>de</strong> <strong>la</strong> primer columna <strong>de</strong> A, <strong>la</strong>premultiplicación por T −11 = T 1 llevará los (n − 2) elementos inferiores <strong>de</strong> dicha columna a cero⎡T 1 A =⎢⎣⎡=⎢⎣1 0 0 · · · 000 P 1.0⎤ ⎡⎥ ⎢⎦ ⎣⎤⎥⎦a 11 a 12 a 13 · · · a 1na 21a 31. irrelevantea n1a 11 a 12 a 13 · · · a 1nk0. irrelevante0y <strong>la</strong> postmultiplicación por P no <strong>de</strong>struye los ceros ya que cualquier postmultiplicación por Tno cambia <strong>la</strong> primer columna, <strong>de</strong> <strong>la</strong> misma manera que cualquier premultiplicación no cambia <strong>la</strong>primer fi<strong>la</strong>. A<strong>de</strong>más, si <strong>la</strong> matriz A es simétrica, dado que <strong>la</strong> simetría <strong>de</strong>be preservarse por <strong>la</strong> transformaciónortogonal, tendremos los correspondientes ceros en <strong>la</strong> primera fi<strong>la</strong> <strong>de</strong> <strong>la</strong> transformacióncompleta⎡⎤a 11 k 0 · · · 0k⎢ 0⎥T 1 AT 1 =⎢⎣⎤⎥⎦. irrelevante08 En efecto, siendo P ortogonal, ‖x‖ 2 2 = xt x = xP t Px = (Px) t (Px) = k 2 e t 1 e 1 = k 2 , <strong>de</strong> don<strong>de</strong> ‖x‖ 2 = |k|.⎥⎦⎤⎥⎦8


eliminación <strong>de</strong> <strong>la</strong> forma⎡⎤1 0. .. 1G j =. l .., |l kj | ≤ 1j+1,j ⎢ .⎣. ⎥. .. ⎦0 l nj 0 1Estas matrices tienen <strong>la</strong>s propieda<strong>de</strong>sP −1rs = P rs⎡⎤1 0. .. G −11j =. −l ..j+1,j ⎢ .⎣. ⎥. .. ⎦0 −l nj 0 1La premultiplicación Prs −1 A <strong>de</strong> A por P −1rs = P rs tiene el efecto <strong>de</strong> intercambiar <strong>la</strong>s fi<strong>la</strong>s r ys <strong>de</strong> A, mientras que <strong>la</strong> postmultiplicación AP rs intercambia <strong>la</strong>s columnas r y s <strong>de</strong> A. Unapremultiplicación G −1j A <strong>de</strong> A por G −1j tiene el efecto <strong>de</strong> sustraer l rj veces <strong>la</strong> fi<strong>la</strong> j <strong>de</strong> <strong>la</strong> fi<strong>la</strong> r <strong>de</strong><strong>la</strong> matriz A <strong>para</strong> r = j + 1, j + 2, . . .,n mientras que una postmultiplicación AG j suma l rj veces<strong>la</strong> columna r a <strong>la</strong> columna j <strong>de</strong> A <strong>para</strong> r = j + 1, j + 2, . . . , n.El proceso <strong>de</strong> transformación <strong>de</strong> <strong>la</strong> matriz A a <strong>la</strong> forma <strong>de</strong> Hessenberg proce<strong>de</strong> como sigue.Sea A (0) = A y asumamos, por inducción, que A (i−1) tiene <strong>la</strong> forma <strong>de</strong> una matriz cuyas (i − 1)columnas tienen <strong>la</strong> forma <strong>de</strong> Hessenberg⎡⎢⎣∗ · · · · ∗ ∗ · · ∗∗ · · · ·· · · · ·· · · · ·· · · · ·0 ∗ ∗ ∗ · · ∗0 · · · 0 ∗ ∗ · · ∗· ·· ·0 ∗ · · ∗El paso i-ésimo consiste entonces <strong>de</strong> <strong>la</strong>s siguientes operaciones1. Encontrar el elemento <strong>de</strong> máxima magnitud en <strong>la</strong> columna i-ésima <strong>de</strong>bajo <strong>de</strong> <strong>la</strong> diagonal. Sieste es cero, saltar los dos pasos siguientes y consi<strong>de</strong>rar esta etapa hecha. De lo contrario,supongamos que el elemento máximo está en <strong>la</strong> fi<strong>la</strong> r.2. Intercambiar <strong>la</strong>s fi<strong>la</strong>s r y i+1. Ese es el procedimiento <strong>de</strong> pivoteo. Para hacer esta permutaciónuna transformación <strong>de</strong> semejanza se intercambian también <strong>la</strong>s columnas r y j + 1. Así,en este paso calcu<strong>la</strong>mos <strong>la</strong> matriz⎤⎥⎦A ′ = P −1r,i+1 A(i−1) Pr, i + 1El elemento dominante <strong>de</strong>l paso 1 se encuentra ahora en <strong>la</strong> posición (i + 1, i).10


Evaluación <strong>de</strong>l polinomio característico <strong>de</strong> una matriz tridiagonal (simétrica)Consi<strong>de</strong>remos una matriz tridiagonal simétrica⎡⎤α 1 β 2.A =β .. . ..2 ⎢⎣. .. . ⎥ .. βn ⎦α nSin pérdida <strong>de</strong> generalidad po<strong>de</strong>mos asumir que A es una matriz tridiagonal irreducible, esto es,β i ≠ 0 <strong>para</strong> todo i. De lo contrario, A pu<strong>de</strong> escribirse como una matriz triangu<strong>la</strong>r por bloques,cuyos bloques son matrices tridiagonales irreducibles A (i) , i = 1, . . .,k⎡A (1) ⎤A (2) A = ⎢⎣. ..⎥⎦A (k)β nComo el polinomio característico <strong>de</strong> A es el producto <strong>de</strong> los polinomios característicos <strong>de</strong> losbloques A (i) , los <strong>autovalores</strong> <strong>de</strong> A serán los <strong>autovalores</strong> <strong>de</strong> A (i) , i = 1, . . .,k. Así, pues, es suficienteconsi<strong>de</strong>rar matrices irreducibles A.Escribamos el polinomio característico p (λ) <strong>de</strong> A como el <strong>de</strong>terminante que lo <strong>de</strong>fineα 1 − λ β 2β 2 α 2 − λ β 3β 3 α 3 − λp (λ) =. β .. 4 α n−1 − λ β n∣α n − λ∣Desarrol<strong>la</strong>ndo el <strong>de</strong>terminante por <strong>la</strong> última columna resultaα 1 − λ β 2β 2 α 2 − λ β 3β 3 α 3 − λp (λ) = (α n − λ). .. β n−1∣α n−1 − λ∣∣ ∣∣∣∣∣∣∣∣∣∣∣∣∣∣ α 1 − λ β 2β 2 α 2 − λ β 3β 3 α 3 − λ− β nβ n. ..β n−2α n−2 − λβ n−1β n∣ ∣∣∣∣∣∣∣∣∣∣∣∣∣∣Tenemos así un término que es el producto <strong>de</strong> (α 1 − λ) por el polinomio característico p n−1 (λ)<strong>de</strong> <strong>la</strong> submatriz tridiagonal <strong>de</strong> dimensiones (n −1) × (n −1), y otro término que es el producto <strong>de</strong>β n por otro <strong>de</strong>terminante <strong>de</strong> or<strong>de</strong>n (n − 1). Desarrol<strong>la</strong>ndo éste por su última fi<strong>la</strong>, <strong>la</strong> cual contienesolo a β n obtenemos <strong>la</strong> fórmu<strong>la</strong>p (λ) = (α n − λ)p n−1 (λ) − β 2 n p n−2 (λ)12


Notando quep 1 (λ) = (α 1 − λ), p 2 (λ) = (α 2 − λ)p 1 (λ) − β22y <strong>de</strong>finiendop 0 (λ) = 1po<strong>de</strong>mos calcu<strong>la</strong>r p (λ) <strong>de</strong> A en forma recursiva. En efecto, si⎡⎤α 1 β 2.p i (λ) = <strong>de</strong>t(A i − λI), A i =β .. . ..2 ⎢⎣. .. . ⎥ .. βi ⎦α icalcu<strong>la</strong>mosβ ip 0 (λ) = 1p 1 (λ) = (α 1 − λ)p i (λ) = (α i − λ)p i−1 (λ) − β 2 i p i−2 (λ),i = 2, 3, . . .,ncon lo cual p (λ) = p n (λ).Para un valor dado <strong>de</strong> λ este algoritmo proporciona una forma razonable <strong>de</strong> evaluar p (λ). Po<strong>de</strong>mosentonces utilizar los métodos numéricos clásicos <strong>para</strong> <strong>de</strong>terminar <strong>la</strong>s raíces <strong>de</strong> un polinomio.Así utilizando un cierto paso en los valores <strong>de</strong> prueba λ po<strong>de</strong>mos evaluar p (λ) hasta obtener uncambio <strong>de</strong> signo y entonces encerrar <strong>la</strong> raíz dividiendo el intervalo a <strong>la</strong> mitad —este es el métododicotómico—. O bien, habiendo obtenido una aproximación a <strong>la</strong> raíz, utilizar un método comoel <strong>de</strong> <strong>la</strong> secante o el método <strong>de</strong> Newton. En este último caso es necesario el conocimiento <strong>de</strong> <strong>la</strong><strong>de</strong>rivada <strong>de</strong>l polinomio p (λ), pero ésta pue<strong>de</strong> ser calcu<strong>la</strong>da recursivamente por el algoritmo queresulta <strong>de</strong> diferenciar <strong>la</strong> fórmu<strong>la</strong> recursiva que permite el cálculo <strong>de</strong>l polinomio. Esto conduce ap ′ 0 (λ) = 0p ′ 1 (λ) = −1p ′ i (λ) = (α i − λ)p ′ i−1 (λ) − β2 i p′ i−2 (λ) − p′ i−1 (λ),i = 2, 3, . . .,ncon lo cual p ′ (λ) = p ′ n (λ).Evaluación <strong>de</strong>l polinomio característico <strong>de</strong> una matriz <strong>de</strong> HessenbergPo<strong>de</strong>mos evaluar el <strong>de</strong>terminante <strong>de</strong>l polinomio característico <strong>de</strong> una matriz <strong>de</strong> Hessenberg<strong>para</strong> un valor <strong>de</strong> prueba λ por un método simi<strong>la</strong>r al usado con una matriz tridiagonal. Deseamosencontrar el valor numérico <strong>de</strong>⎡⎤a 11 − λ a 12 a 13 a 14 . . . a 1,n−1 a 1nb 1 a 22 − λ a 23 a 24 a 2,n−1 a 2nb 2 a 33 − λ a 34 a 3,n−1 a 3np (λ) =b 3 a 44 − λ a 4,n−1 a 44⎢b. 4 . ⎥⎣a n−1,n−1 − λ a n−1,n⎦. . . b n−1 a nn − λdon<strong>de</strong> todas <strong>la</strong>s cantida<strong>de</strong>s en el <strong>de</strong>terminante son números conocidos. Nuestra estrategia consisteen encontrar una combinación lineal <strong>de</strong> <strong>la</strong>s (n − 1) primeras columnas que, cuando es sumada a13


<strong>la</strong> última columna, reduzca a ésta a ceros excepto <strong>la</strong> primer posición. Esto es, queremos encontrarun conjunto <strong>de</strong> esca<strong>la</strong>res β i tales quen−1∑C n + β i C i = k(λ)e 1 (0.1)i=1don<strong>de</strong> los C i son <strong>la</strong>s columnas <strong>de</strong> nuestro <strong>de</strong>terminante. Si reemp<strong>la</strong>zamos <strong>la</strong> ultima columna <strong>de</strong>l<strong>de</strong>terminante por esta combinación lineal <strong>de</strong> columnas, el valor numérico <strong>de</strong>l <strong>de</strong>terminante nocambia, y éste tiene ahora <strong>la</strong> forma⎡⎤a 11 − λ a 12 a 13 a 14 . . . a 1,n−1 kb 1 a 22 − λ a 23 a 24 a 2,n−1 0b 2 a 33 − λ a 34 a 3,n−1 0p (λ) =b 3 a 44 − λ a 4,n−1 0. .⎢b 4 . .⎥⎣a n−1,n−1 − λ 0⎦. . . b n−1 0Desarrol<strong>la</strong>ndo este <strong>de</strong>terminante por <strong>la</strong> última columna obtenemos⎡⎤b 1 a 22 − λ a 23 . . . a 2,n−1b 2 a 33 − λ a 3,n−1p (λ) = (−1) n+1 b 3 a 4,n−1k(λ). .. ⎢.⎥⎣a n−1,n−1 − λ⎦b n−1el cual es el <strong>de</strong>terminante <strong>de</strong> una matriz triangu<strong>la</strong>r y por lo tanto es el producto <strong>de</strong> los elementos<strong>de</strong> su diagonal. Asín−1∏p (λ) = (−1) n+1 k(λ) b ii (0.2)Po<strong>de</strong>mos encontrar los β i en forma sucesiva a partir <strong>de</strong> <strong>la</strong>s ecuaciones (0.1)y por lo tanto obtenemos k <strong>de</strong>y ahora po<strong>de</strong>mos evaluar p (λ) <strong>de</strong> (0.2).i=1β n−1 b n−1 + (a nn − λ) = 0β n−2 b n−2 + β n−1 (a n−1,n−1 − λ) + a n−1,n = 0β 1 b 1 + β 2 (a 22 − λ) + β 3 a 23 + · · · + β n−1 a 2,n−1 + a 2n = 0β 1 (a 11 − λ) + β 2 a 12 + · · · + β n−1 a 1,n−1 + a 1n = k.Algoritmos <strong>de</strong> factorizaciónPara finalizar vamos a presentar un conjunto <strong>de</strong> algoritmos iterativos <strong>para</strong> calcu<strong>la</strong>r los <strong>autovalores</strong><strong>de</strong> una matriz A n × n que si bien no convergen exactamente en número finito <strong>de</strong> pasosresultan <strong>de</strong> suma importancia. Estos algoritmos son conocidos como métodos <strong>de</strong> factorización yaque se basan en <strong>la</strong> suposición <strong>de</strong> que <strong>la</strong> matriz A pue<strong>de</strong> ser factorizada en una matriz izquierdaF L y una matriz <strong>de</strong>recha F RA = F L F R14


Si ahora invertimos el or<strong>de</strong>n <strong>de</strong> los factores obtenemos una matrizA ′ = F R F L = F −1L AF L(dado que F −1L A = F R) que es semejante a <strong>la</strong> matriz A a través <strong>de</strong> <strong>la</strong> transformación F L . Así,cualquier factorización en dos matrices al ser multiplicadas en or<strong>de</strong>n inverso constituyen unatransformación <strong>de</strong> semejanza. Los métodos <strong>de</strong> factorización explotan esta i<strong>de</strong>a, pero <strong>para</strong> que e<strong>la</strong>lgoritmo sea práctico <strong>la</strong> factorización <strong>de</strong> ser tal que el método converja, sea estable y eficiente.El primero <strong>de</strong> los dos métodos que consi<strong>de</strong>raremos es el l<strong>la</strong>mado método LR. Aquí se generauna sucesión <strong>de</strong> matrices comenzando con A (1) = A, y se utiliza el procedimiento <strong>de</strong> eliminacióngaussiana <strong>para</strong> representar <strong>la</strong> matriz A (i) como el producto <strong>de</strong> una matriz triangu<strong>la</strong>r inferiorL i = (l jk ) con l jj = 1 y una matriz triangu<strong>la</strong>r superior R i⎡ ⎤ ⎡ ⎤1 0A (i) ⎢= L i R i , L i = ⎣.. ..∗ · · · 1⎥⎦, R i =∗ · · · ∗. ..⎥. ⎦0 ∗⎢⎣y entonces se tomaA (i+1) = R i L i = L i+1 R i+1 , i = 1, 2, . . .Ahora bien, sabemos que <strong>para</strong> una matriz arbitraria A (i+1) no siempre existe tal factorizaciónsin intercambio <strong>de</strong> fi<strong>la</strong>s. Sin embargo, asumiendo que A (i) pue<strong>de</strong> ser factorizada, es posible asegurarque, bajo ciertas condiciones, <strong>la</strong> sucesión <strong>de</strong> matrices A (i) , i = 1, . . . converge a una matriztriangu<strong>la</strong>r superior cuyos elementos <strong>de</strong> <strong>la</strong> diagonal son los <strong>autovalores</strong> <strong>de</strong> A.Para una matriz <strong>de</strong>nsa n × n, <strong>la</strong> factorización requiere <strong>de</strong>l or<strong>de</strong>n <strong>de</strong> n 3 /3 multiplicaciones,y <strong>la</strong> multiplicación matricial en or<strong>de</strong>n inverso <strong>de</strong> otras n 3 /3. Así, en cada paso <strong>de</strong>l algoritmo(necesariamente infinito) tenemos <strong>de</strong>l or<strong>de</strong>n <strong>de</strong> n 3 operaciones. Por lo tanto, el algoritmo LRno es práctico <strong>para</strong> matrices generales. Ahora bien, pue<strong>de</strong> verificarse fácilmente que <strong>la</strong>s formastridiagonales y <strong>de</strong> Hessenberg se preservan bajo el algoritmo LR. Como <strong>la</strong> factorización <strong>de</strong> matricestridiagonales requiere <strong>de</strong>l or<strong>de</strong>n <strong>de</strong> n multiplicaciones, y n 2 <strong>para</strong> matrices <strong>de</strong> Hessenberg, vemos queel algoritmo LR pue<strong>de</strong> ser efectivo <strong>para</strong> encontrar los <strong>autovalores</strong> <strong>de</strong> estas matrices particu<strong>la</strong>res.Para una matriz general solo <strong>de</strong>be reducirse primero a una <strong>de</strong> <strong>la</strong>s formas anteriores por los métodosya discutidos.Sin embargo el método LR adolece <strong>de</strong> problemas. En primer lugar <strong>la</strong>s iteraciones se <strong>de</strong>tendránsi alguna <strong>de</strong> <strong>la</strong>s matrices A (i) no tiene <strong>la</strong> <strong>de</strong>scomposición triangu<strong>la</strong>r, y aún, si esta <strong>de</strong>scomposiciónexiste el problema <strong>de</strong> calcu<strong>la</strong>r L (i) y R i pue<strong>de</strong> estar mal condicionado al no permitir el intercambio<strong>de</strong> fi<strong>la</strong>s con el fin <strong>de</strong> evitar elementos <strong>de</strong> pivote pequeños. Así el método pue<strong>de</strong> ser inestable.Para evitar estas dificulta<strong>de</strong>s, y hacer el método numéricamente estable, uno podría realizar<strong>la</strong> <strong>de</strong>scomposición con pivote parcial 1010 La cual siempre existe.P (i) A (i) = L i R i , P i matriz <strong>de</strong> permutación, P −1iA (i+1) = R i P t i L i = L −1i (P i A (i) P t i )L i= P t i15


Sin embargo, hay ejemplos <strong>para</strong> los cuales este proceso no converge. Por ejemplo, sea[ ]A (1) 1 3= , λ2 0 1 = 3, λ 2 = −2[ ] [ ] [ ] [ ]0 12 0 1 0 2 0P 1 = , P1 0 1 A (1) = == L1 3 1/2 1 0 3 1 R 1[ ]A (2) = R 1 P t 1 21 L 1 =3 0[ ] [ ] [ ] [ ]0 13 0 1 0 3 0P 2 = , P1 0 2 A (1) = == L1 2 1/3 1 0 2 2 R 2[ ]A (3) = R 2 P t 1 32 L 2 = = A2 0(1)Estas dificulta<strong>de</strong>s <strong>de</strong>l método LR <strong>de</strong>saparecen en el l<strong>la</strong>mado método QR. Formalmente, elmétodo comienza con A (1) = A y genera matrices Q i y R i tales queA (i) = Q i R idon<strong>de</strong> Q i es una matriz ortogonal, Q t i Q = I y R i es una matriz triangu<strong>la</strong>r superior⎡ ⎤∗ · · · ∗⎢R i = ⎣. .. .⎥⎦0 ∗Pue<strong>de</strong> mostrarse que una factorización <strong>de</strong> este tipo siempre existe y pue<strong>de</strong> ser calcu<strong>la</strong>da en unamanera estable a través <strong>de</strong> matrices <strong>de</strong> Househol<strong>de</strong>r que anulen los elementos <strong>de</strong> <strong>la</strong>s sucesivascolumnas A (i) <strong>de</strong>bajo <strong>de</strong> <strong>la</strong> diagonal.El método toma ahora como siguiente matriz <strong>de</strong> <strong>la</strong> sucesiónA (i+1) = R i Q iLa transformación A (i) → A (i+1) no solo es <strong>de</strong> semejanza, sino que también es ortogonal. Enefecto, ya que Q es ortogonal, R i = Q −1i A (i) = Q t i A(i) y por lo tantoA (i+1) = R i Q i = Q t i A(i) Q iPue<strong>de</strong> mostrarse que, bajo ciertas condiciones —en particu<strong>la</strong>r que los <strong>autovalores</strong> λ i <strong>de</strong> Atengan módulos distintos|λ 1 | > |λ 2 | > · · · > |λ n |— entonces <strong>la</strong> sucesión <strong>de</strong> matrices A (i) converge a una matriz triangu<strong>la</strong>r superior siendo suselementos diagonales los <strong>autovalores</strong> <strong>de</strong> A. A<strong>de</strong>más <strong>la</strong> velocidad <strong>de</strong> convergencia con que <strong>la</strong>scomponentes <strong>de</strong>bajo <strong>de</strong> <strong>la</strong> diagonal principal tien<strong>de</strong>n a cero está <strong>de</strong>terminada por los cocientes| λ jλ k|,j > kAsí <strong>la</strong> convergencia pue<strong>de</strong> resultar muy lenta si algunos <strong>de</strong> estos cocientes son cercanos a <strong>la</strong> unidad.Sin embargo, con una modificación <strong>de</strong>l procedimiento se pue<strong>de</strong> acelerar <strong>la</strong> convergencia.Como en el método LR, un paso en el método QR <strong>para</strong> una matriz <strong>de</strong>nsa n × n requiere <strong>de</strong>lor<strong>de</strong>n <strong>de</strong> n 3 operaciones. Debido a esto, el método QR se aplica en <strong>la</strong> práctica solo a matricessimples, como son <strong>la</strong>s matrices <strong>de</strong> Hessenberg, o en <strong>la</strong> caso <strong>de</strong> matrices simétricas, <strong>la</strong>s matricestridiagonales (simétricas). Así una matriz cualquiera <strong>de</strong>be ser reducida previamente a una <strong>de</strong> estasformas por los métodos ya discutidos. Por supuesto, <strong>para</strong> que este procedimiento tenga sentido16


<strong>de</strong>be mostrarse que estas formas especiales son invariantes por una transformación QR; esto es, siA (i) es una matriz <strong>de</strong> Hessenberg (posiblemente simétrica, en cuyo caso es tridiagonal), entoncestambién lo es A i+1 . Esta invarianza pue<strong>de</strong> ser establecida fácilmente. En primer lugar, si A (i)es simétrica, A (i+1) también lo es <strong>de</strong>bido que <strong>la</strong> transformación QR es ortogonal. Supongamosahora que A (i) es una matriz <strong>de</strong> Hessenberg n × n, como ya mencionamos A (i+1) pue<strong>de</strong> sercalcu<strong>la</strong>da a partir <strong>de</strong> una sucesión <strong>de</strong> transformaciones <strong>de</strong> Househol<strong>de</strong>r, sin embargo, en el caso<strong>de</strong> matrices <strong>de</strong> Hessenberg, resulta más eficiente utilizar transformaciones <strong>de</strong> Givens. Primero,reducimos los elementos <strong>de</strong> <strong>la</strong> subdiagonal A (i) a cero a través <strong>de</strong> matrices <strong>de</strong> Givens a<strong>de</strong>cuadas<strong>de</strong>l tipo Ω 21 , . . . ,Ω n−1,nΩ n−1,n · · ·Ω 2,3 Ω 1,2 A (i) = R i =A (i) = Q i R i ,⎡ ⎤∗ · · · ∗⎢⎣. ... ⎥. ⎦0 ∗Q i = Ω t 12Ω t 23 · · ·Ω t n−1,ny entonces calcu<strong>la</strong>mos A (i+1) A (i+1) = R i Q i = R i Ω t 12 Ωt 23 · · ·Ωt n−1,nDebido a <strong>la</strong> estructura especial <strong>de</strong> Ω j,j+1 , <strong>la</strong> matriz triangu<strong>la</strong>r superior R i es transformada por <strong>la</strong>postmultiplicación con Ω t j,j+1 a una matriz A(i+1) <strong>de</strong> <strong>la</strong> forma <strong>de</strong> Hessenberg. Nótese que A (i+1)pue<strong>de</strong> ser calcu<strong>la</strong>da <strong>de</strong> A (i) muy eficientemente si <strong>la</strong>s multiplicaciones matriciales son realizadasen el siguiente or<strong>de</strong>nA (i+1) = (Ω n−1,n . . .(Ω 23 ((Ω 12 A (i) )Ω t 12 ))Ωt 23 . . . )Ωt n−1,nLlevada a cabo <strong>de</strong> esta manera, un paso en <strong>la</strong> transformación <strong>de</strong> una matriz <strong>de</strong> Hessenberg n × nrequiere solo <strong>de</strong> n 2 multiplicaciones y solo n operaciones en el caso simétrico, esto es, en el caso<strong>de</strong> una matriz tridiagonal simétrica.Aplicado <strong>de</strong> esta forma, el método QR resulta ser uno <strong>de</strong> los mejores métodos conocidos <strong>para</strong><strong>de</strong>terminar todos los <strong>autovalores</strong> <strong>de</strong> una matriz.Referencias[1] F. S. Acton: Numerical Methods that Work.[2] J. Stoer and R. Bulirsch: Introduction to Numerical Analisis.[3] Numerical Recipes in FORTRAN 77: The art of scientifc computing.17

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!