UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE MATEMÁTICA DEPARTAMENTO DE MATEMÁTICA PURA E APLICADA Introdução ao Cálculo Numérico 2a. Edição Álvaro Luiz de Bortoli Carolina Cardoso Maria Paula Gonçalves Fachin Rudnei Dias da Cunha Porto Alegre, abril de 2003. Álvaro Luiz de Bortoli é professor adjunto da UFRGS, desempenhando suas atividades junto ao Departamento de Matemática Pura e Aplicada, do Instituto de Matemática, desde 1996. É formado em Engenharia Mecânica pela UFRGS (1987); Mestre em Engenharia Mecânica pela UFSC (1990); e Doutor em Aerodinâmica e Aeroelasticidade pela UFSC e Deutsches Luftund Raumfahrt Institut, Alemanha (1995). Carolina Cardoso é Bacharel em Matemática (ênfase Matemática Aplicada e Computacional) pela UFRGS (1998) e Mestre em Matemática Aplicada pela UFRGS (2001). Maria Paula Gonçalves Fachin é professora adjunta da UFRGS, desempenhando suas atividades junto ao Departamento de Matemática Pura e Aplicada, do Instituto de Matemática, desde 1990. É Licenciada em Matemática pela UFRGS (1986); Mestre em Matemática pela UFRGS (1990); e Doctor of Philosophy in Computer Science pela University of Kent at Canterbury, Reino Unido (1994). Rudnei Dias da Cunha é professor adjunto da UFRGS, desempenhando suas atividades junto ao Departamento de Matemática Pura e Aplicada, do Instituto de Matemática, desde 1994. É Bacharel em Ciências de Computação pela UFRGS (1988) e Doctor of Philosophy in Computer Science pela University of Kent at Canterbury, Reino Unido (1992). Exerceu as funções de programador de computadores e analista de sistemas no Centro de Processamento de Dados da UFRGS (1983-1994). Foi coordenador do Programa de Pós-Graduação em Matemática Aplicada da UFRGS (1999-2000) e atualmente ocupa o cargo de Vice-Diretor do Instituto de Matemática da UFRGS. Sumário 1 Aritmética no Computador 1.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Representação em binário e decimal . . . . . . . . . . . . . . . . . . 1.2.1 Bits, bytes e palavras . . . . . . . . . . . . . . . . . . . . . . . 1.2.2 Conversão entre representações . . . . . . . . . . . . . . . . . 1.3 Representação de números em um computador . . . . . . . . . . . . 1.3.1 Representação de números inteiros . . . . . . . . . . . . . . . 1.3.2 Representação de números reais . . . . . . . . . . . . . . . . . 1.3.2.1 Representação racional de números reais . . . . . . 1.3.2.2 Representação de números reais em ponto-fixo . . . 1.3.2.3 Representação de números reais em ponto-flutuante 1.3.2.4 Tratamento do zero . . . . . . . . . . . . . . . . . . 1.3.3 Caracterização de uma representação . . . . . . . . . . . . . . 1.3.4 Arredondamentos . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.5 Operações aritméticas de ponto-flutuante . . . . . . . . . . . 1.3.5.1 Erros em operações aritméticas de ponto-flutuante . 1.4 Perda de dı́gitos significativos . . . . . . . . . . . . . . . . . . . . . . 1.4.1 Subtração de valores quase idênticos . . . . . . . . . . . . . . 1.4.2 Teorema sobre a perda de precisão . . . . . . . . . . . . . . . 1.5 Condicionamento de um problema . . . . . . . . . . . . . . . . . . . 1.6 Computações estáveis e instáveis . . . . . . . . . . . . . . . . . . . . 1.7 Desastres causados por erros aritméticos no computador . . . . . . . 1.7.1 Falha do sistema de mı́sseis “Patriot” . . . . . . . . . . . . . 1.7.2 Explosão do foguete Ariane 5 . . . . . . . . . . . . . . . . . . 1.8 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6 7 7 7 10 11 12 12 13 13 14 14 16 20 20 22 22 24 25 26 27 27 28 28 2 Cálculo de Raı́zes de Funções Não-Lineares 2.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Método da Bissecção . . . . . . . . . . . . . . . . . . . . . . 2.3 Método da posição falsa . . . . . . . . . . . . . . . . . . . . 2.3.1 Melhorando o método da posição falsa . . . . . . . . 2.3.2 Análise do erro . . . . . . . . . . . . . . . . . . . . . 2.4 Método de Newton-Raphson . . . . . . . . . . . . . . . . . . 2.4.1 Análise do erro . . . . . . . . . . . . . . . . . . . . . 2.5 Derivação numérica . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 O método de Newton-Raphson e as raı́zes complexas 2.6 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 29 30 33 36 37 38 40 41 44 44 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . de f (x) . . . . . 3 Cálculo de Raı́zes de Polinômios 3.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Resultados teóricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Enumeração e localização de raı́zes de polinômios . . . . . . . . . . . . . . . . . . . 3.3.1 Regra de Descartes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2 Regra de Du Gua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.3 Regra da lacuna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.4 Cota de Laguerre-Thibault . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.5 Cota de Fujiwara . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.6 Cota de Kojima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.7 Cota de Cauchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Método de Newton-Viéte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Método de Horner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 Cálculo do quociente e do resto . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.2 Deflação de um polinômio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.3 Calcular a expansão de Taylor de um polinômio . . . . . . . . . . . . . . . . 3.5.3.1 O método de Horner e sua relação com a derivada de p(z) . . . . . 3.5.3.2 O método de Newton-Raphson usado em conjunto com o algoritmo parcial de Horner . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Raı́zes complexas de equações polinomiais . . . . . . . . . . . . . . . . . . . . . . . 3.6.1 Método de Bairstow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Resolução de Sistemas de Equações Lineares 4.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Resolução de Sistemas Triangulares de Equações Lineares . . . . . . . . 4.3 Resolução de Sistemas de Equações Lineares por Eliminação Gaussiana 4.3.1 Dificuldades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.2 Eliminação Gaussiana e a Fatoração LU . . . . . . . . . . . . . . 4.3.3 O Custo Computacional da Fatoração LU . . . . . . . . . . . . . 4.3.4 Resolução de sistemas com múltiplos termos independentes . . . 4.3.4.1 Cálculo da inversa de uma matriz . . . . . . . . . . . . 4.4 Resolução Iterativa de Sistemas de Equações Lineares . . . . . . . . . . 4.4.1 Normas de vetores e de matrizes . . . . . . . . . . . . . . . . . . 4.4.2 Normas de matrizes . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.3 Número de condição de uma matriz . . . . . . . . . . . . . . . . 4.4.4 Erros computacionais e condicionamento . . . . . . . . . . . . . . 4.4.5 Métodos iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.6 Refinamento iterativo . . . . . . . . . . . . . . . . . . . . . . . . 4.4.7 Método iterativo de Jacobi . . . . . . . . . . . . . . . . . . . . . 4.4.8 Método iterativo de Gauss-Seidel . . . . . . . . . . . . . . . . . . 4.4.9 Extrapolação de um método iterativo . . . . . . . . . . . . . . . 4.5 Método do Gradiente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.1 Forma Quadrática . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.2 Descrição do método do Gradiente . . . . . . . . . . . . . . . . . 4.6 Método das Direções-Conjugadas . . . . . . . . . . . . . . . . . . . . . . 4.7 Método dos Gradientes-Conjugados . . . . . . . . . . . . . . . . . . . . . 4.8 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Resolução de Sistemas de Equações 5.1 Introdução . . . . . . . . . . . . . . 5.2 Método de Newton . . . . . . . . . 5.3 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 56 57 60 61 . 61 . 62 . 64 . 65 . 67 . 69 . 70 . 70 . 73 . 74 . 74 . 75 . 76 . 77 . 78 . 80 . 82 . 85 . 86 . 87 . 90 . 94 . 98 . 100 Não-Lineares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 45 45 45 46 46 47 47 48 48 48 48 49 51 51 52 52 53 102 102 102 109 6 Autovalores e Autovetores 6.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Teoremas de limites sobre autovalores . . . . . . . . . . . . . . 6.3 Cálculo de autovalores e autovetores via determinantes . . . . . 6.4 Autovalores de uma matriz tridiagonal simétrica . . . . . . . . 6.5 Métodos para aproximação de autovalores e autovetores . . . . 6.5.1 Método da potência . . . . . . . . . . . . . . . . . . . . 6.5.2 O método da potência com translação da origem . . . . 6.5.3 Método da iteração inversa . . . . . . . . . . . . . . . . 6.5.4 O método da iteração inversa e o quociente de Rayleigh 6.6 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 110 113 115 116 120 120 123 124 126 126 7 Interpolação 7.1 Introdução . . . . . . . . . . . . . . . . . . . 7.2 Interpolação polinomial . . . . . . . . . . . 7.3 Forma de Newton . . . . . . . . . . . . . . . 7.4 Forma de Lagrange . . . . . . . . . . . . . . 7.5 Forma de Newton com diferenças divididas 7.6 Forma de Newton com diferenças simples . 7.7 Interpolação inversa . . . . . . . . . . . . . 7.8 Interpolação por “splines” . . . . . . . . . . 7.9 Estudo do erro na interpolação . . . . . . . 7.9.1 Estimativa para o erro . . . . . . . . 7.10 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 128 129 131 132 134 137 138 139 142 143 144 8 Ajuste de dados experimentais 8.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.2 Mı́nimos quadrados - domı́nio discreto . . . . . . . . . . . . . . . . . 8.3 Ajuste linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.4 Ajuste polinomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.5 Ajustamento por funções não lineares nos parâmetros – linearização 8.5.1 Ajustamento por uma função exponencial . . . . . . . . . . . 8.5.2 Ajustamento por uma função potência . . . . . . . . . . . . . 8.5.3 Ajustamento por uma função hiperbólica . . . . . . . . . . . x . . . . . . . 8.5.4 Ajustamento por uma função do tipo y = a0 +a 1x 1 8.5.5 Ajustamento por uma função do tipo y = a0 +a1 x+a2 x2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 146 148 148 149 150 150 151 151 151 151 8.6 8.7 8.8 8.5.6 Ajustamento por uma função do tipo Escolha do melhor ajuste . . . . . . . . . . Mı́nimos quadrados - domı́nio contı́nuo . . . 8.7.1 Polinômios ortogonais . . . . . . . . Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 y = a eb x+c x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Integração Numérica 9.1 Introdução . . . . . . . . . . . . . . . . . . . . . . 9.2 Integração numérica via interpolação polinomial 9.2.1 Regra do Trapézio . . . . . . . . . . . . . 9.2.2 Método dos Coeficientes a Determinar . . 9.2.3 Regra de Simpson . . . . . . . . . . . . . 9.2.4 Regra de Simpson com exatidão crescente 9.2.5 Mudança do intervalo de integração . . . 9.2.6 Quadratura Gaussiana . . . . . . . . . . . 9.3 Integração de funções mal comportadas . . . . . 9.4 Intervalos de integração infinitos . . . . . . . . . 9.5 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 151 154 157 159 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 161 161 162 165 166 167 168 169 173 174 174 10 Solução Numérica de Equações Diferenciais Ordinárias 10.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2 Problema de Valor Inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.1 Existência da Solução . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.2 Erros na solução numérica . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.3 Método da Série de Taylor . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.3.1 Vantagens e desvantagens . . . . . . . . . . . . . . . . . . . . 10.2.4 Método de Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.5 Método de Heum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.5.1 Erro de truncamento para o método de Heum . . . . . . . . 10.2.6 Métodos de Runge-Kutta . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.6.1 Método modificado de Euler . . . . . . . . . . . . . . . . . . 10.2.6.2 Método de Runge-Kutta de 4a Ordem . . . . . . . . . . . . . 10.2.6.3 Erros do método de Runge-Kutta . . . . . . . . . . . . . . . 10.2.6.4 Avaliação da Função versus Ordem do Método Runge-Kutta 10.2.6.5 Método Adaptativo de Runge-Kutta-Fehlberg . . . . . . . . 10.2.7 Métodos de passo múltiplo . . . . . . . . . . . . . . . . . . . . . . . . 10.2.7.1 Convergência, Estabilidade e Consistência . . . . . . . . . . . 10.2.7.2 Erros de truncamento . . . . . . . . . . . . . . . . . . . . . . 10.2.7.3 Erros de truncamento globais . . . . . . . . . . . . . . . . . . 10.2.8 Sistemas de Equações Diferenciais Ordinárias . . . . . . . . . . . . . . 10.2.8.1 Método da Série de Taylor . . . . . . . . . . . . . . . . . . . 10.2.8.2 Método de Runge-Kutta . . . . . . . . . . . . . . . . . . . . 10.2.9 Solução via decomposição em autovalores e autovetores . . . . . . . . 10.2.9.1 O expoente de uma matriz . . . . . . . . . . . . . . . . . . . 10.2.10 Equações rı́gidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3 Problemas de Valor de Fronteira . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.1 Método do disparo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.2 Método de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.3 Método da colocação . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.4 Derivação numérica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.5 Solução por diferenças-finitas . . . . . . . . . . . . . . . . . . . . . . . 10.3.5.1 O caso linear . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 178 180 181 181 181 183 183 184 185 186 187 187 187 187 188 189 192 193 193 195 196 196 197 198 199 200 201 203 203 205 208 208 209 11 Solução Numérica de Equações Diferenciais Parciais 11.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Equações parabólicas . . . . . . . . . . . . . . . . . . . 11.2.1 Método explı́cito . . . . . . . . . . . . . . . . . 11.2.2 Método de Crank-Nicolson . . . . . . . . . . . 11.2.2.1 Aproximação ponderada . . . . . . . . 11.2.3 Condições de fronteira . . . . . . . . . . . . . . 11.3 Equações diferenciais parciais elı́pticas . . . . . . . . . 11.4 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 212 213 213 216 217 218 219 222 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .