Matemática Numérica III
Ajude a manter o site livre, gratuito e sem propagandas. Colabore!
3.1 Sistemas Não-Lineares
Consideramos o seguinte problema: dada a função encontrar tal que
Salvo explicitado ao contrário, assumiremos que , i.e. é uma função continuamente diferenciável no domínio computacional .
Vamos, denotar por a matriz jacobiana4343endnote: 43Carl Gustav Jakob Jacobi, 1804 - 1851, matemático alemão. Fonte: Wikipédia: Carl Gustav Jakob Jacobi. da F com
|
|
|
(3.2) |
onde e .
3.1.1 Método de Newton
A iteração básica do método de Newton4444endnote: 44Isaac Newton, 1642 - 1727, matemático, físico, astrônomo, teólogo e autor inglês. Fonte: Wikipédia: Isaac Newton. para sistemas de equações consiste em: dada uma aproximação inicial ,
|
|
|
(3.3) |
|
|
|
(3.4) |
para até que um critério de parada seja satisfeito.
Observação 3.1.1.(Convergência)
Para suficientemente próximo da solução , o método de Newton é quadraticamente convergente. Mais precisamente, este resultado de convergência local requer que seja não singular e que seja Lipschitz4545endnote: 45Rudolf Otto Sigismund Lipschitz, 1832 - 1903, matemático alemão. Fonte: Wikipédia. contínua. Consulte [Quarteroni2007a, Seção 7.1] para mais detalhes.
Exemplo 3.1.1.
Consideramos a equação de Burgers4646endnote: 46Jan Burgers, 1895 - 1981, físico neerlandês. Fonte: Wikipédia: Jan Burgers.
|
|
|
(3.5) |
com , condição inicial
e condições de contorno de Dirichlet4747endnote: 47Johann Peter Gustav Lejeune Dirichlet, 1805 - 1859, matemático alemão. Fonte: Wikipédia: Johann Peter Gustav Lejeune Dirichlet. homogêneas
|
|
|
(3.7) |
Aplicando o método de Rothe4848endnote: 48Erich Hans Rothe, 1895 - 1988, matemático alemão. Fonte: Wikipédia. com aproximação de Euler4949endnote: 49Leonhard Paul Euler, 1707-1783, matemático e físico suíço. Fonte: Wikipédia: Ronald Fisher. implícita, obtemos
|
|
|
|
(3.8) |
|
|
|
|
onde é o passo no tempo. Agora, aplicamos diferenças finitas para obter
|
|
|
|
(3.9) |
|
|
|
|
|
|
|
|
onde, , e é o tamanho da malha.
Rearranjando os termos e denotando , , obtemos o seguinte problema discreto
|
|
|
(3.10) |
|
|
|
|
|
|
|
|
|
(3.11) |
|
|
|
(3.12) |
sendo , e .
Este problema pode ser reescrito como segue: para cada , encontrar , tal que
onde , e
|
|
|
(3.14) |
|
|
|
|
|
|
(3.15) |
|
|
|
(3.16) |
A matriz jacobiana associada contém
|
|
|
(3.17) |
|
|
|
(3.18) |
|
|
|
(3.19) |
|
|
|
(3.20) |
|
|
|
(3.21) |
|
|
|
(3.22) |
|
|
|
(3.23) |
|
|
|
(3.24) |
Implemente este esquema numérico!
Exercícios
E. 3.1.1.
Considere o problema discreto apresentado no Exemplo 3.1.1 para diferentes valores do coeficiente de difusão , . Simule o problema com cada uma das seguintes estratégias e as compare quanto ao desempenho computacional.
-
a)
Simule-o aplicando o Método de Newton com o solver linear npla.solve.
-
b)
Observe que a jacobiana é uma matriz tridiagonal. Simule o problema aplicando o Método de Newton com o solver linear npla.solve_banded.
-
c)
Aloque a jacobiana como uma matriz esparsa. Então, simule o problema aplicando o Método de Newton com solver linear adequado para matrizes esparsas.
E. 3.1.2.
Desenvolva um esquema upwind para simular a equação de Burgers do Exemplo 3.1.1.
3.1.2 Método Tipo Newton
Existem várias modificações do Método de Newton5050endnote: 50Isaac Newton, 1642 - 1727, matemático, físico, astrônomo, teólogo e autor inglês. Fonte: Wikipédia: Isaac Newton. que buscam reduzir o custo computacional. Há estratégias para simplificar as computações da matriz jacobiana5151endnote: 51Carl Gustav Jakob Jacobi, 1804 - 1851, matemático alemão. Fonte: Wikipédia: Carl Gustav Jakob Jacobi. e para reduzir o custo nas computações das atualizações de Newton.
Atualização Cíclica da Matriz Jacobiana
Geralmente, ao simplificarmos a matriz jacobina ou aproximarmos a atualização de Newton , perdemos a convergência quadrática do método (consulte a Observação 3.1.1). A ideia é, então, buscar uma convergência pelo menos super-linear, i.e.
|
|
|
(3.25) |
com quando . Aqui, . Se a convergência é superlinear, então podemos usar a seguinte aproximação
ou, equivalentemente,
|
|
|
(3.27) |
Isso mostra que podemos acompanhar a convergência das iterações pelo fator
Ao garantirmos , deveremos ter uma convergência superlinear.
Vamos, então, propor o seguinte método tipo Newton de atualização cíclica da matriz jacobiana.
-
1.
-
2.
-
3.
-
4.
-
5.
Para até critério de convergência:
-
(a)
-
(b)
-
(c)
E. 3.1.3.
Implemente uma versão do método tipo Newton apresentado acima e aplique-o para simular o problema discutido no Exemplo 3.1.1 para . Faça uma implementação com suporte para matrizes esparsas.
Envie seu comentário
Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!

Este texto é disponibilizado nos termos da Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional. Ícones e elementos gráficos podem estar sujeitos a condições adicionais.