MÉTODOS NUMÉRICOS PARA EQUAÇÕES DIFERENCIAIS PARCIAIS 1- Resolução de Sistemas Lineares. 1.1- Matrizes e Vetores. 1.2- Resolução de Sistemas Lineares de Equações Algébricas por Métodos Exatos (Diretos). 1.3- Resolução de Sistemas Lineares de Equações Algébricas por Métodos Iterativos. 1.4- Convergência dos Métodos Iterativos. 1.2- Sistemas Lineares de Equações Algébricas Solução de um sistema linear de m equações algébricas com n incógnitas via métodos exatos (diretos). a11 x1 + a12 x 2 + " a1 n x n = b1 a 21 x1 + a 22 x 2 + " a 2 n x n = b2 """"""""""" a m 1 x1 + a m 2 x 2 + " a m n x n = b m ⎡ a11 ⎢a ⎢ 21 ⎢" ⎢ ⎣ am1 a12 a22 " am 2 a1n ⎤ ⎡ x1 ⎤ ⎡ b1 ⎤ ⎥ ⎢ ⎥ ⎢ ⎥ " a2n ⎥ ⎢ x2 ⎥ ⎢b2 ⎥ = ou " " ⎥⎢ # ⎥ ⎢ # ⎥ ⎥⎢ ⎥ ⎢ ⎥ " amn ⎦ ⎣ xn ⎦ ⎣bn ⎦ " Ax = b 1.2.1- Quando existe solução? ⎡ a11 ⎢a ⎢ 21 ⎢" ⎢ ⎣ am1 a12 a22 " am 2 a1n ⎤ ⎡ x1 ⎤ ⎡ b1 ⎤ " a2n ⎥⎥ ⎢⎢ x2 ⎥⎥ ⎢⎢b2 ⎥⎥ = ou " " ⎥⎢ # ⎥ ⎢ # ⎥ ⎥⎢ ⎥ ⎢ ⎥ " amn ⎦ ⎣ xn ⎦ ⎣bn ⎦ " Ax = b Se n > m (mais incógnitas que equações) o sistema tem mais de uma solução. Se n = m(matriz quadrada) segue. 1 x Lema: Se é solução do sistema Ax = b, então qualquer outra solução deste sistema tem a forma x2 = x1 + y, onde y é solução do sistema homogêneo Ay = 0 . Ou seja, se Ax1 = b e Ax2 = b segue que: y = x2 −x1 Ay = A(x2 − x1) = Ax2 − Ax1 = b − b = 0 1.2.1- Quando existe solução? O Lema anterior implica no seguinte teorema. Teorema: O sistema linear Ax = b tem uma única solução (se existir) se e somente se o correspondente sistema homogêneo Ax = 0 tem somente a solução x = 0. Pode ser mostrado que Ax = 0 tem somente a solução x = 0 se d e t A ≠ 0 . Nesta disciplina estamos interessados em resolver sistema de equações lineares representados por uma matriz quadrada com determinante diferente de zero (não singular). a 11 x1 + a12 x 2 + " a1 n x n = b1 a 21 x1 + a 22 x 2 + " a 2 n x n = b 2 """"""""""" a n 1 x1 + a n 2 x 2 + " a n n x n = b n ⎡ a11 ⎢a ⎢ 21 ⎢" ⎢ ⎣ an1 a12 " a1n ⎤ ⎡ x1 ⎤ ⎡ b1 ⎤ a22 " a2n ⎥⎥ ⎢⎢ x2 ⎥⎥ ⎢⎢b2 ⎥⎥ = " " "⎥⎢ # ⎥ ⎢ # ⎥ ⎥⎢ ⎥ ⎢ ⎥ an 2 " ann ⎦ ⎣ xn ⎦ ⎣bn ⎦ 1.2.1- Tipos de Métodos para resolver Ax = b Métodos Diretos: Produzem a solução exata do sistema após um número finito de operações aritméticas (algoritmo finito) e livre de erro. Na prática, devido a Aritmética com Precisão Finita do computador estes métodos não produzem a solução exata. Quando a ordem da matriz é muito grande o erro devido a precisão finita do computador pode tornar a solução destes métodos sem utilidade prática. Alguns métodos: Regra de Cramer, Eliminação de Gauss, Eliminação pelo Elemento Principal. Métodos Iterativos: Produzem a solução exata do sistema após um número infinito de operações aritméticas (algoritmo infinito). Como isto é impossível de ser feito, o algoritmo infinito é transformado em finito e conseqüentemente a solução é sempre aproximada. Alguns métodos: Método da Iteração, Método de Seidel, Método do Relaxamento. 1.2.2- Regra de Cramer (Inversão de matriz) Seja Ax = b. Se det A ≠ 0 (matriz não singular), então o sistema tem uma única solução. A matriz A possui inversa A−.1 Logo A−1Ax = A−1b e x = A−1b . Usando este resultado podemos obter as formulas de Cramer. Entretanto, este resultado tem pouca utilidade prática para matrizes de ordem superior a 4. Resolver um sistema linear de n incógnitas pela Regra de Cramer requer calcular n+1 determinantes de ordem n. Calcular determinantes para n grande pode ser muito trabalhoso (demorado). Isto motivou o desenvolvimento de outros métodos para resolver sistemas lineares. 1.2.3- Método de Gauss Método mais usado que consiste em eliminação sucessiva das incógnitas. Seja U n×n x = b com U n×n uma matriz triangular superior. u11 x1 + u12 x2 + "+ u1n−1 xn−1 + u1n xn = b1 0x1 + u22 x2 + "+ u2n−1 xn−1 + u2n xn = b2 """""""""""""""""" 0x1 + 0x2 + "+ un−1n−1 xn−1 + un−1n xn = bn−1 0x1 + 0x2 + "+ 0xn−1 + unn xn = bn ⎡u11 u12 ⎢0 u 22 ⎢ ⎢" " ⎢ ⎢0 0 ⎢⎣ 0 0 " u1n−1 " u2n−1 " " " un−1n−1 " 0 u1n ⎤ ⎡ x1 ⎤ ⎡ b1 ⎤ u2n ⎥⎥ ⎢⎢ x2 ⎥⎥ ⎢⎢ b2 ⎥⎥ " ⎥⎢ # ⎥ = ⎢ # ⎥ ⎥ ⎢ ⎥ ⎥⎢ un−1n ⎥ ⎢ xn−1 ⎥ ⎢bn−1 ⎥ unn ⎥⎦ ⎢⎣ xn ⎥⎦ ⎢⎣ bn ⎥⎦ Se ukk ≠ 0 ∀k a solução do sistema pode ser obtida fazendo x n → x n−1 → " → x 1 sucessivas substituição no sentido n bk − xk = ∑ u kj x j= k +1 u kk j Back-substitution Teorema: Uma matriz triangular superior tem inversa se e somente se todos os elementos da diagonal são diferente de zero. 1.2.3- Método de Gauss Seja A n×n x = b com A n×n uma matriz não triangular. a1n ⎤ ⎡ x1 ⎤ ⎡ b1 ⎤ Se a11 ≠0 multiplique a linha ⎡ a11 a12 " a1n−1 ⎥ ⎢ x ⎥ ⎢ b ⎥ 1 por 1/ a e elimine x da ⎢a a a a " 11 1 22 2n−1 2n ⎥ ⎢ 2 ⎥ ⎢ 2⎥ ⎢ 21 ⎢" " " " " ⎥ ⎢ # ⎥ = ⎢ # ⎥ linha j multiplicando a nova ⎥ ⎢ ⎥ linha 1 por a e subtraindo ⎥⎢ ⎢ j1 ⎢an−11 an−12 " an−1n−1 an−1n ⎥ ⎢ xn−1 ⎥ ⎢bn−1 ⎥ ⎢a a a ⎥ ⎢ x ⎥ ⎢ b ⎥ da linha j>1. " a ⎣ n1 nn−1 n2 nn ⎦⎣ n ⎦ ⎣ n ⎦ A matriz obtida é equivalente à inicial e ambos sistema possuem a mesma solução. ⎧ a1 j ⎡1 ⎢ ⎢0 ⎢" ⎢ ⎢0 ⎢0 ⎣ u " u a " " a " " 1 12 1 22 1 1n−1 1 2n−1 an1−12 " an1−1n−1 an12 1 " ann −1 u11 j = ∀ j ≥ 2, n ⎪ ⎤ ⎡ ⎤ x u ⎡ 1⎤ b a11 (1)⎨ ⎥⎢ ⎥ ⎢ ⎥ ⎪a 1 = a − a u1 ∀i , j ≥ 2, n a ⎥ ⎢ x2 ⎥ ⎢ b ⎥ ij i1 1 j ⎩ ij 1 1n 1 2n 1 1 1 2 " ⎥⎢ # ⎥ = ⎢ # ⎥ ⎥⎢ ⎧⎪b11 = u11n +1 com a1n +1 = b1 ⎥ ⎢ 1 ⎥ 1 an−1n ⎥ ⎢ xn−1 ⎥ ⎢bn−1 ⎥ ( 2)⎨ 1 1 1 ⎥⎢ 1 ⎥ ⎪ = − b b a u ⎢ ⎥ i i i n + 1 ∀ i ≥ 2, n 1 1 ⎩ ann ⎦ ⎣ xn ⎦ ⎣ bn ⎦ Note que (2)=(1) se em (2) a in +1 = bi , ou seja, se usamos a matriz ampliada em lugar da matriz original j>1,n+1. 1.2.3- Método de Gauss 1 ⎡ 1 u12 ⎢ 1 a 0 22 ⎢ ⎢" " ⎢ 1 ⎢ 0 an−12 ⎢ 0 a1 n2 ⎣ ⎡1 ⎢ ⎢0 ⎢" ⎢ ⎢0 ⎢0 ⎣ 1 u12 1 " 0 0 " u " " a " 1 1n−1 1 2n−1 " an1−1n−1 " " " " " " 1 ann −1 u ⎤ ⎡ x1 ⎤ ⎡ a11n+1 ⎤ ⎥⎢ ⎥ ⎥ ⎢ a ⎥ ⎢ x2 ⎥ ⎢ a21n+1 ⎥ " ⎥⎢ # ⎥ = ⎢ # ⎥ ⎥⎢ ⎥ ⎥ ⎢ an1−1n ⎥ ⎢ xn−1 ⎥ ⎢an1−1n+1 ⎥ 1 ⎥⎢ ⎥ ⎢ 1 ⎥ ann ⎦ ⎣ xn ⎦ ⎣ ann+1 ⎦ 1 1n 1 2n u11n−1 u11n ⎤ ⎡ x1 ⎤ ⎡ a11n+1 ⎤ ⎥ ⎢ 2 ⎥ 2 2 ⎥⎢ x u2n−1 u2n ⎥ ⎢ 2 ⎥ ⎢ a2n+1 ⎥ " " ⎥⎢ # ⎥ = ⎢ # ⎥ ⎥⎢ ⎥ ⎥ ⎢ 2 2 2 an−1n−1 an−1n ⎥ ⎢ xn−1 ⎥ ⎢an−1n+1 ⎥ 2 2 ⎥⎢ ⎥ ⎢ 2 ⎥ ann ann −1 ⎦ ⎣ xn ⎦ ⎣ ann+1 ⎦ 1 ≠ 0 multiplique a linha Se a22 1 2 por 1/ a22 e elimine x2 da linha j multiplicando a nova linha 2 por a1j 2 e subtraindo de linha j>2. ⎧ 2 a 21 j ⎪ u2 j = 1 ∀j ≥ 3, n + 1 a 22 ⎨ ⎪ a 2 = a 1 − a 1 u 2 ∀ i , j ≥ 3, n + 1 ij i2 2 j ⎩ ij Se a iii − 1 ≠ 0 i > 3 podemos repetir este algoritmo sucessivamente até i=n-1 e obtemos: 1.2.3- Método de Gauss ⎡1 ⎢ ⎢0 ⎢" ⎢ ⎢0 ⎢0 ⎣ 1 u12 " u11n−1 1 " u22n−1 " " " 0 " 1 0 " 0 ann−−12j u11n ⎤ ⎡ x1 ⎤ ⎡ a11n+1 ⎤ ⎧ n−1 ⎥⎢ ⎥ u = ∀j ≥ n, n + 1 ⎥ ⎢ u22n ⎥ ⎢ x2 ⎥ ⎢ a22n+1 ⎥ ⎪ n−1 j a n− 2 ⎨ n−1n−1 ⎥ ⎢ ⎥ ⎢ ⎥ # = " # ⎪a n−1 = a n−2 − a n−2 un−1 ∀j ≥ n, n + 1 ⎥ ⎢ ⎥ ⎢ ⎥ nj nn−1 n−1 j unn−−11n ⎥ ⎢ xn−1 ⎥ ⎢ann−−11n+1 ⎥ ⎩ nj n−1 ⎥ ⎢ ⎢ an−1 ⎥ Se an−1 ≠ 0 multiplique a linha ⎥ x ann nn ⎦ ⎣ n ⎦ ⎣ nn+1 ⎦ n −1 n−1 e a nn + 1 n n por 1/ ann x n = n −1 = a nn +1 a nn Logo, a eliminação de Gauss resulta numa matriz triangular superior com elementos da diagonal 1. Este sistema pode ser resolvido realizando o processo de Back-Substitution. ⎡1 ⎢ ⎢0 ⎢" ⎢ ⎢0 ⎢0 ⎣ 1 u12 " u11n−1 1 " u22n−1 " " " 0 " 1 0 " 0 n −1 a nn n k x n = n −+11 = a nn e x = a k kn + 1 − +1 a nn n k u ∑ kj x j j = k +1 u11n ⎤ ⎡ x1 ⎤ ⎡ a11n+1 ⎤ ⎥ ⎥⎢ ⎥ ⎢ u22n ⎥ ⎢ x2 ⎥ ⎢ a22n+1 ⎥ " ⎥⎢ # ⎥ = ⎢ # ⎥ ⎥ ⎢ n−1 ⎥ n−1 ⎥ ⎢ un−1n ⎥ ⎢ xn−1 ⎥ ⎢an−1n+1 ⎥ n ⎥ 1 ⎥⎦ ⎢⎣ xn ⎥⎦ ⎢⎣ ann +1 ⎦ n> j≥1 1.2.3- Método de Gauss Note que a matriz triangular superior obtida com a eliminação de Gauss tem todos os elementos da diagonal diferente de zero. Logo, pode ser realizado o processo de BackSubstitution. Entretanto, a condição necessária e suficiente para obter esta matriz triangular foi: 1 1 1 a11 ≠ 0 1 a22 ≠ 0 ⇔ a11a22 − a21a12 ≠ 0 2 1 1 1 1 a33 ≠ 0 ⇔ a22 a33 − a32 a23 ≠ 0 # # # # # ⎡1 ⎢ ⎢0 ⎢" ⎢ ⎢0 ⎢0 ⎣ u12 " u1n−1 1 " u22n−1 " " 0 " " 1 " 0 0 u1n ⎤ ⎥ u22n ⎥ "⎥ ⎥ unn−−11n ⎥ 1 ⎥⎦ n −1 n− 2 n− 2 n− 2 ann ≠ 0 ⇔ ann−−12n−1ann − ann −1a n −1 n ≠ 0 k −1 Se algum destes coeficientes é zero akk = 0 o processo pode ser feito trocando este coeficiente por algum a kjk −1 ≠ 0 . Isto se chama pivotar e é essencial para reduzir erros de round-off. 1.2.3- Método de Gauss Podemos estimar o número de operações aritméticas N necessárias para obter a solução de um sistema de ordem n pelo Método de Gauss (sem considerar pivoteamento). ⎧ k a kjk −1 Forward-Substitution ⎪ ukj = ∀j ≥ k + 1, n + 1 k −1 a kk ⎨ (multiplicação e divisão) ⎪a k = a k −1 − a k −1 u k ∀i , j ≥ k + 1, n + 1 ij ik kj ⎩ ij = n div.+ n ∗ n mult. n ( n + 1)( n + 2) n ( n + 1) + ( n − 1) n + " + ( n − ( k − 1))( n − k ) + 1 ⋅ 2 = 3 Passo 1 Passo 2 Passo k Back-Substitution (multiplicação e divisão) n ( n − 1) k= ∑ 2 k =1 n −1 n−1 ⎧ a nn n +1 = = x a ⎪ n nn + 1 n−1 a ⎪ nn ⎨ n k k ⎪x = a − u ∑ kn + 1 kj x j ⎪⎩ k j= k +1 n> j≥1 Considerando o mesmo número de soma e subtração em cada processo segue: N = 2 n ( n + 1)( n + 2 ) + 2 n ( n − 1) < n 3 ∀ n > 7 3 2 1.2.3- Método de Gauss Ou seja, o número de operações aritméticas N necessárias para obter a solução de um sistema de ordem n pelo Método de Gauss (sem considerar pivoteamento) é proporcional ao cubo do número de incógnitas. n ( n + 1)( n + 2 ) n ( n − 1) N =2 +2 < n 3 ∀n > 7 2 3 Consequentemente, para resolver um sistema com 10000 incógnitas num computador capaz de realizar 106 operações por segundo serão necessário no mínimo T=(104)3 /106=106s. Este esforço computacional pode ser otimizado para casos particulares de matrizes simétricas e esparsas. Matriz Esparsa: são aquelas com muitos elementos zeros (método de diferença finita e método de elemento finito). Matriz Densa: são aquelas com poucos elementos zeros. 1.2.3- Método do Elemento Principal (Estratégia do Pivô) Considere a matriz ampliada e escolha o elemento não zero com maior valor absoluto apq (elemento principal) que não aiq pertença ao termo independente. Calcule o fator ui = − ∀i ≠ p apq Adicione a cada linha, diferente da linha p, a linha p multiplicada pelo fator ui . Isto produz uma nova matriz com a coluna q formada por zeros e mantendo a linha p inalterada. ⎡ a11 ⎢a ⎢ 21 ⎢" ⎢ ⎢ a i1 U = ⎢" ⎢ ⎢ a p1 ⎢ ⎢" ⎢a ⎣ n1 a12 a 22 " ai 2 " " " " " " a1 j a2 j " a ij " " " " " " a1q a2 q " a iq " " " " " " a p2 " a pj " a pq " " an 2 " " " a nj " " " a nq " " a1n a 1n +1 = b1 ⎤ ⎥ a2n a b = 2 n +1 2 ⎥ " ⎥ " ⎥ a in a in + 1 = bi ⎥ " ⎥ " ⎥ a pn a pn +1 = b p ⎥ ⎥ " " ⎥ a nn a nn +1 = bn ⎥⎦ 1.2.3- Método do Elemento Principal (Estratégia do Pivô) Descartando a coluna q e a linha p obtemos uma nova matriz de ordem (n-1)x(n-1). Repetimos o procedimento para U 1 obtemos U 2, e assim sucessivamente até U n −1 , onde chegamos a uma matriz linha com dois elementos. ⎡ a11 ⎢ a ⎢ 21 ⎢ " ⎢ a i1 ⎢ U1 = ⎢ " ⎢ ⎢ descartar ⎢ ⎢ " ⎢ a ⎣ n1 a12 a 22 " ai 2 " " " " " " a1 j a2 j " a ij " esta linha p " an 2 " " " a nj U 1 → " → U n −1 " " " " " " " " " " a pq " " " " a1n a 1n + 1 = b1 ⎤ ⎥ a2 n a b = 2 n +1 2⎥ " ⎥ " ⎥ a in a = b in + 1 i ⎥ " ⎥ " ⎥ ⎥ ⎥ " " ⎥ a nn a nn +1 = bn ⎥⎦ 1.2.3- Método do Elemento Principal (Estratégia do Pivô) Para determinar as incógnitas xi combine num sistema todas n −1 1 as linhas descartadas em ordem inversa U → " → U . A primeira vista não parece ser uma matriz triangular, mas basta reordenar o número das incógnitas para obter um sistema com matriz triangular. Esta matriz será triangular superior ou inferior dependendo de como é feito o reordenamento. # + + " + a np −j 2 x j + " +" + = a npn−+21 ⎧ passo n-1 (último) ⎨ ⎩ chega a uma linha com 2 elementos + + " + a inp −j 3 x j + " + " + a inpn− 3 x n = a inpn−+31 ⎧ passo n-2 (penúltimo) elimina coluna n ⎨ ⎩ descartando a linha p # sucessiv amente até chegar no penúltimo passo a l2p 1 x1 + + " + a l2p j x j + " + " + a l2pn x n = a l2pn +1 a 1p 1 x1 + a 1p 2 x 2 + " + a 1p j x j + " ⎧⎪ passo 3, elimina outra coluna ⎨ ⎪⎩ descartando a linha p + " + a 1pn x n = a 1pn +1 ⎧ passo 2, elimina coluna 2 ⎨ ⎩ descartando a linha p a p 1 x1 + a p 2 x 2 + " + a pj x j + " a pq x q + " + a pn x n = a pn +1 ⎧ passo 1, elimina coluna q ⎨ ⎩ descartando a linha p 1.2.3- Método do Elemento Principal (Estratégia do Pivô) Reordenando o sistema anterior obtemos: + + " + a np −j 2 x j + " +" + = a npn−+21 {passo n-1 sem reordenação reordenando j→ n e p → n a linha acima se transforma em + n−2 + " + a nn xn + " +" + n−2 = a nn + 1 {passo n-1 reordenado + + " + a inp −j 3 x j + " + " + a inpn− 3 x n = a inpn−+31 ⎧ passo n-2 sem ⎨ ⎩ reordenação reordenando j → n, n → n-1 e p → n-1 a linha acima se transforma em + # + " + a nn−−13n x n + " + " + a nn−−13n −1 x n −1 = a nn−−13n +1 {passo n-1 reord enado sucessivamente até chegar no passo 1 # a p 1 x1 + a p 2 x 2 + " + a pj x j + " a pq x q + " + a pn x n = a pn +1 {passo 1 sem reordenação reordenando j → n, n → n-1, 1 → 3, 2 → 2, q → 1 e p → 1 a linha acima se transforma em a13 x3 + a12 x 2 + " + a1 n x n + " a1 1 x1 + " + a1 n −1 x n −1 = a1 n +1 {passo 1 reo rden ado Note que invertendo a ordem das linhas obtemos uma matriz triangular superior. 1.2.3- Método do Elemento Principal (Estratégia do Pivô) Este método pode ser aplicado sempre que det A ≠ 0 . Note que o método de Gauss é um caso particular deste método, que pode ser obtido sempre que escolhermos o elemento esquerdo superior da matriz correspondente em cada passo. Exemplo 4.4 (Conte) Suponha uma precisão de 4 casas decimais. ⎡ 0.0003 1. 566 ⎤ ⎡ x1 ⎤ ⎡1. 569 ⎤ ⎢ 0.3454 ⎣ =⎢ ⎢ ⎥ ⎥ − 2.436 ⎦ ⎣ x 2 ⎦ ⎣1.018 ⎥⎦ ⎡ 0. 0003 ⎢ ⎣ 0.3454 1. 566 1. 569 ⎤ − 2. 436 1. 018 ⎦⎥ Como tarefa resolver este sistema usando: -Método de Gauss sem pivoteamento, -Método do Elemento Principal. 1.2.4- Método de Gauss para calcular a inversa Suponha que queremos calcular a matriz inversa de uma matriz não singular A n×n ( det A ≠ 0 ). A n×n A n−×1 n = E Este é um sistema de n2 incógnitas xij ( i , j = 1," , n) . n ⎧ 1 se i = j a ik x kj = δ ij ( i , j = 1 , " , n ) e δ ij = ⎨ ∑ k =1 ⎩ 0 se i ≠ j a11 x11 + a12 x21 + " + a1n xn1 = 1 a21 x11 + a22 x21 + " + a2 n xn1 = 0 (i = j = 1) (i = 2, j = 1) """""""""""" an1 x11 + an 2 x21 + " + ann xn1 = 0 (i = n, j = 1) a11 x12 + a12 x22 + " + a1n xn 2 = 0 (i = 1, j = 2) """""""""""" a11 x1n + a12 x2 n + " + a1n xnn = 1 (i = 1, j = n ) Os n sistemas resultantes tem a mesma matriz e vetor b distintos e podem ser resolvidos simultaneamente pelo método de Gauss. 1.2.4- Método de Gauss para calcular a inversa Exemplo: Encontre a inversa de A 2×2 : A 2×2 A 2−×12 = E ⎡ a11 a12 ⎤ ⎡ x11 ⎢a ⎥ ⎢x a ⎣ 21 22 ⎦ ⎣ 21 x12 ⎤ ⎡1 0⎤ =E=⎢ ⎥ ⎥ x22 ⎦ 0 1 ⎣ ⎦ ⎧ a11 x11 + a12 x21 = 1 (i = 1, j = 1) (1) ⎨ ⎩ a21 x11 + a22 x21 = 0 (i = 2, j = 1) ⎧ a11 x12 + a12 x22 = 0 (i = 1, j = 2) ( 2) ⎨ ⎩ a21 x12 + a22 x22 = 1 (i = 2, j = 2) Matriz Triangular ⎡1 u ⎤ ⎢ ⎥ ⎣0 1 ⎦ 1 12 A 2×2 det A ≠ 0 ⎡ a11 a12 ⎤ ⎡2 1⎤ =⎢ =⎢ ⎥ ⎥ a a 1 2 ⎦ ⎣ 21 22 ⎦ ⎣ Os 2 sistemas tem a mesma matriz e vetor b distintos e podem ser resolvidos simultaneamente pelo método de Gauss. 1 a23 x21 = 1 a22 a x22 = 1 a22 1 23 1 1 x11 = a13 − u12 x21 1 1 x12 = a13 − u12 x22 A matriz triangular superior é a mesma e o procedimento para obter ela é o mesmo. Logo, só precisa ser feito uma única vez. O processo de Back-Substitution deve ser feito por separado porque os termos independentes são diferentes. 1.2.5- Erro da Solução e Condicionamento da matriz Seja um sistema descrito por uma matriz não singular A n×n ( det A ≠ 0 ). Como o sistema é resolvido com aritmética de precisão finita a solução pelo método de Gauss terá erro do tipo round-off. Também, nosso sistema pode ter incertezas devido a incertezas no termo independente e nos elementos da matriz. Queremos estimar como estas incertezas ou a aritmética de precisão finita pode influenciar a solução do sistema Ax = b . Primeiro consideramos a matriz exata e incertezas no termo independente: b + Δb logo A (x + Δx) = b + Δb estimaremos −1 ou A Δ x = Δ b Δ x = A Δb quão grande pode ser esta incerteza. Δx ≤ A −1 Δb Δx b ≤ A −1 A b ≤ A x multiplicando ambas Δx −1 Δb Δb x se x ≠ 0 segue ≤ A A x b 1.2.5- Erro da Solução e Condicionamento da matriz Para toda matriz não singular definimos um número chamado −1 Condicionamento da Matriz como: cond( A ) = A A logo Δx x ≤ cond( A) Δb b Δx Δb Note que b é uma medida do erro relativo do dado b . é uma medida do erro relativo em x devido á incerteza em b. Note que quanto mais próximo de 1 for o cond(A) as incertezas em b terão menor influenza no erro da solução (matriz bem condicionada). Se cond(A)>>1 (muito grande) consequentemente o erro da solução será grande (mal condicionamento). Agora consideramos a matriz com incertezas e o termo independente exato: A + ΔA estimaremos quão grande pode ser esta incerteza. x ( A + ΔA )(x + Δx) = b (x + Δx) = ( A + ΔA) −1b 1.2.5- Erro da Solução e Condicionamento da matriz −1 −1 Δx = [( A + ΔA ) − A ]b Denotando B = A + ΔA e usando a identidade abaixo segue B −1 − A −1 = A −1 ( A − B)B −1 Δx = − A −1 (ΔA )( A + ΔA ) −1b = − A −1 (ΔA )(x + Δx) Δx ΔA −1 Δx ≤ A ΔA x + Δx ou ≤ cond( A) x + Δx A Novamente quanto mais próximo de 1 for o cond(A) as incertezas na matriz terão menor influenza no erro da solução (matriz bem condicionada). Se cond(A)>>1 (muito grande) consequentemente o erro da solução será grande (mal condicionamento). Frase do Dia “As long as algebra and geometry proceed along separate paths, their advance was slow and their applications were limited. But when these sciences joined company, they drew from each other fresh vitality and hence forward marched on at a rapid pace towards perfection.” Joseph Louis Lagrange