Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Tema 3: Solución numérica de sistemas de ecuaciones lineales M. I. Luis Ángel Santamaŕıa Padilla Facultad de Ingenieŕıa, UNAM 1 Métodos directos Eliminación Gaussiana Ejemplo 1 Pivoteo parcial con escalamiento de renglón Ejemplo 2 Factorización LU (Doolittle) Ejemplo 4 Factorización LU (Crout) Ejemplo 5 2 Métodos iterativos Norma de vectores y matrices Método iterativo general Método de Jacobi Ejemplo 6 Método de Gauss-Seidel Ejemplo 7 3 Problema de eigenvalores Eigenvalores de una matriz Ejemplo 8 Método de las potencias Ejemplo 9 Objetivo tema 3 El estudiante aplicará algunos de los métodos para obtener soluciones aproximadas de sistemas de ecuaciones lineales y determinará los valores y vectores caracteŕısticos de una matriz Sistema de ecuaciones lineales a11x1 + a12x2 + . . .+ a1nxn = b1 a21x1 + a22x2 + . . .+ a2nxn = b2 ... an1x1 + an2x2 + . . .+ annxn = bn Donde los coeficientes aij son constantes conocidas. Si todos los elementos bk son cero, el sistema de ecuaciones es homogéneo, en caso contrario es no homogéneo Representación matricial de sistemas lineales Todo sistema de ecuaciones algebraicas se puede representar de manera matricial como Ax = b donde A = a11 a12 . . . a1n a21 a22 . . . a2n ... ... . . . ... an1 an2 . . . ann n×n x = x1 x2 ... xn n×1 b = b1 b2 ... bn n×1 x es el vector solución La matriz aumentada está dada por [A|b] = a11 a12 . . . a1n b1 a21 a22 . . . a2n b1 ... ... . . . ... ... an1 an2 . . . ann b1 n×(n+1) Solución numérica de sistemas lineales Los métodos se dividen en dos categoŕıas Directos Eliminación Gaussiana Descomposición LU Método Doolittle Método Crout Indirectos Método de Jacobi Gauss-Seidel Métodos directos Eliminación Gaussiana Método de eliminación Gaussiana Transforma un sistema lineal de ecuaciones en una forma triangular superior La solución se encuentra por sustituciones hacia atrás La matriz aumentada [A|b] representa al sistema Ax = b. Todas las modificaciones se aplican a la matriz aumentada Las transformación a una forma triangular superior se consigue mediante transformaciones elementales de renglon (TER): TER1 Multiplicar un renglón por constantes distintas a cero TER2 Intercambiar dos renglones cualquiera TER3 Multiplicar el i-ésimo renglón por una constante α 6= 0 y sumar el resultado al k-ésimo renglón, después reemplazar el k-ésimo renglón por el resultado. El i-ésimo renglón es llamado pivote. La naturaleza del sistema lineal se preserva bajo TER Métodos directos Ejemplo 1 Ejemplo 1 Utilizando eliminación Gaussiana encontrar la solución x1, x2, x3, x4 del sistema cuya matriz aumentada es −1 2 3 1 3 2 −4 1 2 −1 −3 8 4 −1 6 1 4 7 −2 −4 Solución: Se toma el primer renglón como pivote, se multiplica por 2, -3 y 1 para sumarlo con los renglones 2, 3 y 4, respectivamente −1 2 3 1 3 0 0 7 4 5 0 2 −5 −4 −3 0 6 10 −1 −3 Intercambiando renglones 2 y 3 −1 2 3 1 3 0 2 −5 −4 −3 0 0 7 4 5 0 6 10 −1 −1 Se toma el renglón 2 como pivote, se multiplica por -2 y se suma con renglón 4 −1 2 3 1 3 0 2 −5 −4 −3 0 0 7 4 5 0 0 25 11 8 Métodos directos Ejemplo 1 Ejemplo 1 Se toma el renglón 3 como pivote, se multiplica por −25/7 y se suma con renglón 4 −1 2 3 1 3 0 2 −5 −4 −3 0 0 7 4 5 0 0 0 − 23 7 −−69 27 Se resuelve el sistema desde abajo − 23 7 x4 = − 69 27 ⇒ x4 = 3 7x3 + 4x4 = 5 ⇒ x3 = −1 2x2 − 5x3 − 4x4 = −3 ⇒ x2 = 2 − x1 + 2x2 + 3x3 + x4 = 3 ⇒ x1 = 1 Métodos directos Pivoteo parcial con escalamiento de renglón Pivoteo parcial con escalamiento de renglón Procedimiento 1 En cada renglón de A encontrar el mayor valor absoluto y llamarlo Mi 2 En cada renglón encontrar la razón del valor absoluto del coeficiente de x1 al valor absoluto de Mi ri = |ai1| |Mi| 3 Elegir el mayor ri. Tomar como pivote al renglón que contiene este término. Eliminar x1 de los otros renglones para obtener un nuevo sistema 4 En el nuevo sistema, considerar la submatriz (n− 1)× (n− 1) de la matriz de coeficientes y seguir la lógica anterior para eliminar x2 y aśı sucesivamente. Métodos directos Ejemplo 2 Ejemplo 2 Sea [A|b] = −4 −3 5 06 7 −3 2 2 −1 1 6 Se toma la primer columna de la matriz aumentada y se calcula r1 = | − 4| |5| = 4 5 ; r2 = |6| |7| = 6 7 ; r3 = |2| |2| = 1 r3 es el valor más grande, por lo cual se elegirá como pivote. Se intercambia renglón 1 con 3 2 −1 1 66 7 −3 2 −4 −3 5 0 Se multiplica primer rengón por −3 y 2, y se suman resultados con segundo y tercer renglón, respectivamente. 2 −1 1 60 10 −6 −16 0 −5 7 12 r1 = |10| |10| = 1; r2 = | − 5| |7| = 5 7 r1 es el valor más grande, el segundo renglón se elige como pivote. Se multiplica el segundo renglón por 1/2 y se suma el resultado al tercer renglón. 2 −1 1 60 10 −6 −16 0 0 4 4 Se resuelve el sistema desde abajo 4x3 = 4 ⇒ x3 = 1 10x2 − 6x3 = −16 ⇒ x2 = −1 2x1 − x2 + x3 = 6 ⇒ x1 = 2 Métodos directos Factorización LU (Doolittle) Métodos de factorización LU Estos métodos se utilizan para reducir el número de operaciones respecto a eliminación Gaussiana. La factorización LU consiste en descomponer la matriz A como A = LU Donde L es una matriz triangular inferior y U es una matriz triangular superior Factorización Doolittle Se tiene A = LU, donde L es una matriz triangular inferior con 1s en la diagonal principal y el negativo de los multiplicadores (de eliminación Gaussiana) debajo de la diagonal principal. U es la matriz triangular superior de la matriz de coeficientes en el paso final de la eliminación Gaussiana Ejemplo 3 Obtener la factorización LU de la siguiente matriz A = 1 3 62 −1 1 4 −2 3 Solución: Se toma el primer renglón como pivote, se multiplica por -2 y -4 y se suma con los renglones 2 y 3, respectivamente. Se toma el segundo renglón como pivote, se multiplica por -2 y se suma con el renglón 3. Con lo anterior se forman las matrices L = 1 0 02 1 0 4 2 1 ; U = 1 3 60 −7 −11 0 0 1 Métodos directos Factorización LU (Doolittle) Cálculo directo de L y U (Doolittle) Basado en la estructura de L y U en la factorización Doolittle, para el caso de un sistema de 3 ecuaciones L = 1 0 0l21 1 0 l31 l32 1 U = u11 u12 u130 u22 u23 0 0 u33 Sabemos que A = LU, entoncesa11 a12 a13a21 a22 a23 a31 a32 a33 = u11 u12 u13l21u11 l21u12 + u22 l21u13 + u23 l31u11 l31u12 + l32u22 l31u31 + l32u23 + u33 Se debe preservar la igualdad, por lo que el primer renglón de U se puede calcular como u11 = a11 u12 = a12 u13 = a13 Los elementos de primer columna de L se encuentran como l21 = a21 u11 l31 = a31 u11 Los elementos del segundo renglón de U se calculan con u22 = a22 − l21u12 u23 = a23 − l21u13 El elemento de la segunda columna de L es l32 = a32 − l31u12 u22 Finalmente el elemento del tercer renglón de U u33 = a33 − l31u13 − l32u23 Métodos directos Factorización LU (Doolittle) Factorización Doolittle De forma general se tiene A = LU L = 1 0 0 0 . . . 0 l21 1 0 0 . . . 0 l31 l32 1 0 . . . 0 l41 l42 l43 1 . . . 0 ... ... ... ... . . . 0 ln1 ln2 ln3 ln3 . . . 1 U = u11 u12 u13 u14 . . . u1n 0 u22 u23 u24 . . . u2n 0 0 u33 u34 . . . u3n 0 0 0 u44 . . . u4n ... ... ... ... . . . ... 0 0 0 . . . unn Factorización Doolittle donde: u1j = a1j li1 = ai1 u11 uij = aij − i−1∑ k=1 likukj lij = aij − ∑j−1 k=1 likukj ujj Método de Doolittle Sea el sistema Ax = x con A = LU, entonces [LU]x = b⇒ L[Ux] = b Se resuelve en dos pasos Ly = b Ux = y Cada uno de los sitemas es triangular, por lo tanto se requiere sustitución hacia adelante y hacia atrás para resolver. Métodos directos Ejemplo 4 Ejemplo 4 Resuelva el sistema de ecuaciones Ax = b mediante método de Doolittle, donde A = 3 1 1−3 −3 1 3 −3 6 ; b = 2−4 0 Solución: Se buscanlas siguientes matrices L = 1 0 0l21 1 0 l31 l32 1 U = u11 u12 u130 u22 u23 0 0 u33 Para u11, u12, u13 i = 1, j = 1 u1j = a1j u11 = a11 = 3 i = 1, j = 2 u1j = a1j u12 = a12 = 1 i = 1, j = 3 u1j = a1j u13 = a13 = 1 Para l21, l31 i = 2, j = 1 li1 = ai1 u11 l21 = a21 u11 l21 = −3 3 = −1 i = 3, j = 1 li1 = ai1 u11 l31 = a31 u11 l31 = 3 3 = 1 Métodos directos Ejemplo 4 Ejemplo 4 Para u22, u23 i = 2, j = 2 uii = aii − i−1∑ k=1 likuki u22 = a22 − l21u12 u22 = −3− (−1)(1) = −2 i = 2, j = 3 uij = aij − i−1∑ k=1 likukj u23 = a23 − l21u13 u23 = 1− (−1)(1) = 2 Para l32 i = 3, j = 2 lij = aij − ∑j−1 k=1 likukj ujj l32 = a32 − l31u12 u22 l32 = −3− (1)(1) −2 = 2 Para u33 i = 3, j = 3 uii = aii − i−1∑ k=1 likuki u33 = a33 − l31u13 − l32u23 u33 = 6− (1)(1)− (2)(2) = 1 Se obtiene la factorización. L = 1 0 0−1 1 0 1 2 1 U = 3 1 10 −2 2 0 0 1 Se resuelve en dos pasos Ly = b Ux = y Se resuelve primero y y1 = 2 −y1 + y2 = −4 y1 + 2y2 + y3 = 0 y1 = 2; y2 = −2; y3 = 2 Métodos directos Ejemplo 4 Ejemplo 4 Se resuelve Ux = y 3x1 + x2 + x3 = 2 − 2x2 + 2x3 = −2 x3 = 2 x3 = 2; x2 = 3; x1 = −1 Por lo tanto el vector solución del sistema de ecuaciones lineales está dado por x = −13 2 Métodos directos Factorización LU (Crout) Descomposición de Crout Es una descomposición alternativa para A = LU. Involucra una matriz U con 1s en la diagonal principal. La idea es similar al desarrollo de la descomposición de Doolittle. L = l11 0 0 0 . . . 0 l21 l22 0 0 . . . 0 l31 l32 l33 0 . . . 0 l41 l42 l43 l44 . . . 0 ... ... ... ... . . . 0 ln1 ln2 ln3 ln3 . . . lnn U = 1 u12 u13 u14 . . . u1n 0 1 u23 u24 . . . u2n 0 0 1 u34 . . . u3n 0 0 0 1 . . . u4n ... ... ... ... . . . ... 0 0 0 . . . 1 Descomposición Crout donde: li1 = ai1 u1j = a1j l11 lij = aij − j−1∑ k=1 likukj uij = aij − ∑i−1 k=1 likukj lii Método de Crout Sea el sistema Ax = x con A = LU, entonces [LU]x = b⇒ L[Ux] = b Se resuelve en dos pasos Ly = b Ux = y Cada uno de los sitemas es triangular, por lo tanto se requere sustitución hacia adelante y hacia atrás para resolver. Métodos directos Ejemplo 5 Ejemplo 5 Resuelva el sistema de ecuaciones Ax = b mediante método de Crout donde A = 3 1 1−3 −3 1 3 −3 6 ; b = 2−4 0 Solución: Se buscan las siguientes matrices L = l11 0 0l21 l22 0 l31 l32 l33 U = 1 u12 u130 1 u23 0 0 1 Para l11, l21, l31 i = 1, j = 1 li1 = ai1 u11 = a11 = 3 i = 2, j = 1 li1 = ai1 u21 = a21 = −3 i = 3, j = 1 li1 = ai1 u31 = a31 = 3 Para u12, u13 i = 1, j = 2 u1j = a1j l11 l12 = a12 l11 l12 = 1 3 i = 1, j = 3 u1j = a1j l11 l13 = a13 l11 l13 = 1 3 Métodos directos Ejemplo 5 Ejemplo 5 Para l22, l32 i = 2, j = 2 lij = aij − j−1∑ k=1 likukj l22 = a22 − l21u12 l22 = −3− (−3)(1/3) = −2 i = 3, j = 2 lij = aij − j−1∑ k=1 likukj l32 = a32 − l31u12 l32 = −3− (3)(1/3) = −4 Para u23 i = 2, j = 3 uij = aij − ∑i−1 k=1 likukj lii u23 = a23 − l21u13 l22 u23 = 1− (−3)(1/3) −2 Para l33 i = 3, j = 3 lij = aij − j−1∑ k=1 likukj l33 = a33 − l31u13 − l32u23 l33 = 6− (3)(1/3)− (−4)(−1) = 1 Se obtiene la factorización. L = 3 0 0−3 −2 0 3 −4 1 U = 1 1/3 1/30 1 −1 0 0 1 Se resuelve en dos pasos Ly = b Ux = y Se resuelve primero y 3y1 = 2 −3y1 − 2y2 = −4 3y1 − 4y2 + y3 = 0 y1 = 2/3; y2 = 1; y3 = 2 Métodos directos Ejemplo 5 Ejemplo 5 Se resuelve Ux = y x1 + (1/3)x2 + (1/3)x3 = 2/3 x2 − x3 = 1 x3 = 2 x3 = 2; x2 = 3; x1 = −1 Por lo tanto el vector solución del sistema de ecuaciones lineales está dado por x = −13 2 Métodos iterativos Norma de vectores y matrices Métodos iterativos Llamados métodos indirectos Inician con un vector inicial y generan aproximaciones sucesivas que convergen al vector solución x Número de operaciones dependerá de los pasos a realizar para una convergencia satisfactoria y de la naturaleza del problema Convergencia: La iteración finalizará cuando dos vectores sucesivos entre śı estén suficientemente cercanos entre śı. Una medida de proximidad de dos vectores es dada por la norma de un vector Norma de un vector Es una medida de qué tan pequeño o grande es un vector. Propiedades: ||v|| ≥ 0 para todo v, y ||v|| = 0 śı y sólo śı v = 0 ||αv|| = α||v||, α escalar ||v + w|| ≤ ||v||+ ||w|| Sea v = [ v1 v2 . . . vn ]T La norma L1, ||v||1 ||v||1 = |v1|+ |v2|+ . . .+ |vn| La norma L∞, ||v||∞ ||v||∞ = máx {|v1|, |v2|, . . . , |vn|} La norma L2, ||v||2 ||v||2 = [ v21 + v 2 2 + . . .+ v 2 n ]1/2 Métodos iterativos Norma de vectores y matrices Norma de una matriz Es una medida de qué tan pequeño o grande es una matriz. Sea An×n. Propiedades: ‖A‖ ≥ 0 para todo A, y ‖A‖ = 0 śı y sólo śı A = 0 ‖αA‖ = α ‖A‖, α escalar ‖A + B‖ ≤ ‖A‖+ ‖B‖ ‖AB‖ ≤ ‖A‖ ‖B‖ La norma 1 (Norma de suma de columna), ||A||1 ||A||1 = máx 1≤j≤n { n∑ i=1 |aij | } La norma infinito (norma de suma de renglón), ||A||∞ ||A||∞ = máx 1≤i≤n { n∑ j=1 |aij | } La norma 2 (norma euclideana, norma de Frobenius), ||A||E ||A||E = [ n∑ i=1 n∑ j=1 a2ij ]1/2 Métodos iterativos Método iterativo general Método iterativo de solución Se parte del sistema Ax = b, se define A = [Q−P], tal que Q sea no singular para que Q−1 exista. Sustituyendo se tiene Ax = b [Q−P]x = b⇒ Qx = Px + b El sistema no se puede resolver en esta forma, ya que el vector solución aparece en ambos lados de la igualdad. Para resolverlo iterativamente, se elige un vector inicial x0 para resolver en términos de un nuevo vector x1 Qx1 = Px0 + b De forma general se puede generar la secuencia Qxk+1 = Pxk + b; k = 0, 1, 2, . . . La ecuación anterior se resuelve en cada paso como xk+1 = Q −1Pxk + Q −1b; k = 0, 1, 2, . . . Métodos iterativos Método de Jacobi Método iterativo de solución de Jacobi Sean D,L y U las porciones diagonal, inferior y superior triangular de la matriz A, respectivamente, esto es D = a11 0 . . . 0 0 a22 . . . 0 ... ... . . . ... 0 0 . . . ann L = 0 0 . . . 0 a21 0 . . . 0 ... ... . . . ... an1 an2 ... 0 U = 0 a12 . . . a1n 0 0 . . . a2n ... ... . . . ... 0 0 ... 0 En el método de Jacobi, la matriz A se parte como A = Q−P = D + [L + U] tal que Q = D, P = −[L + U]. La ecuación de iteración se transforma como Qxk+1 = Pxk + b Dxk+1 = −[L + U]xk + b Métodos iterativos Método de Jacobi Método iterativo de solución de Jacobi Para que D−1 exista, la diagonal principal de D y A debe ser distinta de cero. Si D−1 existe se tiene xk+1 = D −1 {−[L + U]xk + b} Observaciones: L + U es la matriz A pero sin la diagonal principal Los elementos de la diagonal principal de D−1 son 1 aii para i = 1, 2, . . . , n Si xk = [ x1(k) x2(k) . . . xn(k) ]T , podemos reescribir cada elemento del vector x como xi(k+1) = 1 aii − n∑ j = 1 j 6= i aijxj(k) + bi i = 1, 2, . . . , n Convergencia del método iterativo de Jacobi Una condición de convergencia del método de Jacobi está dada por ‖MJ‖∞ < 1 donde MJ = −D −1[L + U] El método converge para matrices dominantes diagonales Una matriz A es dominante diagonal si |aii| > n∑ j = 1 j 6= i |aij |, ó equivalentemente n∑ j = 1 j 6= i |aij | |aii| < 1 i = 1, 2, . . . , n El método finaliza cuando ‖xk+1 − xk‖2 < ε Métodos iterativos Ejemplo 6 Ejemplo 6 Sea el sistema de ecuaciones 10x1 − x2 + 2x3 = 6 −x1 + 11x2 − x3 + 3x4 = 25 2x1 − x2 + 10x3 − x4 = −11 3x2 − x3 + 8x4 = 15 Resuelva el sistema utilizando el método de Jacobi, considerando x0 = [0 0 0 0] T y ε = 0.001. Solución: A = 10 −1 2 0 −1 11 −1 3 2 −1 10 −1 0 3 −1 8 ; b = 6 25 −11 15 Verificando que la matriz A sea dominante diagonal |aii| > n∑ j = 1 j 6= i |aij | Para i = 1 |a11| > |a12|+ |a13|+ |a14| |10| > | − 1|+ |2|+ |0| 10 > 3 X Para i = 2 |a22| > |a21|+ |a23|+ |a24| |11| > | − 1|+ | − 1|+ |3| 11 > 5 XPara i = 3 |a33| > |a31|+ |a32|+ |a34| |10| > |2|+ | − 1|+ | − 1| 10 > 4 X Métodos iterativos Ejemplo 6 Ejemplo 6 Para i = 4 |a44| > |a41|+ |a42|+ |a43| |8| > |0|+ |3|+ | − 1| 8 > 4 X Śı es dominante diagonal. xi(k+1) = 1 aii − n∑ j = 1 j 6= i aijxj(k) + bi , i = 1, 2, . . . , n Para la primera iteración del método k = 0 Para el elemento x1 x1(1) = 1 a11 [ − ( a12x2(0) + a13x3(0) + a14x4(0) ) + b1 ] x1(1) = 1 10 [− ((−1)(0) + (2)(0) + (0)(0)) + 6] x1(1) = 0.6 Para el elemento x2 x2(1) = 1 a22 [ − ( a21x1(0) + a23x3(0) + a24x4(0) ) + b2 ] x2(1) = 1 11 [− ((−1)(0) + (−1)(0) + (3)(0)) + 25] x2(1) = 2.2727 Métodos iterativos Ejemplo 6 Ejemplo 6 Para el elemento x3 x3(1) = 1 a33 [ − ( a31x1(0) + a32x2(0) + a34x4(0) ) + b3 ] x3(1) = 1 10 [− ((2)(0) + (−1)(0) + (−1)(0)) + (−11)] x3(1) = −1.1 Para el elemento x4 x4(1) = 1 a44 [ − ( a41x1(0) + a42x2(0) + a43x3(0) ) + b4 ] x4(1) = 1 8 [− ((0)(0) + (3)(0) + (−1)(0)) + 15] x4(1) = 1.875 De la primera iteración se obtiene x1 = [ 0.6 2.2727 −1.1 1.875 ]T Para la segunda iteración del método k = 1 Para el elemento x1 x1(2) = 1 a11 [ − ( a12x2(1) + a13x3(1) + a14x4(1) ) +b1] x1(2) = 1.0473 Para el elemento x2 x2(2) = 1 a22 [ − ( a21x1(1) + a23x3(1) + a24x4(1) ) +b2] x2(2) = 1.7159 Para el elemento x3 x3(2) = 1 a33 [ − ( a31x1(1) + a32x2(1) + a34x4(1) ) +b3] x3(2) = −0.8052 Métodos iterativos Ejemplo 6 Ejemplo 6 Para el elemento x4 x4(2) = 1 a44 [ − ( a41x4(1) + a42x2(1) + a43x3(1) ) +b4] x1(2) = 0.8852 De la segunda iteración se obtiene x2 = [ 1.0473 1.7159 −0.8052 0.8852 ]T k 0 1 2 . . . 11 x1 0 0.6000 1.0473 . . . 0.9999 x2 0 2.2727 1.7159 . . . 2.0001 x3 0 -1.1000 -0.8052 . . . -1.0001 x4 0 1.8750 0.8852 . . . 1.0001 Métodos iterativos Método de Gauss-Seidel Método de Gauss-Seidel Se parte de las ecuaciones obtenidas en el método de Jacobi xk+1 = D −1 {−[L + U]xk + b} k = 0, 1, 2, . . . xi(k+1) = 1 aii − n∑ j = 1 j 6= i aijxj(k) + bi , i = 1, 2, . . . , n Observaciones: Toda componente de xk+1 es calculada totalmente a partir de xk (iteración pasada) Para acceder a xk+1 la k-ésima iteración debe ser completada El desempeño del método de Jacobi puede mejorar si los componentes del vector más actualizados son utilizados tan pronto como estén disponibles, para calcular componentes subsecuentes del mismo vector Considere dos vectores sucesivos y la solución actual xk = x1(k) ... xp(k) xp+1(k) ... xn(k) xk+1 = x1(k+1) ... xp(k+1) xp+1(k+1) ... xn(k+1) xa = x1 ... xp xp+1 ... xn En general xp(k+1) es un mejor estimado de xp que xp(k) Utilizando xp(k+1) en lugar de xp(k) lleva a una mejor aproximación del siguiente componente xp+1(k) en el valor actual Siguiendo esta lógica se define el método iterativo Gauss-Seidel, se considera un refinamiento del método de Jacobi Métodos iterativos Método de Gauss-Seidel Método de Gauss-Seidel De acuerdo a la lógica anterior, la matriz A se descompone como A = Q−P = [D + L] + U tal que Q = D + L y P = −U. Donde [D + L] es una matriz diagonal inferior. Con esto se llega [D + L]xk+1 = −Uxk + b xk+1 = −[D + L]−1Uxk + [D + L]−1b Śı xk = [ x1(k) x2(k) . . . xn(k) ]T xi(k+1) = 1 aii { − i−1∑ j=1 aijxj(k+1) − n∑ j=i+1 aijxj(k) + bi } i = 1, 2, . . . , n donde la primera suma se considera cero cuando i = 1 Criterio de convergencia Condición de convergencia ‖MGS‖∞ < 1 MGS = −[D + L]−1U Condición de fin de iteración ‖xk+1 − xk‖ < ε Métodos iterativos Ejemplo 7 Ejemplo 7 Sea el sistema lineal Ax = b con A = 4 1 −1−2 5 0 2 1 6 , b = 1−7 13 ; x = x1x2 x3 Resuelva utilizando el método de Gauss-Seidel considerando x0 = [ 0 1 1 ]T y ε = 0.001 xi(k+1) = 1 aii { − i−1∑ j=1 aijxj(k+1) − n∑ j=i+1 aijxj(k) + bi } i = 1, 2, . . . , n Solución: Para primera iteración k = 0 Para el elemento x1 x1(1) = 1 a11 { −(a12x2(0) + a13x3(0)) + b1 } x1(1) = 1 4 {−((1)(1) + (−1)(1)) + 1} x1(1) = 0.25 Para el elemento x2 x2(1) = 1 a22 { −(a21x1(1) + a23x3(0)) + b2 } x2(1) = 1 5 {−((−2)(0.25) + (0)(1)) + (−7)} x2(1) = −1.3 Para el elemento x3 x3(1) = 1 a33 { −(a31x1(1) + a32x2(1)) + b3 } x3(1) = 1 6 {−((2)(0.25) + (1)(−1.3)) + 13} x3(1) = 2.3 De la primera iteración se obtiene x1 = [ 0.25 −1.3 2.3 ] Métodos iterativos Ejemplo 7 Ejemplo 7 Para segunda iteración k = 1 Para el elemento x1 x1(2) = 1 a11 { −(a12x2(1) + a13x3(1)) + b1 } x1(2) = 1 4 {−((1)(−1.3) + (−1)(2.3)) + 1} x1(2) = 1.15 Para el elemento x2 x2(2) = 1 a22 { −(a21x1(2) + a23x3(1)) + b2 } x2(2) = 1 5 {−((−2)(1.15) + (0)(2.3)) + (−7)} x2(2) = −0.94 Para el elemento x3 x3(2) = 1 a33 { −(a31x1(2) + a32x2(2)) + b3 } x3(2) = 1 6 {−((2)(1.15) + (1)(−0.94)) + 13} x3(2) = 1.94 De la segunda iteración se obtiene x2 = [ 1.15 −0.94 1.94 ] k 0 1 2 . . . 7 x1 0 0.25 1.15 . . . 1 x2 1 -1.3 -0.94 . . . -1 x3 1 2.3 1.94 . . . 2 Problema de eigenvalores Eigenvalores de una matriz Eigenvalores de una matriz Av = λv, v 6= 0 Un número λ para el cual la ecuación anterior posee solución distinta a la trivial es conocido como eigenvalor (valor caracteŕıstico) de la matriz A La solución correspondiente v 6= 0 es el eigenvector (vector caracteŕıstico) de la matriz A para λ (A− λI)v = 0 Los valores de λ que satisfacen la ecuación anterior están dados por |A− λI| = 0 De esta expresión se obtiene su polinomio caracteŕıstico λn + b1λ n−1 + b2λ n−2 + . . .+ bn−1λ+ bn = 0 p(λ) = 0 Del teorema de Caley-Hamilton: toda matriz cuadrada satisface su ecuación caracteŕıstica p(A) = 0 p(A) = An + b1A n−1 + b2A n−2 + . . .+ bn−1A + bnI = 0 An = − n∑ k=1 bkA n−k Multiplicando por un vector distinto a cero x0 Anx0 = − n∑ k=1 bkA n−kx0 Con lo anterior se obtiene un sistema de ecuaciones algebraicas. Al resolverlo se obtienen los coeficientes de la ecuación caracteŕıstica Finalmente se encuentran las ráıces para la ecuación caracteŕıstica y se determinan los eigenvalores NOTA: Este método sirve para plantear el problema sin resolver el determinante |A− λI| = 0 Problema de eigenvalores Ejemplo 8 Ejemplo 8 Encuentre el polinomio caractŕıstico de la siguiente matriz A = 3 1 2−2 −1 0 −1 0 3 considere x0 = [ 1 0 0 ]T . Solución: El polinomio que se busca es λ3 + b1λ 2 + b2λ+ b3 = 0 El problema que se debe resolver es A3x0 = −b1A2x0 − b2Ax0 − b3Ix0 −1 3 46−6 −3 −20 −23 −5 9 10 0 = −b1 5 2 12−4 −1 −4 −6 −1 7 10 0 −b2 3 1 2−2 −1 0 −1 0 3 10 0 − b3 1 0 00 1 0 0 0 1 10 0 −1−6 −23 = b1 −54 6 + b2 −32 1 + b3 −10 0 5 −3 −14 2 0 6 1 0 b1b2 b3 = −1−6 −23 Resolviendo el sistema de ecuaciones lineales se obtiene b1 = −5, b2 = 7, b3 = 5 λ3 + b1λ 2 + b2λ+ b3 = 0 λ3 + (−5)λ2 + (7)λ+ (5) = 0 Se resuelve el polinomio y se tiene que los eigenvalores son λ1 = −0.5098 λ2 = 2.7549 + 1.4897i λ3 = 2.7549− 1.4897i Problema de eigenvalores Método de las potencias Método de las potencias Es un método iterativo para estimar el eigenvalor dominante de una matriz An×n. Suposiciones An×n es una matriz real An×n tiene n eigenvalores λ1, λ2, . . . , λn donde λ1 es el eigenvalor dominante |λ1| ≥ |λ2| ≥ |λ3| ≥ . . . ≥ |λn| y sus eigenvectores correspondientes v1,v2, . . . ,vn son linealmente independientes El eigenvalor dominante es real Como v1,v2, . . . ,vn es un conjunto linealmente independiente, existen constantes c1, c2, . . . , cn tal que un vector arbitrario x0 puede ser expresado únicamente como x0 = c1v1 + c2v2 + . . .+ cnvn El problema de eigenvalores es Avi = λivi A(Avi) = A(λivi)⇒ A2vi = λ2ivi de forma general Akvi = λ k i vi Se define la secuencia de vectores x1 = Ax0 x2 = Ax1 = A 2x0 ... xk = Axk−1 = A kx0 Problema de eigenvalores Método de las potencias Método de las potencias El vector xk se puede definircomo xk = A kx0 = A k [c1v1 + c2v2 + . . .+ cnvn] = c1λ k 1v1 + c2λ k 2v2 + . . .+ cnλ k nvn = λk1 [ c1v1 + c2 ( λ2 λ1 )k v2 + . . .+ cn ( λn λ1 )k vn ] Como λ1 es el eigenvalor dominante, las relaciones λ2 λ1 , λ3 λ1 , . . . , λn λ1 son menores a 1, entonces para un valor suficientemente grande k tenemos xk ∼= c1λ1v1 Esta expresión se puede utilizar para obtener xk+1 ∼= c1λk+1v1. Entonces xk+1 ∼= λ1xk La estimación de λ1 se obtiene premultiplicando por x T k λ1 ∼= xTk xk+1 xTk xk El método de las potencias establece que la secuencia de escalares αk+1 = xTk xk+1 xTk xk , xk+1 = Axk Converge al eigenvalor dominante λ1 para una k suficientemente grande. Se puede demostrar que la secuencia {αk} converge a λ1 a una velocidad parecida en que (λ2/λ1) k → 0 Entre mayor sea la magnitud de λ1 comparado con λ2, la velocidad de convergencia es mayor Como las componentes de xk crecen rápidamente, es común normalizar xk, esto es dividir cada vector xk por su norma 2, ‖xk‖2. Como consecuencia el denominador se simplifica y se convierte en xTk xk = 1, por lo tanto αk+1 = x T k xk+1 El método finaliza con |αk+1 − αk| < ε Problema de eigenvalores Método de las potencias Algoritmo del método de las potencias Se comienza con una matriz A, un vector inicial x1 y α1 = 0 1 Se normaliza x1 para obtener un vector unitario ⇒ x1 = x1‖x1‖2 Para k = 1, hasta el número máximo de iteraciones 2 Encontrar xk+1 = Axk 3 Calcular αk+1 = x T k xk+1 4 Normalizar xk+1 ⇒ xk+1 = xk+1‖xk+1‖2 5 Verificar si se cumple que |αk+1 − αk| < ε, en caso contrario incrementar k a k+ 1 y regresar al paso 2. Problema de eigenvalores Ejemplo 9 Ejemplo 9 Obtenga el eigen-valor dominante de la siguiente matriz A = −3 −4 −2−1 4 1 2 −6 −1 comenzando con α1 = 0, x1 = [ 1 1 1 ]T y una tolerancia de ε = 10−4. Solución: Primera iteración k = 1 x1 = x1 ‖x1‖2 = 1√ 3 11 1 = 0.57740.5774 0.5774 x2 = Ax1 = 3 −4 −2−1 4 1 2 −6 −1 0.57740.5774 0.5774 = −1.73212.3094 −2.8868 α2 = x T 1 x2 = −1.3333 x2 = x2 ‖x2‖2 = −0.42430.5657 −0.7071 |α2 − α1| = 1.3333 Segunda iteración k = 2 x3 = Ax2 = 3 −4 −2−1 4 1 2 −6 −1 −0.42430.5657 −0.7071 x3 = −2.12131.9799 −3.5355 α3 = x T 2 x3 = 4.52 x3 = x3 ‖x3‖2 = −0.46380.4329 −0.7730 |α3 − α2| = 5.8533 k 1 2 3 . . . 20 x1 0.5774 -0.4243 -0.4638 . . . -0.4086 x2 0.5774 0.5657 0.4329 . . . 0.4082 x3 0.5774 -0.7071 -0.7730 . . . -0.8163 αk 0 -1.3333 4.5200 . . . 3.0014 Métodos directos Eliminación Gaussiana Ejemplo 1 Pivoteo parcial con escalamiento de renglón Ejemplo 2 Factorización LU (Doolittle) Ejemplo 4 Factorización LU (Crout) Ejemplo 5 Métodos iterativos Norma de vectores y matrices Método iterativo general Método de Jacobi Ejemplo 6 Método de Gauss-Seidel Ejemplo 7 Problema de eigenvalores Eigenvalores de una matriz Ejemplo 8 Método de las potencias Ejemplo 9
Compartir