87 RESOLUÇÃO DE SISTEMAS NÃO LINEARES y , sen(x), ex+z, z etc, é chamada não-linear em x, y, z, ..., porque ela não pode ser escrita como Uma equação que contenha uma expressão do tipo x2, y-2, x.y, ax + by + cz + ... = cte que é uma equação linear em x, y, z, ... Um sistema de n equações e n incógnitas x1, x2, ..., xn é chamado de não-linear se uma ou mais equações é não-linear. Trazendo todos os termos diferentes de zero à esquerda de todas as equações, tem-se uma forma geral que pode ser usada para qualquer sistema não-linear. f1 ( x1 , x2 ,..., xn ) 0 f ( x , x ,..., x ) 0 2 1 2 n f n ( x1 , x2 ,..., xn ) 0 ou simplesmente f1 ( x ) 0 f ( x) 0 2 f n ( x) 0 em que xT= ( x1 , x2 ,..., xn ). Em notação vetorial, o sistema linear acima pode ser escrito como: F(x) = 0, em que x1 x x 2 xn e f1 x f 2 x F(x) = f x n Um vetor que x ( x1 , x2 ,..., x n ) que satisfaz F( x) = 0 é denominado raiz do sistema não-linear. Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 88 Exemplos: x 2 y 2 4 2 x y 2 1 1) Reescrevendo este sistema na forma do sistema, temos: Este sistema não-linear admite quatro soluções, que são os pontos onde as curvas x + y = 4 e x2 - y2 = 1 se interceptam. 2 2 f1 x, y x 2 y 2 0.2 0 f 2 x, y x 2 y 1 0 2) Este sistema não tem solução, ou seja, não existem pontos onde as curvas x y 0.2 0 e x 2 y 1 0 se interceptem. 2 2 Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 89 Método de Newton O método mais amplamente estudado e conhecido para resolver sistemas de equação não lineares é o Método de Newton. No caso de uma equação não linear a uma variável, o Método de Newton consiste em se tomar um modelo local linear da função f(x) em torno de xk, e este modelo é a reta tangente à função em xk. Considerando inicialmente um sistema de equações não lineares com duas equações e duas incógnitas, temos: f 1 x, y 0 f 2 x, y 0 Desta forma, buscamos determinar o vetor solução (𝑥̅ , 𝑦̅) tal que 𝐹(𝑥̅ , 𝑦̅) = 0 e 𝑓 (𝑥, 𝑦) 𝐹(𝑥, 𝑦) = ( 1 ). 𝑓2 (𝑥, 𝑦) Seja (x0,y0) uma aproximação inicial para a solução (𝑥̅ , 𝑦̅) do sistema. Expandindo 𝑓1 (𝑥, 𝑦) e 𝑓2 (𝑥, 𝑦) por série de Taylor em torno do ponto (x0,y0) até a derivada de primeira ordem e igualando a zero a série truncada, temos: 𝑓1 (𝑥, 𝑦) ≈ 𝑓1 (𝑥0 , 𝑦0 ) + 𝑓2 (𝑥, 𝑦) ≈ 𝑓2 (𝑥0 , 𝑦0 ) + { 𝑓1 (𝑥0 , 𝑦0 ) 𝑥 𝑓2 (𝑥0 , 𝑦0 ) 𝑥 (𝑥 − 𝑥0 ) + (𝑥 − 𝑥0 ) + 𝑓1 (𝑥0 , 𝑦0 ) 𝑦 𝑓2 (𝑥0 , 𝑦0 ) 𝑦 (𝑦 − 𝑦0 ) = 0 (𝑦 − 𝑦0 ) = 0 Este sistema pode ser reescrito como: −𝑓1 (𝑥0 , 𝑦0 ) = −𝑓2 (𝑥0 , 𝑦0 ) = { 𝑓1 (𝑥0 , 𝑦0 ) 𝑥 𝑓2 (𝑥0 , 𝑦0 ) 𝑥 (𝑥 − 𝑥0 ) + (𝑥 − 𝑥0 ) + 𝑓1 (𝑥0 , 𝑦0 ) 𝑦 𝑓2 (𝑥0 , 𝑦0 ) 𝑦 (𝑦 − 𝑦0 ) (𝑦 − 𝑦0 ) A solução deste sistema fornece uma nova aproximação para a solução (𝑥̅ , 𝑦̅) desejada. Na forma matricial, temos: f1 f1 x y x x0 f1 ( x0 , y0 ) f 2 f 2 y y0 f 2 ( x0 , y0 ) x y J x0 , y0 Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 90 Definindo J(x0, y0) a matriz Jacobiana avaliada no ponto (x0, y0), temos: x x0 f1 ( x0 , y0 ) J x0 , y0 y y f ( x , y ) 0 2 0 0 Denotando dx = (x – x0) e dy = (y – y0), temos o sistema linear: dx f (x , y ) J x0 , y0 1 0 0 d y f 2 ( x0 , y0 ) Resolvendo este sistema por um método numérico, temos os valores de dx e dy. Desta forma, a nova aproximação (x, y) é determinada por: x = x0 + dx e y = y0 + dy Os valores obtidos para x e y não são os valores de 𝑥̅ e 𝑦̅, mas são os valores de uma nova aproximação, ou seja: x1 = x0 + d x0 y1 = y0 + d y0 Repetindo o procedimento de linearização em torno do ponto obtido (x0,y0), isto é, fazendo a expansão das funções f1 e f2 por série de Taylor até a derivada de 1ª ordem, obtemos uma nova aproximação (x2, y2). Assim, sucessivamente, no ponto (xi,yi), temos o processo iterativo: x x f (x , y ) J xk , yk k 1 k 1 k k Processo iterativo de Newton yk 1 yk f 2 ( xk , yk ) Denotando ri = (xi+1 – xi) e si = (y i+1 – yi), resolvemos o sistema de equações lineares obtido anteriormente e determinamos a nova aproximação (xk+1, yk+1) por: xk+1 = xk + d xk yk+1 = yk + d yk Convergência: Condições para a convergência do método de Newton: 1. As funções fi = (x, y), i = 1, 2 e as derivadas até 2ª ordem devem ser contínuas e limitadas numa vizinhança da raiz (𝑥̅ , 𝑦̅). 2. Det[ J ( xk , yk ) ] ≠ 0. 3. A solução inicial (x0, y0) deve ser próxima da raiz (𝑥̅ , 𝑦̅). Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 91 Critério de Parada: Erro absoluto: xk 1 xk e yk 1 yk . Erro relativo: xk 1 xk xk 1 e yk 1 yk yk 1 . Análise de F(x,y) = 0 f1 ( xk , yk ) e f 2 ( xk , yk ) . Se um dos critérios acima estiver satisfeito pare o método. Generalização do Processo Iterativo de Newton: Seja f1 ( x1 , x2 ,..., xn ) 0 f1 ( x1 , x2 ,..., xn ) f ( x , x ,..., x ) 0 2 1 2 n f 2 ( x1 , x2 ,..., xn ) F ( x , x ,..., x ) 0; em que, F ( x , x ,..., x ) 1 2 n 1 2 n f n ( x1 , x2 ,..., xn ) 0 f n ( x1 , x2 ,..., xn ) O processo iterativo de Newton é dado por: f1 x 1 f 2 x1 f n x 1 f1 x2 f1 xn f 2 x2 f 2 xn f n x2 f n xn k 1 k x1 x1 f ( x k , x k ,..., x k ) n x k 1 x k 1 1 2 2 2 f ( x k , x k ,..., x k ) n 2 1 2 k k k k 1 k f n ( x1 , x 2 ,..., x n ) xn xn De modo simplificado, temos: k k k x1k 1 x1k f1 ( x1 , x 2 ,..., x n ) k 1 x x 2k f 2 ( x1k , x 2k ,..., x nk ) k k k 2 J ( x1 , x 2 ,..., x n ) x k 1 x k f ( x k , x k ,..., x k ) n n n n 1 2 Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 92 em que J ( xk , xk ,..., xk ) é a matriz Jacobiana avaliada no ponto ( xk , xk ,..., xk ) . 1 2 1 n Denotando d x k 1 k 1 1 x1 ; d x k k 2 k 1 2 x k 2 k 1 n ... d x k n 2 n xn , temos o sistema de equações k lineares para ser resolvido: k k k d1k f1 ( x1 , x 2 ,..., x n ) k k k k f ( x , x ,..., x ) d 2 (k ) (k ) (k ) 1 2 n J ( x1k , x 2k ,..., x nk ) 2 J ( x ) d F ( x ) k d n f n ( x1k , x 2k ,..., x nk ) em que: d (k ) f1 ( x ( k ) ) d1k x1k k (k ) d 2 ( k ) x2k f2 ( x ) (k ) ; x e F (x ) k k f ( x( k ) ) dn xn n Utilizando um método direto para resolver este sistema linear obtido, temos os valores de d1k ; d 2k ... d nk e a nova solução aproximada x1k 1 , x2k 1 , ..., xnk 1 é dada por: x1k 1 x1k d1k k 1 k k x2 x2 d 2 ( x ( k 1) ) ( x ( k ) ) (d ( k ) ) k 1 k k xn xn d n Convergência: Condições para a convergência do método de Newton generalizado: 1. As funções fi ( x1 , x2 ,..., xn ) ; i = 1, 2, ..., n e suas derivadas até 2ª ordem devem ser contínuas e limitadas numa vizinhança da raiz ( x1 , x2 ,...., xn )T . 2. Det[ J ( xk , xk ,..., xk ) ] ≠ 0, para k = 0,1,... 1 2 n 3. A solução inicial ( x0 , x0 ,..., x0 )T deve ser próxima da ( x1 , x2 ,...., xn )T . 1 2 n OBS: A sequência gerada pelo Método de Newton ( xk , xk ,..., xk )T , a partir de uma solução 1 0 0 0 T 2 n 2 n inicial ( x , x ,..., x ) suficientemente próxima da solução do sistema, converge para 1 T ( x1 , x2 ,...., xn ) , e a convergência é quadrática. Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 93 Critério de Parada: Análise de F ( x1 , x2 ,..., xn ) = F ( x) = 0: F ( x( k ) ) max fi ( x( k ) 1i n Análise do Erro absoluto: x( k 1) x( k ) max xik 1 xik 1i n Análise do Erro relativo: x( k 1) x( k ) x ( k 1) max 1i n xik 1 xik . xik 1 Nas expressões acima as fórmulas podem ser simplificadas considerando-se: x( k 1) x( k ) d ( k ) e xik 1 xik dik Exemplo: Resolver o sistema de equações não lineares utilizando o método de Newton com (x0, y0) = (0.5, 0.5) e ε = 0.01. x 2 y 2 1 2 x y 0 Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 94 Exercício: Resolver o sistema de equações não lineares utilizando o método de Newton com (x0, y0) = (1, 5) e ε = (0.01). Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 95 x2 y 2 9 1 x y 3 0 Profa. Adriana Cherri x 0.002654 Solução : y 3.002654 Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 96 Método de Newton Modificado A modificação sobre o Método de Newton consiste em tomar a cada iteração k a matriz J(x0, y0, ..., z0), em vez de J(xk, yk, ..., zk). A partir de uma aproximação inicial (x0, y0, ..., z0), uma sequência de soluções é gerada a partir da solução do sistema linear: rk f1 ( xk , yk ,..., z k ) s f ( x , y ,..., z ) k 2 k k k J ( x0 , y0 , ,..., z0 ) t k f n ( xk , yk ,..., z k ) Desta forma, a matriz Jacobiana é avaliada apenas uma vez e, para todo k, o sistema linear a ser resolvido a cada iteração terá a mesma matriz de coeficientes: J ( x0 , y0 , ,..., z0 ) . Se usarmos a fatoração LU para resolvê-lo, os fatores L e U serão calculados apenas uma vez e, a partir da 2ª iteração, será necessário resolver apenas dois sistemas triangulares para obter os valores de rk, sk, ..., tk. Exemplo: Resolver o sistema de equações não lineares utilizando o método de Newton Modificado com (x0, y0) = (1, 3) e ε = 0.01. y x 2 2 2 x y 9 Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 97 Exercícios 1 Resolva pelo Método de Newton, com ε =10-3, os sistemas a seguir. a. x12 x22 1 1.5 0 com x 2 1 2 3.2 x1 x2 2 b. 3.x12 .x2 x23 4 2.1 0 com x 2 x1 x1.x23 9 2.5 c. ( x1 1) 2 x22 4 0 0 com x 2 x1 ( x2 1) 2 4 2 d. x12 x22 1 1 com x 0 3 x1 x2 0 1 e. x12 4.x1 x22 0 3 0 com x 2 x1 .x2 2.x12 1 2 f. x1 3. ln x1 x22 0 3.5 com x 0 2 2.x1 x1.x2 5.x1 1 0 2.2 g. x12 x22 x32 1 0.5 2 2 0 2.x1 x2 4.x3 0 com x 0.5 2 0.5 3.x1 4.x2 x3 0 x13 2.x2 x3 4 1 2 h. 2.x1 x22 4.x3 1 com x 0 1 2 2 3.x1 4.x2 x3 0 2 Resolva pelo Método de Newton Modificado, com ε =10-3, os sistemas 2, 3, 4 e 5 do exercício anterior. Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista 98 Profa. Adriana Cherri Métodos Numéricos Computacionais Profa. Andréa Vianna Prof. Antonio Balbo Profa Edméa Baptista