UNIVERSIDADE FEDERAL DE SANTA CATARINADEPARTAMENTO DE AUTOMACAO E SISTEMAS
CALCULO NUMERICO PARA CONTROLE E AUTOMACAOVersao preliminar
Eduardo CamponogaraEugenio de Bona Castelan Neto
Florianopolis, Agosto de 2008
Agradecimentos
Agradeco os academicos Tiago Villaca Vianna Ferreira (Engenharia deControle e Automacao Industrial) e Maurıcio Rangel Guimaraes Serra (Mes-trado em Engenharia Eletrica) pelo auxılio na transcricao das notas de aulaem LATEX. Augusto Marasca de Conto (Mestrado em Engenharia Eletrica) re-alizou estagio de docencia em Calculo Numerico, deixando suas contribuicoesna parte de fatoracao LU de matrizes.
Agradecimentos especiais vao para os monitores Felipe Lucci e ViniciusStrey que muito se empenharam na disciplina, contribuindo ao texto, auxili-ando os alunos e nao medindo esforcos para facilitar a aprendizagem.
i
Sumario
1 Introducao ao Estudo da Matematica Numerica 1
1.1 Natureza e Objetivos da Matematica Numerica . . . . . . . . 1
1.2 Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 O Problema da Ordenacao . . . . . . . . . . . . . . . . 2
1.3 Algoritmos Numericos . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1 Inexistencia do Erro Logico . . . . . . . . . . . . . . . 5
1.3.2 Inexistencia do Erro Operacional . . . . . . . . . . . . 6
1.3.3 Quantidade Finita de Calculos . . . . . . . . . . . . . . 6
1.3.4 Existencia de um Criterio de Exatidao . . . . . . . . . 8
1.3.5 Independencia da Maquina . . . . . . . . . . . . . . . . 8
1.3.6 Com Precisao Infinita, os Limites de Erro Devem Con-vergir para Zero . . . . . . . . . . . . . . . . . . . . . . 8
1.3.7 Eficiencia . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Passos para a Resolucao de um Problema . . . . . . . . . . . . 9
1.4.1 Referencias . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Introducao a Aritmetica de Maquina 11
2.1 O Sistema de Ponto Flutuante . . . . . . . . . . . . . . . . . . 11
2.1.1 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2 Arredondamentos . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3 Erros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4 Dıgitos Significativos Exatos . . . . . . . . . . . . . . . . . . . 20
2.4.1 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.5 Precisao e Exatidao de Maquinas Digitais . . . . . . . . . . . 21
2.6 Instabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.6.1 Instabilidade dos Algoritmos . . . . . . . . . . . . . . . 23
2.7 Instabilidade de Problemas . . . . . . . . . . . . . . . . . . . . 27
2.8 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
iii
3 Resolucao de Equacoes Nao-Lineares 333.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.1.1 Exemplo de Aplicacao . . . . . . . . . . . . . . . . . . 343.2 Ordem de Convergencia . . . . . . . . . . . . . . . . . . . . . 363.3 Metodos Iterativos para Resolucao de Equacoes . . . . . . . . 373.4 Metodos de Quebra . . . . . . . . . . . . . . . . . . . . . . . . 38
3.4.1 Metodo da Biseccao . . . . . . . . . . . . . . . . . . . 383.4.2 Metodo da Falsa Posicao . . . . . . . . . . . . . . . . . 44
3.5 Metodos de Ponto Fixo . . . . . . . . . . . . . . . . . . . . . . 483.5.1 Metodo da Iteracao Linear . . . . . . . . . . . . . . . . 523.5.2 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.6 Metodo de Newton . . . . . . . . . . . . . . . . . . . . . . . . 563.6.1 Exemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . 573.6.2 Exemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . 573.6.3 Detalhes do Metodo de Newton . . . . . . . . . . . . . 583.6.4 Convergencia do Metodo de Newton . . . . . . . . . . 593.6.5 Problemas com o Metodo de Newton . . . . . . . . . . 613.6.6 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.7 Metodos de Multiplos Passos . . . . . . . . . . . . . . . . . . . 623.7.1 Metodo das Secantes . . . . . . . . . . . . . . . . . . . 623.7.2 Breve Introducao a Interpolacao Polinomial . . . . . . 653.7.3 Metodo de Muller . . . . . . . . . . . . . . . . . . . . . 68
3.8 Aceleracao de Aitken . . . . . . . . . . . . . . . . . . . . . . . 693.9 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4 Resolucao de Sistemas de Equacoes Lineares 774.1 Revisao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774.2 Erros Computacionais na Solucao de Ax = b . . . . . . . . . . 84
4.2.1 Tipos de Algoritmos . . . . . . . . . . . . . . . . . . . 844.2.2 Tipos de Erros Computacionais nos Algoritmos . . . . 85
4.3 Etapas da Solucao de Sistemas Lineares . . . . . . . . . . . . 854.3.1 Primeira Etapa: Descomplexificacao . . . . . . . . . . 864.3.2 Segunda Etapa: Os Algoritmos e Suas Estruturas . . . 89
4.4 Metodo de Eliminacao de Gauss . . . . . . . . . . . . . . . . . 894.4.1 Exemplo 1 (Metodo de Gauss) . . . . . . . . . . . . . . 924.4.2 Exemplo 2 (Metodo de Gauss) . . . . . . . . . . . . . . 944.4.3 Exemplo 3 (Metodo de Gauss) . . . . . . . . . . . . . . 95
4.5 Instabilidade Numerica . . . . . . . . . . . . . . . . . . . . . . 964.5.1 Exemplo de Instabilidade Numerica . . . . . . . . . . . 96
4.6 Algoritmo de Gauss com Pivotamento . . . . . . . . . . . . . . 974.7 Condicionamento de uma Matriz . . . . . . . . . . . . . . . . 99
iv
4.7.1 Exemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . 994.7.2 Exemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . 994.7.3 Exemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . 1004.7.4 Visao Geometrica do Condicionamento . . . . . . . . . 1004.7.5 Calculo do Condicionamento de uma Matriz . . . . . . 1004.7.6 Exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . 1044.7.7 Propriedades da Condicionamento de Matrizes . . . . . 104
4.8 Refinamento da Solucao para o Metodo de Gauss . . . . . . . 1054.8.1 Descricao do Metodo . . . . . . . . . . . . . . . . . . . 1054.8.2 Geracao de Aproximacoes . . . . . . . . . . . . . . . . 1054.8.3 Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . 1084.8.4 Exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . 1084.8.5 Analise do Condicionamento Atraves do Refinamento . 109
4.9 Equacionamento Matricial: Eliminacao Gaussiana de FormaCompacta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.10 Decomposicao LU . . . . . . . . . . . . . . . . . . . . . . . . . 1144.10.1 Substituicao Direta . . . . . . . . . . . . . . . . . . . . 1144.10.2 Retrosubstituicao . . . . . . . . . . . . . . . . . . . . . 1154.10.3 Obtendo LU sem Permutacoes . . . . . . . . . . . . . . 1164.10.4 Problemas do Nao-Pivoteamento . . . . . . . . . . . . 1184.10.5 Representando as Matrizes LU em Uma Matriz . . . . 1184.10.6 O Vetor de Pivoteamento . . . . . . . . . . . . . . . . 1184.10.7 Decomposicao LU com Pivoteamento . . . . . . . . . . 1194.10.8 Metodo de Crout . . . . . . . . . . . . . . . . . . . . . 121
4.11 Decomposicao de Cholesky . . . . . . . . . . . . . . . . . . . . 1234.12 Metodo de Gauss-Jordan . . . . . . . . . . . . . . . . . . . . . 1254.13 Metodo de Gauss-Jordan . . . . . . . . . . . . . . . . . . . . . 1274.14 Singular Value Decomposition (SVD) . . . . . . . . . . . . . . 128
4.14.1 SVD de uma Matriz Quadrada . . . . . . . . . . . . . 1294.14.2 Determinando o Espaco Gerado e o Espaco Nulo . . . 1304.14.3 Exemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . 1304.14.4 Exemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . 1314.14.5 Consideracoes Finais sobre Decomposicao SVD . . . . 1324.14.6 Visao Geometrica da Decomposicao SVD . . . . . . . . 1324.14.7 Analise dos Componentes Principais . . . . . . . . . . 135
4.15 Metodos Iterativos . . . . . . . . . . . . . . . . . . . . . . . . 1404.15.1 Metodo de Jacobi . . . . . . . . . . . . . . . . . . . . . 1414.15.2 Metodo de Gauss-Seidel . . . . . . . . . . . . . . . . . 1434.15.3 Visao Geometrica do Metodo Iterativo . . . . . . . . . 1444.15.4 Condicoes de Convergencia dos Metodos Iterativos . . 147
4.16 Metodo do Gradiente Conjugado . . . . . . . . . . . . . . . . 147
v
4.17 Aplicacoes de Sistemas de Equacoes Lineares . . . . . . . . . . 1514.17.1 Interpolacao com Polinomios . . . . . . . . . . . . . . . 1514.17.2 Estruturas Elasticas Lineares . . . . . . . . . . . . . . 1524.17.3 Exemplo: n=1 . . . . . . . . . . . . . . . . . . . . . . 153
4.18 Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1564.19 Excercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
5 Sistemas de Equacoes Nao-Lineares, Otimizacao e MınimosQuadrados 1655.1 Sistemas de Equacoes Nao-Lineares . . . . . . . . . . . . . . . 165
5.1.1 Matriz de Derivadas . . . . . . . . . . . . . . . . . . . 1665.1.2 Linearizacao . . . . . . . . . . . . . . . . . . . . . . . . 1665.1.3 Aplicacao: Circuito Estatico Nao-Linear . . . . . . . . 1675.1.4 Algoritmo de Newton . . . . . . . . . . . . . . . . . . . 1695.1.5 Convergencia do Metodo de Newton . . . . . . . . . . 171
5.2 Minimizacao Irrestrita . . . . . . . . . . . . . . . . . . . . . . 1725.2.1 Exemplos . . . . . . . . . . . . . . . . . . . . . . . . . 1735.2.2 Condicoes de Otimalidade para Problemas com uma
Variavel . . . . . . . . . . . . . . . . . . . . . . . . . . 1735.3 Minimizacao de Funcoes de uma Variavel: Metodo de Newton 178
5.3.1 Interpretacao de uma Iteracao . . . . . . . . . . . . . . 1785.3.2 Uma Segunda Interpretacao . . . . . . . . . . . . . . . 179
5.4 Metodo de Newton com Retrocesso (“Backtracking”) paraFuncoes Convexas . . . . . . . . . . . . . . . . . . . . . . . . . 1805.4.1 Convergencia do Metodo de Newton com Retrocesso . 181
5.5 Algoritmo de Newton para Minimizacao de Funcoes Nao Con-vexas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
5.6 Mınimos Quadrados e Ajuste de Curvas . . . . . . . . . . . . . 1825.6.1 Solucao por Mınimos Quadrados . . . . . . . . . . . . 1835.6.2 Ajuste de Curvas . . . . . . . . . . . . . . . . . . . . . 1845.6.3 Ajuste de Curvas: Um Problema de Mınimos Quadrados1855.6.4 Exemplo: Ajuste de Polinomios . . . . . . . . . . . . . 1855.6.5 Exemplo: Ajuste de Curva . . . . . . . . . . . . . . . . 1865.6.6 Identificacao de Sistemas . . . . . . . . . . . . . . . . . 1865.6.7 Estimacao por Meio de Mınimos Quadrados . . . . . . 1905.6.8 Identificacao do Sistema Motor Taco-Gerador . . . . . 1905.6.9 Resolucao de Problemas de Mınimos Quadrados . . . . 195
5.7 Sistemas de Equacoes Lineares Sub-Dimensionados . . . . . . 2015.7.1 Interpretacao Geometrica . . . . . . . . . . . . . . . . 2025.7.2 Calculando a Solucao de Menor Norma . . . . . . . . . 2025.7.3 Problemas de Minimizacao de Normas . . . . . . . . . 203
vi
5.7.4 Sistemas com Mais Variaveis do que Equacoes . . . . . 204
5.8 Mınimos Quadrados Nao-linear . . . . . . . . . . . . . . . . . 210
5.9 Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
5.10 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
6 Revisao de Polinomios 219
6.1 Enumeracao de Raızes . . . . . . . . . . . . . . . . . . . . . . 221
6.1.1 Enumeracao das Raızes de Uma Equacao Polinomial . 221
6.1.2 Enumeracao das Raızes Complexas . . . . . . . . . . . 222
6.2 Localizacao das Raızes . . . . . . . . . . . . . . . . . . . . . . 225
6.2.1 Localizacao das Raızes Reais de Uma Equacao Polinomial225
6.3 Localizacao das Raızes Complexas de Uma Equacao Polinomial227
6.4 Separacao das Raızes de Uma Equacao Polinomial . . . . . . . 229
6.5 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
7 Integracao Numerica 233
7.1 O Problema da Integracao Numerica . . . . . . . . . . . . . . 233
7.2 Objetivo da Integracao Numerica . . . . . . . . . . . . . . . . 234
7.2.1 Filosofias Basicas . . . . . . . . . . . . . . . . . . . . . 234
7.3 Formulas Newtonianas . . . . . . . . . . . . . . . . . . . . . . 236
7.3.1 Consideracoes Iniciais . . . . . . . . . . . . . . . . . . . 236
7.3.2 Regra dos Retangulos . . . . . . . . . . . . . . . . . . . 236
7.3.3 Regra dos Trapezios . . . . . . . . . . . . . . . . . . . 238
7.3.4 Regra de Simpson . . . . . . . . . . . . . . . . . . . . . 239
7.3.5 Formula Geral das Regras Newtonianas . . . . . . . . . 241
7.3.6 Exemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . 242
7.3.7 Exemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.3.8 Exemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . 244
7.4 Estimativas de Erros . . . . . . . . . . . . . . . . . . . . . . . 244
7.4.1 Erro de Truncamento na Regra dos Trapezios Simples . 245
7.4.2 Erro de Truncamento na Regra dos Trapezios Composta246
7.4.3 Estimacao Numerica do Erro de Truncamento da Re-gra dos Trapezios . . . . . . . . . . . . . . . . . . . . . 248
7.5 Quadratura Gaussiana . . . . . . . . . . . . . . . . . . . . . . 249
7.5.1 Regra de Gauss de Primeira Ordem . . . . . . . . . . . 251
7.5.2 Regra de Gauss de Segunda Ordem . . . . . . . . . . . 251
7.5.3 Exemplo de Aplicacao . . . . . . . . . . . . . . . . . . 252
7.5.4 Quadratura de Ordem Superior . . . . . . . . . . . . . 254
7.6 Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
7.7 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
vii
8 Resolucao Numerica de Equacoes Diferenciais Ordinarias 2618.1 Modelagem com Equacoes Diferenciais . . . . . . . . . . . . . 262
8.1.1 Circuito RC . . . . . . . . . . . . . . . . . . . . . . . . 2628.1.2 Circuito RLC . . . . . . . . . . . . . . . . . . . . . . . 2638.1.3 Supensao de Automovel (Simplificada) . . . . . . . . . 2668.1.4 Sistema de Massas Acopladas . . . . . . . . . . . . . . 2688.1.5 Motor de Corrente Contınua . . . . . . . . . . . . . . . 2698.1.6 Satelite em Orbita . . . . . . . . . . . . . . . . . . . . 2708.1.7 Pendulo Invertido . . . . . . . . . . . . . . . . . . . . . 272
8.2 Exemplos de Equacoes Diferenciais . . . . . . . . . . . . . . . 2778.3 Problema de Valor Inicial . . . . . . . . . . . . . . . . . . . . 2788.4 Sistemas de Equacoes Diferenciais . . . . . . . . . . . . . . . . 2798.5 Equacoes de Diferencas . . . . . . . . . . . . . . . . . . . . . . 2808.6 Metodo de Euler . . . . . . . . . . . . . . . . . . . . . . . . . 280
8.6.1 Exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . 2828.6.2 O Algoritmo de Euler . . . . . . . . . . . . . . . . . . . 283
8.7 Metodo de Euler para Sistemas de Equacoes . . . . . . . . . . 2838.8 Metodos Baseados na Serie de Taylor . . . . . . . . . . . . . . 284
8.8.1 Exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . 2858.9 Metodo de Runge-Kutta . . . . . . . . . . . . . . . . . . . . . 286
8.9.1 Metodo de Runge-Kutta de Segunda Ordem . . . . . . 2868.10 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
A Fundamentos Matematicos 297A.1 Limites e Continuidade . . . . . . . . . . . . . . . . . . . . . . 297A.2 Diferenciacao . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
A.2.1 Aplicacao de Diferenciacao . . . . . . . . . . . . . . . . 302A.3 Teorema do Valor Medio . . . . . . . . . . . . . . . . . . . . . 303A.4 Maximos e Mınimos . . . . . . . . . . . . . . . . . . . . . . . 304A.5 Introducao a Equacoes Diferenciais . . . . . . . . . . . . . . . 304A.6 Vetores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
A.6.1 Produto Interno . . . . . . . . . . . . . . . . . . . . . . 312A.6.2 Projecoes . . . . . . . . . . . . . . . . . . . . . . . . . 314A.6.3 Produto Cruzado . . . . . . . . . . . . . . . . . . . . . 316
A.7 Calculo Vetorial . . . . . . . . . . . . . . . . . . . . . . . . . . 317A.8 Funcoes de Multiplas Variaveis . . . . . . . . . . . . . . . . . 319
A.8.1 Exemplos . . . . . . . . . . . . . . . . . . . . . . . . . 319A.8.2 Superfıcies . . . . . . . . . . . . . . . . . . . . . . . . . 319A.8.3 Elipsoide . . . . . . . . . . . . . . . . . . . . . . . . . . 319A.8.4 Derivadas Parciais . . . . . . . . . . . . . . . . . . . . 320A.8.5 Diferenciacao e Gradiente . . . . . . . . . . . . . . . . 321
viii
A.9 Conversao Entre Bases . . . . . . . . . . . . . . . . . . . . . . 321A.9.1 Conversao de Numeros Inteiros . . . . . . . . . . . . . 321A.9.2 Conversao de Numeros Puramente Fracionarios . . . . 322A.9.3 Conversao de Numeros com Parte Fracionaria e Parte
Inteira . . . . . . . . . . . . . . . . . . . . . . . . . . . 323A.9.4 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . 324
A.10 Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
B Exemplos de Codigo Matlab 325B.1 Capıtulo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
B.1.1 Figura 3.2 . . . . . . . . . . . . . . . . . . . . . . . . . 325B.1.2 Metodo de Ponto Fixo para Funcao f(x) = x2/10−x+1326B.1.3 Algoritmo da Biseccao . . . . . . . . . . . . . . . . . . 326
C Exercıcios Resolvidos 329
ix
Lista de Figuras
1.1 Algoritmo de Ordenacao . . . . . . . . . . . . . . . . . . . . . 31.2 Exemplo de funcao para a qual o algoritmo de Newton pode
iterar indefinidamente . . . . . . . . . . . . . . . . . . . . . . 71.3 Sequencia de iterandos gerados pelo algoritmo de Newton. . . 81.4 Passos para solucao de um problema. . . . . . . . . . . . . . 10
2.1 Elementos do sistema de ponto flutuante F = F (2, 3,−1, 2). . 152.2 Ilustracao de equilıbrio estavel e instavel. . . . . . . . . . . . 28
3.1 Circuito eletrico com componente nao-linear. . . . . . . . . . 353.2 Numero de zeros para varias funcoes. . . . . . . . . . . . . . . 353.3 Dificuldades com criterios de convergencia. . . . . . . . . . . 383.4 Ilustracao do comportamento do algoritmo da biseccao . . . . 393.5 Funcao f(x) = e−x − x. . . . . . . . . . . . . . . . . . . . . . . 413.6 Dificuldade na obtencao do intervalo inicial . . . . . . . . . . . 413.7 Raızes do polinomio caracterıstico p(λ) = λ4−λ3+λ−5λ2+4
de A. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.8 Ilustracao do metodo da falsa posicao . . . . . . . . . . . . . . 453.9 Grafico da funcao f(x) = x4 − 14x2 + 24x− 10 . . . . . . . . . 473.10 Iteracoes 1, 2, 3 e 4 do metodo da falsa posicao . . . . . . . . 473.11 Iteracoes 5, 6, 7 e 8 do metodo da falsa posicao . . . . . . . . 483.12 Convergencia oscilante. . . . . . . . . . . . . . . . . . . . . . . 523.13 Convergencia monotonica. . . . . . . . . . . . . . . . . . . . . 533.14 Divergencia oscilante. . . . . . . . . . . . . . . . . . . . . . . . 533.15 Divergencia monotonica. . . . . . . . . . . . . . . . . . . . . . 543.16 Exemplo de sequencia de iterandos de um processo iterativo. . 553.17 Metodo de ponto fixo para raiz de f(x) = x− 2 sin(x). . . . . 563.18 Ilustracao do metodo de Newton . . . . . . . . . . . . . . . . . 583.19 Exemplo onde o metodo de Newton entre em laco infinito. . . 613.20 Exemplo onde ocorre divergencia do metodo de Newton. . . . 623.21 Ilustracao do metodo das secantes. . . . . . . . . . . . . . . . 633.22 Iteracoes 1, 2, 3 e 4 do metodo das secantes . . . . . . . . . . 65
xi
3.23 Iteracoes 5, 6, 7 e 8 do metodo das secantes . . . . . . . . . . 663.24 Ilustracao de interpolacao polinomial . . . . . . . . . . . . . . 673.25 Interpolacao da curva f(x) com um polinomio de 2o grau p2(x)
que atravessa os pontos (x0, f(x0)), (x1, f(x1)) e (x2, f(x2)) . . 703.26 Porta semi-circular . . . . . . . . . . . . . . . . . . . . . . . . 743.27 Reservatorio tipo semiesfera. . . . . . . . . . . . . . . . . . . . 75
4.1 Ilustracao dos conceitos de espaco gerado e espaco nulo deuma matriz A . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.2 Ilustracao das normas ‖ · ‖∞, ‖ · ‖2 e ‖ · ‖1. . . . . . . . . . . 824.3 Calculos envolvidos na solucao de sistemas de equacoes linea-
res. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864.4 Exemplo de circuito eletrico com elementos lineares. . . . . . 884.5 Exemplo de circuito eletrico RLC. . . . . . . . . . . . . . . . 894.6 Componentes de algoritmos diretos. . . . . . . . . . . . . . . 904.7 Componentes de algoritmos iterativos. . . . . . . . . . . . . . 914.8 Ilustracao da solucao S1 do sistema (4.11) e da solucao S2 do
sistema (4.12). . . . . . . . . . . . . . . . . . . . . . . . . . . 1014.9 Sistema sem solucao. . . . . . . . . . . . . . . . . . . . . . . 1014.10 Sistema mal-condicionado. . . . . . . . . . . . . . . . . . . . 1024.11 Sistema bem-condicionado. . . . . . . . . . . . . . . . . . . . 1024.12 Algoritmo de refinamento. . . . . . . . . . . . . . . . . . . . . 1074.13 Avaliacao empırica de sistema bem-condicionado atraves do
metodo de refinamento. . . . . . . . . . . . . . . . . . . . . . . 1104.14 Avaliacao empırica de sistema mais ou menos mal-
condicionado atraves do metodo de refinamento. . . . . . . . . 1114.15 Avaliacao empırica de sistema mal-condicionado atraves do
metodo de refinamento. . . . . . . . . . . . . . . . . . . . . . . 1114.16 Transformacao de esferas em elipsoides. . . . . . . . . . . . . . 1334.17 Ilustracao da transformacao induzida por uma matriz A
simetrica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1344.18 Ilustracao da transformacao induzida por uma matriz A
simetrica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1344.19 Ilustracao da transformacao dada por uma matriz A que gera
rotacoes e mudancas em escala. . . . . . . . . . . . . . . . . . 1364.20 Regressao linear entre duas variaveis. . . . . . . . . . . . . . . 1374.21 Translacao do centroide para a origem. . . . . . . . . . . . . . 1384.22 Rotacao do eixo x em torno da origem. . . . . . . . . . . . . . 1394.23 Pontos amostrais para analise de componentes principais. . . . 1424.24 Visao geometrica do processo iterativo de Gauss-Seidel, caso
convergente. . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
xii
4.25 Visao geometrica do processo iterativo de Gauss-Seidel, casodivergente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
4.26 Exemplo de dados para interpolacao com polinomios. . . . . 151
4.27 Exemplo de estrutura. . . . . . . . . . . . . . . . . . . . . . . 152
4.28 Exemplo de estrutura com apenas um vertice . . . . . . . . . 153
4.29 Exemplo de estrutura com apenas um vertice e carga nao nula 154
4.30 Forcas internas as barras . . . . . . . . . . . . . . . . . . . . . 155
4.31 Forcas internas as barras . . . . . . . . . . . . . . . . . . . . . 155
4.32 Forcas que atuam no no . . . . . . . . . . . . . . . . . . . . . 156
4.33 Sistema de trelicas. O desenho nao esta em escala. (Sx, Sy) =(2,−2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
5.1 Circuito eletrico com componentes nao-lineares . . . . . . . . . 168
5.2 Ilustracao das curvas de nıvel de duas funcoes nao lineares . . 171
5.3 Ilustracao de dois radares que detectam a distancia ate umaaeronave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
5.4 Ilustracao de mınimos locais e globais de uma funcao f(x) . . 173
5.5 Ilustracao de funcao convexa: f(z) > f(x)+ f ′(x)(z−x) paratodo x, z ∈ R. . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
5.6 Visao geometrica do metodo de Newton aplicado ao problemaf ′(x) = 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
5.7 Ilustracao grafica das funcoes f(x) e f ′(x) . . . . . . . . . . . 180
5.8 Interpretacao geometrica do metodo de Newton para mini-mizacao de funcoes convexas . . . . . . . . . . . . . . . . . . . 181
5.9 Problemas do metodo de Newton aplicado a minimizacao defuncoes nao convexas. . . . . . . . . . . . . . . . . . . . . . . . 183
5.10 n = 5 e m = 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
5.11 n = 15 e m = 17 . . . . . . . . . . . . . . . . . . . . . . . . . 187
5.12 n = 5 e m = 65 . . . . . . . . . . . . . . . . . . . . . . . . . . 188
5.13 n = 15 e m = 65 . . . . . . . . . . . . . . . . . . . . . . . . . 188
5.14 Exemplo de sistema caixa-preta . . . . . . . . . . . . . . . . . 189
5.15 Exemplo de entradas e saıdas de um sistema . . . . . . . . . . 189
5.16 Motor taco-gerador. . . . . . . . . . . . . . . . . . . . . . . . . 191
5.17 Motor taco-gerador. . . . . . . . . . . . . . . . . . . . . . . . . 192
5.18 Modelo de predicao y(t) obtido com a equacao (5.6) e n = 3.O vetor de erros e = y(t)− y(t) tem norma ‖e‖ = 118.5214. . 193
5.19 Modelo de predicao y(t) obtido com a equacao (5.6) e n = 10.O vetor de erros e = y(t)− y(t) tem norma ‖e‖ = 107.4303. . 194
5.20 Modelo de predicao y(t) obtido com a equacao (5.8) e n = 3.O vetor de erros e = y(t)− y(t) tem norma ‖e‖ = 0.5495. . . . 195
xiii
5.21 Modelo de predicao y(t) obtido com a equacao (5.8) e n = 10.O vetor de erros e = y(t)− y(t) tem norma ‖e‖ = 0.4778. . . . 196
5.22 Ilustracao geometrica do problema de mınimos quadrados . . . 1975.23 Ilustracao geometrica do problema de mınimos quadrados . . . 1985.24 Interpretacao geometrica do problema de minimizacao de norma2025.25 Bloco de massa . . . . . . . . . . . . . . . . . . . . . . . . . . 2055.26 Exemplo de velocidade em funcao do tempo. . . . . . . . . . . 2075.27 Deslocamento da massa . . . . . . . . . . . . . . . . . . . . . 2075.28 Velocidade da massa . . . . . . . . . . . . . . . . . . . . . . . 2085.29 Forca aplicada a massa no fim do perıodo . . . . . . . . . . . . 2085.30 Forca de menor norma aplicada a massa ao longo do intervalo 2095.31 Deslocamento da massa . . . . . . . . . . . . . . . . . . . . . 2095.32 Velocidade da massa . . . . . . . . . . . . . . . . . . . . . . . 2105.33 Sistema fısico com dois blocos sujeitos a forcas horizontais . . 2135.34 Bloco de massa . . . . . . . . . . . . . . . . . . . . . . . . . . 214
6.1 Multiplicidade de raızes . . . . . . . . . . . . . . . . . . . . . 2256.2 Localizacao de raızes . . . . . . . . . . . . . . . . . . . . . . . 226
7.1 Comportamento de integrais . . . . . . . . . . . . . . . . . . . 2577.2 Regras dos retangulos . . . . . . . . . . . . . . . . . . . . . . . 2587.3 Regra simples do trapezio . . . . . . . . . . . . . . . . . . . . 2587.4 Regra composta do trapezio . . . . . . . . . . . . . . . . . . . 2587.5 Regra de Simpsom . . . . . . . . . . . . . . . . . . . . . . . . 2597.6 Cancelamento de erros . . . . . . . . . . . . . . . . . . . . . . 259
8.1 Circuito RC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2638.2 Curva de descarga do capacitor em um circuito RC . . . . . . 2638.3 Circuito RLC . . . . . . . . . . . . . . . . . . . . . . . . . . . 2658.4 Resposta do circuito RLC a entrada u(t) = 0. . . . . . . . . . 2668.5 Suspensao de automovel simplificada . . . . . . . . . . . . . . 2688.6 Sistema de duas massas acopladas . . . . . . . . . . . . . . . . 2698.7 Motor de corrente contınua (CC) controlado pela armadura . . 2708.8 Satelite em orbita . . . . . . . . . . . . . . . . . . . . . . . . . 2728.9 Veıculo com pendulo invertido . . . . . . . . . . . . . . . . . . 2728.10 Ilustracao de uma primitiva F (x) . . . . . . . . . . . . . . . . 2818.11 Metodo de Euler . . . . . . . . . . . . . . . . . . . . . . . . . 2828.12 Circuito eletrico . . . . . . . . . . . . . . . . . . . . . . . . . 2898.13 Sistema mecanico . . . . . . . . . . . . . . . . . . . . . . . . 2918.14 Sistema mecanico de dois pendulos . . . . . . . . . . . . . . . 292
A.1 Eliminando a descontinuidade de uma funcao. . . . . . . . . . 299
xiv
A.2 Funcao exemplo. . . . . . . . . . . . . . . . . . . . . . . . . . 300A.3 Secantes da funcao. . . . . . . . . . . . . . . . . . . . . . . . 300A.4 Corte facial do tanque. . . . . . . . . . . . . . . . . . . . . . 303A.5 Ilustracao do Teorema do Valor Medio. . . . . . . . . . . . . 304A.6 Pontos de maximo e mınimo de uma funcao. . . . . . . . . . 305A.7 Grafico da funcao f(z) = zp
emz , p,m > 0. . . . . . . . . . . . . 310A.8 Trajetorias para K = 0, 16. . . . . . . . . . . . . . . . . . . . 310A.9 Plano cartesiano. . . . . . . . . . . . . . . . . . . . . . . . . . 311A.10 Soma vetorial. . . . . . . . . . . . . . . . . . . . . . . . . . . 312A.11 Produto interno. . . . . . . . . . . . . . . . . . . . . . . . . . 313A.12 Produto interno. . . . . . . . . . . . . . . . . . . . . . . . . . 314A.13 A area do paralelogramo com lados a e b e precisamente ‖a×b‖.317
C.1 Trajetoria do sistema pendulo invertido. . . . . . . . . . . . . 352C.2 Trajetoria do sistema pendulo invertido. . . . . . . . . . . . . 353
xv
Lista de Tabelas
2.1 Operacoes Aritmeticas . . . . . . . . . . . . . . . . . . . . . . 122.2 Operacoes Aritmeticas . . . . . . . . . . . . . . . . . . . . . . 122.3 Elementos do sistema de ponto flutuante F (2, 3,−1, 2) . . . . 142.4 Aproximacoes do numero π . . . . . . . . . . . . . . . . . . . 222.5 Aproximacoes de ex obtidas com f(x) para x > 0 e com f(x)
e 1/f(−x) para x < 0. . . . . . . . . . . . . . . . . . . . . . . 25
3.1 Valores da funcao f(x) = e−x − x . . . . . . . . . . . . . . . . 403.2 Aplicacao do algoritmo da falsa posicao . . . . . . . . . . . . . 463.3 Sequencia de iterandos . . . . . . . . . . . . . . . . . . . . . . 553.4 Sequencia de iterandos . . . . . . . . . . . . . . . . . . . . . . 573.5 Sequencia de iterandos produzida pelo metodo de Newton . . 583.6 Sequencia de iterandos produzida pelo metodo de Newton . . 59
4.1 Conjunto de pontos de um experimento . . . . . . . . . . . . . 1414.2 iterandos obtidos pelo processo iterativo de Jacobi . . . . . . . 1434.3 Iterandos obtidos pelo processo iterativo de Gauss-Seidel . . . 1444.4 iterandos produzidos pelo metodo do gradiente conjugado . . . 1504.5 direcoes conjugadas . . . . . . . . . . . . . . . . . . . . . . . . 150
7.1 Ponderacoes e pontos de amostragem para quadratura Gaussiana2547.2 Pontos da funcao f(x) . . . . . . . . . . . . . . . . . . . . . . 2557.3 Pontos da funcao f(x) . . . . . . . . . . . . . . . . . . . . . . 255
A.1 Exemplo de conversao de base: (283)10 = (100011011)2 . . . . 322A.2 Exemplo de conversao de base: (0.283)10 = (0.01001)2 . . . . . 323
xvii
Capıtulo 1
Introducao ao Estudo daMatematica Numerica
1.1 Natureza e Objetivos da Matematica
Numerica
Antes do advento dos computadores eletronicos, nos anos quarenta,metodos numericos eram impraticaveis. Mesmo antes dos anos quarenta, dis-positivos mecanicos tinham sido desenvolvidos para executar calculos como,por exemplo, as maquinas desenvolvidas pela IBM para serem usadas nocenso americano. No inıcio dos anos quarenta, durante a Segunda GuerraMundial, computadores eletronicos foram desenvolvidos nos E.U.A., permi-tindo o calculo automatico de tabelas para artilharia naval e solucao de ou-tros problemas logısticos e militares. Nasce, portanto, o interesse cientıfico etecnologico por metodos numericos.
A necessidade de um tratamento particular para os metodos numericosse refere ao fato de que as propriedades basicas da aritmetica real nao valemmais quando executadas no computador. Numeros com infinito dıgitos como,por exemplo, π = 3.1415 . . ., e representado por um numero finito de dıgitosna aritmetica computacional—o computador tem precisao finita.
A matematica computacional e a area da matematica que se preocupacom o desenvolvimento, emprego e estudo de metodos numericos, podendoser subdivida em:
Matematica Computacional: estudo da matematica do ponto de vistacomputacional.
Matematica Numerica: parte da matematica computacional que se preo-cupa com o desenvolvimento de algoritmos para resolucao aproximada
2 1. Introducao ao Estudo da Matematica Numerica
de problemas, a qual utiliza como sistema de operacoes o conjunto+,−, /, ∗ de operadores matematicos.
Matematica Simbolica: busca a solucao analıtica de problemas ma-tematicos, por exemplo, a solucao analıtica da integral:
∫
x2 · dx =x3
3
Matematica Grafica: trabalha com modelos graficos buscando solucao naforma grafica.
Matematica Intervalar: trata dados na forma de intervalos, buscandocontrolar os limites de erro da matematica numerica.
Nesta disciplina nos concentramos na matematica numerica, onde estu-damos processos numericos para a resolucao de problemas visando a maximaeconomia e confiabilidade em termos de fatores envolvidos, tais como:
• tempo de execucao
• memoria utilizada
• erros de arredondamento
1.2 Algoritmos
Informalmente, um algoritmo e um procedimento computacional bem de-finido que toma um valor (ou sequencia de valores) como entrada e produz umvalor (ou sequencia de valores) como saıda. Um algoritmo pode ser visto comouma ferramenta para resolver um problema computacional bem-definido, ouseja, um problema cuja especificacao nos da em termos gerais a relacao de-sejada entre entrada e saıda. Se espera que os passos de um algoritmo sejamexecutados no maximo um numero finito de vezes, mas por questoes praticas,se deseja que este numero seja o menor possıvel e bem-comportado.
1.2.1 O Problema da Ordenacao
Ilustraremos aqui as nocoes de problema computacional e algoritmoatraves do problema de ordenacao.
Entrada ou Instancia do Problema: uma sequencia de n numeros(a1, a2, . . . , an)
1. Introducao ao Estudo da Matematica Numerica 3
Saıda: a permutacao (reordenacao) (a′1, a′2, . . . , a
′n) da entrada tal que: a′1 6
a′2 6 . . . 6 a′n.
Dada uma sequencia de entrada (31, 41, 59, 26, 41, 58) um algoritmo deordenacao produz a saıda (26, 31, 41, 41, 58, 59).
Um algoritmo e dito correto se, para toda a instancia, o algoritmo terminacom a saıda correta.
Algoritmo de Ordenacao
(a1, a2, . . . , an)→ SORT → (a′1, a′2, . . . , a
′n)
A implementacao do algoritmo de ordenacao pode ser definida como:
Insertion Sort(A)
1: for j ← 2 to length[A] do2: key ← A[j]3: i← j − 14: while i > 0 & A[i] > key do5: A[i+ 1]← A[i]6: i← i− 17: end while8: A[i+ 1]← key9: end for
Abaixo, a demonstracao de seu funcionamento, considerando a entrada(5,2,4,6,1,3):
5 2 6 14 3
2 5 4 6 1 3
2 6 1 34 5
2 4 5 6 1 3
1 2 4 5 6 3
1 2 4 53 6
Figura 1.1: Algoritmo de Ordenacao
4 1. Introducao ao Estudo da Matematica Numerica
Analise do Algoritmo de Ordenacao: Tempo deExecucao
O tempo de execucao de um algoritmo (“running time”) para uma entradaparticular consiste do numero de operacoes primitivas ou passos executados.O tempo de execucao do algoritmo de ordenacao depende da entrada:
• A ordenacao de 1000 numeros leva mais tempo do que a ordenacao de10 numeros.
• O tempo de ordenacao de duas entradas pode variar de acordo com ograu de ordenacao das entradas.
Para calcular o tempo de execucao T (n) para uma entrada de tamanho n,somamos todas as partes (linhas de 1 a 7), onde tj e o numero de vezes queo laco while e executado para aquele valor j.
Insertion Sort(A)
Linha Codigo Custo Repeticoes1 for j ← 2 to length[A] c1 n2 key ← A[j] c2 n− 13 i← j − 1 c3 n− 1
4 while i > 0 & A[i] > A[j] c4n∑
j=2
tj
5 A[i+ 1]← A[i] c5n∑
j=2
(tj − 1)
6 i← i− 1 c6n∑
j=2
(tj − 1)
7 A[i+ 1]← key c7 n− 1
Quanto tempo leva para ordenar as sequencias abaixo?
s1 = (1, 2, 3, 4, 5, 6)s2 = (6, 5, 4, 3, 2, 1)
Melhor Caso: percebe-se que a entrada s1 ja esta ordenada portantotj = 1, caracterizando o melhor caso. O tempo de execucao no melhor casopode ser expresso por:
T (n) = an+ b
Pior Caso: ja a entrada s2 esta no maior grau de desordem possıvel parao tipo de entrada em questao sendo tj = j, o pior caso. O tempo de execucaono pior caso pode ser expresso por:
T (n) = an2 + bn+ c
1. Introducao ao Estudo da Matematica Numerica 5
Caso Medio: ha tambem o caso medio, que pode ser encontrado sendoa media em uma distribuicao das probabilidades de entrada.
Analise do Algoritmo de Ordenacao: Ordem de Cresci-mento
A ordem de crescimento pode ser vista como a taxa de crescimento dotempo de execucao em relacao ao tamanho da entrada. Logo, consideramoso termo dominante da formula T (n) = an2 + bn+ c, uma vez que os termosde menor ordem sao insignificantes para entradas grandes. Dizemos que otempo de execucao e Θ(n2).
1.3 Algoritmos Numericos
Da mesma forma que a solucao numerica de equacoes lineares e funda-mental a solucao de equacoes nao-lineares, algoritmos numericos sao funda-mentais a solucao de diversos problemas encontrados em engenharia, como aidentificacao de sistemas, tratamento de sinais e simulacao. Abaixo seguemas caracterıticas desejadas dos algoritmos.
1.3.1 Inexistencia do Erro Logico
Um algoritmo nao apresenta erro logico se este sempre produz o resultadocorreto. Considere o exemplo abaixo.
Problema: procura-se a solucao x∗ de ax = b
Algoritmo ingenuo: x∗ = ba
Algoritmo correto:
Equacao-Linear(a, b)
1: if a = 0 then2: if b = 0 then3: Imprima “identidade”4: else5: Imprima “contradicao”6: end if7: else8: Retorne x∗ = b
a
9: end if
6 1. Introducao ao Estudo da Matematica Numerica
1.3.2 Inexistencia do Erro Operacional
O algoritmo pode falhar por violar restricoes fısicas da maquina. No quesegue desenvolvemos um exemplo ilustrativo. Seja T o conjunto de numerospossıveis de serem representados por uma maquina onde:
a) ∀x ∈ T,−x ∈ T
b) t1 = infx : x ∈ T ∧ x > 0c) t2 = supx : x ∈ T ∧ x > 0
Se temos valores y tais que |y| < t1 dizemos que ocorreu “underflow” ou se|y| > t2 dizemos que ocorreu “overflow”.
Considere o problema computacional no qual procuramos |z| =√
x2 + y2.Se implementarmos diretamente a formula acima dependendo dos valores xou y, podemos ter overflow em x2 ou y2, embora valha
√
x2 + y2 < t2.O algoritmo abaixo procura contornar estes problemas de “overflow”.
Norma-Vetorial(x, y)
1: if x = y = 0 then2: z = 03: else4: if |x| > |y| then5: z = |x|
√
1 +(
yx
)2
6: else
7: z = |y|√
1 +(
xy
)2
8: end if9: end if10: Retorne z
1.3.3 Quantidade Finita de Calculos
Em algoritmos iterativos, e necessario que se estabeleca um criterio deparada e se prove convergencia. Um algoritmo nao pode executar indefini-damente e quando ele para se espera que este tenha produzido o resultadoesperado.
Considere o problema de determinar, pelo metodo de Newton, uma raizda equacao f(x) = sign(x) ·
√
‖x‖ = 0, onde:
sign(x) = 1 se x > 0sign(x) = 0 se x = 0sign(x) = −1 se x < 0
1. Introducao ao Estudo da Matematica Numerica 7
Um algoritmo problematico e dado por:
Newton(f, x0, γ)
1: j ← 02: while |f(xj)| > γ do3: if f ′(xj) 6= 0 then
4: xj+1 = xj − f(xj)
f ′(xj)
5: else6: Pare e imprima “indefinicao”7: end if8: j ← j + 19: end while
10: Retorne j, xj
O grafico da funcao e iterandos consecutivos gerados pelo algoritmo acimasao ilustrados na Figura 1.2. A sequencia de iterandos gerados a partir dex0 = 0.8 e dada na Figura 1.3.
−20 −15 −10 −5 0 5 10 15 20−10
−8
−6
−4
−2
0
2
4
6
8
10
x
y
Gráfico da Função f(x) = sqrt(x) / x > 0 e f(x) = −sqrt(−x) / x < 0
x(0)=x(2)=x(n)
x(1) = x(n−1) = x(n+1)
f(x) = sqrt(x)
f(x) = −sqrt(−x)
Figura 1.2: Exemplo de funcao para a qual o algoritmo de Newton podeiterar indefinidamente
8 1. Introducao ao Estudo da Matematica Numerica
2 4 6 8 10 12 14 16 18 20−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
Iteracao
Rai
z A
prox
imad
a
Figura 1.3: Sequencia de iterandos gerados pelo algoritmo de Newton.
1.3.4 Existencia de um Criterio de Exatidao
E fundamental que o algoritmo forneca, de antemao, um criterio de exa-tidao em funcao das limitacoes de precisao das maquinas. Ou seja, se desejaque o algoritmo forneca:
Resultado = Valor Aproximado + Erro
1.3.5 Independencia da Maquina
E desejavel que o algoritmo produza o mesmo resultado quando executadoem diferentes maquinas. A constante de Euler e = 2.718281828 . . ., porexemplo, tera representacao distinta em diferentes maquinas. Assim, nao sedeve utilizar o valor, mas sim a representacao e = exp(1) que corresponde aovalor adotado pelo compilador.
1.3.6 Com Precisao Infinita, os Limites de Erro DevemConvergir para Zero
Esta exigencia estabelece a dependencia entre a solucao ideal em R e asolucao de maquina. Considere o problema de determinar sin(α) = x dadoα ∈ R. Um algoritmo que nao satisfaz a condicao de erro nulo com precisaoinfinita e dado abaixo.
1. Introducao ao Estudo da Matematica Numerica 9
sin(α)
1: x = 0± 12: Retorne α, x
O algoritmo acima e insensıvel a precisao da maquina e, portanto, naosatisfaz o criterio desejado.
1.3.7 Eficiencia
Quando se deseja encontrar a solucao para um problema, sempre visamosobter economia de rescursos envolvidos. Alguns fatores relevantes sao:
• tempo de execucao;
• exatidao;
• volume de dados;
• dificuldade de representacao; e
• eficacia.
Fazer contas com os dedos da mao, por exemplo, e eficaz mas nao eeficiente para calculos aritmeticos nao triviais.
Outro exemplo se refere ao algoritmo de Cramer para a solucao de siste-mas de equacoes lineares: Ax = b, com A ∈ R
n×n. Os passos do algoritmosao:
1) calcule o determinante ∆ da matriz dos coeficientes;
2) calcule os n determinantes ∆xj resultantes da substituicao da coluna jda matriz dos coeficientes pelo vetor b; e
3) a solucao x = (x1, x2, . . . , xn) e dada por xj =∆xj
∆, j = 1, . . . , n.
O algoritmo de Cramer acima executara (n+1)!(n+1) operacoes aritmeticasmas, por outro lado, o algoritmo de Gauss termina apos n3 operacoes.
1.4 Passos para a Resolucao de um Problema
Os passos recomendados para resolucao de um problema atraves demetodos numericos, ilustrados na Figura 1.4, sao:
10 1. Introducao ao Estudo da Matematica Numerica
a) Modelo matematico do problema
b) Necessidade de simplificacao
c) Uso de valores ja conhecidos
d) Parametros de equacoes termodinamicas
e) Escolha ou desenvolvimento do algoritmo
f) Definicao de parametros do algoritmo
– tolerancia
– solucao inicial
g) Como a maioria dos problemas nao tem solucao direta e precisa, faz-seo uso de metodos iterativos.
– criterio de parada
– numero de iteracoes
Problema
Modelagem
Simplificacao
Resultados deCiencias Vizinhas
Medicoes
Resultado
Numerico
Truncamento das
Iteracoes
Escolha de
Escolha deParametros
Metodos
a
b
c
d
e
f
g
Figura 1.4: Passos para solucao de um problema.
1.4.1 Referencias
O texto deste capıtulo e um sumario do Capıtulo 1 do Texto de Claudioe Marins [1]. O leitor pode consultar este texto para uma discussao maisampla sobre Matematica Numerica.
Capıtulo 2
Introducao a Aritmetica deMaquina
Neste capıtulo trataremos da representacao aproximada de numeros reaisem notacao digital nas maquinas computacionais. Serao definidos sistemade ponto flutuante, funcoes de arredondamento e tipos de erros que surgemcom arredondamentos. Discutiremos a diferenca entre precisao e exatidao.Tambem serao apresentadas questoes relativas a instabilidade de algoritmose de problemas.
2.1 O Sistema de Ponto Flutuante
Numeros reais sao aproximados por numeros racionais em maquinas di-gitais de precisao finita (numero de dıgitos limitados), incorrendo erros quepodem ser amplificados a medida que operacoes aritmeticas sao executadas.Devemos, portanto, entender como numeros sao representados no computa-dor e a maneira com que as operacoes sao executadas. Tal conhecimentoservira de base para analise e depuracao de algoritmos, bem como validacaode resultados obtidos atraves de metodos numericos.
12 2. Introducao a Aritmetica de Maquina
Exemplo:
Vamos utilizar varias maquinas para calcular a expressao abaixo:
H = 1/2
X = 2/3−H
Y = 3/5−H
E = (X +X +X)−H
F = (Y + Y + Y + Y + Y )−H
G = F/E (2.1)
Os resultados destas operacoes nas maquinas HP-25, SR-50, PCRII, IBM-4341, e Matlab (IBM-PC) aparecem na Tabelas 2.1 e 2.2. Podemos observarque os resultados variam significativamente, dependendo da capacidade derepresentacao destas maquinas.
Tabela 2.1: Operacoes AritmeticasHP 25 SR50 PCRIIH = 0.5 H = 0.5 H = 0.5X = 0.166666667 X = 0.166666667 X = 0.166666667Y = 0.1 Y = 0.1 Y = 0.1E = 10−10 E = 2 · 10−13 E = 10−10
F = 0 F = 0 F = 0G = nd G = nd G = nd
Tabela 2.2: Operacoes AritmeticasIBM4341 MatlabH = 0.5 H = 0.5X = 0.16666666 X = 0.16666666666667Y = 0.1 Y = 0.1E = −0.119209 · 10−6 E = −1.110223024625157 · 10−16
F = −0.178813 · 10−6 F = −1.110223024625157 · 10−16
G = 0.6666 . . . G = 1
Abaixo sao dadas definicoes fundamentais e a especificacao de sistema deponto flutuante.
2. Introducao a Aritmetica de Maquina 13
Definicao 2.1 Um x ∈ R e dito numero de ponto flutuante normalizado sevalerem:
1) x = m · be
2) m = ±0 · d1d2 . . . dn, n ∈ N
3) 1 6 d1 6 b− 1 e 0 6 dj 6 b− 1, j = 2, . . . , n
4) e1 6 e 6 e2, sendo e1 6 0, e2 ≥ 1, e1, e2 ∈ Z
onde:
• b e chamado de base, b ≥ 2
• e e chamado de expoente, e1 e o menor expoente e e2 e o maior expoente
• m e chamado de mantissa
• n e o numero maximo de dıgitos usados na representacao do numero
• dj, j = 1, . . . , n, sao os dıgitos do numero
Definicao 2.2 A uniao de todos os numeros de ponto flutuante com oZERO, que e representado na seguinte forma: 0 = 0.0000 . . . 0 · be1 e cha-mado de sistema de ponto flutuante. Usualmente, procuramos representarum sistema de ponto flutuante por F = F (b, n, e1, e2), onde e1 e e2 sao res-pectivamente o menor e o maior expoente, b e a base e n e a precisao.
Alguns exemplos de sistemas de ponto flutuante:
1) HP25, F (10, 9,−98, 100)
2) IBM 360/370, F (16, 6,−64, 63)
3) B6700, F (8, 13,−51, 77)
Algumas propriedades de sistemas de ponto flutuante sao:
Menor numero em modulo: 0.1 · be1
Maior numero: 0.[b− 1][b− 1] . . . [b− 1] · be2
Cardinalidade de F = F (b, n, e1, e2) : #F = 2(b−1)(bn−1)(e2−e1+1)+1,que pode ser obtido adicionando-se as parcelas:
• O numero de mantissas positivas e dado por (b− 1)(bn−1)
14 2. Introducao a Aritmetica de Maquina
Tabela 2.3: Elementos do sistema de ponto flutuante F (2, 3,−1, 2)mantissa m
e be 0.100 0.101 0.110 0.111-1 1/2 1/4 5/16 3/8 7/160 1 1/2 5/8 3/4 7/81 2 1 5/4 3/2 7/42 4 2 5/2 3 7/2
• Como cada uma dessas mantissas pode ter um dos (e2 − e1 +1) expoentes possıveis, temos ao todo (b − 1)(bn−1)(e2 − e1 + 1)numeros possıveis
• Logo, incluindo os negativos e o zero, obtemos #F = 2(b −1)(bn−1)(e2 − e1 + 1) + 1
Para qualquer mantissa m, vale b−1 6 |m| < 1, pois:
• |m| < 1, pois toda a mantissa tem como primeiro dıgito o ZERO
• |m| ≥ b−1, pois se |m| < b−1, nao terıamos um numero normalizado,pois o primeiro dıgito apos o ponto nao e nulo.
Exemplo:
Seja F = F (2, 3,−1, 2). Para este sistema, as mantissas sao: 0.100, 0.101,0.110, e 0.111. Por outro lado, os expoentes admissıveis sao -1, 0, 1 e 2. Assimtemos os seguintes numeros positivos:
• (0.100× 2−1)2 = (0.01)2 = 0× 20 + 0× 2−1 + 1× 2−2 = 1/4
• (0.100× 20)2 = (0.1)2 = 0× 20 + 1× 2−1 = 1/2
• (0.100× 21)2 = (1)2 = 1
• (0.100× 22)2 = (10)2 = 21 = 2
• e assim sucessivamente, obtendo a Tabela 2.3 que tambem sao apre-sentados na Figura 2.1.
Outras nocoes importantes se referem aos limites de representacao de umsistema de ponto flutuante.
2. Introducao a Aritmetica de Maquina 15
722
5322
−12−1
2−5
4−5
21
4−7
8−5
8−7
8−3
43
45
47
85
83
87
167
165
4−3
16−5
16−7
41
41
−72 0−2−3 3 4−4 −1 21
Figura 2.1: Elementos do sistema de ponto flutuante F = F (2, 3,−1, 2).
Regiao de Underflow: regiao situada entre o maior numero de ponto flu-tuante negativo e o ZERO e, simetricamente, entre o menor numero deponto flutuante positivo e o ZERO.
Regiao de Overflow: regioes situadas aquem do menor numero de pontoflutuante negativo e alem do maior numero de ponto flutuante positivo.
Exemplo:
Seja F = F (2, 3,−1, 2) um sistema de ponto flutuante. Tomemos emF , x = 5
4e y = 3
8. Note que z = x + y = 5
4+ 3
8= 13
8e tal que z /∈ F ,
pois 138
= (0.1101 × 21)2 que possui um dıgito a mais na mantissa do queo permitido. Na realidade, podemos escolher entre 3
2= (0.110 × 21)2 ou
74= (0.111× 21)2, o que da origem a diferentes tipos de arredondamentos—
erros sao cometidos ao se aproximar o numero z = x + y com um elementode F .
Notacao: Seja ⊕,⊗,⊖,⊘ o conjunto de operacoes executados por um algo-ritmo de ponto flutuante equivalentes as operacoes do conjunto +,−, /,×.Podemos verificar facilmente que: x⊕ y 6= x+ y e x⊗ y 6= x× y.
Considere o sistema F = F (2, 5,−98, 100) e os numeros:
(0.1)10 = (0.0001110110011 . . .)2 /∈ F
(0.1)10 ≃ (0.11101× 2−3)2 ∈ F.
Somando (0.11101 × 2−3) sucessivamente dez vezes, teremos (0.11111)2 =(0.96875)10 6= (1.0)10.
Exemplo:
Para um sistema de ponto flutuante F = F (2, 3,−1, 2), seja:
x =5
8, y =
3
8, e z =
3
4,
16 2. Introducao a Aritmetica de Maquina
entao:
(x⊕ y)⊕ z = ((0.101× 20)⊕ (0.110× 2−1))⊕ (0.110× 20)
= (0.101⊕ 0.011)⊕ 0.110
= 1.0⊕ 0.110 = 1.11
x⊕ (y ⊕ z) = 0.101⊕ (0.011⊕ 0.110)
= 0.101⊕ 1.001
= 1.101
= 1.10
Logo (x⊕ y)⊕ z = x⊕ (y ⊕ z)
Exemplo:
Para o sistema de ponto flutuante F = F (2, 3,−1, 2), seja
x =7
8, y =
5
4, e z =
3
8,
entao, podemos verificar que:
x⊗ (y ⊕ z) = 0.111⊗ (1.01⊕ 0.011)
= 0.111⊗ 1.101
= 0.111⊗ 1.10
= 0.111⊕ 0.0111
= 1.0101
= 1.01
(x⊗ y)⊕ (x⊗ z) = (0.111⊗ 1.01)⊕ (0.111⊗ 0.011)
= 1.00011⊕ 0.010101
= 1.00011⊕ 0.010101
= 1.00⊕ 0.0101
= 1.0101
= 1.01
Contudo, neste caso x⊗ (y ⊕ z) = (x⊗ y)⊕ (x⊗ z).
2.1.1 Exercıcios
i. Qual e o valor exato da expressao (2.1)?
2. Introducao a Aritmetica de Maquina 17
ii. Considere os sistemas de ponto flutuante abaixo:
(a) HP25, F (10, 9,−98, 100);(b) IBM 360/370, F (16, 6,−64, 63); e(c) B6700, F (8, 13,−51, 77).
Questoes:
(a) Qual e cardinalidade de cada um destes sistemas?
(b) Qual e o menor numero em modulo que pode ser representado?
(c) Qual e o maior numero em modulo?
(d) Qual e a regiao de overflow?
(e) Qual e a regiao de underflow?
iii. Em um sistema de ponto flutuante F = F (2, 3,−1, 2), seja x = 0.110×21, y = 0.101× 2−1 e z = 0.100× 21. Calcule (x⊕ y)⊖ z e (x⊖ z)⊕ y,utilizando o sistema F e truncamento.
iv. Para o sistema de ponto flutuante F = F (2, 3,−1, 2), encontre x, y, z ∈F tal que x⊗ (y ⊕ z) 6= (x⊗ y)⊕ (x⊗ z).
2.2 Arredondamentos
Conforme visto na discussao acima, ha diferentes maneiras de se aproxi-mar um numero real para um numero de ponto flutuante. Surge a questaode como se realizar tal aproximacao.
Definicao 2.3 Seja F (b, n, e1, e2) um sistema de ponto flutuante. Umafuncao 2 : R → F e considerada um arredondamento se valer: ∀x ∈F,2(x) = x
Tipos de arredondamento
• Arredondamento para cima ou por excesso: ∆x
• Arredondamento para baixo ou por falta: ∇x
• Arredondamento para o numero de maquina mais proximo: ox
18 2. Introducao a Aritmetica de Maquina
Exemplo
Seja F = F (2, 3,−1, 2) o sistema de ponto flutuante. O numero 98/∈ F ,
pois:9
8= (1.125)10 = (0.1001× 21)2.
Podemos arredondar 98para (0.100× 21)2 = (1.0)10 ou para (0.101× 21)2 =
(54)10 = (1.25)10. No primeiro caso, temos ∇(9
8) = (0.100×21), ja no segundo
caso temos ∆(98) = (0.101× 21)
Exemplo:
Seja F = F (10, 4,−98, 10) o sistema de ponto flutuante, e sejam:
x = 0.333333
y = 0.348436
z = 0.666666
Entao obtemos os seguintes numeros para os diferentes arredondamento:
∇(x) = 0.3333 ∇(y) = 0.3484 ∇(z) = 0.6666∆(x) = 0.3334 ∆(y) = 0.3485 ∆(z) = 0.6667
ox = 0.3333 oy = 0.3484 oz = 0.6667
Definicao 2.4 Um arredondamento 2 : R → F e dito por falta se valer:∀x ∈ R,2(x) 6 x.
Definicao 2.5 Um arredondamento 2 : R→ F e dito por excesso se valer:∀x ∈ R,2(x) ≥ x.
Definicao 2.6 Um arredondamento e dito monotonico se valer: ∀x, y ∈R, x 6 y ⇒ 2(x) 6 2(y).
Note que ∇(x) e um arredondamento monotonico por falta, enquanto∆(x) e um arredondamento monotonico por excesso.
2.3 Erros
Toda vez que executamos um arredondamento que nao admite uma re-presentacao exata em F , cometemos um erro. Ha varias causas de erro. Aquivamos estudar tres tipos de erro:
2. Introducao a Aritmetica de Maquina 19
Erros Inerentes: aparecem na criacao ou simplificacao de um modelo ma-tematico de determinado sistema (erros na medicao, identificacao).
Erros de Discretizacao: erros cometidos quando se substitui qualquerprocesso infinito por um processo finito ou discreto como, por exemplo:
e =∞∑
i=0
1
i!
e aproximado com a serie finita
e =T∑
i=0
1
i!
Erros de Arredondamento: surgem quando trabalhamos com maquinasdigitais para representar os numeros reais. Em geral trabalhamos comarredondamento para o numero de ponto flutuante mais proximo oucom o arredondamento por falta.
A diferenca entre o valor arredondado e o valor exato pode ser medidapelo erro absoluto ou pelo erro relativo, cujas definicoes sao dadas a seguir.
Definicao 2.7 O erro absoluto EA e dado por: EA = |2(x)− x|.
Definicao 2.8 O erro relativo ER e dado por ER = |2(x)−x||x| ou ER = |2(x)−x|
|2(x)|
Erros relativos sao mais usados que os erros absolutos. Um exemplo deerro absoluto e erro relativo e dado abaixo:
x = 0.00006
2(x) = 0.00005
EA = 0.00001
ER =0.00001
0.00005= 0.2
Alguns resultados teoricos podem ser estabelecidos sobre limites de erroslevando em consideracao propriedades do sistema de ponto flutuante.
Teorema 2.1 Seja F = F (b, n, e1, e2) um sistema de ponto flutuante. Entaovale:
∀x ∈ R, be1−16 |x| 6 B∗ ⇒ |2(x)− x|
|2(x)| 6 µ,
20 2. Introducao a Aritmetica de Maquina
onde: B∗ e o maior numero em modulo do sistema de ponto flutuante F , e
µ =
12b1−n, no caso de x = ox
b1−n, no caso de 2x = ∇xO teorema acima so e valido quando x esta dentro do espectro de repre-sentacao de F , ou seja, be1−1 6 |x| 6 B∗. No caso de underflow |x| < be1−1
ou overflow |x| > B∗, nao e possıvel de se obter cotas acima para erro relativo.
2.4 Dıgitos Significativos Exatos
Na pratica, quando obtemos um resultado de uma expressao numericaavaliada numa maquina e nao podemos saber o valor exato, torna-se im-possıvel calcular o erro relativo ou absoluto.
Definicao 2.9 Em um sistema decimal, um dıgito e significativo se for1, 2, . . . , 9. O dıgito 0 e significante, exceto quando for usado para fixar avırgula, ou o ponto decimal, ou preencher o lugar de dıgitos descartados.
Exemplo0.008735 → 4 dıgitos significativos30.357 → 5 dıgitos significativos23.000 → 2 dıgitos significativos
Definicao 2.10 Um dıgito significativo e exato se, arredondando-se onumero aproximado para uma posicao imediatamente apos aquela posicaodo dıgito, isso fizer com que o erro absoluto nao seja maior do que a meiaunidade naquela posicao do dıgito. Abreviamos o dıgito significativo exatopor DIGSE.
Exemplo Os numeros 0.66667 e 0.666998 sao aproximacoes para 23. No
entanto, todos os dıgitos significativos do primeiro sao exatos, enquanto nosegundo so os tres primeiros. Abaixo calculamos os dıgitos significativosexatos de cada aproximacao.
Primeiro Caso: 0.66667
primeiro dıgito |0.66− 0.6666 . . . | = | − 0.006666 . . . | < 0.05segundo dıgito |0.666− 0.6666 . . . | = | − 0.0006666 . . . | < 0.005terceiro dıgito |0.6666− 0.6666666 . . . | = | − 0.00006666 . . . | < 0.0005
...quinto dıgito |0.666670− 0.666666 . . . | = |+ 0.00000333 . . . | < 0.000005
2. Introducao a Aritmetica de Maquina 21
Logo todos os dıgitos sao significativos exatos.
Segundo Caso: 0.666998 Para o primeiro dıgito 9 temos
|0.66699− 0.66666 . . . | = |0.000323 . . . | 6< 0.00005
logo, o primeiro dıgito 9 ja nao e exato.
Teorema 2.2 Se ER 6 12b−m, entao o numero e correto em m dıgitos sig-
nificativos exatos.
2.4.1 Exercıcios
i. No sistema F (2, 3,−1, 2), represente a = 5/7 e b = 2/3, utilizando osarredondamentos ∇(x), ∆(x) e o(x).
ii. Para o item anterior, calcule o erro absoluto e relativo cometido ao seaproximar a com 2(a), e b com 2(b), para cada funcao de arredonda-mento.
iii. Calcule o numero de dıgitos significativos exatos das aproximacoes x =3.14169 e y = 3.141412 para π.
iv. Podemos afirmar que o arredondamento o(x) e monotonico?
2.5 Precisao e Exatidao de Maquinas Digitais
Conforme vimos, para cada maquina, calculadora ou computador ha umsistema de ponto flutuante associado. Este sistema automaticamente definea precisao da maquina.
Definicao 2.11 (Epsilon de maquina) O epsilon da maquina e o menornumero de ponto flutuante tal que:
1 + ǫ > 1.
Definicao 2.12 A precisao de uma maquina digital e definida como onumero de dıgitos da mantissa dessa maquina.
Definicao 2.13 Exatidao e uma medida de perfeicao do resultado.
22 2. Introducao a Aritmetica de Maquina
Tabela 2.4: Aproximacoes do numero πAproximacao xj DIGSE(xj, π)
3.1410 3.43.1411 3.53.1412 3.63.1413 3.73.1414 3.93.1415 4.23.1416 5.33.1417 4.23.1418 3.73.1419 3.6
A exatidao de um resultado depende da precisao da maquina e do metodoutilizado para a obtencao do resultado. Quando nao conhecemos o valorexato temos, em geral, que se x = limj→∞ xj, entao o numero de dıgitossignificativos de xj em relacao a xj+1 e dado por:
DIGSE(xj, xj+1) = −[
0.3 + log(µ+|xj+1 − xj||xj|
)
]
onde µ e a unidade de erro de arredondamento e b = 10 e a base.
Exemplo
Considere as aproximacoes para o numero π, conforme Tabela 2.4.
Embora todas as aproximacoes possuam uma precisao de cinco dıgitos,somente uma delas possue cinco dıgitos significantes exatos. Logo, exatidaode um processo depende alem da maquina, tambem do algoritmo.
Exemplo:
Seja o numero irracional√2 = 1.414213562 . . ..
a) 1.4142 e mais preciso e mais exato que 1.41, pois o primeiro tem maiornumero de casas decimais e aproxima melhor
√2;
b) 1.4149 e mais preciso que 1.414, pois tem mais casas decimais, porem,e menos exato do que 1.414, ja que o dıgito 9 do primeiro nao e exato.
2. Introducao a Aritmetica de Maquina 23
Exercıcios
i. Podemos afirmar que um resultado exato tambem e preciso? Podemosafirmar o oposto?
ii. Reproduza os valores da Tabela 2.4 utilizando uma plataforma paracomputacao numerica como, por exemplo, Octave ou Matlab.
2.6 Instabilidade
Veremos agora uma serie de problemas cujos diferentes modos de solucaopodem acarretar diferentes resultados. Quando os resultados obtidos nao saoaceitaveis, os erros podem ser causados:
a) pelos modelos ou entrada de dados (erros inerentes)
b) pelo arredondamento ou truncamento.
Instabilidade pode ser entendida como uma sensibilidade a perturbacoese pode ocorrer tanto no problema em si como no algoritmo, isto e, na maneirade resolve-lo.
2.6.1 Instabilidade dos Algoritmos
Exemplo 1: funcao ex
A instabilidade de algoritmos pode ser ilustrada atraves do exemplo de secalcular a constante de Euler. Vamos calcular e e e−5.5 pela serie de Taylor.Dado que:
ex = 1 + x+x2
2+
x3
3!+
x4
4!+ . . . (2.2)
Entao para x = 1, temos:
e ∼= 1 + 1 + 0.5 + . . . = 2.7183
Comparado a soma acima com o valor 2.718 281 828 obtido em uma calcu-ladora, verificamos um erro relativo de 6.6× 10−6, que e bem pequeno.
Por outro lado, para x = −5.5, temos:
e−5.5 ∼= 1− 5.5 + 15.125− 27.730 + . . . = 0.002 636 3.
Comparando agora com e−5.5 dado por uma calculadora, temos que:
e−5.5 = 0.004 086 714 39,
portanto, o erro relativo e 0.35 que e bem maior que o erro anterior.
24 2. Introducao a Aritmetica de Maquina
Qual a causa da diferenca?
A causa do erro e uma combinacao de dois fatores:
• somas de grandezas de diferentes ordens; e
• subtracao de grandezas quase iguais.
Tal fenomeno e dito cancelamento subtrativo ou cancelamento catastrofico,que e bastante comum em calculos. O cancelamento subtrativo nao e a realcausa do erro final da soma, ele apenas aumentou o efeito do erro final.Note que na primeira soma (para e), nao houve tal aumento. Se mudarmoso calculo de e−5.5 para 1
e5.5e utilizarmos as mesmas parcelas, obteremos
0.0040865 com erro relativo de 6.6 × 10−5. Logo podemos utilizar a seriede Taylor para argumentos positivos. Na pratica tambem devemos utilizarum criterio de parada mais cuidadoso do que o simples numero de termos daserie.
Qualidade da Aproximacao
Seja f(x) =∑T
j=0xj
j!a aproximacao de ex obtida com a expansao de
Taylor de ordem T em torno do ponto x = 0. Na Tabela 2.5 ilustramos osvalores obtidos com f(x) para x > 0 e, tambem, as aproximacoes obtidaspara ex com f(x) e 1/f(−x) quando x < 0. Na mesma tabela sao apre-sentados os valores de ex computados atraves do Matlab, seguidos dos errosrelativos induzidos por f(x) e 1/f(−x) (apenas quando x < 0) em relacao aex (Matlab). A partir dos valores apresentados na tabela podemos perceberque o erro resultante da aproximacao f(x) e elevado para x < 0.
Exemplo 2
Outro exemplo de instabilidade de algoritmo surge do calculo da integraldefinida ln =
∫ 1
0xnex−1dx para n = 1, 2, . . . Integrando por partes, temos:
ln =
∫ 1
0
xnex−1dx; u = xn e dv = ex−1dx
= [uv]10 −∫ 1
0
vdu
= [xnex−1]10 −∫ 1
0
ex−1nxn−1dx
= 1− nln−1, n = 2, 3, . . . (2.3)
2. Introducao a Aritmetica de Maquina 25
Tabela 2.5: Aproximacoes de ex obtidas com f(x) para x > 0 e com f(x) e1/f(−x) para x < 0.
x f(x) 1/f(−x) ex (Matlab) |ex − f(x)|/ex |ex − 1/f(−x)|/ex-40 50.810 4.2484e-018 4.2484e-018 10e020 5.4400e-016-20 4.1736e-009 2.0612e-009 2.0612e-009 102.48 2.0066e-016-10 4.5400e-005 4.5400e-005 4.5400e-005 7.2342e-007 2.9851e-016-5 6.7379e-003 6.7379e-003 6.7379e-003 2.1369e-011 2.5746e-016-2 0.13534 0.13534 0.13534 4.1018e-014 2.0509e-016-1 0.36788 0.36788 0.36788 3.0179e-014 1.5089e-0160 1.0000 1.0000 0.00001 2.7183 2.7183 0.00002 7.3891 7.3891 2.4040e-0145 1.4841e+002 1.4841e+002 1.9150e-01410 2.2026e+004 2.2026e+004 3.3033e-01420 4.8517e+008 4.8517e+008 2.4571e-014
Podemos calcular analiticamente o valor de l1, obtendo
l1 =
∫ 1
0
xex−1dx
= [xex−1]10 −∫ 1
0
ex−1dx
= 1 · e0 − 0 · e−1 − [ex−1]10= 1− e0 + e−1
= 1/e.
Usando F = F (10, 6,−98, 99), temos os seguintes valores:
l1 ≃ 0.367 879 l6 ≃ 0.127 120l2 ≃ 0.264 242 l7 ≃ 0.110 160l3 ≃ 0.207 274 l8 ≃ 0.118 720l4 ≃ 0.170 904 l9 ≃ −0.068 480l5 ≃ 0.145 480
Olhando o integrando x9ex−1, verificamos que e sempre positivo em [0, 1] e,no entanto, o valor computado para l9 foi negativo.
26 2. Introducao a Aritmetica de Maquina
O que causou o erro?
Notemos que so foi feito um erro de arredondamento em l1 quando 1efoi
tomado por 0.367879 em vez de 0.367879442. Como a formula esta correta,o erro final e devido apenas a este erro cometido em l1.
Observemos como tal erro ocorreu. Em l2 o erro foi multiplicado por −2,depois em l3 foi multiplicado por −3, etc. Entao o erro de l9 e exatamente(−2)(−3) . . . (−9) = 9!. Sendo
E1 = [1
e− 0.367879] = 4.412× 10−7,
teremos no final4.412× 10−7 · 9! = 0.1601
Logo, embora a formula esteja correta, ela e instavel. Com relacao aoacumulo de erros, o algoritmo gerado e de ma exatidao. Um algoritmo estavele dado por:
ln−1 =1− lnn
, n = . . . , 4, 3, 2. (2.4)
Nesta formula, a cada passo, o valor do erro em ln e decrescido por 1n(em
vez de multiplicado por n). Se comecarmos com n≫ 1 voltaremos e entao oerro inicial ou erros de arredondamento diminuirao a cada passo. Resta-nossaber qual sera o valor inicial para ln. Observamos que:
ln =
∫ 1
0
xnex−1.dx 6
∫ 1
0
xn.dx =
[
xn+1
n+ 1
]1
0
=1
n+ 1.
Portanto, ln tende a zero quando n tende ao infinito. Se aproximarmos l20para zero e o usarmos como valor inicial, teremos:
l20 ≃ 0 l14 ≃ 0.062 732 2l19 ≃ 0.050 000 0 l13 ≃ 0.066 947 7l18 ≃ 0.050 000 0 l12 ≃ 0.071 773 3l17 ≃ 0.052 777 8 l11 ≃ 0.077 352 3l16 ≃ 0.055 719 0 l10 ≃ 0.083 877 1l15 ≃ 0.059 017 6 l9 ≃ 0.091 612 3.
Majorando o erro em l20 por 121
temos:
E19 = 120× 1
21= 0.0024
E18 = 119× 1
20× 1
21= 0.00012
......
E15 = 4× 10−8.
2. Introducao a Aritmetica de Maquina 27
Continuando o algoritmo, obtemos:
l8 ≃ 0.100 932 0 l4 ≃ 0.170 893 4l7 ≃ 0.112 383 5 l3 ≃ 0.207 276 7l6 ≃ 0.126 802 4 l2 ≃ 0.264 241 1l5 ≃ 0.145 532 0 l1 ≃ 0.367 879 5
Exemplo 3
Vamos agora considerar o problema de calcular a media aritmetica dedois numeros a e b.
Algoritmo 1 Algoritmo 2 Algoritmo 31) Entrada(a, b) 1) Entrada(a, b) 1) Entrada(a, b)2) s← a+ b 2) s1 ← a
22) d1 ← a− b
3) m← s2
3) s2 ← b2
3) d1 ← d12
4) Saıda(m) 4) m← s1 + s2 4) m← d1 + b5) Saıda(m) 5) Saıda(m)
Para um dado F = F (b, n, l1, l2) podemos ter conforme os valores a, b ∈ Fos seguintes problemas:
• Algoritmo 1: overflow em 2
• Algoritmo 2: underflow em 2 e 3
No algoritmo 3 nao teremos provavelmente nenhum erro operacional, maspoderemos ter um erro no comando (2) se houver cancelamento subtrativo.
Exercıcios
i. Utilizando a expansao de Taylor de 15a para a funcao exponencial,conforme equacao (2.2), obtenha as entradas da Tabela 2.5. Utilize umaplataforma para computacao numerica tal como Matlab ou Octave.
ii. Calcule ln, n = 1, . . . , 15, utilizando as expressoes (2.3) e (2.4).
2.7 Instabilidade de Problemas
Na secao anterior investigamos a instabilidade inerente a algoritmos.Aqui, nos concentramos nos problemas que geram instabilidade intrınseca.
28 2. Introducao a Aritmetica de Maquina
Considere a tarefa de equilibrar um lapis, conforme a Figura 2.2. Asegunda tarefa (equilıbrio) e instavel pois, se o lapis ficar de pe, sera poralgumas fracoes de segundo e depois caira. Ja, no caso estavel, uma pequenaperturbacao na posicao do lapis nao acarretara a queda, voltando este aposicao de equilıbrio. Algo semelhante ocorre com problemas numericos.
Estavel Instavel
Figura 2.2: Ilustracao de equilıbrio estavel e instavel.
Exemplo
Consideremos entao o problema de encontrar as raızes do polinomio:
p(x) = x20 − 210x19 + . . .
= (x− 1)(x− 2)(x− 3) . . . (x− 19)(x− 20)
= 0. (2.5)
Obviamente as raızes sao 1, 2, 3, . . . 20 e estao bem separadas. Computandoas raızes de p(x) + 2−23x19 = 0 com Matlab1 obteremos:
R1 = 1.000 000 000 R9 = 9.147 281 378R2 = 1.999 999 999 R10 = 9.502 011 297R3 = 3.000 000 000 R11, R12 = 10.892 998 111± 1.149 333 128iR4 = 3.999 999 999 R13, R14 = 12.821 708 789± 2.123 455 162iR5 = 5.000 000 072 R15, R16 = 15.305 903 612± 2.775 365 983iR6 = 5.999 993 056 R17, R18 = 18.181 314 032± 2.548 942 153iR7 = 7.000 303 398 R19, R20 = 20.476 768 271± 1.039 017 467iR8 = 7.993 025 044
1Utilizamos as seguintes diretivas: syms x; p = (x − 1) ∗ (x − 2) ∗ (x − 3) ∗ (x − 4)∗(x− 5) ∗ (x− 6) ∗ (x− 7) ∗ (x− 8)∗ (x− 9) ∗ (x− 10) ∗ (x− 11) ∗ (x− 12)∗ (x− 13) ∗ (x−14) ∗ (x− 15) ∗ (x− 16)∗ (x− 17) ∗ (x− 18) ∗ (x− 19) ∗ (x− 20)+ 2(− 23) ∗x(19); solve(p)
2. Introducao a Aritmetica de Maquina 29
Note que um termo da equacao mudou de −210x19 para −210x19 + 2−23x19,ou seja, uma mudanca no vigesimo dıgito da base 2 de um dos coeficientes.Apesar desta pequena perturbacao, o resultado e completamente inesperadoe as mudancas nas raızes sao grandes. A razao desta mudanca drastica nao eo arredondamento nem o algoritmo e sim um problema de condicionamento.
Ha certos problemas que, quando sofrem alteracao nos dados de entrada,tem na sua resposta uma pequena diferenca proporcional, enquanto outrosmostram grande variacao no resultado mesmo com uma pequenıssima al-teracao nos dados de entrada. Os primeiros problemas sao ditos bem condi-cionados e os segundos sao ditos mal condicionados. A nocao de problemasbem e mal condicionados sera elaborada na parte de solucao de sistemas deequacoes lineares.
2.8 Exercıcios
Exercıcio 2.1 Seja P um problema, F um sistema de ponto flutuante, e Aum algoritmo numerico para resolver P . Prof. Kunz afirma que a exatidao doalgoritmo A aumenta se aumentarmos a precisao da maquina. Voce discordaou concorda com Prof. Kunz? Justifique sua resposta.
Exercıcio 2.2 Seja P um problema e F um sistema de ponto flutuante.Sejam ainda A1 e A2 dois algoritmos distintos para resolver o problema P .Sabemos que A1 e A2 resolvem P . Sem conhecer o funcionamento de A1 eA2, Prof. Gillet afirma que ha duas possibilidades:
a) A1 e mais exato e mais rapido do que A2; ou
b) A2 e mais exato e mais rapido do que A1. Se voce concorda com o Prof.Gillet, indique como que se pode descobrir qual algoritmo e melhor. Sevoce discorda, desenvolva uma justificativa.
Exercıcio 2.3 De a definicao (sucinta) de erro inerente, de discretizacao ede arredondamento. Individualmente, como se pode tratar cada um destestipos de erro?
Exercıcio 2.4 Sejam F1 = (b1, n1, e11, e21) e F2 = (b2, n2, e12, e22) dois siste-mas de ponto flutuante. Sabemos que b1 < b2. Seja x ∈ R um numero real,x1 a representacao de x em F1, e x2 a representacao de x em F2. Prof. Tellisafirma que para n1 grande o suficiente, |x1 − x| 6 |x2 − x|. Voce concordaou discorda do Prof. Tellis? Justifique a sua resposta.
30 2. Introducao a Aritmetica de Maquina
Exercıcio 2.5 Seja P um problema numerico e A um procedimento pararesolver P . O procedimento A possui erros, por isso nao e um algoritmo.Seja x = A(x0) a saıda produzida pelo procedimento quando este recebe umaestimativa inicial x0 da solucao como entrada. Seja x∗ uma solucao para P .A probabilidade de A(x0) = x∗ e dada por p = 1/3, sendo esta independentede x0. O Prof. Beans afirma que podemos utilizar o procedimento na buscade uma solucao de P? Se voce concorda, indique como utilizar A. Casocontrario, justifique a impossibilidade.
Exercıcio 2.6 Considere o sistema de ponto flutuante F = (2, 3,−5, 5).Quantas solucoes admite a equacao 1 + x = 1, onde x ∈ F? Utilize arredon-damento por falta.
Exercıcio 2.7 Assumindo precisao infinita, converta os numeros abaixo dabase binaria para a base decimal, ou da base decimal para a base binaria,conforme indicacao:
(11100.1101)2 = ( )10
(0.011011)2 = ( )10
(67)10 = ( )2
(93.125)10 = ( )2
Exercıcio 2.8 Dado o sistema de ponto flutuante F = F (10, 8,−99, 99),represente os numeros abaixo neste sistema de ponto flutuante:
x1 = (1043.625)10x2 = (0.0000415)10x3 = (213.013)4x4 = (0.00101)2
Exercıcio 2.9 E possıvel existir um sistema de ponto flutuante com e1 =−2, e2 = 5, e n = 2 com 37 elementos? Se sim, qual a base deste sistema?Caso contrario, qual e o menor numero de elementos que podemos ter comeste sistema?
Exercıcio 2.10 Considere a integral definida yn =∫ 2
0nn logn xex−1dx. Obte-
nha uma formula recursiva tal que yn seja uma funcao de yn−1: yn = f(yn−1).Calcule analiticamente y1, depois obtenha y2, y3 e y4 usando a formula re-cursiva.
Exercıcio 2.11 Seja F (b, n, e1, e2) = F (2, 3,−1, 2) um sistema de pontoflutuante.
2. Introducao a Aritmetica de Maquina 31
i. Encontre a regiao de underflow.
ii. Encontre a regiao de overflow.
iii. Qual e o menor elemento x de F?
iv. Para x = 1/3, encontre ∇x.
v. Para x = 1/3, encontre ∆x.
Exercıcio 2.12 Seja x = 0.b1b2 . . . bk a representacao ponto flutuante de umnumero y. Qual a razao para que b1 seja maior do que zero?
Exercıcio 2.13 Responda as questoes abaixo:
i. Seja x um numero real e F (b, n, e1, e2) um sistema de ponto flutuante.Seja δmax = maxx ∈ F e δmin = minx ∈ F. Suponha que x estadentro da regiao de representacao de F , ou seja, δmin 6 x 6 δmax. Seadotarmos ∇x como funcao de arredondamento, podemos afirmar queo erro absoluto |∇x− x| e limitado?
ii. Seja x um numero real e F (b, n, e1, e2) um sistema de ponto flutuante.Seja δmax = maxx ∈ F e δmin = minx ∈ F. (i) Se x esta dentroda regiao de representacao de F , ou seja, δmin 6 x 6 δmax, (ii) seadotarmos ∇x como funcao de arredondamento e (iii) se x 6= 0, entaopodemos afirmar que o erro relativo definido por |∇x−x|/x e limitado?
iii. E sempre possıvel implementar ox como uma funcao de ∇x e ∆x?
iv. Assuma que x ∈ R nao esta na regiao de overflow de um sistema deponto flutuante F (b, n, e1, e2). Considere o conjunto S = x ∈ R : x 6∈regiao de overflow, ∇x = ∆x. Podemos afirmar que S e finito?
Exercıcio 2.14 Para a funcao f(x) =√x sin(x) execute as tarefas abaixo:
a) Obtenha uma aproximacao f(x) em torno do ponto x = π/2 com umaserie de Taylor de segunda ordem. (O erro deve ser da ordem O(|∆x|3)).
b) Calcule f(π/3).
c) Calcule o erro relativo cometido ao adotarmos o valor f(π/3) em vezde f(π/3).
Exercıcio 2.15 Converta o numero (0.132)4 na base 4 para o seu corres-pondent na base 5 utilizando ate 5 dıgitos na mantissa.
Capıtulo 3
Resolucao de EquacoesNao-Lineares
3.1 Introducao
Dada uma funcao f : R → R, um problema de grande interesse e adeterminacao da existencia e calculo de uma raiz x de f , ou seja, x tal quef(x) = 0. O primeiros estudos datam do Seculo IX quando os trabalhosde matematicos arabes que difundiram a utilizacao do sistema decimal e dozero na escrita de numeros. Com Bhaskara, tornou-se conhecida a formulapara resolucao de equacoes quadraticas: f(x) = ax2 + bx + c. Mais tarde,os matematicos Nicolo Fontana e Jeronimo Cardano desenvolveram metodospara solucao de equacoes de 3o e 4o grau. O matematico Niels Abel provouque as equacoes de quinto grau ou superior nao podem ser resolvidas de umaforma coerente.
Outro resultado relevante e o Teorema Fundamental da Algebra, enunci-ado por D’Alembert em 1746: “toda a equacao polinomial de grau n possuiexatamente n raızes” foi demonstrado por Gauss em 1799. A partir daı, ateos dias atuais, os metodos de calculo das n raızes de um polinomio de grau nsao voltados aos metodos iterativos. Tais metodos sao tambem aplicaveis asequacoes transcedentes1. Os principais metodos iterativos para calculo dasraızes de equacoes algebricas ou transcedentes sao de tres tipos:
Metodos de quebra: Para aplicarmos os metodos de quebra temos que terum intervalo [a, b] onde a funcao troca de sinal. Partimos o intervaloem dois outros intervalos e verificamos qual contem a raiz desejada eassim prosseguimos.
1Sao funcoes que nao podem ser definidas diretamente atraves de formulas algebricascomo, por exemplo, funcoes exponenciais, logarıtmicas e trigonometricas.
34 3. Resolucao de Equacoes Nao-Lineares
Metodos de ponto fixo: Comecamos de uma aproximacao inicial x0 econstruımos uma sequencia xjnj=1 na qual cada termo e dado porxj+1 = g(xj), onde g e uma funcao de iteracao. Conforme as proprie-dades de g, surgem diferentes tipos de metodos de ponto fixo.
Metodos de multiplos passos: Estes metodos constituem uma genera-lizacao do anterior onde para determinar um ponto xj+1 utilizamosvarios pontos anteriores: xj, xj−1, . . . , xj−p. Com a abordagem itera-tiva se faz necessario determinar um intervalo inicial, um ou mais pon-tos para construirmos a sequencia xj e, mediante certas condicoes,teremos que a raiz x∗ sera dada por
x∗ = limj→∞
xj
3.1.1 Exemplo de Aplicacao
Aqui ilustramos a aplicacao do problema de encontrar a raiz de umaequacao nao-linear em circuitos eletricos. O circuito eletrico exemplo, des-crito na Figura 3.1, consiste de uma fonte de tensao contınua E em serie comum resistor e um elemento nao-linear, cuja queda de tensao x e dada por umafuncao nao linear g(x) que regula a corrente y que circula na malha, sendoy uma funcao da queda de tensao no componente nao linear, i.e., y = g(x).Aplicando a lei das malhas no circuito obtemos
E = Ry + x (3.1)
= Rg(x) + x (3.2)
portanto
g(x)− E
R+
x
R= 0. (3.3)
O problema e encontrar um ponto de operacao para o sistema, ou seja, valoresde tensao ou corrente que definam um ponto de equilıbrio que nada mais edo que a solucao de (3.3). Fazendo
f(x) = g(x)− E − x
R
o problema e encontrar um zero de f(x). Para o caso do grafico dado naFigura 3.1, observamos que a funcao f(x) tem tres possıveis solucoes, cadauma delas definindo um ponto de operacao distinto para o circuito.
O numero e existencia de solucao de uma funcao nao-linear f(x) dependeintrinsecamente da funcao. Alguns exemplos sao:
3. Resolucao de Equacoes Nao-Lineares 35
++
− −
Ey = g(x)
R
x
y
(E − x)/R
g(x)
Figura 3.1: Circuito eletrico com componente nao-linear.
a) f(x) = ex nao tem zero;
b) f(x) = ex − e−x tem apenas um zero;
c) f(x) = ex − e−x − 3x tem tres zeros; e
d) f(x) = cos x− 1/2 tem um numero infinito de zeros.
Ilustracoes graficas das funcoes acima estao na Figura 3.2.
−4 −2 0 2 40
5
10
15
20
25
−4 −2 0 2 4−30
−20
−10
0
10
20
30
−4 −2 0 2 4−1.5
−1
−0.5
0
0.5
1
1.5
−5 0 5−1.5
−1
−0.5
0
0.5
f(x)=exp(x) f(x)=exp(x)−exp(−x)
f(x)=exp(x)−exp(−x)−3x
f(x)=cox(x) − 1/2
Figura 3.2: Numero de zeros para varias funcoes.
36 3. Resolucao de Equacoes Nao-Lineares
3.2 Ordem de Convergencia
O conceito de convergencia e muito importante no estudo da matematicanumerica e sera utilizado nas proximas secoes. Em geral este assume ex-pressoes como:
a) o metodo converge como 1/n;
b) o metodo converge como 1/k3.5;
c) o metodo converge como h3;
d) o erro e da ordem h4;
e) o erro decai como e−n; e
f) a taxa de convergencia e log(n)/n.
Precisamos de uma nocao sobre como o erro tende a zero a medida queos parametros variam. Isto nos permite comparar diferentes metodos.
Definicao 3.1 Uma sequencia x0, x1, . . . converge para x se dado ǫ > 0 existeum I tal que qualquer que seja i > I, |xi − x| < ǫ. Neste caso, temos:
limj→∞
xj = x
Definicao 3.2 Seja uma sequencia x0, x1, . . . que converge para x. Seja ej =|xj − x|. Se existe um numero p > 1 e uma constante c 6= 0 tal que
limj→∞
ej+1
epj= c
entao p e dito ordem de convergencia e c, constante assintotica de erro.
Se p = 1, 2, ou 3, entao a convergencia e dita linear, quadratica ou cubica.Se a sequencia x0, x1, . . . e produzida por uma funcao φ onde
xj+1 = φ(xj, xj−1, . . . , xj−m+1)
entao dizemos que φ e de ordem m. Quando a convergencia e linear, entaoisto significa que a cada passo do metodo o erro e reduzido (aproximada-mente) de um fator constante. Se a convergencia e quadratica, entao o erroe assintoticamente reduzido do quadrado do erro anterior.
3. Resolucao de Equacoes Nao-Lineares 37
Exercıcios
Considere as series:
i. xk = 1/k, k = 1, 2, . . .;
ii. xk = 1/2k, k = 1, 2, . . .; e
iii. xk+1 = αkxk + β, k = 1, 2, . . ., com α ∈ (0, 1), β ∈ R e x1 ∈ R.
Para cada serie, voce pode afirmar se ela converge? Utilize a definicao deconvergencia para responder a pergunta. Se for convergente, qual e a taxade convergencia?
3.3 Metodos Iterativos para Resolucao de
Equacoes
Qualquer metodo iterativo e formado de quatro partes:
a) Estimativa inicial: uma ou mais aproximacoes para a raiz desejada.
b) Atualizacao: uma formula que atualize a solucao aproximada.
c) Criterio de parada: uma forma de estabelecer quando parar o processoiterativo em qualquer caso.
d) Estimador de exatidao: esta associado ao criterio de parada e proveuma estimativa do erro cometido.
O item (a) e obtido via separacao das raızes, enquanto o item (b) sera ana-lisado posteriormente caso a caso conforme o metodo. Vejamos os itens (c)e (d) simultaneamente. Em princıpio, podemos parar um processo iterativode quatro maneiras:
a)|xj−xj−1|
|xj | < ǫ1
b) |f(xj)| < ǫ2
c) DIGSE(xj, xj−1) > k
d) i > L
38 3. Resolucao de Equacoes Nao-Lineares
onde: ǫ1, ǫ2 sao valores de tolerancia dados, k e o numero de dıgitos signifi-cativos exatos requeridos na aproximacao final, e L e o numero maximo deiteracoes permitido.
O criterio (a) se refere ao erro relativo entre xj e xj−1. O criterio (b) eum limite para o modulo do valor de f em xj. Pode ocorrer que um criterioseja satisfeito sem que os outros sejam, conforme e ilustrado na Figura 3.3.Para certos valores de ǫ1 e ǫ2, o segundo criterio pode ser satisfeito na Figura3.3(a) enquanto o primeiro criterio pode falhar. Na parte (b) da figura oinverso ocorre.
x∗
x∗
xjxj xj−1
xj−1xx
f(x)
(a)
(b)
Figura 3.3: Dificuldades com criterios de convergencia.
O terceiro criterio esta relacionado com o erro relativo, porem da umaideia mais clara da exatidao obtida.
3.4 Metodos de Quebra
Os metodos de quebra sao os mais intuitivos geometricamente, contudo,sao os que convergem mais lentamente. A partir de um intervalo que contenhauma raiz para f(x) = 0 se parte este intervalo em outros menores que aindacontenham pelo menos uma raiz de f(x) = 0. E necessario que f troque desinal no intervalo inicial e seja contınua dentro do intervalo.
3.4.1 Metodo da Biseccao
O metodo da biseccao, inspirado no Teorema de Bolzano, parte de umintervalo [a, b] que contenha uma raiz para f(x) = 0 onde f(a) · f(b) < 0,
3. Resolucao de Equacoes Nao-Lineares 39
ou seja, f(x) corta o eixo x em pelo menos um ponto de [a, b]. O passos doalgoritmo sao dados a seguir.
Passos Gerais do Algoritmo
1) Calcula-se f(x) no ponto medio de [a, b] : xm = a+b2
2) Se f(xm) 6= 0 (i.e., f(a) · f(xm) < 0 ou f(xm) · f(b) < 0), escolhe-se umnovo intervalo de modo que f tenha sinais opostos nas extremidades
3) Repete-se a partir de (1) ate que tenhamos chegado “suficientementeperto da raiz”
Sejam x0 = a e x1 = b dois pontos que definem um intervalo l0. DaFigura 3.4 observa-se que f(a) · f(xm) < 0 onde xm = a+b
2= x2. Portanto,
determinamos que o intervalo l1 = [x0, x2] contem uma raiz de f(x) = 0.Mais detalhadamente, o metodo da biseccao pode ser descrito conforme oalgoritmo abaixo. A Figura 3.4 ilustra o funcionamento do algoritmo.
a b x
f(x)
I0
I1
I2
Figura 3.4: Ilustracao do comportamento do algoritmo da biseccao
Biseccao(f, a, b, L, ǫ1, ǫ2)
1: x0 ← a, x1 ← b, i← 02: f0 ← f(x0), f1 ← f(x1)3: if f0 · f1 > 0 then4: Saıda “erro: nao [a, b] nao satisfaz condicoes iniciais”
40 3. Resolucao de Equacoes Nao-Lineares
5: end if6: while |f0| > ǫ2 e |f1| > ǫ2 e i ≤ L do7: if |x0 − x1| < ǫ1|x1| then8: Saıda (x0, x1);9: end if10: x2 ← (x0 + x1)/211: f2 ← f(x2)12: if f2 · f0 < 0 then13: x1 ← x2
14: f1 ← f215: else16: x0 ← x2
17: f0 ← f218: end if19: i← i+ 120: end while21: if i > L then22: Saıda “nao atingiu exatidao em L iteracoes”23: end if24: if |f0| 6 ǫ2 then25: Saıda (x0)26: else27: Saıda (x1)28: end if
A busca de um intervalo inicial [a, b] onde f(a).f(b) < 0 pode ser exem-plificada para a funcao f(x) = e−x − x que esta ilustrada na Figura 3.5.A partir dos valores de f(x) obtidos na Tabela 3.1, podemos deduzir que ointervalo inicial [a, b] = [0.5, 1.0] satisfaz a condicao necessaria para aplicacaodo metodo da biseccao. Conforme dados da tabela, podemos fazer a = 0.5 eb = 1.0 tal que [a, b] contem uma raiz para f(x).
Tabela 3.1: Valores da funcao f(x) = e−x − xx f(x)0 10.5 0.10651.0 -0.63211.5 -1.27682.0 -1.8646
3. Resolucao de Equacoes Nao-Lineares 41
x
y
y = x
y = e−x
Figura 3.5: Funcao f(x) = e−x − x.
Observacoes:
1) pode ser difıcil encontrar um intervalo inicial, conforme ilustracao daFigura 3.6; e
2) se ocorrer um erro de arredondamento, mesmo que pequeno, no mo-mento que se avalia o sinal do ponto medio, o intervalo resultante podenao conter uma raiz.
(a) (b) (c)
Figura 3.6: Dificuldade na obtencao do intervalo inicial
42 3. Resolucao de Equacoes Nao-Lineares
Ordem de Convergencia da Biseccao
Seja x a raiz de f(x). Seja ej = |xj − x| o erro da iteracao j. Uma vezque xj+1 =
xj+xj−1
2tal que f(xj)f(xj−1) < 0, temos que
ej+1 6ej2⇔ ej+1
ej6
1
2(3.4)
Logo,
limj→∞
ej+1
ej=
1
2
Portanto, fica evidenciado que o metodo da biseccao tem convergencia linear.Vamos agora relacionar a convergencia linear com o numero DIGSE,
obtido a cada iteracao:
DIGSE(xj+1, xj)−DIGSE(xj, xj−1) =
= −(
0.3 + log(
|xj+1−xj ||xj |
))
+(
0.3 + log(
|xj−xj−1||xj−1|
))
=
= log(
|xj−xj−1||xj−1|
)
− log(
|xj+1−xj ||xj |
)
Indicando ER(xj) =|xj−xj−1||xj−1| e usando (3.4), obtemos
DIGSE(xj+1, xj)−DIGSE(xj, xj−1) = logER(xj)
ER(xj+1)
> log 2
DIGSE(xj+1, xj) ≈ DIGSE(xj, xj−1) + 0.33
A velocidade de convergencia da biseccao e 0.3DIGSE/ iteracao, isto e, acada tres ou quatro iteracoes ganha-se um DIGSE, ou ainda um bit a cadaiteracao.
Exemplo: Minimizacao de Funcoes
Suponha que cada cm2 de latao custa R$ 2, 00. Qual deve ser a alturah (em cm) e o raio r (em cm) de uma lata sem tampa, de menor custopossıvel, tal que seu volume seja maior ou igual a 500cm3? Podemos expressareste problema em uma linguagem matematica conhecida como programacaomatematica:
P : Minimize f(r, h) = 2(πr2 + 2πrh)r, h
Sujeito a :πr2h > 500
3. Resolucao de Equacoes Nao-Lineares 43
Observando que h = 500/(πr2) e substituindo esta expressao em P , obtemos:
P : Minimize f(r, h) = 2(πr2 + 2πrh) = 2[
πr2 + 2πr 500πr2
]
= 2πr2 + 4×500r
r, h
Note que f e uma funcao convexa e, portanto, o ponto de mınimo pode serencontrado fazendo df
dr= 0, o que nos leva a:
df
dr= 4πr − 2000
r2= 0
portanto, o raio otimo e:
r∗ =
(
500
π
) 13
e a altura otima e:
h∗ =500
π(
500π
) 23
=500
13
π13
=
(
500
π
) 13
= r∗
Em valores numericos: (r∗, h∗) = (5.4193, 5.4193).
Tarefa: utilize o metodo da biseccao para encontrar a solucao otima (r∗, h∗).
Exemplo: Autovalores
Encontre um autovalor para a matriz A dada por:
A =
0 1 0 00 0 1 00 0 0 1−4 −1 5 1
Os autovalores de uma matriz A ∈ Rn×n sao definidos como as raızes da
equacao caracterıstica de grau n:
p(λ) = det(λI − A) = λn + an−1λn−1 + . . .+ a1λ+ a0 = 0
Assim, podemos obter a equacao caracterıstica de A como segue:
p(λ) = det
λ −1 0 00 λ −1 00 0 λ −14 1 −5 λ− 1
44 3. Resolucao de Equacoes Nao-Lineares
Fazendo uso da formula recursiva para calculo de determinante, deduzimosque:
p(λ) = λ(−1)1+1det
λ −1 00 λ −11 −5 λ− 1
+ 4(−1)4+1det
−1 0 0λ −1 00 λ −1
= λ[λ2(λ− 1) + 1− 5λ]− 4[−1]= λ4 − λ3 + λ− 5λ2 + 4
Fazendo p(λ) = 0 e obtendo as raızes, podemos verificar que σ(A) =2.5616,−1.5616,−1, 1 e o conjunto de autovalores de A. As raızes de p(λ)sao ilustradas na Figura 3.7.
−2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 3−10
−5
0
5
10
15
20
Figura 3.7: Raızes do polinomio caracterıstico p(λ) = λ4 − λ3 + λ− 5λ2 + 4de A.
3.4.2 Metodo da Falsa Posicao
Sob as mesmas condicoes iniciais do metodo da biseccao, temos aindavarias maneiras de particionar o intervalo [a, b] que contem pelo menos umaraiz. Por exemplo, podemos particionar [a, b] na interseccao da reta que uneos pontos (a, f(a)) e (b, f(b)) com o eixo x. Seja xS tal ponto. Escolhe-seentao o novo subintervalo conforme a variacao do sinal da curva f . Esteprocedimento esta ilustrado na Figura 3.8. Da interseccao da reta que une
3. Resolucao de Equacoes Nao-Lineares 45
os pontos (a, f(a)) e (b, f(b)) com a reta y = 0, temos que:
xS = a− (b− a).f(a)
f(b)− f(a)
a b x
y
f(x)
I0
I1(a, f(a))
(b, f(b))
xs
Figura 3.8: Ilustracao do metodo da falsa posicao
Falsa Posicao(a, b, f, k, Lim)
1: x1 ← a e x2 ← b2: f1 ← f(x1) e f2 ← f(x2)3: xa ← a, xS ← b, e i← 14: while i ≤ Lim e DIGSE(xS, xa) < k do5: xa ← xS ⊲ xa e xS da iteracao anterior6: xS = x1 − (x2−x1)f1
f2−f1
7: fs = f(xS)8: if fS.f1 < 0 then9: x2 ← xS
10: f2 ← fS11: else12: x1 ← xS
13: f1 ← fS14: end if
46 3. Resolucao de Equacoes Nao-Lineares
15: i← i+ 116: end while17: Saıda xS, DIGSE(xS, xa)
Exemplo 1
A tarefa consiste em encontrar um zero para o polinomio p(x) = x4 −2x3− 6x2+2 onde a = −1 e b = 0. Note que p(a) = −1 e p(b) = 2, portantoo intervalo inicial satisfaz a condicao necessaria para aplicacao do algoritmoda falsa posicao. A Tabela 3.2 abaixo ilustra o comportamento do algoritmopara a sequencia dos 5 primeiros iterandos.
Tabela 3.2: Aplicacao do algoritmo da falsa posicaoi a xS f(xS)0 −1.0 +0.0 +0.1231 −1.0 −0.666 666 666 7 −2.74× 10−2
2 −0.703 296 703 3 −0.666 666 666 7 −1.95× 10−4
3 −0.696 650 702 1 −0.666 666 666 7 −1.34× 10−6
4 −0.609 603 305 1 −0.666 666 666 7 −9.22× 10−9
5 −0.696 602 978 6 −0.666 666 666 7 −2.22× 10−10
Exemplo 2
Aqui vamos aplicar o metodo da falsa posicao para encontrar uma raizde f(x) = x4 − 14x2 + 24x − 10. Conforme Figura 3.9 existe uma raiz nointervalo I = [−5, 0]. As Figuras 3.10 e 3.11 ilustram o comportamento dometodo da falsa posicao nas 8 primeiras iteracoes. O metodo converge paraa raiz x∗ = −4.4593.
Exercıcios
i. Considere um metodo de quebra que, ao contrario do metodo da bi-seccao que testa o ponto medio (x0 + x1)/2, testa o ponto xs =(x0 + 3x1)/4 para fazer a seccao do intervalo [x0, x1] em [x0, xs] (sef(x0)f(xs) < 0) ou [xs, x1] (se f(xs)f(x1) < 0). Implemente este algo-ritmo em matlab. Compare o desempenho do metodo da biseccao e ometodo proposto aqui na busca das raızes do polinomio caracterısticop(λ) = λ4 − λ3 + λ− 5λ2 + 4.
3. Resolucao de Equacoes Nao-Lineares 47
−5 −4 −3 −2 −1 0−150
−100
−50
0
50
100
150
x
f(x)
=x4 −
14x
2 + 2
4x −
10
−5 0 5−200
−100
0
100
200
300
400
x
f(x)
=x4 −
14x
2 + 2
4x −
10
Figura 3.9: Grafico da funcao f(x) = x4 − 14x2 + 24x− 10
−6 −4 −2 0 2−200
−100
0
100
200
300
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 1
−6 −4 −2 0 2−200
−100
0
100
200
300
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 2
−6 −4 −2 0 2−200
−100
0
100
200
300
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 3
−6 −4 −2 0 2−200
−100
0
100
200
300
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 4
Figura 3.10: Iteracoes 1, 2, 3 e 4 do metodo da falsa posicao
48 3. Resolucao de Equacoes Nao-Lineares
−6 −4 −2 0 2−200
−100
0
100
200
300
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 5
−6 −4 −2 0 2−200
−100
0
100
200
300
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 6
−6 −4 −2 0 2−200
−100
0
100
200
300
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 7
−6 −4 −2 0 2−200
−100
0
100
200
300
xf(
x)=
x4 − 1
4x2 +
24x
− 1
0
iteracao 8
Figura 3.11: Iteracoes 5, 6, 7 e 8 do metodo da falsa posicao
ii. Para o metodo de quebra dado no item acima, qual e a ordem deconvergencia do algoritmo?
3.5 Metodos de Ponto Fixo
Inicialmente relembramos que o problema de interesse e encontrar umponto x tal que f(x) = 0, onde f(x) e uma funcao nao linear. Facamos asubstituicao
g(x) = x+ c(x).f(x)
onde c(x) deve ser escolhida de forma que c(x) 6= 0 para todo x ∈ [a, b]. Sabe-mos que existe uma raiz no intervalo [a, b]. Assim, o problema de encontrarx tal que f(x) = 0 pode ser transformado no problema de encontrar x talque g(x) = x. Usando a funcao auxiliar, buscamos um ponto fixo x∗ tal que
x∗ = g(x∗).
Partindo de um ponto inicial x0 utilizamos o processo iterativo
xk+1 = g(xk)
3. Resolucao de Equacoes Nao-Lineares 49
ate que convergencia seja atingida para o ponto fixo x∗. Note que x∗ =g(x∗) ⇔ f(x∗) = 0. A seguir enunciamos alguns resultados fundamentaispara aplicacao de metodos de ponto fixo.
Teorema 3.1 Seja I = [a, b] um intervalo e g(x) uma funcao satisfazendo:
a) g e contınua em I; e
b) g(I) ⊆ I.
Entao existe pelo menos um x∗ ∈ I tal que g(x∗) = x∗, ou seja, g contem umponto fixo no intervalo I.
Prova: Como g(I) ⊆ I, entao vale
a 6 g(a) 6 ba 6 g(b) 6 b
Se g(a) = a ou g(b) = b, entao temos um ponto fixo. Se a e b nao sao pontosfixos, entao g(a)− a > 0 e g(b)− b < 0. Considere a funcao
F (x) = g(x)− x.
Note que F (x) e contınua com F (a) > 0 e F (b) < 0. Logo, pelo Teorema doValor Intermediario (Teorema A.1) a funcao F (x) deve assumir valor 0 paraalgum x∗ ∈ (a, b). Portanto x∗ e um ponto fixo de g(x) contido em I.
Teorema 3.2 Seja g uma funcao definida em I = [a, b], satisfazendo
a) g(I) ⊆ I; e
b) ∀x ∈ I, |g′(x)| 6 L < 1 (isto e, g e um operador contrativo). Entaoexiste exatamente um x∗ ∈ I tal que x∗ = g(x∗).
Prova: A condicao (b) implica na continuidade da funcao g. Pelo Teorema3.1, existe pelo menos um x∗ ∈ I tal que x∗ = g(x∗). Sejam x∗
1 e x∗2 dois ele-
mentos distintos de I, satisfazendo x∗1 = g(x∗
1) e x∗2 = g(x∗
2). Daı, verificamosque:
|x∗1 − x∗
2| = |g(x∗1)− g(x∗
2)|= |g′(β)(x∗
1 − x∗2)| para algum β ∈ [x∗
1, x∗2]
pelo Teorema do Valor Medio (3.5)
6 L|x∗1 − x∗
2|< |x∗
1 − x∗2|
Mas isto e uma contradicao, portanto x∗1 = x∗
2.
50 3. Resolucao de Equacoes Nao-Lineares
Teorema 3.3 Seja g uma funcao que satisfaz as condicoes (a) e (b) do Teo-rema 3.2. Para x0 ∈ I, a sequencia xk+1 = g(xk), k = 0, 1, . . . , converge parao ponto x∗ e o erro de truncamento no processo-limite cometido na k-esimaiteracao satisfaz:
|x∗ − xk| = |etr| < Lk
1−L|x1 − x0| (erro a priori)
|x∗ − xk| = |etr| < L1−L|xk − xk−1| (erro a posteriori)
Prova: A partir do Teorema 3.2, sabemos que existe um ponto fixo x∗ unico.Sabemos tambem que
|xk − x∗| = |g(xk−1)− g(x∗)|= |g′(β)(xk−1 − x∗)| para β ∈ [xk−1, x
∗]
= |g′(β)|.|xk−1 − x∗|6 L|xk−1 − x∗|.
Sucessivamente, podemos verificar que
|xk − x∗| 6 L|xk−1 − x∗| 6 L2|xk−2 − x∗| 6 Lk|x0 − x∗|.Como L < 1, temos
limk→∞
Lk = 0⇒ limk→∞|xk − x∗| = 0⇒ lim
k→∞xk = x∗.
Note que
|xk−1 − xk| = |g(xk−2)− g(xk−1)| = |g′(β)|.|xk−2 − xk−1|6 L|xk−2 − xk−1|6 L2|xk−3 − xk−2|6
...
6 Lk−1|x0 − x1|.Considere uma iteracao k e j > k, podemos verificar que
|xj − xk| = |xj − xj−1 + xj−1 − xj−2 + xj−2 − . . .+ xk+1 − xk|= |(xj − xj−1) + (xj−1 − xj−2) + . . .+ (xk+1 − xk)|6 |xj − xj−1|+ |xj−1 − xj−2|+ . . .+ |xk+1 − xk|6 Lj−1|x0 − x1|+ Lj−2|x0 − x1|+ . . .+ Lk|x0 − x1|6 Lk(Lj−1−k + Lj−2−k + . . .+ L0)|x0 − x1|
6 Lk
( ∞∑
i=0
Li
)
|x0 − x1|
6Lk
1− L|x1 − x0|.
3. Resolucao de Equacoes Nao-Lineares 51
Fazendo xj → x∗, concluımos que
|etr| = |x∗ − xk| 6Lk
1− L|x1 − x0|.
De forma semelhante, pode-se deduzir o erro de truncamento a posterioriconforme enunciado no teorema.
Teorema 3.4 Seja g uma funcao definida em I = [a, b], satisfazendo
a) g e contınua;
b) g(I) ⊆ I; e
c) |g(x)− g(y)| 6 γ|x− y| para todo x, y ∈ I, x 6= y, e algum γ < 1.
Entao existe exatamente um x∗ ∈ I tal que x∗ = g(x∗) e o processo iterativoxk+1 = g(xk), k = 0, 1, . . . , converge para x∗ se x0 ∈ I.
Prova: Primeiro, vamos demonstrar a unicidade de x∗. As condicoes (a) e(b) sao as mesmas do Teorema 3.1, implicando na existencia de pelo menosum ponto fixo em I. Suponha que existam dois pontos fixos x∗
1, x∗2 ∈ I
distintos. Entao:
|x∗1 − x∗
2| = |g(x∗1)− g(x∗
2)|6 γ|x∗
1 − x∗2|
< |x∗1 − x∗
2|contradizendo a hipotese. Concluımos que existe exatamente um ponto fixox∗ em I.
Agora, podemos demonstrar a convergencia para o ponto fixo x∗. Noteque:
|xk − x∗| = |g(xk−1)− x∗|= |g(xk−1)− g(x∗)|6 γ|xk−1 − x∗|
6...
6 γk|x0 − x∗|Desta deducao segue que:
limk→∞|xk − x∗| 6 lim
k→∞γk|x0 − x∗|
= |x0 − x∗| limk→∞
γk
= 0 [Pois γ < 1]
52 3. Resolucao de Equacoes Nao-Lineares
Portanto, concluımos que limk→∞ xk = x∗.
Considere a funcao f(x) = x3−5x+3. Um exemplo de processo iterativoe: c(x) = 1
5que nos leva a g(x) = x+c(x).f(x)⇒ g(x) = x+ x3−5x+3
5= x3+3
5.
3.5.1 Metodo da Iteracao Linear
No metodo da iteracao linear, dada uma funcao f(x), utilizamos comofuncao auxiliar c(x) = 1 que induz a funcao de iteracao g(x) = x+c(x).f(x) =x+ f(x).
Dependendo da funcao de iteracao, podemos obter um comportamentodesejado (convergencia para a solucao) ou indesejado (divergencia), conformeilustracao nas Figuras 3.12, 3.13, 3.14, e 3.15. Os pontos x∗ que satisfazema condicao x∗ = g(x∗) sao ditos pontos fixos de g(x) e representam geome-tricamente os pontos de interseccao da reta y = x com a curva y = g(x).
xx1 x2x3 x4x5
y = x
y = g(x)
y
Figura 3.12: Convergencia oscilante.
Exemplo 1
Para a funcao f(x) = x2
10− x + 1, podemos obter uma funcao g(x) fazendo
c(x) = 1, que nos leva a g(x) = x2
10+ 1. Para o intervalo I = [1, 1.5] vamos
verificar se as condicoes do Teorema 3.2 sao satisfeitas.
3. Resolucao de Equacoes Nao-Lineares 53
xx0x1x2x3x4x5
y = x
y = g(x)
y
Figura 3.13: Convergencia monotonica.
xx0 x1x2 x3
x4 x5
y = x
y = g(x)
y
Figura 3.14: Divergencia oscilante.
54 3. Resolucao de Equacoes Nao-Lineares
xx0 x1 x2 x3 x4
y = x
y = g(x)
y
Figura 3.15: Divergencia monotonica.
Primeiro, verificamos se g(I) ⊆ I. Seja x ∈ I, ou seja, 1 6 x 6 1.5. Noteque g(x) 6 1.5 ⇔ x2 6 10 × 0.5 ⇔ x 6
√5 ⇔ x 6 2.2361. De maneira
similar, g(x) > 1⇔ x2 > 0. Portanto, se x ∈ I temos que g(x) ∈ I.
Ainda resta verificar se |g′(x)| < 1. Note que g′(x) = 2x10. Para x ∈ I,
g′(x) 6 2×1.510
= 0.3.
Logo as condicoes do Teorema 3.2 sao satisfeitas e, se tomarmos x0 ∈ I,a sequencia xk+1 = g(xk), k = 0, 1, . . . deve convergir para uma solucao def(x) = 0, conforme mostra o Teorema 3.3.
Para x0 = 1.5 a sequencia de iterandos e descrita na Tabela 3.3 e ilustradana Figura 3.16. Podemos observar que o metodo convergira para o valorx = 1.127 016 653 792 58 que e uma das raızes exatas de f(x) = 0.
Exemplo 2
Para a funcao f(x) = x − 2 sin(x), obtemos a funcao de iteracao g(x) =2 sin(x) fazendo c(x) = −1. Vamos verificar se as condicoes do Teorema 3.2sao satisfeitas para o intervalo I = (π
2, 2π
3) = (900, 1200) ≈ (1.5708, 2.0994).
Observe que 0.866 6 sin(x) 6 1 para x ∈ I, portanto g(x) > 2 sin(2π3) =
1.7321 para todo x ∈ I. Observe tambem que g(x) 6 2 sin(π2) = 2 para todo
x ∈ I. Assim concluımos que g(I) ⊆ I.
Como g′(x) = 2 cos(x), temos que |g′(x)| 6 |2 cos(2π3)| = |2×(−0.5)| = 1.
3. Resolucao de Equacoes Nao-Lineares 55
0 2 4 6 8 10 12 14 16 18 201.1
1.15
1.2
1.25
1.3
1.35
1.4
1.45
1.5
Figura 3.16: Exemplo de sequencia de iterandos de um processo iterativo.
Tabela 3.3: Sequencia de iterandosk xk
0 1.51 1.2252 1.150 06253 1.132 264 375 390 634 1.128 202 261 577 87...
...100 1.127 016 653 792 58
Assim, de acordo com os Teoremas 3.2 e 3.2, o processo iterativo con-vergira para a raiz se x0 ∈ I. A sequencia obtida para x0 = π/2 e dada naTabela 3.4.
3.5.2 Exercıcios
i. Para a funcao f(x) = x2
10− x + 1 do exemplo 1, foi demonstrado que
o operador iterativo g(x) obtido com c(x) = 1 e convergente dentro dointervalor I = [1, 1.5]. Calcule analiticamente a raiz x⋆ ∈ I. Comx0 = 1.2, aplique o processo iterativo ate a iteracao 4 e obtenha x4.Verifique que o erro de truncamento observado |x⋆ − x4| esta dentrodo limite de erro a priori estabelecido pelo Teorema 3.3. Repita a
56 3. Resolucao de Equacoes Nao-Lineares
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5−2
−1
0
1
2
3
4
5
y=x
y=g(x)
y=0
o
Figura 3.17: Metodo de ponto fixo para raiz de f(x) = x− 2 sin(x).
verificacao para o erro de truncamento a posteriori.
3.6 Metodo de Newton
Seja f : R→ R uma funcao diferenciavel. Dado xk, o metodo de Newtonutiliza a expansao de Taylor em torno do iterando xk para obter o proximoiterando:
f(xk+1) = f(xk) +df(xk)
dx(xk+1 − xk) +O(‖xk+1 − xk‖2)
Para ‖xk+1 − xk‖ pequeno, fazemos
f(xk+1) ≈ f(xk) +df(xk)
dx(xk+1 − xk)
= f(xk) + f ′(xk)(xk+1 − xk)
= 0
que nos leva a relacao
f ′(xk)(xk+1 − xk) = −f(xk)⇒
xk+1 = xk − f(xk)
f ′(xk)
3. Resolucao de Equacoes Nao-Lineares 57
Tabela 3.4: Sequencia de iterandosk xk
0 π/21 22 1.8183 1.9384 1.8665 1.9136 1.837...
...7 1.895 441 239
O comportamento do metodo de Newton pode ser ilustrado na Figura3.18. O desenvolvimento acima pode ser condensado no algoritmo de Newton,cujos passos sao dados abaixo.
Newton(f, x0, ǫ)
1: k ← 02: while |f(xk)| > ǫ do
3: xk+1 = xk − f(xk)f ′(xk)
4: k ← k + 15: end while6: Saıda xk
3.6.1 Exemplo 1
Considere o polinomio p(x) = x3−5x2+17x+21, cuja derivada e p′(x) =3x2 − 10x+ 17. Tomando como ponto inicial x0 = −1, o metodo de Newtongera a sequencia de iterandos dada conforme Tabela 3.5.
3.6.2 Exemplo 2
Para a funcao f(x) = xe−x − 0.2, temos como derivada a funcao f ′(x) =e−x(1−x). Tomando como ponto inicial x0 = 0, o metodo de Newton produza sequencia de iterandos listada na Tabela 3.6.
58 3. Resolucao de Equacoes Nao-Lineares
y
xx0x1x2
x∗
f(x0)y = f(x)
f(x1)
Figura 3.18: Ilustracao do metodo de Newton
Tabela 3.5: Sequencia de iterandos produzida pelo metodo de Newtonk xk p(xk) p′(xk)0 -1.0 -2 301 -0.933 333 333 -0.035 259 259 28.927 6692 -0.932 115 256 -0.000 011 571 28.927 6623 -0.932 114 856 -0.000 000 000 28.927 6624 -0.932 114 856 -0.000 000 000 28.927 662
3.6.3 Detalhes do Metodo de Newton
Seja f(x) uma funcao contınua e p(x) uma aproximacao de f , em tornodo ponto x0, obtida atraves da serie de Taylor:
p(x) = f(x0) + f ′(x0)(x− x0) + f ′′(x0)(x− x0)2
2!+ f ′′′(x0)
(x− x0)3
3!+ . . .
+f (m)(x0)(x− x0)m
m!(3.6)
De acordo com o Teorema de Taylor, se a (m+1)-esima derivada e contınuanuma vizinhanca de x0, entao o erro tem a forma:
f(x)− p(x) = (x− x0)m+1f(m+1)(ε)
(m+ 1)!
3. Resolucao de Equacoes Nao-Lineares 59
Tabela 3.6: Sequencia de iterandos produzida pelo metodo de Newtonk xk f(xk) f ′(xk)0 0 -0.2 1.01 0.2 -0.036 253 849 0.654 9842 0.255 350 689 -0.002 193 918 0.576 8383 0.259 154 037 -0.000 009 554 0.571 7134 0.259 171 101 -0.000 000 000 0.571 690
onde ε = x0 + θ(x − x0) para algum θ ∈ (0, 1). Na interpolacao direta, afuncao f e interpolada num ponto proximo da raiz dessa funcao. Podemossupor, entao, que a raiz desse polinomio dara uma boa aproximacao para ozero da funcao.
O metodo de Newton leva em conta so a primeira derivada de (3.6). Logo,se o ponto aproximado e xk, entao
p(xk+1) = f(xk) + f ′(xk)(xk+1 − xk)
Fazendo p(xk+1) = 0, obtemos a nova aproximacao da raiz:
f(xk) + f ′(xk)(xk+1 − xk) = 0⇒
xk+1 = xk − f(xk)
f ′(xk)
3.6.4 Convergencia do Metodo de Newton
O metodo de Newton converge quadraticamente se f ′(x∗) 6= 0 e se x0 esuficientemente proximo de x∗.
Seja I = [x∗ − δ, x∗ + δ] um intervalo em torno da solucao x∗ dentro doqual as seguintes condicoes sao satisfeitas:
i. existe uma constante m > 0 tal que |f ′(x)| > m para todo x ∈ I; e
ii. existe uma constante L > 0 tal que |f ′(x)−f ′(y)| 6 L|x−y| para todox, y ∈ I.
Vamos mostrar que se |xk − x∗| 6 δ, entao
|xk+1 − x∗| 6 L
2m|xk − x∗|2 (3.7)
Em outras palavras, a desigualdade (3.7) e satisfeita com c = L/(2m), ga-rantindo dessa forma convergencia quadratica para x∗. Denotando xk+1 por
60 3. Resolucao de Equacoes Nao-Lineares
x+ e xk por x, temos que
x+ = x− f(x)
f ′(x)⇒ |x+ − x∗| = |x− f(x)
f ′(x)− x∗|
=| − f(x)− f ′(x)(x∗ − x)|
|f ′(x)|
=|f(x∗)− f(x)− f ′(x)(x∗ − x)|
|f ′(x)|Lembre-se que f(x∗) = 0. Nos assumimos que |f ′(x)| > m e, portanto,
|x+ − x∗| 6 |f(x∗)− f(x)− f ′(x)(x∗ − x)|
m(3.8)
Para limitar o numerador, podemos proceder como segue
|f(x∗)− f(x)− f ′(x)(x∗ − x)| = |∫ x∗
x
(f ′(u)− f ′(x))du|
6
∫ x∗
x
|f ′(u)− f ′(x)|du
= L
∫ x∗
x
|u− x|du
= L|x∗ − x|2
2(3.9)
Juntando (3.8) e (3.9) obtemos |x+ − x∗| 6 L2m|x∗ − x|2 o que prova (3.7).
A desigualdade (3.7) por si so nao garante que |xk+1 − x∗| → 0. Entretanto,se assumirmos que |x0 − x∗| 6 δ e δ 6 m/L, entao convergencia quadraticasegue imediatamente. Uma vez que |x0 − x∗| 6 δ, podemos aplicar (3.7) eobter:
|x1 − x∗| 6 L
2m|x0 − x∗|2 6 L
2mδ2 6 δ/2.
Uma vez que |x1 − x∗| 6 δ, podemos aplicar (3.7) e obter a desigualdade:
|x2 − x∗| 6 L
2m|x1 − x∗|2 6 L
2mδ2/4 6 δ/8.
Repetindo este processo, concluımos que:
|xk+1 − x∗| 6 L
2m|xk − x∗|2 6 2
(
1
4
)2k
δ.
Observacoes:
3. Resolucao de Equacoes Nao-Lineares 61
1) Segundo o desenvolvimento acima, se f(x∗) = 0 e f ′ e uma funcaocontınua, entao e razoavel assumir que as condicoes acima sao satisfei-tas para algum δ, m e L. Na pratica, entretanto, e difıcil encontrarmosvalores para δ, m e L, portanto o resultado de convergencia nao nos ofe-rece ajuda no sentido de escolhermos o ponto inicial x0, mesmo porqueisto demandaria conhecimento antecipado da existencia de uma raiz.
2) O resultado nos diz que se x0 e suficientemente proximo de x∗, entao ometodo de Newton converge com uma taxa quadratica.
3.6.5 Problemas com o Metodo de Newton
Ha situacoes, tipicamente dependendo do ponto inicial, em que o metodode Newton nao converge para uma solucao. As Figuras 3.19 e 3.20 ilustramo caso onde o metodo de Newton pode entrar em laco infinito e o caso ondeeste pode divergir.
No caso da funcao f(x) = x3 − 2x + 2, o metodo de Newton entra emlaco infinito quando inicia a partir do ponto x(0) = 0. O iterando seguintesera x(1) = 1 e o seguinte ao seguinte sera x(2) = 0, portanto entra em lacoinfinito.
x
yf(x)
x0 = x2x1 = x3
Figura 3.19: Exemplo onde o metodo de Newton entre em laco infinito.
62 3. Resolucao de Equacoes Nao-Lineares
x
f(x)
y
x1 x0
Figura 3.20: Exemplo onde ocorre divergencia do metodo de Newton.
3.6.6 Exercıcios
i. Para a funcao f(x) = x2
10− x + 1, desenvolva o metodo de Newton
obtendo o processo iterativo g(x) = x − f(x)/f ′(x). Para o intervaloI = [1, 1.5], encontre o valor m > 0 tal que f ′(x) ≥ m para todo x ∈ I.Encontre a constante Lipschitz L > 0 tal que |f ′(x)−f ′(y)|/|x−y| ≤ Lpara todo x ∈ I. Determine a raiz x⋆ ∈ I. Encontre δ > 0 que defineo intervalo I = [x⋆ − δ, x⋆ + δ] ⊆ I tal que se o ponto inicial x0 ∈ I, ometodo de Newton converge quadraticamente para x⋆.
3.7 Metodos de Multiplos Passos
Ao contrario dos metodos anteriores, os metodos de multiplos passos usamos valores de f e suas derivadas, se for o caso, para varios pontos anteriores.O exemplo mais conhecido e o metodo das secantes.
3.7.1 Metodo das Secantes
Na pratica, quando for muito complicado calcular derivadas e utilizar ometodo de Newton, podemos alternativamente usar o modelo linear tomandocomo base os dois valores mais recentes de f . A ideia do metodo pode servista na Figura 3.21 abaixo.
Partindo de duas aproximacoes x0 e x1, determinamos a reta que passapor (x0, f(x0)) e (x1, f(x1)). A interseccao dessa reta com o eixo x (defi-nido pela equacao y = 0) determina o proximo iterando x2. Continuamos o
3. Resolucao de Equacoes Nao-Lineares 63
processo a partir de x1 e x2. Temos, portanto, o seguinte processo iterativo
xk+1 = xk −(xk − xk−1)f(xk)
f(xk)− f(xk−1)(3.10)
x
f(x)
x1 x2 x3x4
p1 = (x1, f(x1))
p2 = (x2, f(x2))
p3 = (x3, f(x3)))
Figura 3.21: Ilustracao do metodo das secantes.
Observacoes:
a) Neste metodo nao necessitamos da caracterıstica que e fundamental nometodo da Falsa Posicao, que exige que haja troca de sinal da funcaof no intervalo [xk−1, xk].
b) Questoes de overflow/underflow podem ocorrer. Tanto a formula (3.10)quanto a formula abaixo podem causar problemas de cancelamento sub-trativo ou overflow:
xk+1 =xkf(xk−1)− xk−1f(xk)
f(xk−1)− f(xk)(3.11)
Os problemas potenciais das formulas (3.10) e (3.11) podem ser evita-dos com a formula abaixo:
xk+1 = xk −[
(xk−1 − xk)f(xk)
f(xk−1)
]
/
[
1− f(xk)
f(xk−1)
]
(3.12)
desde que |f(xk)| < |f(xk−1)|. Se isto nao ocorrer, entao fazemos atroca de xk por xk+1.
64 3. Resolucao de Equacoes Nao-Lineares
Secantes(x0, x1, f, ǫ1, ǫ2, L)
1: f0 ← f(x0); f1 ← f(x1)2: if |f1| > |f0| then3: swap(x0, x1)4: swap(f0, f1)5: end if6: for k = 0, 1, . . . , L do7: if |f1| < ǫ1 then8: Saıda (x1, |f(x)| < ǫ1)9: Pare10: end if11: S ← f1/f012: p← (x0 − x1)s13: q ← 1− s14: x2 ← x1 − p/q15: if |x1 − x2| < ǫ2|x2| then16: Saıda (x2, |x1 − x2| < ǫ2|x2|)17: Pare18: end if19: f2 ← f(x2)20: if |f2| > |f1| then21: x0 ← x2
22: f0 ← f223: else24: x0 ← x1
25: f0 ← f126: x1 ← x2
27: f1 ← f228: end if29: end for
Convergencia do Metodo da Secante
Observa-se que o metodo e mais rapido que a iteracao linear ou bisseccao;contudo, pode ser mais lento que o metodo de Newton.
Teorema 3.5 Se f(x∗) = 0 e f ′(x∗) 6= 0 e f ′′ e contınua, entao existe umintervalo aberto N(x∗) = x : |x − x∗| < ǫ, ǫ > 0, tal que se x0 e x1 estaoem N(x∗) e sao distintos, entao a sequencia dada pelo metodo da secante etal que
limk→∞
xk = x∗
3. Resolucao de Equacoes Nao-Lineares 65
Exemplo
Para o problema de encontrar uma raiz da funcao f(x) = x4 − 14x2 +24x− 10, vamos aplicar o metodo das secantes. O grafico de f(x) e ilustradona Figura 3.9, indicando que existem quatro raızes. Aplicando o metodo dassecantes com os pontos iniciais x0 = −5 e x1 = 0, obtemos as iteracoes dadasnas Figuras 3.22 e 3.23. O metodo converge para a raiz x∗ = 0.6705.
−6 −4 −2 0 2−150
−100
−50
0
50
100
150
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 1
−6 −4 −2 0 2−150
−100
−50
0
50
100
150
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 2
−6 −4 −2 0 2−150
−100
−50
0
50
100
150
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 3
−6 −4 −2 0 2−150
−100
−50
0
50
100
150
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 4
Figura 3.22: Iteracoes 1, 2, 3 e 4 do metodo das secantes
3.7.2 Breve Introducao a Interpolacao Polinomial
Aqui faremos uma breve introducao ao problema de interpolacao comenfoque em interpolacao polinomial. A interpolacao polinomial e base parao desenvolvimento do metodo de Muller.
Polinomio Interpolador de Lagrange
Dado um conjunto (x0, y0), (x1, y1), . . . , (xn, yn) de pontos de uma curvaf(x), sendo yk = f(xk) para k = 0, . . . , n, o polinomio interpolador de La-grange e um polinomio pn(x) de grau n que passa por todos os pontos. AFigura 3.24 ilustra um polinomio p4(n) que atravessa os pontos indicados. O
66 3. Resolucao de Equacoes Nao-Lineares
−6 −4 −2 0 2−150
−100
−50
0
50
100
150
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 5
−6 −4 −2 0 2−150
−100
−50
0
50
100
150
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 6
−6 −4 −2 0 2−150
−100
−50
0
50
100
150
x
f(x)
=x4 −
14x
2 + 2
4x −
10
iteracao 7
−6 −4 −2 0 2−150
−100
−50
0
50
100
150
xf(
x)=
x4 − 1
4x2 +
24x
− 1
0
iteracao 8
Figura 3.23: Iteracoes 5, 6, 7 e 8 do metodo das secantes
polinomio de Lagrange e definido por:
pn(x) =n∑
k=0
Lk(x) (3.13)
Lk(x) = yk
n∏
j=0,j 6=k
x− xj
xk − xj
De forma explıcita, o polinomio (3.13) fica:
pn(x) =(x− x1)(x− x2) . . . (x− xn)
(x0 − x1)(x0 − x2) . . . (x0 − xn)y0
+(x− x0)(x− x2) . . . (x− xn)
(x1 − x0)(x1 − x2) . . . (x1 − xn)y1
+...
+(x− x0)(x− x1) . . . (x− xn−1)
(xn − x0)(xn − x1) . . . (xn − xn−1)yn
A formula acima foi inicialmente descoberta por Waring (1779), redescobertapor Euler em 1783, e publicada mais tarde por Lagrange em 1795 [4].
3. Resolucao de Equacoes Nao-Lineares 67
Para o caso de n = 2, o polinomio de Lagrange toma a forma:
p2(x) =(x− x1)(x− x2)
(x0 − x1)(x0 − x2)y0 +
(x− x0)(x− x2)
(x1 − x0)(x1 − x2)y1 +
(x− x0)(x− x1)
(x2 − x0)(x2 − x1)y2
Observe que p2(x) passa pelos pontos (x0, y0), (x1, y1) e (x2, y2).
x
y
p(x)
2
2
4
4
6
6
8
8
10
10
−2
−4
−6
12
Figura 3.24: Ilustracao de interpolacao polinomial
Diferencas Divididas de Newton
O metodo das diferencas divididas de Newton e um maneira de encontrarum polinomio interpolador (um polinomio que passa por um conjunto par-ticular de pontos). De forma similar ao polinomio interpolador de Lagrangepara interpolacao polinomial, o metodo de diferencas divididas de Newtonencontra o polinomio unico que atravessa os pontos.
O metodo de Newton usa a equacao recursiva abaixo para realizar a tarefa:
f [x0, x1, . . . , xn] =f [x1, . . . , xn]− f [x0, . . . , xn−1]
xn − x0
(3.14)
A equacao acima leva a formula de diferencas divididas de Newton parainterpolacao polinomial, sendo definida por:
pn(x) = f(x0) + (x− x0)f [x0, x1] + (x− x0)(x− x1)f [x0, x1, x2] + . . .
+(x− x0) . . . (x− xn−1)f [x0, x1, . . . , xn] (3.15)
68 3. Resolucao de Equacoes Nao-Lineares
3.7.3 Metodo de Muller
No metodo da secante tomavamos dois pontos e por eles tracavamos umareta (interpolacao linear). Partiremos agora para a interpolacao quadratica.Se tivermos tres pontos distintos (x0, f(x0)), (x1, f(x1)) e (x2, f(x2)), po-demos usar o metodo das diferencas divididas de Newton para computar opolinomio interpolador de 2o grau:
p2(x) = f(x2) + (x− x2)f [x2, x1] + (x− x2)(x− x1)f [x2, x1, x0] (3.16)
sendo:
f [x2, x1] =f(x1)− f(x2)
x1 − x2
f [x1, x0] =f(x0)− f(x1)
x0 − x1
f [x2, x1, x0] =f [x1, x0]− f [x2, x1]
x0 − x2
Fazendo:
a = f [x2, x1, x0]
b = f [x2, x1] + (x2 − x1)f [x2, x1, x0]
c = f(x2)
podemos escrever (3.16) de forma mais sintetica:
p2(x) = a(x− x2)2 + b(x− x2) + c
A interpolacao de uma curva f(x) com um polinomio p2(x) e ilustradana Figura 3.25. Em sıntese, o metodo de Muller usa como proximo iterandoo ponto x3 que e raiz do polinomio p2(x), conforme indicado na figura. Aequacao:
p2(x) = 0
tem duas solucoes:
x− x2 =−b±
√b2 − 4ac
2a=⇒ x = x2 +
−b±√b2 − 4ac
2a
Dentre as duas solucoes, tomamos aquela que e a mais proxima de x2:
x3 = x2 +−b+ sign(b)
√b2 − 4ac
2a
Muller(f, x0, x1, x2)
3. Resolucao de Equacoes Nao-Lineares 69
1: f0 ← f(x0)2: f1 ← f(x1)3: f2 ← f(x2)4: for i = 1, 2, . . . ate satisfazer criterio de parada do5: f [x2, x1]← f(x1)−f(x2)
x1−x2
6: f [x1, x0]← f(x0)−f(x1)x0−x1
7: f [x2, x1, x0]← f [x1,x0]−f [x2,x1]x0−x2
8: a← f [x2, x1, x0]9: b← f [x2, x1] + (x2 − x1)f [x2, x1, x0]
10: c← f(x2)
11: x3 ← x2 +−b+sign(b)
√b2−4ac
2a
12: f3 ← f(x3)13: x0 ← x1, f0 ← f114: x1 ← x2, f1 ← f215: x2 ← x3, f2 ← f316: end for17: x2, f2
3.8 Aceleracao de Aitken
A partir de dois metodos iterativos de mesma ordem e possıvel construirum novo metodo de ordem superior aos primitivos, conforme proposta deAitken. Sejam dois metodos iterativos:
x(1)k = φ1(x
(1)k−1)
x(2)k = φ2(x
(2)k−1)
ambos de ordem de convergencia p, que convergem para x = α. Podemosentao construir uma funcao φ(x) dada por
φ(x) =xφ1[φ2(x)]− φ1(x)φ2(x)
x− φ1(x)− φ2(x) + φ1[φ2(x)]
Entao o metodo iterativo xk = φ(xk−1), k = 1, 2, . . . tem ordem de con-vergencia superior a p, desde que seja satisfeita a condicao:
(φ1(α)− 1)(φ2(α)− 1) 6= 0
70 3. Resolucao de Equacoes Nao-Lineares
x0 x1 x2x3
f(x)
p2(x)
Figura 3.25: Interpolacao da curva f(x) com um polinomio de 2o grau p2(x)que atravessa os pontos (x0, f(x0)), (x1, f(x1)) e (x2, f(x2))
3. Resolucao de Equacoes Nao-Lineares 71
3.9 Exercıcios
Exercıcio 3.1 Prof. Wellis afirma que se o algoritmo da biseccao pode seraplicado para encontrar a raiz de uma funcao f , entao tambem podemosaplicar o metodo de Newton. Voce concorda ou discorda da afirmacao?
Exercıcio 3.2 Seja f uma funcao definida por:
f(x) =
√x se x > 0−√−x se x < 0
Vamos aplicar o metodo de Newton para encontrar uma raiz de f(x). Res-ponda as questoes abaixo.
a) Existe uma regiao de convergencia?
b) Existe uma regiao de divergencia?
c) Existe uma regiao onde o metodo entra em laco infinito?
d) Para os itens que voce respondeu afirmativamente, de as respectivasregioes.
Exercıcio 3.3 Seja g(x) = x + c(x)f(x) um processo iterativo, obtido pelometodo de ponto fixo com iteracao linear, para encontrar uma raiz da funcaof(x). Prof. Wellis afirma que se x∗ e tal que f(x∗) = 0, entao g′(x∗) = 0.Voce concorda ou discorda da afirmacao?
Exercıcio 3.4 Seja f(x) = x2−2xe−x+e−2x uma funcao. Aplique o metodode Newton para encontrar uma aproximacao de uma raiz x∗ de f , f(x∗) = 0.A aproximacao x encontrada deve ser tal que |f(x)| < 10−3. Execute nomaximo 10 iteracoes do metodo.
Exercıcio 3.5 Uma boia esferica de raio R e densidade ρ, ao flutuar naagua, afunda de um quantidade x, dada por x3+2Rx2−4ρR3 = 0. Encontreo afundamento quando R = 3 e o material e cortica (ρ = 0.25), usando ometodo da biseccao.
Exercıcio 3.6 Considere o sistema de equacoes abaixo:
y2 − 3x2 − 5x− 5 = 0y + x2 − x = 0
Encontre uma solucao z∗ = (x∗, y∗) para o sistema acima usando um metodonumerico. Sabemos que existe uma solucao para −1.5 6 x∗ 6 0.
72 3. Resolucao de Equacoes Nao-Lineares
Exercıcio 3.7 Seja f(x) = xe−x e c(x) = − 1e−x(1+x)
. Prof. Martins afirma
que para qualquer x0 ∈ I = [0, 1) o operador de ponto fixo g(x) resultanteproduz uma serie x0, x1, x2, . . . tal que limk→∞ xk = x∗ sendo f(x∗) = 0. Sevoce concorda com a afirmacao, apresente uma justificativa formal. Casocontrario, de um contra-exemplo.
Exercıcio 3.8 Considere a funcao raiz quadrada f(x) =√x. E possıvel
aplicar o metodo de Newton (em uma ou mais variaveis) para calcular f(x)?Se sim, mostre como o metodo de Newton pode ser aplicado para calcular√x? (No seu computador/liguagem de programacao, a funcao
√x nao esta
disponıvel)
Exercıcio 3.9 Desejamos encontrar uma raiz da funcao f(x) = x4− 14x2+24x− 10. Sabemos que existe uma raiz no intervalo I = [−5, 0].
Tarefas e observacoes:
• Trace o grafico da funcao no intervalo [−5, 5] e no intervalo [−5, 0].
• Encontre uma raiz em I aplicando os metodos abaixo:
– O metodo da biseccao
– O metodo da falsa posicao
– O metodo de Newton com x0 = 0 e com x0 = −5– O metodo das secantes com x0 = −5 e x1 = 0
• Para cada um dos metodos acima, desenhe a curva da solucao aproxi-mada em funcao do numero de iteracao.
• As implementacoes devem ser realizadas em Matlab, Octave ou Scilab.Apresentar o codigo fonte juntamente com os resultados.
Exercıcio 3.10 Para a funcao F dada por:
F (x, y) =
[
(x− y + 1/4)e−x2−y3
2x2 + cos y
]
calcule o Jacobiano ∇F . Obtenha o valor do Jacobiano no ponto (x0, y0) =(1, 0). Obtenha o iterando (x1, y1) aplicando uma iteracao do metodo deNewton a partir do ponto (x0, y0).
Exercıcio 3.11 Responda as questoes abaixo.
3. Resolucao de Equacoes Nao-Lineares 73
i. Seja f uma funcao contınua em I = [a, b], tal que f(a).f(b) < 0.Podemos aplicar o metodo da biseccao e o metodo de Newton paraencontrar tal raiz?
ii. Seja f : R → R uma funcao contınua e diferenciavel no intervalo I =[a, b]. Sabemos que existe exatamente um x∗ ∈ I tal que f(x∗) =0. Sabemos que f(a).f(b) < 0. Sabemos que o metodo de Newtonconverge para x∗ ∈ I. Seja x0
bs, x1bs, . . . a sequencia de pontos gerada
pelo metodo da biseccao. Seja x0Nw, x
1Nw, . . . a sequencia de pontos
gerada pelo metodo de Newton. Se x0Nw = x0
bs 6= x∗, podemos afirmarque para algum i temos que xi
Nw = x∗ e xibs 6= x∗ visto que o Metodo de
Newton tem convergencia quadratica, enquanto o metodo da biseccaotem convergencia linear?
iii. Seja f : R → R uma funcao qualquer para qual sabemos que existeuma raiz unica x∗ no intervalo [a, b]. Assumindo que os metodos dabiseccao e da falsa posicao convergem para x∗, podemos afirmar que ometodo da falsa posicao converge mais rapidamente para o ponto x∗
do que o metodo da biseccao?
iv. Seja g : R → R um operador de ponto fixo definido por g(x) = x +c(x)f(x). Se f(x) = ax3 + bx2 + cx + d e c(x) = 1, entao g(x) e umpolinomio de grau 0, 1, 2 ou 3. Podemos afirmar que g(x) tera nenhum,um, dois ou no maximo tres pontos fixos?
v. Uma vez que o metodo de Newton exige que a funcao f : R → R
seja contınua e diferenciavel, enquanto que o metodo da biseccao exigeque a funcao seja apenas contınua, podemos afirmar que o metodo dabiseccao e mais geral? Em outras palavras, se podemos encontrar a raizde uma funcao usando o metodo de Newton, entao tambem podemosutilizar o metodo da biseccao?
Exercıcio 3.12 Considere as funcoes abaixo:
g(x, y) = 5.3ex − x− y
h(x, y) = x3 + 2.21x+ 2y
Desejamos encontrar x, y ∈ R tal que g(x, y) = 0 e h(x, y) = 0. E possıvelresolver este problema resolvendo o problema de encontrar uma raiz de umafuncao f(x), f : R→ R?
74 3. Resolucao de Equacoes Nao-Lineares
Exercıcio 3.13 Obtenha o polinomio caracterıstico p(λ) da matriz A abaixoe gere o grafico p(λ)×λ. Calcule os autovalores de A aplicando o metodo dafalsa posicao.
A =
2 0 4 5 00 0 0 5 −14 0 0 0 15 5 0 2 00 −1 1 0 −2
Exercıcio 3.14 Seja f(x) = x4− 2xe−x+ e−2x− 4−x uma funcao. Apliqueo metodo de Newton para encontrar uma aproximacao de uma raiz x∗ de f ,ou seja, x∗ tal que f(x∗) = 0. A aproximacao x encontrada deve ser tal que|f(x)| < 10−4. Execute no maximo 20 iteracoes do metodo.
Exercıcio 3.15 Uma porta com formato descrito na Figura 3.26 e compostade uma parte retangular e uma parte semi-circular. A area da parte retan-gular da porta deve ser maior ou igual a 3.8m2. Encontre as dimensoes x e ytal que o perımetro seja minimizado. Modele o problema matematicamentee encontre as dimensoes desejadas utilizando o metodo da biseccao.
x x
y
Figura 3.26: Porta semi-circular
Exercıcio 3.16 Seja xk =1kuma sequencia para k = 1, 2, . . . ,∞. Questoes:
i. Podemos afirmar que xk∞k=1 e convergente? Justifique a resposta combase na Definicao 3.1.
ii. Se a sequencia for convergente, qual e a taxa de convergencia? Justifi-que a resposta com base na Definicao 3.2.
3. Resolucao de Equacoes Nao-Lineares 75
h
R
R
Figura 3.27: Reservatorio tipo semiesfera.
Exercıcio 3.17 Seja g(y) = (y2 + x)/2y um processo iterativo onde x > 1 euma constante conhecida. Seja I = (1, x) o intervalo de incerteza. Questoes:
i. Podemos afirmar que existe um ponto fixo y∗ ∈ I?
ii. Caso exista ponto fixo, podemos afirmar que ele e unico?
iii. Se existir ponto fixo y∗ unico, podemos afirmar que com y0 ∈ I oprocesso iterativo yk+1 = g(yk), k = 0, 1, . . . converge para y∗?
Exercıcio 3.18 Um reservatorio na forma de semiesfera com raio R = 4mfoi instalado em um predio recem-construıdo. Ocorreu um erro de dimen-sionamento do reservatorio: o volume de agua total do reservatorio e bemmaior que o limite de 50m3 estabelecido em projeto hidro-sanitario. Assim,e necessario determinar o nıvel h maximo que a agua pode atingir no reser-vatorio para nao ultrapassar o limite volumetrico. O reservatorio e ilustradona Figura 3.27. O volume de uma calota esferica e dado por:
V =π
3h2(3R− h)
sendo R o raio e h a altura.Determine a altura h com precisao 10−6 utilizando o metodo do ponto
fixo com c(x) = − 116Rx
. Mostre que o processo iterativo resultante convergedentro do intervalo I = [2, 4] segundo a teoria do ponto fixo.
Capıtulo 4
Resolucao de Sistemas deEquacoes Lineares
Capıtulo
4.1 Revisao
Sistemas de equacoes lineares surgem na solucao de varios problemasteoricos e praticos. Dentre eles, ressaltamos:
1) Inteligencia artificial: resolucao das equacoes de Bellman
2) Teoria dos grafos: fluxo factıvel
3) Circuitos eletricos: analise de sistemas lineares (forma real e complexa)
4) Teoria de controle: sistemas lineares e a linearizacao de sistemas naolineares
O problema de resolver um sistema de equacoes lineares pode ser colocadocomo segue: dado uma matriz A ∈ R
m×n e um vetor b ∈ Rm×1, encontre
x ∈ Rn×1 tal que Ax = b.
A matriz de coeficientes e os vetores podem ser expressos como segue:
A =
a11 a12 . . . a1na21 a22 . . . a2n...
.... . .
...am1 am2 . . . amn
,
78 4. Resolucao de Sistemas de Equacoes Lineares
onde aij ∈ R, i = 1, . . . ,m, j = 1, . . . , n e
b =
b1b2...bm
,
onde bj ∈ R, j = 1, . . . ,m
Definicao 4.1 A ∈ Rm×n e dita quadrada se m = n
Definicao 4.2 A ∈ Rn×n e dita diagonal se A = diag(d1, d2, . . . , dn), ou
seja,
A =
d1 0 . . . 00 d2 . . . 0...
.... . .
...0 0 . . . dn
Definicao 4.3 A matriz A ∈ Rn×n abaixo e dita matriz triangular inferior
se:
A =
a11 0 . . . 0a21 a22 . . . 0...
.... . .
...an1 an2 . . . ann
em outras palavras,
A = [aij] e aij = 0 para todo aij onde j > i.
Definicao 4.4 Se A ∈ Rn×n, entao A possui um determinante det(A) defi-
nido como:
det(A) = a11det(M11)− a12det(M12) + a13det(M13)− . . .
onde M1k e a matriz obtida de A eliminando-se a linha 1 e a coluna k. Odeterminante de uma matriz A ∈ R
1×1 e a propria matriz.
Definicao 4.5 A ∈ Rn×n e dita nao-singular se det(A) 6= 0.
Definicao 4.6 Se A ∈ Rn×n e uma matriz triangular (inferior ou superior)
entao:det(A) = a11a22 . . . ann
4. Resolucao de Sistemas de Equacoes Lineares 79
Definicao 4.7 Se A ∈ Rn×n e nao-singular entao existe A−1 ∈ R
n×n tal queAA−1 = I, onde I = diag(1, 1, . . . , 1)
Definicao 4.8 A matriz adjunta de A, denotada por Adj(A), e definida por:
Adj(A) =
C11(A) · · · Cn1(A)...
. . ....
C1n(A) · · · Cnn(A)
onde Cij(A) e o (i, j)-esimo cofator de A, ou seja, Cij(A) =(−1)i+jdet(Mij(A)) sendo Mij(A) a matriz obtida ao se remover a linha ie coluna j de A.
Teorema 4.1 Dada uma matriz nao-singular A ∈ Rn×n, a sua inversa pode
ser obtida a partir da matriz adjunta:
A−1 =1
det(A)Adj(A)
Teorema 4.2 A inversao apresenta as seguintes propriedades:
i. A inversa de A−1 e A, ou seja, (A−1)−1 = A.
ii. A inversa da transposta e a transposta da inversa: (AT )−1 = (A−1)T .
iii. (AB)−1 = B−1A−1.
iv. det(A−1) = 1det(A)
.
v. A inversa de uma matriz triangular inferior (superior) e tambem tri-angular inferior (superior).
Definicao 4.9 Seja A ∈ Rm×n uma matriz dada por
A =
a11 a12 . . . a1na21 a22 . . . a2n...
.... . .
...am1 am2 . . . amn
entao a tranposta de A, denotada por AT e dada por:
AT =
a11 a21 . . . am1
a12 a22 . . . am2...
.... . .
...a1n a2n . . . amn
80 4. Resolucao de Sistemas de Equacoes Lineares
Definicao 4.10 Se A = AT , entao A e dita uma matriz simetrica.
Definicao 4.11 Uma matriz A ∈ Rn×n e dita positiva definida se, e somente
se, xTAx > 0 para todo x 6= 0. E dita positiva semi-definida se xTAx ≥ 0para todo x.
Definicao 4.12 Seja A ∈ Rn×n uma matriz quadrada. Se Ax = λx para
λ ∈ C e x ∈ Rn, entao λ e um autovalor e x e um autovetor da matriz A.
Teorema 4.3 Se A = AT , entao todos os autovalores de A sao numerosreais.
Teorema 4.4 Uma matriz A = AT e positiva definida (semi-definida) se, esomente se, os autovalores de A sao todos positivos (nao negativos).
Definicao 4.13 Dada uma matriz A ∈ Rm×n, temos que:
1) range(A) = y ∈ Rm : y = Ax, para algum x ∈ R
n e o espaco geradopor A;
2) null(A) = x ∈ Rn : Ax = 0; e
3) rank(M) denota o posto da matriz M, i.e., o numero maximo de colu-nas linearmente independentes de M ;
Podemos examinar uma matriz A ∈ Rm×n como uma geradora para a
funcao linear f : Rn → Rm onde f(x) = Ax para x ∈ R
n. Assim, o espacogerado por A, range(A), e o conjunto das imagens da funcao f(x). O espaconulo de A, null(A), e o conjunto dos valores que tem como imagem o vetornulo. A Figura 4.1 ilustra estes conceitos.
Definicao 4.14 Seja S um espaco vetorial. O numero maximo de vetoreslinearmente independentes de S e dito dimensao de S e denotado por dim(S).
Teorema 4.5 Considere o sistema de equacoes lineares
Ax = b (4.1)
onde A ∈ Rm×n, x ∈ R
n, e b ∈ Rm. Entao o sistema (4.1):
• tem solucao se b ∈ range(A)⇔ rank(A) = rank([A|b]);
• nao tem solucao se b 6∈ range(A)⇔ rank(A) < rank([A|b]);
• tem solucao unica se rank(A) = rank([A|b]) = n; e
4. Resolucao de Sistemas de Equacoes Lineares 81
x
x0
0
f(x0) = 0 y
Rn R
m
y = f(x)
null(A)
range(A)
Figura 4.1: Ilustracao dos conceitos de espaco gerado e espaco nulo de umamatriz A
• tem um numero infinito de solucoes se rank(A) = rank([A|b]) < n.
Teorema 4.6 Para o sistema de equacoes lineares (4.1), vale
dim(range(A)) + dim(null(A)) = n
Como exemplo, considere o sistema de equacoes lineares dado por:
[
1 3 0−2 4 1
]
x1
x2
x3
=
[
14
]
.
Podemos verificar que rank(A) = 2 (note que rank(A) 6 minm,n = 2).Portanto, rank(A) = rank([A|b]) o que nos leva a concluir que o sistematem solucao. Uma vez que rank(A) < n, o sistema tem infinitas solucoes.A partir do Teorema 4.6, podemos verificar tambem que dim(range(A)) =rank(A) = 2. Portanto, n = 3⇒ dim(null(A)) = n− dim(range(A)) = 1 oque prova que o espaco nulo tem elementos nao nulos.
Definicao 4.15 Uma norma (vetorial) e uma funcao ‖ · ‖ : Rn → R satis-fazendo:
a) x ∈ Rn, ‖x|| > 0 e ‖x‖ = 0⇔ x = 0
b) x ∈ Rn, α ∈ R, ‖αx‖ = |α|‖x‖
c) x, y ∈ Rn, ‖x+ y‖ 6 ‖x‖+ ‖y‖
82 4. Resolucao de Sistemas de Equacoes Lineares
Exemplos
Tres exemplos de normas vetorais frequentemente encontradas sao:
Norma Euclidiana: ‖x‖2 =√
∑nj=1 (xj)2
Norma da soma: ‖x‖1 =∑n
j=1 |xj|Norma do maximo: ‖x‖∞ = max |xj| : j = 1, . . . , n
onde assumimos que x ∈ Rn.
x1
x2
‖x‖1 = 1
‖x‖2 = 1
‖x‖∞ = 11
1−1
−1
Figura 4.2: Ilustracao das normas ‖ · ‖∞, ‖ · ‖2 e ‖ · ‖1.
Definicao 4.16 Uma norma matricial e uma funcao ‖ · ‖ : Rn×n → R sa-tisfazendo as propriedades:
a) A ∈ Rn×n, ‖A‖ > 0 e ‖A‖ = 0⇔ A = 0
b) A ∈ Rn×n, α ∈ R, ‖αA‖ = |α|‖A‖
c) A,B ∈ Rn×n, ‖A+ B‖ 6 ‖A‖+ ‖B‖
d) A,B ∈ Rn×n, ‖AB‖ 6 ‖A‖ · ‖B‖
Definicao 4.17 Toda norma vetorial ‖ · ‖ induz uma norma matricial ‖ · ‖dada por:
‖ · ‖ = max ‖Ax‖‖x‖ ,
x 6= 0
onde A ∈ Rm×n.
4. Resolucao de Sistemas de Equacoes Lineares 83
Vamos denotar gain(x) = ‖Ax‖‖x‖ , entao:
‖A‖ = max gain(x).x 6= 0
gain(x) e o fator de ampliacao do operador f(x) = Ax na direcao de x.Certamente, o ganho geralmente depende de x. gain(x) pode ser grande paracertos x e pode ser pequeno para outros. Se ‖A‖ < 1, entao ‖Ax‖ < ‖x‖para qualquer x ∈ R
n. Se ‖A‖ e grande, entao existe um x tal que o operadorf(x) amplifica, ou seja ‖Ax‖ > ‖x‖.
Exemplo
Para ‖ · ‖ = ‖ · ‖2, considere a norma matricial, induzida por ‖ · ‖. Entao‖Ie dada por:
‖I‖ = max ‖Ix‖‖x‖ = max ‖x||
‖x‖ = 1
x 6= 0 x 6= 0
Exercıcio
Calcule, usando a definicao de ganho, ‖A‖ sendo A dada por:
A =
0 1 00 0 −11 0 0
.
Respostas: ‖A‖1 = 1, ‖A‖2 = 1, ‖A‖∞ = 1.Algumas normas frequentemente utilizadas sao as seguintes:
1) Norma maximo das colunas:
‖A‖1 = max (∑n
i=1 |aij|)1 6 j 6 n
2) Norma maximo das linhas:
‖A‖∞ = max(
∑nj=1 |aij|
)
1 6 i 6 n
84 4. Resolucao de Sistemas de Equacoes Lineares
3) Norma Euclidiana:
‖A‖2 =(
∑ni=1
∑nj=1 aij
2) 1
2
Propriedades:
a) ‖Ax‖∞ 6 ‖A‖∞‖x‖∞b) ‖Ax‖1 6 ‖A‖1‖x‖1c) ‖Ax‖2 6 ‖A‖2‖x‖2
Aritmetica matricial:
i) C = A+B = B + A, A,B ∈ Rm×n e cij = aij + bij
ii) C = AB, A ∈ Rm×k, B ∈ R
k×n e cij =∑k
t=1 aitbtj
4.2 Erros Computacionais na Solucao de
Ax = b
Dois tipos de algoritmos para resolver sistemas do tipo Ax = y, ondeA ∈ R
m×n (ou A ∈ Cm×n)
4.2.1 Tipos de Algoritmos
A) Metodos Diretos
Um metodo e dito direto quando este utiliza um numero finito de passos.Exemplos: Metodo de Cramer e Gauss Cramer.
1) Cramer: xj =det(Aj)
det(A)quando A ∈ R
n×n
2) Gauss: pivoteamento
3) Decomposicao LU: Escrever A = LU , onde L e triangular inferior e Ue triangular superior.
LUx = b→ Lz = b e z = Ux
4) Decomposicao Cholesky: Se A = AT e A > 0 (positiva definida) entaopodemos escrever A como produto dos fatores Cholesky, i.e., LLT = Apara L triangular inferior.
5) Metodo do Gradiente Conjugado (Otimizacao)
4. Resolucao de Sistemas de Equacoes Lineares 85
B) Metodos Iterativos
Os metodos de Jacobi e Gauss-Seidel consistem de processos iterativosda forma:
xk+1 = G(xk)
4.2.2 Tipos de Erros Computacionais nos Algoritmos
A) Algoritmos Diretos
Dado o sistema Ax = y, este sera representado em uma maquina de pontoflutuante F , F = (b, n, e1, e2)
Ax = y →
2A2x = 2y2A e a representacao de A em F2x e a representacao de x2y e a representacao de y
.
O algoritmo que executa as operacoes em F vai gerar um erro, obtendo umasolucao 2x que podera ser diferente de x.
2′x = 22x e o erro total do metodo que consiste em:
ETOTAL = (Erro de entrada) + (Erro de aritmetica)
O erro de aritmetica e dado ao erro de arredondamento:
ETOTAL = (x−2x) + (2x−2′x) = EA
B) Algoritmos Iterativos
Da mesma forma que os algoritmos diretos, os algoritmos iterativos co-metem erros de entrada e de aritmetica. Metodos iterativos tambem in-troduzem erros de discretizacao, ou seja, trunca-se uma sequencia infinitaxk : k = 0, 1, . . . por uma sequencia finita.
4.3 Etapas da Solucao de Sistemas Lineares
Abaixo descrevemos os tres passos basicos para solucao de um sistema deequacoes lineares.
1) Primeira Etapa: Descomplexificacao
Transformar um sistema complexo Ax = y em um sistema real Ax = yequivalente.
86 4. Resolucao de Sistemas de Equacoes Lineares
2) Segunda Etapa: Estruturacao
Escolher um algoritmo eficiente para calcularmos a solucao, levando emconsideracao a estrutura de A, seu tamanho, esparsidade e simetria. Umamatriz A ∈ R
m×n e dita esparsa se o numero de entradas aij nao nulas e beminferior a nm ou, equivalentemente, a vasta maioria dos elementos sao nulos.
3) Terceira Etapa: Calculo
Consiste no calculo da solucao, bem como na estimativa da exatidao damesma.
= +Calculo Calculos
Aritmeticos Exatidaoda
Estimativa
Figura 4.3: Calculos envolvidos na solucao de sistemas de equacoes lineares.
4.3.1 Primeira Etapa: Descomplexificacao
Transformar um sistema complexo Ax = b em um sistema real Ax = bequivalente. Ax pode ser escrito como
Ax = b ⇒ (A′ + jA′′)(x′ + jx′′) = (b′ + jb′′)
⇒ A′x′ + jA′x′′ + jA′′x′ − A′′x′′ = b′ + jb′′ (4.2)
portanto, o sistema (4.2) pode ser escrito na forma
A′x′ − A′′x′′ = b′
A′x′′ + A′′x′ = b′′
Exemplo de Aplicacao: Analise de Circuitos Eletricos
Para o circuito da Figura 4.4, obtemos atraves das Leis de Kirchoff:
E − (3− 4j)Ri1 − (2− 2j)R(i1 − i2) = 0(2− 2j)R(i2 − i1) + (1 + 3j)Ri2 = 0
Onde E e R sao parametros, que variam de circuito para circuito. Fazendo:
i1 =E
Rx1 e
i2 =E
Rx2 (4.3)
4. Resolucao de Sistemas de Equacoes Lineares 87
as equacoes do circuito podem ser expressas como:
E − (3− 4j)RERx1 − (2− 2j)R(x1 − x2)
ER
= 0(2− 2j)R(x2 − x1)
ER+ (1 + 3j)x2R
ER
= 0⇒
1− (3− 4j)x1 − (2− 2j)(x1 − x2) = 0(2− 2j)(x2 − x1) + (1 + 3j)x2 = 0
⇒
[
(5− 6j) −(2− 2j)−2 + 2j 3 + j
] [
x1
x2
]
=
[
10
]
Portanto, podemos transformar o sistema acima em um sistema equiva-lente em variaveis reais, fazendo:
A′ =
[
5 −2−2 3
]
, A′′ =
[
−6 22 1
]
b′ =
[
10
]
, b′′ =
[
00
]
, x′ =
[
x′1
x′2
]
, x′′ =
[
x′′1
x′′2
]
,
[
A′ −A′′
A′′ A′
] [
x′
x′′
]
=
[
b′
b′′
]
Substituindo as matrizes e vetores por seus respectivos valores, obtemos osistema de equacoes lineares:
5 −2 6 −2−2 3 −2 −1−6 2 5 −22 1 −2 3
x′1
x′2
x′′1
x′′2
=
1000
Exemplo de Aplicacao: Regime Permanente de Circuitos Eletricos
Calcular os valores das correntes do circuito dado na Figura 4.5. Inicial-mente obtemos a equacao diferencial que modela o comportamento dinamicodo sistema:
V (t) = RI + Ld
dtI +
1
C
∫ t=∞
t=0
I · dt⇒
d
dtV = R
d
dtI + L
d2
dt2I +
1
CI ⇒
V = LI +RI +1
CI
88 4. Resolucao de Sistemas de Equacoes Lineares
E
(3− 4j)R (1 + 3j)R
i1 i2
(2− 2j)R
Figura 4.4: Exemplo de circuito eletrico com elementos lineares.
Analise de regime permanente nos da:
V = Vr + Vc + Vl
V = RI − j
ωCI + jωLI
V = (R− j
ωC+ jωL)I
onde V e o fasor voltagem e I e o fasor corrente. Portanto, podemos expressaro problema de encontrar a corrente e voltagem em regime permanente comoa solucao de um sistema de equacoes lineares com coeficientes e variaveiscomplexas. Primeiro, vamos obter as matrizes e vetores de constantes abaixo:
A′ =
[
5 −2−2 3
]
, A′′ =
[
−6 22 1
]
, b′ =
[
10
]
, b′′ =
[
00
]
Segundo, vamos obter os vetores de variaveis como segue:
x′ =
[
x′1
x′2
]
, x′′ =
[
x′′1
x′′2
]
Logo, podemos transformar a busca do ponto de operacao do sistema eletricoao problema de resolver o sistema de equacoes lineares com coeficientes evariaveis reais:
[
A′ −A′′
A′′ A′
]
·[
x′
x′′
]
=
[
b′
b′′
]
4. Resolucao de Sistemas de Equacoes Lineares 89
R
L
CE
Figura 4.5: Exemplo de circuito eletrico RLC.
4.3.2 Segunda Etapa: Os Algoritmos e Suas Estrutu-ras
Algoritmos Diretos
Estes algoritmos sao compostos de tres componentes: o calculador, orefinador e o estimador.
Algoritmo Iterativo
Sao tambem compostos de tres partes: o preparador, o calculador e oestimador.
4.4 Metodo de Eliminacao de Gauss
Metodo direto mais conhecido e mais usado para resolucao de um sistemadenso, de pequeno e medio porte, sendo um sistema considerado de pequenoporte se contem ate 30 variaveis, medio porte se contem ate 50 variaveis, e degrande porte se contem mais de 50 variaveis. O metodo consiste na aplicacaosucessiva de propriedades basicas de algebra linear.
1) Combinacoes lineares: adicao de uma linha com um multiplo deoutra linha, para substituir uma das linhas consideradas.
2) Troca de linhas
3) Multiplicacao de uma linha por uma constante
90 4. Resolucao de Sistemas de Equacoes Lineares
Calculador
Refinador
Estimador
Exatidao OK?
Solucao Com
Requerida
Numero Maximode
Refinamentos?
ImpossıvelObter
Sim
Sim
Nao
Nao
Solucao
Exatidao
Figura 4.6: Componentes de algoritmos diretos.
4. Resolucao de Sistemas de Equacoes Lineares 91
Calculador
Preparador
Estimador
Exatidao OK?
Solucao comExatidao
Requerida
Numero de
Intervalos >
Diagnostico
Sim
Sim
Nao
Nao
Maximo?
Figura 4.7: Componentes de algoritmos iterativos.
92 4. Resolucao de Sistemas de Equacoes Lineares
Se a matriz B e obtida a partir de uma matriz A por meio de combinacoeslineares de linhas, dizemos que A e B sao equivalentes. Se A e quadradaentao det(A) = det(B).
Algoritmo basico de Gauss apresenta os seguintes passos:
1) Triangularizacao: consiste em transformar a matriz A numa matriztriangular superior, mediante perturbacoes e combinacoes lineares delinhas.
2) Retrossubstituicao: consiste no calculo dos componentes do vetorx, a partir da solucao imediata do ultimo componente de x, e entaosubstituımos regressivamente nas equacoes anteriores.
4.4.1 Exemplo 1 (Metodo de Gauss)
Tomemos como exemplo o sistema de equacoes lineares dado abaixo
3x1 + 2x2 + x4 = 39x1 + 8x2 − 3x3 + 4x4 = 6−6x1 + 4x2 − 8x3 = −163x1 − 8x2 + 3x3 + 4x4 = 18
(4.4)
o qual pode ser escrito na forma matricial como segue
A =
3 2 0 19 8 −3 4−6 4 −8 03 −8 3 4
, y =
36
−1618
.
A primeira fase consiste da triangularizacao de A, cujos passos sao ilus-trados abaixo.
0) Obtendo a matriz aumentada
3 2 0 1 39 8 −3 4 6−6 4 −8 0 −163 −8 3 4 18
1) Primeiro passo: zerando os elementos abaixo do elemento a11.
E2 − 9/3E1 →E3 + 6/3E1 →E4 − 3/3E1 →
3 2 0 1 30 2 −3 1 −30 8 −8 2 −100 −10 3 3 15
4. Resolucao de Sistemas de Equacoes Lineares 93
2) Segundo passo: zerando os elementos abaixo de a22
E3 − 8/2E2 →E4 + 10/2E2 →
3 2 0 1 30 2 −3 1 −30 0 4 −2 20 0 −12 8 0
3) Terceiro passo: zerando os elementos abaixo de a33
E4 + 12/4E3 →
3 2 0 1 30 2 −3 1 −30 0 4 −2 20 0 0 2 6
Obtemos, portanto um sistema equivalente a (4.4) na forma triangular:
3x1 + 2x2 + 0x3 + x4 = 3+ 2x2 − 3x3 + x4 = −3
+ 4x3 − 2x4 = 22x4 = 6
Por meio de retrossubstituicao, podemos encontrar uma solucao para osistema original (4.4). Considerando a ultima equacao temos que
2x4 = 6⇒ x4 = 3
Substituindo na terceira equacao, obtemos:
+4x3 − 2(3) = 2⇒ x3 = 2
Substituindo na segunda equacao, obtemos:
+2x2 − 3× 2 + 3 = −3⇒ x2 = 0
Substituindo na primeira equacao, obtemos:
3x1 + 2(0) + 0(2) + 3 = 3⇒ x1 = 0
Portanto, uma solucao para (4.4) e:
x =
x1
x2
x3
x4
=
0023
Teorema 4.7 O metodo de Gauss produz, em precisao infinita, uma solucaoexata do sistema Ax = b desde que:
1) A seja nao singular, det(A) 6= 0
2) As linhas sejam trocadas sempre que necessario, caso aii = 0
94 4. Resolucao de Sistemas de Equacoes Lineares
4.4.2 Exemplo 2 (Metodo de Gauss)
Aqui vamos considerar o sistema de equacoes lineares abaixo:
−1x1 + 2x2 + 3x3 + x4 = 12x1 − 4x2 − 5x3 − 1x4 = 0−3x1 + 8x2 + 8x3 + 1x4 = 21x1 + 2x2 − 6x3 + 4x4 = −1
(4.5)
Iniciamos a solucao pelo metodo de Gauss com a triangularizacao do sistema(4.5).
0) Obtendo a matriz aumentada:
−1 2 3 1 12 −4 −5 −1 0−3 8 8 1 21 2 −6 4 −1
1) Primeiro passo: zerando os elementos abaixo de a11
E2 + 2E1 →E3 − 3E1 →E4 + E1 →
−1 2 3 1 10 0 1 1 20 2 −1 −2 −10 4 −3 5 0
2) Segundo passo: trocando as linhas 2 e 3
E3 →E2 →
−1 2 3 1 10 2 −1 −2 −10 0 1 1 20 4 −3 5 0
3) Terceiro passo: zerando os elementos abaixo de a22
E4 − 2E2 →
−1 2 3 1 10 2 −1 −2 −10 0 1 1 20 0 −1 9 2
4) Quarto passo: zerando os elementos abaixo de a33
E4 + E3 →
−1 2 3 1 10 2 −1 −2 −10 0 1 1 20 0 0 10 4
4. Resolucao de Sistemas de Equacoes Lineares 95
Portanto, atraves de retrossubstituicao podemos verificar que a solucaode (4.5) e:
x4 = 2/5, x3 = 8/5, x2 = 7/10, x1 = 28/5.
4.4.3 Exemplo 3 (Metodo de Gauss)
Como terceiro exemplo, tomemos os sistema de equacoes:
3x1 + 2x2 − 1x3 + 2x4 = 13x1 + 4x2 + 1x3 + 1x4 = 3−6x1 − 2x2 + 4x3 − 3x4 = 5−3x1 − 6x2 − 3x3 − 4x4 = 2
(4.6)
Os passos da aplicacao do metodo de Gauss na resolucao do sistema (4.6)sao descritos no que segue.
0) Obtendo a matriz aumentada:
3 2 −1 2 13 4 1 1 3−6 −2 4 −3 5−3 −6 −3 −1 2
1) Primeiro passo: zerando os elementos abaixo de a11
E2 − E1 →E3 + 2E1 →E4 + E1 →
3 2 −1 2 10 2 2 −1 20 2 2 1 70 −4 −4 1 3
2) Sistema resultante:
E3 − E2 →E4 + 2E2 →
3 2 −1 2 10 2 2 −1 20 0 0 2 50 0 0 −1 7
A partir das equacoes obtidas no terceiro passo, verificamos que o sistemanao tem solucao, pois
2x4 = 5−x4 = 7
96 4. Resolucao de Sistemas de Equacoes Lineares
Se o lado direto da terceira equacao fosse−14, entao as duas ultimas equacoesdo sistema reduzido seriam:
2x4 = −14−x4 = 7
Usando este valor x4 = −7 na terceira equacao com qualquer valor de x3,podemos encontrar uma solucao para o sistema. Ou seja, o sistema teria umnumero infinito de solucoes.
Teorema 4.8 Seja A ∈ Rn×n uma matriz e b ∈ R
n×1 um vetor, entao Ax =b pode ser resolvida pelo algoritmo de Gauss com:
n2 + 13(n− 1)(n+ 1)n ∈ O(n3) multiplicacoes ou divisoes
n(n− 1) + 16(n− 1)(2n− 1)n ∈ O(n3) adicoes ou subtracoes
4.5 Instabilidade Numerica
O algoritmo de Gauss pode apresentar problemas no que diz respeito aexatidao dos resultados. Tais problemas podem ser mais facilmente apresen-tados por meio de exemplos.
4.5.1 Exemplo de Instabilidade Numerica
Considere o sistema abaixo:
0.117× 10−2x + 0.648y = 0.6490.512x − 0.92× 10−3y = 0.511
(4.7)
Vamos resolver o sistema acima em uma maquina: cujo sistema de pontoflutuante e F = F (10, 3,−3, 3). O arredondamento 2x usado sera para onumero mais proximo. Primeiro, vamos obter a matriz aumentada de (4.7)
[
0.117× 10−2 0.648 0.6490.512 −0.92× 10−3 0.511
]
Para M = −0.5120.117×10−2 = −437.6068376 ⇒ 2(−437.6068376) = −438, temos
que o metodo que
M × 0.648 = −283.824 ⇒ 2(−283.824) = −284M × 0.649 = −284.267 ⇒ 2(−284.267) = −284
Portanto,
−284− 0.92× 10−3 = −284.00092 ⇒ 2(−284.00092) = −284−284 + 0.511 = −283.489 ⇒ 2(−283.489) = −283
4. Resolucao de Sistemas de Equacoes Lineares 97
Apos aplicarmos o primeiro passo do metodo de Gauss, zerando os elementosabaixo de a11, ficamos entao com o sistema:
0.117× 10−2x + 0.648y = 0.649− 0.284× 103y = −0.283× 103
Portanto, por meio de retrossusbstituicao chegamos a solucao
x = 0.307× 101 = 3.07y = 0.996
Todavia, obtemos a solucao abaixo para o caso de invertermos a ordem dasequacoes:
x = 1y = 1
A solucao correta e a seguinte:
x = 0.999843279 . . .y = 0.99973937 . . .
A causa do erro esta no pivo pequeno e multiplicador muito grande, o quecausa erro de arredondamento. Esta observacao leva ao desenvolvimento dometodo de Gauss com pivoteamento.
4.6 Algoritmo de Gauss com Pivotamento
Este algoritmo nada mais e do que o algoritmo de Gauss com uma trocasistematica de linhas de modo a minimizar os erros de arredondamento.
Estrategia: tome como pivo o elemento de maior valor absoluto. Assima11 = max|ai1| : i = 1, . . . ,m sera o pivo da primeira iteracao; a22 =max|ai2| : i = 2, . . . ,m sera o pivo da segunda iteracao e assim por diante.O metodo a seguir identifica se o sistema tem solucao unica. As linhas naoserao trocadas, mas sera criado um vetor que aponta para a linha a serutilizada: sub(i) = i, i = 1, . . . , n. Se as linhas 3 e 7 devem ser trocadas,entao: sub(3) = 7 e sub(7) = 3. Algoritmo da eliminacao Gaussiana compivoteamento segue abaixo.
Gauss triangularizacao(n, aij , bi : i = 1, . . . , n, j = 1, . . . , n)
1: for i = 1, . . . , n do2: sub(i)← i
98 4. Resolucao de Sistemas de Equacoes Lineares
3: end for4: for k = 1, . . . , n do5: max← 06: for i = k, . . . , n do7: Vabs ← |asub(i),k|8: if max < Vabs then9: max← Vabs
10: indx← i11: end if12: end for13: if max = 0 then14: Saıda “matriz singular”15: end if16: j ← sub(k)17: sub(k)← sub(indx)18: sub(indx)← j19: pivo← asub(k),k20: for i = k + 1, . . . , n do21: asub(i),k ← asub(i),k
pivo
22: for j = k + 1, . . . , n do23: asub(i),j ← asub(i),j − asub(i),k × asub(k),j24: end for25: bsub(i) ← bsub(i) − asub(i),k × bsub(k)26: end for27: end for
Gauss retrossubstituicao(n, aij , bi : i = 1, . . . , n, j = 1, . . . , n)
1: xn ← bsub(n)
asub(n),n
2: for k = n− 1, . . . , 1 do3: xk ← bsub(k)4: for i = k + 1, . . . , n do5: xk ← xk − asub(k),ixi
6: end for7: xk ← xk
asub(k),k
8: end for9: Saıda xk : k = 1, . . . , n
4. Resolucao de Sistemas de Equacoes Lineares 99
4.7 Condicionamento de uma Matriz
Seja Ax = b um sistema de equacoes lineares. Dadas duas aproximacoesx1 e x2, qual delas e melhor? Uma alternativa seria o calculo dos resıduos:
r1 = b− Ax1
r2 = b− Ax2
4.7.1 Exemplo 1
Vamos primeiramente considerar o sistema de equacoes lineares
0.24x + 0.636y + 0.12z = 0.840.12x + 0.16y + 0.24z = 0.520.15x + 0.21y + 0.25z = 0.64
Duas aproximacoes para a solucao sao:
x1 = [ 25 −14 −1 ]T
x2 = [ −3 4 0 ]T
A partir destes valores, calculamos os resıduos:
r1 = [ 0.00 0.00 0.08 ]T
r2 = [ 0.12 0.24 0.25 ]T (4.8)
A solucao exata e x∗ = [ −3 4 1 ], embora ‖r1‖ < ‖r2‖ temos que a solucaox2 e melhor que x1.
Conclusao: nem sempre a aproximacao de menor resıduo e a melhor oumais exata.
Definicao 4.18 (Problema mal-condicionado) Um problema e dito “mal-condicionado” se pequenas alteracoes nos dados de entrada ocasionam gran-des erros no resultado final.
4.7.2 Exemplo 2
O sistema de equacoes lineares abaixo
0.992x − 0.873y = 0.1190.481x − 0.421y = 0.060
(4.9)
100 4. Resolucao de Sistemas de Equacoes Lineares
tem como solucao x = 1 e y = 1. Considere o sistema com uma pequenaperturbacao ±0.001, que gera uma aproximacao do sistema (4.9):
0.992x − 0.873y = 0.1200.481x − 0.421y = 0.060
(4.10)
cuja solucao e x = 0.815 e y = 0.789. Um erro de aproximacao da ordem 1%na entrada gera um erro de aproximadamente 18% na saıda. Mais precisa-mente:
E1 =|0.119− 0.120||0.119|
= 0.008
= 1%
E2 =|0.815− 1||1|
= 0.185
= 18%
4.7.3 Exemplo 3
Considere os sistemas lineares abaixo:
1x + 3y = 11 (a)1.5x + 4.501y = 16.503 (b)
(4.11)
cuja solucao exata e x = 2 e y = 3. Tomemos agora uma perturbacao de(4.11):
1x + 3y = 11 (a)1.5x + 4.501y = 16.500 (c)
(4.12)
cuja solucao e x = 10.28 e y = 0.24. Os sistemas (4.11) e (4.12) podem serilustrados geometricamente, como mostra a Figura 4.8.
4.7.4 Visao Geometrica do Condicionamento
As Figuras 4.9, 4.10, e 4.11 ilustram sistemas sem solucao, mal-condicionados e bem-condicionados, respectivamente.
4.7.5 Calculo do Condicionamento de uma Matriz
Seja o sistema linear Ax = b e uma modificacao Ax′ = b′. Seja x a solucaode (A, b) e x′ a solucao de (A, b′). Qual e a modificacao da solucao como uma
4. Resolucao de Sistemas de Equacoes Lineares 101
(a)
(b)
(c)
x
y
S1
S2
Figura 4.8: Ilustracao da solucao S1 do sistema (4.11) e da solucao S2 dosistema (4.12).
(a) (b)
x
y
Sem Solucao
Figura 4.9: Sistema sem solucao.
102 4. Resolucao de Sistemas de Equacoes Lineares
(a)
(b)x
y
Mal Condicionado
Figura 4.10: Sistema mal-condicionado.
(a) (b)
x
yBem Condicionado
Figura 4.11: Sistema bem-condicionado.
4. Resolucao de Sistemas de Equacoes Lineares 103
funcao da modificacao em b? Esta resposta pode ser dada de forma algebricaconforme segue:
b− b′ = Ax− Ax′
= A(x− x′) ⇒
(x− x′) = A−1(b− b′) (4.13)
Tomando a norma de (4.13) temos
‖x− x′‖ = ‖A−1(b− b′)‖
onde ‖ · ‖ e uma norma vetorial. Portanto, pela desigualdade triangular,temos que:
‖x− x′‖ 6 ‖A−1‖ · ‖b− b′‖
onde ‖A‖ e uma norma matricial induzida por ‖ · ‖. Assim,
‖x− x′‖‖x‖ 6
‖A−1‖‖x‖ ‖b− b′‖
Uma vez que, b = Ax, deduzimos o seguinte
b = Ax ⇒ ‖b‖ = ‖Ax‖⇒ ‖b‖ 6 ‖A‖ · ‖x‖
⇒ 1
‖x‖ 6‖A‖‖b‖ (4.14)
Portanto,
alteracao relativa fator de valor relativo dada solucao provocada 6 amplificacao × perturbacao feita nopela perturbacao sistema Ax = b
de b
‖x−x′‖‖x‖ 6 ‖A‖ · ‖A−1‖ × ‖b−b′‖
‖b‖
(4.15)
Definicao 4.19 Dado um sistema Ax = b, seu numero de condicionamentoe dado por κ(A) = ‖A‖ · ‖A−1‖ Portanto, quanto maior o valor de κ(A),mais sensıvel o sistema sera.
104 4. Resolucao de Sistemas de Equacoes Lineares
4.7.6 Exemplo
Tomemos como exemplo o sistema de equacoes lineares abaixo:
x1 + 104x2 = 104
x1 + x2 = 2(4.16)
A partir de (4.16) obtemos a matriz A do sistema e sua inversa A−1:
A =
(
1 104
1 1
)
, A−1 =1
104 − 1
(
−1 104
1 −1
)
Uma vez que ‖A‖∞ = 104 + 1 e ‖A−1‖∞ = 1.0002, verificamos que
κ(A) = ‖A‖∞‖A−1‖∞≈ 104
4.7.7 Propriedades da Condicionamento de Matrizes
Algumas propriedades do numero de condicionamento de uma matriz Asao:
1) κ(A) > 1, pois 1 = ‖I‖ = ‖AA−1‖ 6 ‖A‖.‖A−1‖ = κ(A)
2) κ(I) = 1
3) ∀α ∈ R, κ(αA) = κ(A). Demonstracao:
κ(αA) = ‖αA‖ · ‖(αA)−1‖= |α| · ‖A‖ · ‖ 1
αA−1‖
=|α||α|‖A‖ · ‖A
−1‖
= κ(A)
4) Se D = diag(d1, d2, . . . , dn), entao:
κ(D) =max|dj| : j = 1 . . . , nmin|dj| : j = 1 . . . , n
Uma definicao alternativa do numero de condicionamento de uma matrizA e dada por:
κ(A) =max‖Ax‖
‖x‖ : x 6= 0min‖Ax‖
‖x‖ : x 6= 0
4. Resolucao de Sistemas de Equacoes Lineares 105
Observacao: Dıgitos Significativos
Aplicando o logaritmo nos dois lados da desigualdade (4.15), obtemos:
log‖x− x′‖‖x‖ 6 log κ(A)
‖b− b′‖‖b‖
= log κ(A) + log‖b− b′‖‖b‖ (4.17)
Por meio de aproximacao, a desigualdade acima nos leva a:
−DIGSE(x′) 6 log κ(A)−DIGSE(b′)
e, portanto,DIGSE(x′) > DIGSE(b′)− log κ(A)
Se κ(A) = 10j , entao j dıgitos significativos poderao ser perdidos.
4.8 Refinamento da Solucao para o Metodo
de Gauss
Conforme visto, o calculo do condicionamento e difıcil e oneroso do pontode vista computacional. O metodo de Gauss, mesmo com pivoteamento, naoproduz em geral nenhuma estimativa sobre a exatidao da resposta. Com atecnica dos refinamentos podemos obter uma medida da exatidao da resposta,bem como avaliar se o sistema dado e bem ou mal condicionado.
4.8.1 Descricao do Metodo
Os passos do metodo de refinamento sao dados na sequencia.
Passo 1: obter uma primeira aproximacao x1 da solucao exata de Ax = b(via Gauss com pivoteamento).
Passo 2: Refinar a solucao obtida a partir de xk, gerando uma aproximacaoxk+1 e obtendo mediante condicoes de convergencia x = lim
k→∞xk.
4.8.2 Geracao de Aproximacoes
A partir de x1, queremos determinar z1, tal que:
x1 + z1 = x, onde Ax = b
Portanto, z1 e a diferenca entre a solucao exata x e a solucao aproximada x1.
106 4. Resolucao de Sistemas de Equacoes Lineares
Primeiro Refinamento: Determinar z1
O refinamento e dado por:
x1 + z1 = x⇒ z1 = x− x1
e multiplicando por A os dois lados da igualdade, temos
Az1 = A(x− x1)
= Ax− Ax1
= b− Ax1
= r1
Note que z1 pode ser calculado resolvendo os sistema de equacoes:
Az1 = r1
Note que z1 pode ser calculado com facilidade. So precisamos aplicar asoperacoes que levaram a triangularizacao de A ao vetor de resıduos r1. Ob-temos entao x2 = x1 +2z1.
Segundo Refinamento: Determinar z2
Determinar o segundo refinamento, z2, consiste em encontrar:
z2 = x− x2 ⇒ Az2 = A(x− x2)
⇒ Az2 = b− Ax2 = r2
Assim, calculamos z2 e obtemos:
x3 = x2 +2z2
Obtemos, portanto, uma sequencia x1, x2, . . . , xk, para a qual veremosuma condicao de convergencia.
Teorema 4.9 Seja Ax = b um sistema de equacoes lineares e xk a sequenciaobtida por refinamentos. Se:
(a) κ(A) < 116µ(n3+3n2)
(b) os resıduos rk sao calculados com precisao dupla.
Entao xk converge para a solucao exata.
4. Resolucao de Sistemas de Equacoes Lineares 107
CALCULADOR
Resolver Ax = b via Gauss
em maquina F (b, n, e1, e2)
REFINADOR
Calculo de Resıduos
rk = b−Axk
F (b, 2n, e′1, e′
2)
ESTIMADORxk+1 ← xk + zk
EXATIDAOOK?
Imprima
Solucao
k < limite?
Impossıvel obter
solucao com
exatidao desejada
Sim
Sim Nao
Nao
onde Azk = rk
Figura 4.12: Algoritmo de refinamento.
108 4. Resolucao de Sistemas de Equacoes Lineares
4.8.3 Algoritmo
Para aplicar o metodo dos refinamentos, precisamos resolver o sistemaAzk = rk. O algoritmo e descrito na Figura 4.12.
4.8.4 Exemplo
Para fins de exemplo, considere o sistema de equacoes lineares abaixo:
2.4579x1 + 1.6235x2 + 4.6231x3 = 0.0647001.4725x1 + 0.9589x2 − 1.3253x3 = 1.04732.6951x1 + 2.8965x2 − 1.4794x3 = −0.6789
(4.18)
em uma maquina de ponto flutuante dada por F = F (10, 5,−98, 100). Ospassos do algoritmo sao descritos no que segue.
1) Triangularizacao: Inicialmente, vamos triangularizar a matriz aumen-tada. A matriz aumentada [A|b] e dada por:
2.4579 1.6235 4.6231 0.06471.4725 0.9589 −1.3253 1.04732.6951 2.8965 −1.4794 −0.6789
Trocando as linhas 1 e 3, obtemos
E3 →
E1 →
2.6951 2.8965 −1.4794 −0.67891.4725 0.9589 −1.3253 1.04732.4579 1.6235 4.6231 0.0647
Zerando os elementos abaixo de a11, obtemos:
E2 − 1.4725/2.6951E1 →E3 − 2.4579/2.6951E1 →
2.6951 2.8965 −1.4794 −0.67890 −0.6236 −0.51702 1.41820 −1.0374 5.9822 0.68839
E3 →E2 →
2.6951 2.8965 −1.4794 −0.67890 −1.0374 5.9822 0.688390 −0.6236 −0.51702 1.4182
E3 → E3 − −0.6236−1.0374
E2 →
2.6951 2.8965 −1.4794 −0.67890 −1.0374 5.9822 0.688390 0 −4.1132 1.0044
Logo, temos a matriz A em sua forma triangular superior.
4. Resolucao de Sistemas de Equacoes Lineares 109
2) Retrossubstituicao: Fazendo a retrossubstituicao, calculamos a solucaoaproximada para (4.18):
x3 = −0.24419x2 = −2.0717x1 = 1.8406
Seja x1 = [1.8406− 2.0717− 0.24419]T a primeira solucao aproximada.
2) Refinamento: em F (10, 10,−98, 100)Utilizando aproximacao x1 calculamos
Ax1 =
0.0648218011.047355377−0.678823304
o que nos permite calcular o resıduo
r1 = b−Ax1 =
0.06481.0473−0.6789
−
0.0648218011.047355377−0.678823304
=
−0.000121801−0.000055377−0.000076696
Resolvemos Az1 = r1 usando as trocas e os multiplicadores ja calcula-dos, obtendo z1 e arredondando os valores de z1 para precisao simples.Temos entao:
z1 =
z11z12z13
=
−0.0000042280.000025110−0.000057765
Assim, podemos obter a segunda aproximacao x2 = x1 + z1 dada por:
x2 =
1.8405−2.0717−0.24419
4.8.5 Analise do Condicionamento Atraves do Refina-mento
Para analise do comportamento dos sistemas lineares sem o uso do con-dicionamento de A, podemos detectar o mal condicionamento sem calcularκ(A) diretamente ou aproximadamente. Se os resıduos r1, r2, . . . , rk, sao
110 4. Resolucao de Sistemas de Equacoes Lineares
pequenos, mas as correcoes z1, z2, . . . , zk, sao grandes, entao o sistema e mal-condicionado. Para sistemas bem-condicionados, os refinamentos nao devemser feitos mais do que duas vezes.
A avaliacao empırica de sistemas lineares mal-condicionados pode serfeita atraves de um grafico, conforme ilustram as Figuras 4.13 (sistema bem-condicionado), 4.14 (sistema mais ou menos mal-condicionado), e 4.15 (sis-tema mal-condicionado).
k
p
p: precisao da maquinak: numero de refinamentos
DIGSE(xk)
Figura 4.13: Avaliacao empırica de sistema bem-condicionado atraves dometodo de refinamento.
4.9 Equacionamento Matricial: Eliminacao
Gaussiana de Forma Compacta
Vamos construir matrizes que expressam a eliminacao Gaussiana em ter-mos matriciais. O equacionamento sera ilustrado atraves de um exemplo.Seja Ax = b um sistema de equacoes lineares dado por:
A =
10 −7 0−3 2 65 −1 5
e b =
746
Fazendo:
M1 =
1 0 0m21 1 0m31 0 1
,
4. Resolucao de Sistemas de Equacoes Lineares 111
k
p
p: precisao da maquinak: numero de refinamentos
DIGSE(xk)
Figura 4.14: Avaliacao empırica de sistema mais ou menos mal-condicionadoatraves do metodo de refinamento.
k
p
p: precisao da maquinak: numero de refinamentos
DIGSE(xk)
Figura 4.15: Avaliacao empırica de sistema mal-condicionado atraves dometodo de refinamento.
112 4. Resolucao de Sistemas de Equacoes Lineares
onde m21 = 0.3 e m31 = −0.5, obteremos:
M1 =
1 0 00.3 1 0−0.5 0 1
Portanto,
M1Ax = M1b ⇔
10 −7 00 −0.1 60 2.5 5
x =
76.12.5
Em outras palvras, a pre-multiplicacao de Ax = b com a matriz M1 resultouno zeramento dos elementos abaixo de a11. Repetindo os passos acima parao elemento da coluna 2, abaixo de a22, executaremos o segundo passo datriangularizacao de A. Seja entao:
M2 =
1 0 00 1 00 m32 1
,
onde m32 = 25, o que nos leva a:
M2 =
1 0 00 1 00 25 1
Pre-multiplicando M1Ax = M1b com a matriz M2, obteremos
M2(M1A)x = M2(M1)b ⇔ M2(M1A) =
10 −7 00 −0.1 60 0 155
x =
76.1155
Portanto, o metodo de Gauss pode ser escrito como:
M2M1Ax = M2M1b
onde M2M1A = U e uma matriz triangular superior. Em geral, para umsistema A ∈ R
n×n, temos
(Mn−1 . . .M2M1)Ax = (Mn−1 . . .M2M1)b
O que acontece quando temos que trocar linhas, durante o pivoteamento?Seja Pij a matriz obtida ao trocarmos as linhas i e j da matriz identidade I.Entao, PijA troca as linhas i e j da matriz A.
4. Resolucao de Sistemas de Equacoes Lineares 113
Exemplo
Sejam as matrizes
A =
10 −7 0−3 2 65 −1 5
, e P23 =
1 0 00 0 10 1 0
entao P23A e precisamente
P23A =
10 −7 05 −1 5−3 2 6
Equacionamento do Matricial do Metodo de Gauss
Portanto, o metodo de Gauss pode ser expresso como:
U = Mn−1Pn−1Mn−2Pn−2 . . .M2P2M1P1A
⇒A = P−1
1 M−11 P−1
2 M−12 . . . P−1
n−1M−1n−1U
= LU
⇒A = P T
1 M−11 P T
2 M−12 . . . P T
n−1M−1n−1U
= LU
Uma vez que P−1j = P T
j sempre que Pj for uma matriz de permutacao de
linhas. Note que M−1i pode ser facilmente obtida a partir de Mi: a matriz
inversa M−1i e identica a matriz Mi, exceto que o sinal dos elementos abaixo
da diagonal principal tem sinais opostos aos elementos correspondentes emMi.
Exemplo de P−1j = P Tj
0 0 10 1 01 0 0
0 0 10 1 01 0 0
=
1 0 00 1 00 0 1
Exercıcio
i. Calcule as matrizes inversas M−11 e M−1
2 do exemplo. Verifique a pro-priedade que relaciona M−1
i a Mi. Obtenha a representacao A = LU .
114 4. Resolucao de Sistemas de Equacoes Lineares
4.10 Decomposicao LU
Dado um sistema de equacoes lineares, com A nao-singular,
A · x = b (4.19)
a decomposicao LU busca encontrar tres matrizes n× n de maneira que
P · A = L · U (4.20)
onde:
• P e uma matriz de pivoteamento (tambem indicada na literatura comomatriz de permutacao);
• L e uma matriz triangular inferior (Lower); e
• U e uma matriz triangular superior (Upper).
Este metodo busca transformar o problema em dois problemas faceis de seremresolvidos, que e a resolucao de sistemas lineares com matrizes triangulares.De posse das matrizes PLU , o processo de resolucao e:
A · x = b
P−1 · L · U · x = b (4.21)
Entao definimos y = Ux e pre-multiplicamos a equacao (4.21) por P , ob-tendo:
P · P−1 · L · y = P · bL · y = P · b (4.22)
O sistema na equacao (4.22) pode ser resolvido por substituicao direta, o quenos leva a encontrar y. Assim, possuımos elementos para resolver:
U · x = y (4.23)
por retrosubstituicao.
4.10.1 Substituicao Direta
Admita o sistema de equacoes lineares:
L · y = b
4. Resolucao de Sistemas de Equacoes Lineares 115
onde L e uma matriz diagonal inferior. Usaremos um exemplo com L ∈ R3×3
para exemplificar o processo, onde:
l11 0 0l21 l22 0l31 l32 l33
·
y1y2y3
=
b1b2b3
Podemos observar que
y1 =b1l11
e obtemos seu valor de imediato. No passo seguinte temos que
l21y1 + l22y2 = b2
y2 =1
l22(b2 − l21y1)
mas y1 ja e conhecido, entao pode-se obter o valor de y2. Desta maneira, y3e eventuais yn podem ser calculados sucessivamente.
4.10.2 Retrosubstituicao
Admita agora o sistema de equacoes lineares:
U · x = y
onde U e uma matriz diagonal superior. Utilizamos novamente um exemplocom U ∈ R
3×3 para apresentar o processo, onde:
u11 u12 u13
0 u22 u23
0 0 u33
·
x1
x2
x3
=
y1y2y3
Da mesma maneira que na secao anterior, mas iniciando a partir da ultimalinha de U , temos que:
x3 =y3u33
x2 =1
u22
(y2 − u23x3)
...
116 4. Resolucao de Sistemas de Equacoes Lineares
4.10.3 Obtendo LU sem Permutacoes
Primeiro consideraremos o problema da obtencao da fatoracao sem a ma-triz de permutacoes. Este caso especial e obtido fazendo P = I (identidade)no caso geral. Admita a seguinte divisao das matrizes A = L · U :
[
a11 A12
A21 A22
]
=
[
1 0L21 L22
] [
u11 U12
0 U22
]
onde A21 e L21 ∈ R(n−1)×1 sao matrizes colunas; A12 e U12 ∈ R
1×(n−1) sao ma-trizes linhas; e A22, L22, U22 ∈ R
(n−1)×(n−1) agrupam o restante das matrizesoriginais. Do produto obtemos:
[
a11 A12
A21 A22
]
=
[
u11 U12
u11L21 L21U12 + L22U22
]
Assim podemos obter a primeira linha de U e a primeira coluna de L, fazendo:
u11 = a11
U12 = A12 (4.24)
L21 =1
u11
A21
e ainda obtemos:
L22U22 = A22 − L21U12 = A22 −1
a11A12A21 (4.25)
que nos permite calcular L22 e U22 fatorando A22−L21U12. Assim, chegamosao seguinte algoritmo recursivo:
1) calcular a primeira linha de U : u11 = a11 e U12 = A12;
2) calcular a primeira coluna de L: L12 = ( 1a11
)A21;
3) calcular a decomposicao das sub-matrizes L22 e U22: L22U22 = A22 −L21U12.
Este algoritmo fica da seguinte maneira em pseudo-codigo:
LU-Solve(A)
1: n← rows[A]2: for k ← 1 to n do3: ukk ← akk4: for i← k + 1 to n do
4. Resolucao de Sistemas de Equacoes Lineares 117
5: lik ← aik/ukk
6: uki ← aki7: end for8: for i← k + 1 to n do9: for j ← k + 1 to n do
10: aij ← aij − likukj
11: end for12: end for13: end for14: Retorna L e U
O algoritmo assume que a matriz U ja possui zeros abaixo de sua diagonal,e que a matriz L possui zeros acima de sua diagonal e 1’s nela.
Exemplo
Calcular a fatoracao LU de
A =
2 3 16 13 52 19 10
It k = 1:
2 3 16 4 22 16 9
=⇒
1 0 03 1 01 1
2 3 100 0
It k = 2:
2 3 16 4 22 16 1
=⇒
1 0 03 1 01 4 1
2 3 10 4 20 0
It k = 3:
2 3 16 4 22 16 1
=⇒
1 0 03 1 01 4 1
2 3 10 4 20 0 1
Discussao do Algoritmo
Podemos observar que o algoritmo modifica a matriz A e que os valorescontidos nas linhas e colunas k so sao utilizados em sua iteracao, assim epossıvel que as matrizes L e U sejam montadas na propria matriz A.
118 4. Resolucao de Sistemas de Equacoes Lineares
4.10.4 Problemas do Nao-Pivoteamento
Um exemplo simples mostra que nem todas as matrizes nao-singularespodem ser fatoradas por A = LU :
A =
[
0 11 −1
]
Se aplicarmos o algoritmo, teremos u11 = 0. Para calcularmos L21 =1
u11A21,
teremos uma divisao por zero. Assim, elementos nulos na posicao do “pivo”devem ser evitados utilizando, por exemplo, uma troca de linhas.
De fato, a troca de linhas e bastante comum, procurando que o pivoassuma o elemento de maior norma da coluna restante. Esta heurıstica semostra bastante eficiente para manter a estabilidade numerica do algoritmo,salvo em casos raros.
4.10.5 Representando as Matrizes LU em Uma Matriz
Pela sua definicao, a matriz U apresenta elementos nao nulos acima desua diagonal e nela. A matriz L os possui abaixo de sua diagonal e nela. Umaconsequencia desta implementacao e que os elementos da diagonal principalde L sempre serao 1. Assim, podemos representar as duas matrizes em umaso, pois varios elementos ja sao conhecidos de antemao:
A′ =
u11 u12 u13 . . . u1n
l21 u22 u23 u2n
l31 l32 u33 u3n...
. . ....
ln1 ln2 ln3 . . . unn
4.10.6 O Vetor de Pivoteamento
No algoritmo que sera apresentado a seguir, e utilizado um vetor π aoinves da matriz para representar a permutacao entre linhas. Estas notacoessao equivalentes. No vetor, o elemento π[i] indica qual e a linha da matriz Ique deve estar no local de i.
4. Resolucao de Sistemas de Equacoes Lineares 119
Exemplo
O vetor π = (2, 4, 1, 3) e equivalente a matriz
A =
0 1 0 00 0 0 11 0 0 00 0 1 0
4.10.7 Decomposicao LU com Pivoteamento
A demostracao formal do algoritmo com pivoteamento e um pouco maiscomplicada que do primeiro, e nao sera coberta neste material. Foi demons-trado que esta decomposicao existe sempre se a matriz A for nao-singular.Nesta implementacao a decomposicao sera executada na propria matriz A,obtendo a representacao apresentada na secao 4.10.5. As permutacoes seraorepresentadas pelo vetor π.
O algoritmo possui quatro etapas distintas: as tres primeiras linhas saoa inicializacao das variaveis e vetores; da linha 5 a 11 a coluna e varrida apartir de k, na busca do elemento de maior norma; nas tres linhas seguintese executada a operacao de troca de linhas; por fim, nas linhas 15 a 18 saocalculados os novos fatores da matriz. O algoritmo em pseudo-codigo e:
LUP-Solve(A)
1: n← rows[A]2: for i← 1 ate n do3: π[i]← i4: end for5: for k ← 1 ate n do6: p← 07: for i← k ate n do8: if |aik| > p then9: p← |aik|
10: k′ ← i11: end if12: if p = 0 then13: Saıda “matriz singular”14: Pare15: end if16: Troque π[k]↔ π[k′]17: for i← 1 ate n do18: Troque aki ↔ ak′i
120 4. Resolucao de Sistemas de Equacoes Lineares
19: end for20: for i← k + 1 ate n do21: aik ← aik/akk22: for j ← k + 1 ate n do23: aij ← aij − aikakj24: end for25: end for26: end for27: end for28: Retorne A e π
Exemplo
Calcular a fatoracao LUP da matriz
A =
2 0 2 0, 63 3 4 −25 5 4 2−1 −2 3, 4 −1
Iteracao k = 1:
1234
2 0 2 0, 63 3 4 −2(5) 5 4 2−1 −2 3, 4 −1
3214
(5) 5 4 23 3 4 −22 0 2 0, 6−1 −2 3, 4 −1
3214
(5) 5 4 20, 6 0 1, 6 −3, 20, 4 −2 0, 4 −0, 2−0, 2 −1 4, 2 −0, 6
Iteracao k = 2:
3214
5 5 4 20, 6 0 1, 6 −3, 20, 4 (−2) 0, 4 −0, 2−0, 2 −1 4, 2 −0, 6
3124
5 5 4 20, 4 (−2) 0, 4 −0, 20, 6 0 1, 6 −3, 2−0, 2 −1 4, 2 −0, 6
3124
5 5 4 20, 4 (−2) 0, 4 −0, 20, 6 0 1, 6 −3, 2−0, 2 0, 5 4 −0, 5
4. Resolucao de Sistemas de Equacoes Lineares 121
Iteracao k = 3:
3124
5 5 4 20, 4 −2 0, 4 −0, 20, 6 0 1, 6 −3, 2−0, 2 0, 5 (4) −0, 5
3142
5 5 4 20, 4 −2 0, 4 −0, 2−0, 2 0, 5 (4) −0, 50, 6 0 1, 6 −3, 2
3142
5 5 4 20, 4 −2 0, 4 −0, 2−0, 2 0, 5 (4) −0, 50, 6 0 0, 4 −3
Assim,
0 0 1 01 0 0 00 0 0 10 1 0 0
2 0 2 0, 63 3 4 −25 5 4 2−1 −2 3, 4 −1
=
1 0 0 00, 4 1 0 0−0, 2 0, 5 1 00, 6 0 0, 4 1
5 5 4 20 −2 0, 4 −0, 20 0 4 −0, 50 0 0 −3
4.10.8 Metodo de Crout
Aqui apresentamos um algoritmo alternativo para encontrar a decom-posicao LU sem pivoteamento. Podemos obter LU resolvendo um sistemade equacoes nao lineares conforme segue:
l11 0 0 0l21 l22 0 0l31 l32 l33 0l41 l42 l43 l44
u11 u12 u13 u14
0 u22 u23 u24
0 0 u33 u34
0 0 0 u44
=
a11 a12 a13 a14a21 a22 a23 a24a31 a32 a33 a34a41 a42 a43 a44
L U = A
Isto significa queaij = li1u1j + li2u2j + . . .+ linunj
Alguns exemplos de equacoes:
a13 = l11u13 + l12u23 + l13u33 + l14u43
= l11u13
a32 = l31u12 + l32u22 + l33u32 + l34u42
= l31u12 + l32u22
a22 = l21u12 + l22u22 + l23u32 + l24u42
= l21u12 + l22u12
122 4. Resolucao de Sistemas de Equacoes Lineares
Ha tres casos:
1) i < j : aij = li1u1j + li2u2j + . . .+ liiuij (4.26)
2) i = j : aij = li1u1j + li2u2j + . . .+ liiuij (4.27)
3) i > j : aij = li1u1j + li2u2j + . . .+ lijujj (4.28)
O sistema de equacoes (4.26), (4.27), e (4.28) possui n2 equacoes e n2 + nvariaveis (a diagonal e representada duas vezes). Uma vez que o numerode variaveis e maior que o numero de incognitas, podemos especificar n dasincognitas arbitrariamente. Entao fazemos,
lii = 1, ∀i = 1, . . . , n (4.29)
O algoritmo de Crout, que sera apresentado a seguir, resolve o sistemade N2 + N equacoes (4.26), (4.27), (4.28), e (4.29) atraves de uma simplesreordenacao das equacoes.
Crout(A)
1: Defina lii = 1, i = 1, . . . , n2: for j = 1, . . . , n do3: for i = 1, . . . , j do
4: Use (4.26), (4.27), e (4.29) para resolver uij: uij = aij −i−1∑
k=1
likukj
5: end for6: for i = j + 1, j + 2, . . . , n do
7: Use (4.28) para resolver lij: lij =1
ujj(aij −
j−1∑
k=1
likukj)
8: end for9: end for
Exemplo
Aqui vamos aplicar o Algoritmo de Crout para encontrar a decomposicaoLU da matriz
A =
10 −7 0−3 2 65 −1 5
Passos executados pelo algoritmo:
1) u11 = a11 −∑1−1
k=1 likukj = a11 = 10
2) l21 =1
u11(a21 −
1−1∑
k=1
likukj) = −0.3
4. Resolucao de Sistemas de Equacoes Lineares 123
3) l31 =1
u11(a31 −
1−1∑
k=1
likukj) = 0.5
4) u12 = a12 −1−1∑
k=1
likukj = a12 = −7
5) u22 = a22−∑2−1
k=1 likukj = a22− l21u12 = 2− (0.3)(−7) = 2−2.1 = −0.1
6) l32 =1
u22(a32 −
2−1∑
k=1
l3kuk2) = −25
7) u13 = a13 −1−1∑
k=1
likukj = a13 = 0
8) u23 = a23 −2−1∑
k=1
l2kuk3 = a23 − l31u13 = 6− (0.3)(0) = 6
9) u33 = a33−3−1∑
k=1
l3kuk3 = a33−l31u13−l32u23 = 5−(0.5)(0)−(−25)6 = 155
Portanto,
L =
1 0 0−0.3 1 00.5 −25 1
U =
10 −7 00 −0.1 60 0 155
o que nos permite verificar que
LU =
1 0 0−0.3 1 00.5 −25 1
10 −7 00 −0.1 60 0 155
=
10 −7 0−3 2 65 −1 5
4.11 Decomposicao de Cholesky
Aqui consideramos uma variante da fatoracao LU aplicada a matrizessimetricas e positiva definidas. Seja A uma matriz simetrica e positiva defi-nida, ou seja A = AT e A ≻ 0, entao existem uma matriz triangular inferiorL tal que A = LLT . Para se calcula a matriz L, inicialmente colocamos amatriz A na forma abaixo:
A =
[
a11 AT21
A21 A22
]
124 4. Resolucao de Sistemas de Equacoes Lineares
onde a11 e um escalar, A21 e uma matriz linha, A21 e um vetor coluna e A22 euma submatriz de dimensao apropriada. Note que o escalar a11 > 0 visto queA ≻ 0. Entao o fator Cholsky L pode ser colocado em uma forma apropriada
L =
[
l11 0L21 L22
]
onde l11 e um escalar, L21 e um vetor coluna e L22 e uma matriz de mesmadimensao de A22. Logo,
A =
[
a11 AT21
A21 A22
]
=
[
l11 0L21 L22
] [
l11 LT21
0 LT22
]
=
[
l211 l11LT21
l11L21 (L21LT21 + L22L
T22)
]
= LLT
Os passos para obtencao do fator Cholesky sao:
i. Calcule a primeira coluna de L:
l211 = a11 =⇒ l11 =√a11
l11L21 = A21 =⇒ L21 =1
l11A21
ii. Recursivamente compute a fatoracao de Cholesky da submatriz
L21LT21 + L22L
T22 = A22 =⇒ L22L
T22 = A22 − L21L
T21
Sendo o termo L21LT21 conhecido, enquanto o L22L
T22 desconhecido, pode-
mos expressar a fatoracao Cholesky da submatriz como segue
L22LT22 = A22 − L21L
T21
= A22 −1
l11A21A
T21
= A22 −1√a11
A21AT21
Exemplo
A =
[25 15 −515 18 0−5 0 11
]
=
[ 5 0 03 l22 0−1 l32 l33
]
=
[5 3 −10 l22 l320 0 l33
]
4. Resolucao de Sistemas de Equacoes Lineares 125
[
18 00 11
]
=
[
l22 0l32 l33
][
l22 l320 l33
]
+
[
3−1
]
[3 −1]
Portanto,[
9 33 10
]
=
[
l22 0l32 l33
][
l22 l320 l33
]
=
[
3 01 l33
][
3 10 l33
]
10 = 1 + l233 → l33 = 3
o que nos leva ao fator Cholesky
L =
[ 5 0 03 3 0−1 1 3
]
.
4.12 Metodo de Gauss-Jordan
O metodo de Gauss-Jordan transforma a matriz A do sistema Ax = b emuma matriz diagonal.
1a Etapa: transformar Ax = b em Ux = b, onde U e uma matriz triangularsuperior.
2a Etapa: transformar o sistema Ux = b em um sistema Dx = b onde D euma matriz diagonal.
Observacao: a primeira e segunda etapas podem ser realizadas simultanea-mente. A k-esima equacao sera usada para zerar os coeficientes das equacoes1, 2, . . . , k − 1, k + 1, . . . , n.
Exemplo
Abaixo seguem os passos envolvidos na primeira etapa do metodo deGauss-Jordan. Vamos considerar a matriz aumentada [A|b] de um sistema
126 4. Resolucao de Sistemas de Equacoes Lineares
de equacoes lineares Ax = b.
1 −3 4 1−2 8 −6 23 −5 15 5
→
1 −3 4 10 2 2 40 4 3 2
→
1 0 7 70 2 2 40 0 −1 −6
→
1 0 0 −350 2 0 −80 0 −1 −6
Com base no sistema equivalente obtido na primeira etapa, podemos deduzirque a solucao para Ax = b e dada por:
x1 = −35, x2 = −4, x3 = 6
Podemos utilizar o metodo de Gauss-Jordan para obter a inversa da ma-triz.
A =
1 −3 4−2 8 −163 −5 15
Para isto, tomamos a matriz aumentada [A|I] e aplicamos os mesmos passosda primeira etapa, conforme indicado abaixo:
1 −3 4 1 0 0−2 8 −16 0 1 03 −5 15 0 0 1
→
1 −3 4 1 0 00 2 2 2 1 00 4 3 −3 0 1
→
1 0 7 4 32
00 1 1 1 1
20
0 0 −1 −7 −2 1
→
1 0 0 −45 −252
70 1 0 −6 −3
21
0 0 1 7 2 −1
Logo,
A−1 =
−45 −252
7−6 −3
21
7 2 −1
Os passos executados acima podem ser descritos de outra forma
A−1[A|I] → [A−1A|A−1I]
→ [I|A−1]
4. Resolucao de Sistemas de Equacoes Lineares 127
4.13 Metodo de Gauss-Jordan
O metodo de Gauss-Jordan transforma a matriz A do sistema Ax = b emuma matriz diagonal.
1a Etapa: transformar Ax = b em Ux = b, onde U e uma matriz triangularsuperior.
2a Etapa: transformar o sistema Ux = b em um sistema Dx = b onde D euma matriz diagonal.
Observacao: a primeira e segunda etapas podem ser realizadas simultanea-mente. A k-esima equacao sera usada para zerar os coeficientes das equacoes1, 2, . . . , k − 1, k + 1, . . . , n.
Exemplo
Abaixo seguem os passos envolvidos na primeira etapa do metodo deGauss-Jordan. Vamos considerar a matriz aumentada [A|b] de um sistemade equacoes lineares Ax = b.
1 −3 4 1−2 8 −6 23 −5 15 5
⇒
1 −3 4 10 2 2 40 4 3 2
⇒
1 0 7 70 2 2 40 0 −1 −6
⇒
1 0 0 −350 2 0 −80 0 −1 −6
Com base no sistema equivalente obtido na primeira etapa, podemos deduzirque a solucao para Ax = b e dada por:
x1 = −35, x2 = −4, x3 = 6
Podemos utilizar o metodo de Gauss-Jordan para obter a inversa da ma-triz.
A =
1 −3 4−2 8 −163 −5 15
128 4. Resolucao de Sistemas de Equacoes Lineares
Para isto, tomamos a matriz aumentada [A|I] e aplicamos os mesmos passosda primeira etapa, conforme indicado abaixo:
1 −3 4 1 0 0−2 8 −16 0 1 03 −5 15 0 0 1
⇒
1 −3 4 1 0 00 2 2 2 1 00 4 3 −3 0 1
⇒
1 0 7 4 32
00 1 1 1 1
20
0 0 −1 −7 −2 1
⇒
1 0 0 −45 −252
70 1 0 −6 −3
21
0 0 1 7 2 −1
Logo,
A−1 =
−45 −252
7−6 −3
21
7 2 −1
Os passos executados acima podem ser descritos de outra forma
A−1[A|I] ⇒ [A−1A|A−1I]
⇒ [I|A−1]
4.14 Singular Value Decomposition (SVD)
SVD e uma tecnica poderosa para tratar de conjuntos de equacoes oumatrizes que sao singulares ou quase singulares. Em muitos casos SVD naoapenas faz um diagnostico do problema, mas tambem encontra uma solucao,no sentido de que SVD encontra uma solucao numerica util. Seja A ∈ R
m×n
uma matriz com m linhas e n colunas, m > n, entao A pode ser escrita como:
A = UΣV T
onde:
• U ∈ Rm×n, cujas colunas sao ortogonais,
• Σ ∈ Rn×n e a diagonal cujas entradas sao numeros positivos ou zeros
(valores singulares)
• V ∈ Rn×n, que e ortogonal.
4. Resolucao de Sistemas de Equacoes Lineares 129
Em outras palavras
A = U
σ1 0 0 . . . 00 σ2 0 . . . 00 0 σ3 . . . 0...
......
. . ....
0 0 0 0 σn
V T = U · diag(σ1, . . . , σn) · V T
tal que UTU = V TV = diag(1, 1, . . . , 1)Para A ∈ R
n×n, temos
A = UΣV T , U ∈ Rn×n, V ∈ R
n×n e Σ ∈ Rn×n
SVD tambem pode ser aplicado quando m < n. Neste caso os valoressingulares σj, j = m+1, . . . , n, sao todos nulos e as colunas correspondentesde U sao nulas.
A decomposicao SVD pode ser executada sempre, nao importando quaosingular a matriz seja e a decomposicao e quase-unica. A decomposicao SVDe unica a menos de permutacoes das colunas de U , dos elementos de Σ, ecolunas de V (ou linhas de V T )
4.14.1 SVD de uma Matriz Quadrada
Seja A ∈ Rn×n uma matriz quadrada A = UΣV T a decomposicao SVD
correspondente. Se A e nao-singular, podemos calcular sua inversa
A−1 = (UΣV T )−1
= (ΣV T )−1U−1
= (V T )−1Σ−1U−1
= V Σ−1UT
= V diag(1/σ1, 1/σ2, . . . , 1/σn)UT
Note que
AA−1 = (UΣV T )(UΣV T )−1
= (UΣV T )V Σ−1UT
= UΣ(V TV )Σ−1UT
= U(ΣΣ−1)UT
= UUT
= I
130 4. Resolucao de Sistemas de Equacoes Lineares
A inversa de A nao pode ser calculada quando σj e proximo de zero, paraalgum j, o que indica que a matriz e quase-singular. A condicao de A, κ(A),pode ser calculada a partir da diagonal de Σ conforme segue
κ(A) =maxσj : j = 1, . . . , nminσj : j = 1, . . . , n
Dizemos que matriz A e singular se κ(A) = ∞ e mal-condicionada de κ(A)e um numero grande.
Observacao: O algoritmo para calculo de decomposicao SVD pode ser en-contrado em pacotes numericos, tais como Matlab, Scilab e Mathematica.O algoritmo de decomposicao SVD e intrincado e por esta razao nao seraapresentado neste texto.
4.14.2 Determinando o Espaco Gerado e o EspacoNulo
Podemos determinar o espaco gerado (range(A)) e o espaco nulo(null(A)) de uma matriz singular A atraves da decomposicao SVD. Sejao sistema Ax = b, onde A ∈ R
n×n e uma matriz quadrada. Lembramos quenull(A) = x ∈ R
n : Ax = 0, range(A) = y ∈ Rn : y = Ax para algum x,
e dim(range(A)) + dim(null(A)) = n.
O que SVD tem a ver com null(A) e range(A)? SVD explicitamenteproduz bases para null(A) e range(A).
• As colunas de U cujos wj correspondentes sao nao nulos, formam umabase ortonormal de range(A).
• As colunas de V cujos wj correspondentes sao nulos formam uma baseortonormal para o espaco nulo.
4.14.3 Exemplo 1
Consideremos o sistema de equacoes lineares Ax = b dado por
1 −3 4−2 8 −63 −5 15−1 5 −2
x =
1213
4. Resolucao de Sistemas de Equacoes Lineares 131
A decomposicao SVD nos da A = UΣV T , onde
U =
0.2594 −0.0876 −0.7692−0.4840 0.6269 0.19870.8050 0.5555 0.2083−0.2245 0.5393 −0.5705
Σ =
19.5468 0 00 6.0765 00 0 0.0292
V =
0.1978 −0.0352 0.9796−0.5012 0.8552 0.13200.8424 0.5171 −0.1515
(4.30)
Com base na decomposicao SVD acima, podemos verificar que o numero decondicao da matriz A e κ(A) = 670.2104.
4.14.4 Exemplo 2
Aqui ilustramos como a decomposicao SVD pode ser empregada parase encontrar o espaco gerado e o espaco nulo de uma matriz. Considere amatriz:
B =
1 −3 4 −2−2 8 −6 63 −5 15 −21 2 −2 3
A decomposicao SVD de B = UΣV T e dada pelas matrizes:
U =
0.2707 0.1120 −0.0693 0.9536−0.5352 −0.7314 0.3316 0.26190.7834 −0.6011 0.0554 −0.1477−0.1627 −0.3019 −0.9392 0.0134
Σ =
20.0342 0 0 00 6.7846 0 00 0 1.8975 00 0 0 0
V =
0.1761 −0.0782 −0.7934 −0.5774−0.4660 −0.5580 0.3716 −0.57740.8172 −0.5271 0.2333 0.0000−0.2899 −0.6362 −0.4218 0.5774
132 4. Resolucao de Sistemas de Equacoes Lineares
Note que B e singular, κ(B) =∞. Com base na decomposicao SVD acima,podemos calcular uma base para o espaco nulo de B.
Null(B) = range(
−0.5774−0.57740.00000.5774
)
e tambem uma base para o espaco gerado por B
Range(B) = Range(
0.2707 0.1120 −0.0693−0.5352 −0.7314 0.33160.7834 −0.6011 0.0554−0.1627 −0.3019 −0.9392
)
4.14.5 Consideracoes Finais sobre Decomposicao SVD
Considere o sistema Ax = b, onde A ∈ Rn×n, b ∈ R
n×1, e x ∈ Rn×1.
Suponha que A e singular, ou seja, det(A) = 0, e b ∈ range(A). Neste caso,existem infinitas solucoes x que satisfazem Ax = b. Em particular, seja xtal que Ax = b, entao A(x + y) = b, ∀y ∈ null(A). Considere o problemaabaixo:
P : Minimize ‖x‖2x ∈ R
n
Sujeito a :Ax = b
Em palavras, o problema P se refere a encontrar a solucao x para Ax = bque tenha a menor norma. Seja Σ−1 = diag( 1
σj), fazendo 1
σj= 0 sempre que
o valor singular wj for nulo. Entao x∗ = V diag( 1σj)UT b e a solucao otima de
P .
4.14.6 Visao Geometrica da Decomposicao SVD
Transformacoes lineares apresentam varias aplicacoes. Considere umamatriz A ∈ R
n×n e a transformacao linear f(x) = Ax. Note que dois vetoresde mesma direcao sao mapeados em vetores de mesma direcao pela funcaof(x). Como exemplo, considere os vetores x e x′ = αx com α ∈ R − 0.Entao f(x) = Ax e f(x′) = Ax′ = A(αx) = αAx o que nos permite entendera transformacao a partir da visao geometrica da transformacao de vetoresunitarios. Uma transformacao linear (nao-singular) A transforma esferas em
4. Resolucao de Sistemas de Equacoes Lineares 133
elipsoides. A Fig. 4.16 ilustra a transformacao induzida pela matriz A dadapor:
A =
[
1.47 0.980.98 1.47
]
(4.31)
−2 −1 0 1 2−2
−1
0
1
2
−2 −1 0 1 2−2
−1
0
1
2
v2
v2
v1
v1
Figura 4.16: Transformacao de esferas em elipsoides.
Uma maneira de entender o que A faz e encontrar quais vetores sao ma-peados para os eixos principais do elipsoide. Se tivermos sorte, A = UΛUT
com U ortogonal, o que ocorre quando A e simetrica, entao os autovetoresde A definem os eixos do elipsoide. A decomposicao por autovetores de Anos diz quais vetores ortogonais tem comprimento redimensionado (ver Fig.4.17):
A =[
v1 v2 . . . vn]
λ1
λ2
. . .
λn
[
v1 v2 . . . vn]T
(4.32)
Avi = λivi (4.33)
Note que f(vi) = Avi = λivi, ou seja, um autovetor vi matem a direcaosofrendo apenas um ajuste no comprimento (e sentido, caso λi < 0) conformeo autovalor λi.
Como exemplo, a decomposicao por autovetores da matriz A dada em(4.31) pode ser expressa como segue:
A = UΛUT =
[
−0.7071 0.70710.7071 0.7071
] [
0.49 00 2.45
] [
−0.7071 0.70710.7071 0.7071
]
(4.34)
134 4. Resolucao de Sistemas de Equacoes Lineares
−2 −1 0 1 2−2
−1
0
1
2
−2 −1 0 1 2−2
−1
0
1
2
v1
v2
v2 v1
Figura 4.17: Ilustracao da transformacao induzida por uma matriz Asimetrica.
Esta transformacao e ilustrada na Fig. 4.18. Note que o vetor v1 =[−0.7071 0.7071] tambem matem direcao e sentido, tendo seu comprimentoreduzido pela metade conforme fator λ1 = 0.49. Por outor lado, o vetorv2 = [0.7071 0.7071] mantem a direcao e sentido, mas o comprimento e ex-pandido pelo fator λ2 = 2.45.
−2 −1 0 1 2−2
−1
0
1
2
−2 −1 0 1 2−2
−1
0
1
2
v2 v1 v1
v2
Figura 4.18: Ilustracao da transformacao induzida por uma matriz Asimetrica.
Em geral uma matriz A tambem induz rotacoes, nao apenas alteracoesnas escalas como indica a Fig. 4.19. A transformacao dada por A pode ser
4. Resolucao de Sistemas de Equacoes Lineares 135
melhor entendida atraves da decomposicao SVD:
A = UΣV T (4.35)
=[
u1 u2 . . . un
]
σ1
σ2
. . .
σn
[
v1 v2 . . . vn]T
(4.36)
onde as matrizes U e V sao ortonormais e σi > 0 sao os valores singulares.Logo, temos que AV = UΣV TV = UΣ. Para um vetor vi a transformacaodada por A leva a um vetor Avi = σiui:
Avi =[
u1 u2 . . . un
]
σ1
σ2
. . .
σn
[
v1 v2 . . . vn]T
vi
(4.37)
=[
u1 u2 . . . un
]
0...σi...0
= σiui (4.38)
Para qualquer matriz quadrada A ∈ Rn×n existem matrizes ortogonais
U, V ∈ Rn×n e uma matriz diagonal Σ, tal que os elementos σi da diago-
nal de Σ sao nao negativos com A = UΣV T . Os elementos da diagonal deΣ (σ1, . . . , σn) sao ditos valores singulares e tipicamente se assume que elesestao ordenados com σ1 > σ2 > σn. As colunas de U (u1, . . . , un) sao cha-madas de vetores singulares a esquerda e definem os eixos do elipsoide (verFig. 4.19). As colunas de V (v1, . . . , vn) sao chamadas de vetores singularesa direita e definem os vetores que sujeitos a transformacao levam aos eixosdo elipsoide, Avi = σiui.
4.14.7 Analise dos Componentes Principais
Considere um experimento com um numero n de pessoas onde se medea altura de cada indivıduo em centımetros e polegadas. Neste experimentoe avaliado o impacto de suplementos nutricionais na altura. E necessariomanter ambas as medidas de altura? Provavelmente nao, pois a altura e
136 4. Resolucao de Sistemas de Equacoes Lineares
−2 −1 0 1 2−2
−1
0
1
2
−2 −1 0 1 2−2
−1
0
1
2
v1
v2 σ1 u1
σ2 u2
Figura 4.19: Ilustracao da transformacao dada por uma matriz A que gerarotacoes e mudancas em escala.
uma caracterıstica de uma pessoa independentemente de como ela e medida,seja em centımetros, seja em polegadas.
Em uma situacao mais complexa, um questionario poderia ser elaboradopara avaliar a satisfacao de pessoas com suas vidas. Neste questionario haquestoes sobre os atividades de lazer (item 1) e quao frequentemente dedicamtempo para recreacao e lazer (item 2). As chances desses dois itens estaremcorrelacionados sao muito altas. Existindo alto grau de correlacao (medidaestatıstica de dependencia entre duas variaveis aleatorias), concluımos queos itens sao redudantes.
Podemos sumarizar a dependencia entre duas variaveis atraves de umgrafico, contendo em uma dimensao uma das variaveis e na outra dimensao,a outra variavel. Uma reta pode entao ser ajustada para representar um rela-cionamento linear entre as variaveis, como ilustra a Fig. 4.20. Se pudessemosdefinir uma variavel que aproximasse a reta em tal grafico, entao estarıamoscapturando a essencia dos dois itens. O questionario aplicado aos sujeitosdo experimento acima poderia tomar como base este novo fator, represen-tado pela linha, que captura a essencia dos itens 1 e 2. De certa maneira,reduzimos as duas variaveis a um unico fator. Observe que o novo fator e naverdade uma combinacao linear das duas variaveis.
O exemplo de combinar duas variaveis correlacionadas em um unico fatorilustra a ideia basica por tras da analise de componentes principais. Esten-dendo o caso de duas variaveis para o cenario de multiplas variaveis, entaoo computo dos fatores principais se torna mais complexo, mas o princıpiode modelar duas ou mais variaveis por um unico fator permanece. Em li-nhas gerais, a extracao dos componentes principais consiste em uma rotacaoque maximiza variancia (variance maximization rotation) aplicada ao espaconativo das variaveis. Para o exemplo dado acima, visto na Fig. 4.20, pode-
4. Resolucao de Sistemas de Equacoes Lineares 137
−4 −2 0 2 4 6 8 10 12
−4
−2
0
2
4
6
8
x
y
Figura 4.20: Regressao linear entre duas variaveis.
mos imaginar uma translacao dos pontos de forma que o centro de massa setorne a origem, seguida de uma rotacao do eixo x em torno da origem queaproxime a reta de regressao. Este tipo de rotacao e dita maximizadora devariancia pois o criterio da rotacao e maximizar a variancia (variabilidade)do novo fator, enquanto minimiza a variancia em torno da nova variavel.Este procedimento e ilustrado nas Figs. 4.21 e 4.22.
Na presenca de mais de duas variaveis, podemos entende-las como defi-nindo um “espaco”, da mesma forma que duas variaveis definem um plano.Quando temos tres variaveis, o espaco e tridimensional. Embora a visua-lizacao do espaco nao seja possıvel, podemos ainda rotacionar os eixos bus-cando maximizar variancia da mesma forma que no caso bidimensional.
Apos identificarmos a linha na qual a variancia e maxima, ainda resta al-guma variancia em torno da linha, como pode ser observado na Fig. 4.20. Naanalise dos componentes principais, apos extrairmos o primeiro fator, isto e,apos a primeira reta ter sido tracada atraves dos dados, podemos continuar edefinir outra reta que maximiza a variancia restante e assim sucessivamente.Uma vez que fatores consecutivos sao definidos atraves da maximizacao davariabilidade que nao e capturada pelo fator precedente, concluımos que osfatores sao independentes um do outro. Em outras palavras, fatores conse-cutivos nao sao correlacionados, ou seja, sao ortogonais entre si.
No exposto acima, utilizamos a tecnica de analise dos componentes prin-cipais como um metodo de reducao de dados, isto e, um metodo para reduziro numero de variaveis. Surge portanto a questao de quantos fatores devem
138 4. Resolucao de Sistemas de Equacoes Lineares
−4 −2 0 2 4 6 8 10 12
−4
−2
0
2
4
6
8
x
y
Figura 4.21: Translacao do centroide para a origem.
ser extraıdos. A medida que extraımos fatores, eles representam cada vezmenos a variabilidade observada nos dados. A decisao de quando parar vaidepender de quanto a variabilidade residual pode ser atribuıda ao fenomenoaleatorio, a qual nao pode ser capturada por uma relacao determinıstica. Anatureza desta decisao e arbitraria e dependente da aplicacao. Entretanto,existem linhas gerais e criterios para apoiar nesta tomada de decisao.
Mas o que a decomposicao SVD tem a ver com a analise dos componentesprincipais? A decomposicao SVD nos permite computar os componentesprincipais e tambem uma medida de quanta variabilidade e capturada porcada um dos componentes. Suponha que nos e dado um conjunto p1, . . . , pnde vetores correspondendo aos pontos amostrais, onde pj ∈ R
m×1 e um vetorcoluna. Montamos a matriz X com os pontos amostrais:
X =
| | |p1 p2 . . . pn| | |
Os componentes principais (ou eixos) sao os autovetores da matriz XXT ,que podem ser calculados atraves de uma fatoracao por autovalores:
XXT = U
λ1
. . .
λm
UT
Note que os autovetores de XXT sao precisamente as colunas da matriz U .
4. Resolucao de Sistemas de Equacoes Lineares 139
−4 −2 0 2 4 6 8 10 12
−4
−2
0
2
4
6
8
x
y
Figura 4.22: Rotacao do eixo x em torno da origem.
Podemos computar os componentes principais atraves da fatoracao SVD deX, fazendo:
X = UΣV T
XXT = UΣV T (UΣV T )T
= UΣV TV ΣTUT
= UΣ2UT
Logo, os vetores singulares esquerdos (as colunas de U) correspondem aoscomponentes principais, que sao ordenados de acordo com os valores singu-lares de X (σi).
Como exemplo, considere o conjunto de pontos do R3 dados na Tab. 4.1.
Primeiramente, obtemos a matriz:
XXT =
2025.4 −21.4 1509.4−21.4 101.9 491.51509.4 491.5 3659.3
140 4. Resolucao de Sistemas de Equacoes Lineares
Realizando a decomposicao SVD, produzimos:
XXT = UΣ2UT
U =
−0.5036 0.8500 −0.1548−0.0915 −0.2307 −0.9687−0.8591 −0.4736 0.1940
Σ =
4.5965× 103
1.1900× 103
0
Observe que o primeiro componente captura aproximadamente 79.43% davariabilidade, enquanto o segundo componente captura cerca de 20.57% davariabilidade. Ja o terceiro componente nao captura nenhuma variabilidade.Isto esta de acordo com o experimento realizado, para o qual a dimensao xteve um componente aleatorio com fator 5, enquanto a dimensao y teve umcomponente aleatorio com fator 81. Por outro lado, a dimensao z nao tevenenhuma aleatoriedade sendo definida pela expressao z = 0.7x + 5y − 1. AFig. 4.23 ilustra os pontos dados na Tab. 4.1. Note que os pontos variamnas dimensoes x e y de forma arbitraria, por outro lado, observe que o valorde z e uma funcao linear de x e y. Em outras palavras, os pontos dados estaocontidos em um plano.
4.15 Metodos Iterativos
Os metodos diretos nao sao os mais indicados para resolver sistemas es-parsos e os sistemas de grande porte. O refinamento do algoritmo de Gausse uma forma de metodo iterativo. Os algoritmos iterativos partem de umasolucao inicial e sistematicamente geram uma sequencia de iterandos. Dadauma aproximacao inicial x0 da solucao de Ax = b, o processo iterativo podeser descrito como:
xk+1 = G(xk), k = 1, 2, . . . ,
Aqui vamos estudar os metodos de Jacobi e de Gauss-Seidel.
1Os pontos (x, y, z) foram gerados atraves das expressoes: x = 5 ∗ rand() − 12.5);y = 8 ∗ rand() − 4; z = 0.7 ∗ x + 5 ∗ y − 1, onde rand() produz um numero aleatoriouniformemente distribuıdo no intervalo (0, 1).
4. Resolucao de Sistemas de Equacoes Lineares 141
Tabela 4.1: Conjunto de pontos de um experimentoj xj yj zj1 -7.7494 -2.1509 -17.17902 -9.4658 -0.1121 -8.18683 -8.0435 2.0968 3.85344 -10.2177 -3.8520 -27.41225 -8.3930 -0.4424 -9.08696 -9.4228 2.3355 4.08157 -7.8909 1.9057 3.00468 -11.6187 -0.7544 -12.90489 -7.8227 3.3352 10.200310 -10.4486 3.1492 7.431911 -12.2105 -1.1771 -15.432712 -8.4342 -3.9211 -26.509513 -11.8055 -2.3779 -21.153314 -11.5064 0.8303 -4.902815 -11.1391 -2.4095 -20.844816 -12.4236 1.9743 0.174917 -10.2745 3.4545 9.080418 -10.1700 -0.6508 -11.373019 -8.2689 0.2012 -5.782120 -11.4868 1.3771 -2.1552
4.15.1 Metodo de Jacobi
Seja Ax = b um sistema de equacoes lineares quadrado, expresso naforma:
a11 a12 . . . a1na21 a22 . . . a2n...
......
...an1 an2 . . . ann
x1
x2...xn
=
b1b2...bn
(4.39)
Assumindo que ajj 6= 0 para j = 1, . . . , n, podemos expressar (4.39) na forma:
xj =1
ajj(bj − aj1x1 − aj2x2 − . . .
. . .− aj,(j−1)xj−1 − aj,(j+1)xj+1 − . . .− aj,nxn
)
(4.40)
para j = 1, . . . , n, onde sao conhecidos os valores dex1, x2, . . . , xj−1, xj+1, . . . , xn a serem utilizados no lado direito da ex-pressao acima.
142 4. Resolucao de Sistemas de Equacoes Lineares
−13−12
−11−10
−9−8
−7
−4
−2
0
2
4−30
−20
−10
0
10
20
xy
z
Figura 4.23: Pontos amostrais para analise de componentes principais.
O Metodo de Jacobi consiste no processo iterativo dado por
xk+1j =
1
ajj
(
bj − aj1xk1 − aj2x
k2 − . . .
−aj,(j−1)xkj−1 − aj,(j+1)x
kj+1 − . . .− aj,nx
kn
)
, j = 1, . . . , n(4.41)
Se o sistema Ax = y e nao singular, sempre sera possıvel obter ajj 6= 0 setrocarmos as equacoes adequadamente. Em sistemas esparsos, o metodo deJacobi evita multiplicacoes desnecessarias, simplificando a expressao acima.
Jacobi(x1, . . . , xn, aij, bj , lim)
1: k ← 12: while k < lim do3: for j = 1, . . . , n do4: zj =
1ajj
(bj−aj1x1−aj2x2−. . .−aj,(j−1)xj−1−aj,(j+1)xj+1−. . .−aj,nxn)
5: end for6: if Teste de convergencia e satisfeito then7: Saıda (zj : j = 1, . . . , n)8: else9: xj ← zj, j = 1, . . . , n10: end if11: k ← k + 112: end while13: Saıda “Algoritmo nao convergente”
4. Resolucao de Sistemas de Equacoes Lineares 143
Exemplo do Metodo de Jacobi
Vamos tomar como exemplo o sistema de equacoes lineares dado por:
5x1 + − 3x4 − x5 = 2−x1 + 4x2 − x5 = 3
+ 2x3 − x4 = −1−x1 + 4x4 − 2x5 = 0
− x4 + 2x5 = −1
(4.42)
Primeiramente, obtemos o operador iterativo que corresponde asequacoes:
xk+11 = 1
5(2 + 3xk
4 + xk5)
xk+12 = 1
4(3 + xk
1 + xk5)
xk+13 = 1
2(−1 + xk
4)xk+14 = 1
4(xk
1 + 2xk5)
xk+15 = 1
2(−1 + xk
4)
(4.43)
O processo iterativo acima ao ser aplicado na resolucao de (4.42) produza sequencia de iterandos dada na Tabela 4.2.
Tabela 4.2: iterandos obtidos pelo processo iterativo de JacobiIteracao 1 2 . . . 35 36
x1 1 1.20 . . . 0.0869574059 0.086957108x2 1 1.25 . . . 0.6086962107 0.608696020x3 1 0.00 . . . -0.6521793252 -0.652173522x4 1 0.75 . . . -0.3043470441 -0.304347311x5 1 0.00 . . . -0.6521733252 -0.652173522
4.15.2 Metodo de Gauss-Seidel
No metodo anterior observamos que, quando xk+12 e calculado, na reali-
dade ja possuımos o valor xk+11 que e mais proximo da solucao do que xk
1.Isto sugere o metodo Gauss-Seidel, que corresponde ao processo iterativomodificado:
xk+1j =
1
aii(bj − aj1x
k+11 − aj2x
k+12 − . . .− aj,(j−1)x
k+1j−1
−aj,(j+1)xkj+1 − aj,nx
kn), j = 1, . . . , n (4.44)
Gauss Seidel(x1, . . . , xn, aij , bj, lim)
144 4. Resolucao de Sistemas de Equacoes Lineares
1: k ← 12: while k < lim do3: for j = 1, . . . , n do4: zj =
1ajj
(bj−aj1z1−aj2z2−. . .−aj,(j−1)zj−1−aj,(j+1)xj+1−. . .−aj,nxn)
5: end for6: if Teste de convergencia e satisfeito then7: Saıda (zj : j = 1, . . . , n)8: else9: xj ← zj, j = 1, . . . , n10: end if11: k ← k + 112: end while13: Saıda “Algoritmo nao convergente”
Observacao: se o teste de convergencia nao usa os valores xj−1 entao o pro-cesso iterativo pode ser substituıdo por:
xj =1
ajj(bj − aj1x1 − aj2x2 − . . .
−aj,(j−1)xj−1 − aj,(j+1)xj+1 − . . .− aj,nxn), j = 1, . . . , n
Resultados do algoritmo ao ser aplicado ao exemplo anterior, resolucaodo sistema de equacoes lineares (4.42), e ilustrado na Tabela 4.3.
Tabela 4.3: Iterandos obtidos pelo processo iterativo de Gauss-SeidelIteracao 1 2 3 . . . 18
x1 1 1.200 0.8600 . . . 0.0869585x2 1 1.300 0.9400 . . . 0.6086963x3 1 0.000 -0.1000 . . . -0.6521724x4 1 0.800 0.1650 . . . -0.3043465x5 1 -0.100 -0.4175 . . . -0.6521732
4.15.3 Visao Geometrica do Metodo Iterativo
Para fins de ilustracao, vamos considerar um sistema linear generico emduas variaveis em duas equacoes:
ax+ by = mcx+ dy = n
4. Resolucao de Sistemas de Equacoes Lineares 145
portanto,
A =
[
a bc d
]
e b =
[
mn
]
Processo iterativo do metodo de Jacobi e dado por:
xk+1 = 1a(m− byk)
yk+1 = 1d(n− cxk)
enquanto que o processo iterativo do metodo de Gauss-Seidel toma a forma:
xk+1 =1a(m− byk)
yk+1 =1d(n− cxk+1)
As Figuras 4.24 e 4.25 ilustram graficamente o comportamento do pro-cesso iterativo Gauss-Seidel para os casos de convergencia e divergencia, res-pectivamente.
y0
y1
y2
x0x1x2 x
y (I)
(II)
(x∗, y∗)
Figura 4.24: Visao geometrica do processo iterativo de Gauss-Seidel, casoconvergente.
Algoritmos Preparadores para o Gauss-Seidel/Jacobi:
Objetivo de um algoritmo preparador e transformar o sistema Ax = bem uma forma equivalente x = Bx + d, de modo a se obter um esquemaiterativo convergente expresso na forma xk+1 = Bxk + d. Dois preparadoressao o preparador classico e o preparador unitario.
146 4. Resolucao de Sistemas de Equacoes Lineares
y0
y1
y2
x0x1 x2x
y
(I)(II)
(x∗, y∗)
Figura 4.25: Visao geometrica do processo iterativo de Gauss-Seidel, casodivergente.
1) Preparador Classico:
x1 = 1a11
(b1 − a12x2 − a13x3 − . . .− a1nxn)
x2 = 1a22
(b2 − a21x1 − a23x3 − . . .− a2nxn)... =
...xn = 1
ann(bn − an1x1 − an2x2 − . . .− an,(n−1)xn−1)
o qual pode ser escrito de uma forma mais compacta
xj =1
ajj
(
bj −n∑
k=1,k 6=j
ajkxk
)
, j = 1, . . . , n
2) Preparador Unitario:
x1 = b1 + (1− a11)x1 − a12x2 − . . .− a1nxn
x2 = b2 − a21x1 + (1− a22)x2 − . . .− a2nxn... =
...xn = bn − an1x1 − an2x2 − . . .+ (1− ann)xn
que tambem pode ser colocado de forma mais compacta:
xj = bj −j−1∑
k=1
ajkxk + (1− ajj)xj −n∑
k=j+1
ajkxk, j = 1, . . . , n
4. Resolucao de Sistemas de Equacoes Lineares 147
4.15.4 Condicoes de Convergencia dos Metodos Itera-tivos
As condicoes de convergencia estao relacionadas com os algoritmos prepa-radores. Vamos inicialmente estudar a condicao de convergencia do metodode Jacobi para o preparador classico.
Teorema 4.10 Seja o sistema de equacoes lineares modificado x = Bx+ d.Se ‖B‖ < 1, entao o algoritmo de Jacobi converge.
Prova: Seja x′ e uma solucao de Ax = b⇔ x = Bx+ d. Entao,
‖xk+1 − x′‖ = ‖Bxk + d− x′‖= ‖Bxk + d− (Bx′ + d)‖= ‖B(xk − x′)‖6 ‖B‖ · ‖xk − x′‖< ‖xk − x′‖
Portanto limk→∞‖xk − x′‖ = 0.
Corolario 4.1 Seja o sistema Ax = y. Entao, se a matriz A e diagonal-
mente dominante, |aii| >n∑
j=1,j 6=i
|aij| para i = 1, . . . , n, entao o metodo de
Jacobi e convergente.
Como exemplo, considere o operador iterativo de Jacobi dado por (4.43).Este operador pode ser escrito na forma x(k+1) = Bx(k) + d, onde:
B =
0 0 0 3/5 1/51/4 0 0 0 1/40 0 0 1/2 01/4 0 0 0 2/40 0 0 1/2 0
b =
2/53/4−1/20−1/2
Note que ‖B‖∞ = 0.8, o que implica a convergencia do operador iterativo.
4.16 Metodo do Gradiente Conjugado
Aqui, consideramos o problema de resolver o sistema de equacoes lineares:
Ax = b (4.45)
148 4. Resolucao de Sistemas de Equacoes Lineares
onde A = AT ∈ Rn×n e uma matriz positiva definida.
Existe uma relacao entre a solucao do sistema Ax = b e o problema deencontrar o mınimo de uma funcao quadratica:
minx∈Rn
f(x) =1
2xTAx− bTx (4.46)
Uma vez que f e convexa, o ponto mınimo x⋆ de (4.46) induz gradiente de fnulo:
∇f(x⋆) = Ax⋆ − b = 0
Isto sugere que o sistema linear (4.45) pode ser resolvido atraves de metodositerativos de otimizacao baseados em gradiente. A partir de um chute inicialx(0), tais metodos geram uma sequencia x(k) que converge para a solucaox⋆. Dado o iterando x(k), o metodo de descenso produz x(k+1) fazendo:
x(k+1) = x(k) − αk∇f(x(k))
= x(k) + αk(b− Ax(k))
= x(k) + αkpk
onde pk e a direcao de descenso que corresponde ao negativo do gradientede f no ponto x(k). O vetor de resıduos rk = b − Ax(k) define a direcaode descenso. A escolha do passo αk e fundamental para convergencia globaldo metodo de descenso. O metodo do gradiente conjugado consiste de ummetodo de descenso onde as direcoes pk sao mutuamente conjugadas. Ouseja, qualquer par de direcoes pi e pj da sequencia pk satisfaz a relacao:
pTi Apj = 0
Duas direcoes pi e pj sao ditas conjugadas se sao ortogonais com respeito aoproduto interno 〈ATpi, pj〉 = 〈pi, Apj〉 = pTi Apj.
Note que um conjunto pk com n direcoes mutuamente conjugadas formauma base do R
n. Logo, a solucao x⋆ para Ax = b pode ser escrita da seguinteforma:
x⋆ = α1p1 + α2p2 + · · ·+ αnpn (4.47)
Os coeficientes αk sao dados por:
Ax⋆ = α1Ap1 + α2Ap2 + · · ·+ αnApn (4.48)
pTkAx⋆ = pTkα1Ap1 + pTkα2Ap2 + · · ·+ pTkαnApn
= αkpTkApk (4.49)
αk =pTkAx
⋆
pTkApk=
pTk b
pTkApk(4.50)
4. Resolucao de Sistemas de Equacoes Lineares 149
Portanto, de posse de um conjunto pk de n direcoes mutuamente con-jugadas, a solucao x⋆ pode ser facilmente obtida atraves dos coeficientes αk
calculados com a expressao (4.50) que sao substituıdos em (4.47).O metodo do gradiente conjugado produz o conjunto pk atraves dos
gradientes obtidos por meio dos resıduos rk em um processo iterativo. Sejax(0) o iterando inicial e defina r(0) = b − Ax(0) e p0 = −∇f(x(0)) = r0. Oconjunto pkn−1
k=0 e obtido como segue:
pk+1 = rk −pTkArkpTkApk
pk, k = 0, . . . , n− 2 (4.51)
Portanto, chegamos ao algoritmo do gradiente conjugado (GC) conformepseudo-codigo abaixo:
Gradiente-Conjugado(A, b, x(0), ǫ, n)
1: r0 ← b− Ax(0)
2: p0 = r03: k ← 04: while ‖rk‖ > ǫ do
5: αk ← rTkrk
pTkApk
6: x(k+1) ← x(k) + αkp(k)
7: rk+1 = rk − αkApk
8: βk ← − rTk+1rk+1
rTkrk
9: pk+1 ← rk+1 + βkpk10: k ← k + 111: end while
O metodo do gradiente conjugado termina em no maximo n passsos seerros de arredondamento nao sao encontrados. Tipicamente, a solucao x(n)
e uma excelente aproximacao. O numero de passos nao deve exceder subs-tancialmente em n passos. E preferıvel interromper o processo iterativo ereinicia-lo a partir da solucao aproximada encontrada na primeira etapa.
O metodo do gradiente conjugado pode ser aplicado quando A e umamatriz arbitraria resolvendo o sistema normal:
ATAx = AT b (4.52)
uma vez que ATA e simetrica e positiva semi-definida qualquer que seja amatriz A. Sendo um sistema iterativo, nao e necessario montar ATA deforma explıcita em memoria, mas simplesmente executar operacoes matrici-ais e vetoriais embutidas no operador iterativo. Portanto, o metodo GC e
150 4. Resolucao de Sistemas de Equacoes Lineares
particularmente eficiente quando A e uma matriz esparsa. As seguintes mo-dificacoes sao suficientes para que o algoritmo Gradiente-Conjugado aceiteuma matriz A qualquer:
p0 = AT r0
αk =rTk AA
T rkpTkA
TApk
βk =rTk+1AA
T rk+1
rTk AAT rk
pk+1 = AT rk+1 + βkpk
Porem, a desvantagem em montar as equacoes normais (4.52) e que onumero de condicionamento κ(ATA) e igual a κ(A)2, assim reduzindo a taxade convergencia do metodo GC.
Aplicando-se o metodo do gradiente conjugado ao sistema linear (4.42),obtem-se os iterandos dados na Tabela 4.4. As direcoes conjugadas comrespeito a matriz ATA sao dadas na Tabela 4.5. Note 〈p(i), ATAp(j)〉 = 0para i 6= j.
Tabela 4.4: iterandos produzidos pelo metodo do gradiente conjugadox(k)\k 0 1 2 3 4 5
x(k)1 62.9447 71.8333 42.8618 28.8714 30.1741 0.0870
x(k)2 81.1584 48.8943 24.0198 25.0221 17.7009 0.6087
x(k)3 -74.6026 -58.5635 -37.5481 19.1819 21.6932 -0.6522
x(k)4 82.6752 47.7951 48.5802 32.1188 33.4815 -0.3043
x(k)5 26.4718 52.7845 69.3574 44.9740 37.5150 -0.6522
Tabela 4.5: direcoes conjugadasp(k)\k 0 1 2 3 4
p(k)1 0.2559e+3 -645.4612 -75.3341 16.3974 -23.4300
p(k)2 -0.9289e+3 -554.1837 5.3973 -92.1580 -13.3103
p(k)3 0.4618e+3 468.2044 305.4747 31.6107 -17.4012
p(k)4 -1.0042e+3 17.4912 -88.6395 17.1533 -26.3103
p(k)5 0.7575e+3 369.2289 -131.2972 -93.8918 -29.7223
4. Resolucao de Sistemas de Equacoes Lineares 151
4.17 Aplicacoes de Sistemas de Equacoes Li-
neares
Nesta secao ilustramos aplicacoes de sistemas de equacoes lineares a pro-blemas de interesse.
4.17.1 Interpolacao com Polinomios
Problema: dados os pontosD = (t1, y1), . . . , (tn, yn) construa um polinomiop(t) = x1+x2t+x3t
2+. . .+xntn−1 que passe pelos pontos dados. Portanto, os
dados sao os pontos (t1, y1), . . . , (tn, yn) e as variaveis sao x1, x2, . . . , xn,que correspondem aos coeficientes do polinomio. A Figura 4.26 ilustra umafuncao desconhecida f(x), para a qual conhecemos o seu valor em algunspontos e desejamos encontrar uma interpolacao.
t1 t2 t3 t4 t5 t6 t7
y1
y2
y3
y4
Figura 4.26: Exemplo de dados para interpolacao com polinomios.
Podemos transformar o problema na solucao de um sistema de equacoeslineares:
p(t1) = x1 + x2t1 + x3t21 + . . . + xnt
n−11 = y1
p(t2) = x2 + x2t2 + x3t22 + . . . + xnt
n−12 = y2
... =...
p(tn) = xn + x2tn + x3t2n + . . . + xnt
n−1n = yn
(4.53)
152 4. Resolucao de Sistemas de Equacoes Lineares
O sistema (4.53) pode ser colocado na forma matricial:
1 t1 t21 . . . tn−11
1 t2 t22 . . . tn−12
......
......
...1 tn t2n . . . tn−1
n
x1
x2...xn
=
y1y2...yn
Portanto, a busca do polinomio interpolador p(t) para o conjunto de pontosD, i.e. um polinomio que passe pelos elementos de D, foi reduzida a solucaode um sistema de equacoes lineares.
4.17.2 Estruturas Elasticas Lineares
Considere uma estrutura conforme Figura 4.27, sendo esta formada emgeral por n nos (pontos de juncao conectados por barras) e um conjuntode forcas externas aplicadas aos pontos dado por f ∈ R
2n (vetor de forcasexternas, vertical e horizontal, aplicadas aos pontos). Nosso problema edeterminar os alongamentos/compressoes provocados nas barras pelas cargas,ou seja, queremos determinar o vetor de alongamentos verticais e horizontais∆s ∈ R
2n.
Para ‖∆s‖ pequeno, o deslocamento pode ser aproximado por uma funcaolinear f = A∆s onde A e dita matriz de resistencia a qual depende domaterial e da geometria. Portanto, o problema de encontrar os alongamentosse reduz a obter a matriz A e resolver o sistema de equacoes f = A∆s, sendoo vetor de forcas externas f (cargas) conhecido.
Carga 1 Carga 2 Carga 3 Carga 4
Figura 4.27: Exemplo de estrutura.
4. Resolucao de Sistemas de Equacoes Lineares 153
4.17.3 Exemplo: n=1
Aqui ilustramos o processo para o caso mais simples, onde o numero devertices e n = 1, conforme a ilustracao dada na Figura 4.28.
F = (Fx, Fy)L1
L2
S = (Sx, Sy)
Θ1
Θ2
Figura 4.28: Exemplo de estrutura com apenas um vertice
Quando as cargas aplicadas sao nulas, f = 0, a posicao do no e s = (sx, sy)como indicado na figura. Quando uma carga e aplicada, f 6= 0, a posicao dono e dada por s +∆s = (sx +∆sx, sy +∆sy). No que segue vamos mostrarque para ‖∆s‖ pequeno, ‖∆s‖ e dado por
[
fxfy
]
=
[
a11 a12a21 a22
] [
∆sx∆sy
]
⇒ f = A∆s
onde os coeficientes aij dependem apenas do material e da geometria daestrutura. Considere agora a Figura 4.29. Assumindo que o no superior estalocalizado na origem, deduzimos que
sx = l1 sin θ1
sy = −l1 cos θ1l1 +∆l1 =
√
(sx +∆sx)2 + (sy +∆sy)2
≈√
s2x + s2y +sx∆sx + sy∆sy√
s2x + s2y
A aproximacao pode ser obtida atraves da expansao de Taylor de primeiraordem. Por exemplo, fazendo g(sx, sy) =
√
s2x + s2y, s′x = sx + ∆sx, e s′y =
154 4. Resolucao de Sistemas de Equacoes Lineares
sy +∆sy, podemos calcular
g(s′x, s′y) ≈ g(sx, sy) +
∂g(sx, sy)
∂sx(s′x − sx) +
∂g(sx, sy)
∂sy(s′y − sy)
= g(sx, sy) +∂g(sx, sy)
∂sx∆sx +
∂g(sx, sy)
∂sy∆sy
=√
s2x + s2y +1
2
2sx√
s2x + s2y∆sx +
1
2
2sy√
s2x + s2y∆sy
=√
s2x + s2y +sx∆sx + sy∆sy√
s2x + s2y
Portanto,l1 +∆l1 = l1 + sin θ1∆sx − cos θ1∆sy
e para, ∆s pequeno, temos que ∆l1 = sin θ1∆sx − cos θ1∆sy.
L1 +∆L1
L2 +∆L2
L1
L2
(Sx, Sy) + (∆Sx,∆Sy)
Θ1
Θ2
Figura 4.29: Exemplo de estrutura com apenas um vertice e carga nao nula
De maneira similar ao desenvolvimento acima, podemos concluir que
∆l2 = sin θ2∆sx + cos θ2∆sy
Em notacao matricial, o problema fica:[
∆l1∆l2
]
=
[
sin θ1 − cos θ1sin θ2 cos θ2
] [
∆sx∆sy
]
Vamos agora considerar as forcas necessarias para deformar barras (mate-rial elastico), conforme ilustracao nas Figuras 4.30 e 4.31. Mais precisamente,
4. Resolucao de Sistemas de Equacoes Lineares 155
• F1 e F2 sao forcas internas as barras;
• k1 e k2 sao constantes que dependem da geometria e do material.
Θ1 F1
Figura 4.30: Forcas internas as barras
Θ2F2
Figura 4.31: Forcas internas as barras
O proximo passo consiste do calculo das forcas de equilıbrio nos nos. Asforcas que atuam no no sao ilustradas na Figura 4.32. Decompondo as forcasinternas as barras, as quais devem equilibrar as forcas externas, obtemos asequacoes:
F1 sin θ1 + F2 sin θ2 = fx
−F1 cos θ1 + F2 cos θ2 = fy
Sabemos que[
F1
F2
]
=
[
k1 00 k2
] [
∆l1∆l2
]
e[
fxfy
]
=
[
sin θ1 sin θ2− cos θ1 cos θ2
] [
F1
F2
]
Portanto[
fxfy
]
=
[
sin θ1 sin θ2− cos θ1 cos θ2
] [
k1 00 k2
] [
sin θ1 − cos θ1sin θ2 cos θ2
] [
∆sx∆sy
]
= A
[
∆sx∆sy
]
156 4. Resolucao de Sistemas de Equacoes Lineares
(fx, fy)
Θ1
Θ2
F1
F2
Fx
Figura 4.32: Forcas que atuam no no
4.18 Referencias
O texto deste capıtulo e uma sıntese do texto de Claudio and Marins[1]. Em particular, as seguintes secoes sao resumos de [1] com modificacoese introducao de exemplos:
• secao 4.2 (erros computacionais);
• secao 4.3 (etapas de solucao de sistemas lineares);
• secao 4.4 (metodo de eliminacao de Gauss);
• secao 4.5 (instabilidade numerica);
• secao 4.6 (metodo de Gauss com pivoteamento);
• secao 4.7 (condicionamento de matrizes);
• secao 4.8 (refinamento de solucao por meio do metodo de Gauss);
• secao 4.9 (equacionamento matricial);
• secao 4.15 (metodos iterativos).
O exemplo de aplicacao em estruturas elasticas lineares foi retirado dasnotas de aula da disciplina EE103: Applied Numerical Computing [7]. Assecoes sobre decomposicao LU e SVD foram inspiradas nos textos de Presset al. [5] e Cormen et al. [2].
4. Resolucao de Sistemas de Equacoes Lineares 157
4.19 Excercıcios
Exercıcio 4.1 Seja a equacao polinomial abaixo, chamada equacao Diofan-tina, utilizada na teoria de controle:
A(s)D(s) + B(s)N(s) = ∆(s) (4.54)
Nesta equacao sao conhecidos os polinomios N(s) e D(s) e deseja-se de-terminar A(s) e B(s). Para tanto, considera-se tambem como conhecido opolinomio caracterıstico desejado, ∆(s), o qual deve ter todas as suas raızescom parte real negativa: Re(si) < 0. Nos itens seguintes, utilizar-se-a:
N(s) = n0 + n1s+ n2s2
D(s) = d0 + d1s+ d2s2
∆(s) = δ0 + δ1s+ δ2s2 + δ3s
3
A(s) = a0 + a1s
B(s) = b0 + b1s
sendo d2 6= 0. Tarefas:
a) Mostre que a solucao da equacao Diofantina (4.54) pode ser ob-tida atraves da solucao do sistema de equacoes lineares (4.55), cujasincognitas sao os coeficientes dos polinomios A(s) e B(s):
d0 0 n0 0d1 d0 n1 n0
d2 d1 n2 n1
0 d2 0 n2
a0a1b0b1
=
δ0δ1δ2δ3
(4.55)
b) Considere N(s) = 1 + s e D(s) = 1 + 2.5s + s2 e ∆(s) = (4 + s)(10 +6s + s2) = 40 + 34s + 10s2 + s3. Monte o sistema (4.55) correspon-dente e utilize o metodo de Gauss com pivoteamento para determinaro sistema triangular que permite determinar os coeficientes de A(s) eB(s). (Mostrar a cada passo as trocas de linhas realizadas, o pivo e osos fatores multiplicativos).
c) Sejam N(s), D(s) e ∆(s) utilizados no item anterior. ConsidereA(s) = s e reformule o sistema (4.55) para encontrar os coeficientesde B(s) utilizando o metodo dos mınimos quadrados. De o polinomiocaracterıstico que e efetivamente obtido ao se utilizar A(s) dado e B(s)calculado.
158 4. Resolucao de Sistemas de Equacoes Lineares
d) Considere a matriz definida positiva P = STS, obtida a partir de:
ST =
[
1 1 0 00 1 1 0
]
Determine a decomposicao de Choleski de P .
Exercıcio 4.2 O sistema de equacoes lineares a coeficientes reais a seguirfoi montado para encontrar a solucao x ∈ C2 de um sistema de equacoes acoeficientes complexos Ax = b, com A ∈ C2×2 e b ∈ C2:
3 0.7 −1 11 2 −1 01 −1 3 0.71 0 1 2
t1t2v1v2
=
1001
Para o sistema a coeficientes reais acima:
a) Aplique o criterio das linhas e conclua sobre a convergencia dos metodosde Jacobi e de Gauss-Siedel.
b) Aplique o criterio de Sassenfeld e conclua sobre a convergencia dometodo de Gauss-Siedel.
c) Faca uma iteracao do metodo de Gauss-Siedel; considere a aproximacaoinicial:
[
t10 t20 v10 v20]T
=[
0 0 0 0]T
d) Determine o sistema de equacoes lineares a coeficientes complexos cor-respondente.
Exercıcio 4.3 Considere o sistema de equacoes lineares Ax = b e o processoiterativo x = Bx + d correspondendo ao metodo de Jacobi. Responda asquestoes abaixo.
a) Prof. Clovis afirma que se ‖B‖ < 1 entao o metodo de Jacobi sempreconverge, qualquer que seja o ponto inicial x(0). Isto e diferente dometodo de Newton, cuja convergencia depende do ponto inicial. Voceconcorda com a afirmacao do Prof. Clovis? Justifique a sua resposta.
b) Prof. Clovis tambem afirma que se o processo iterativo x(k + 1) =Bx(k) + d converge para um ponto fixo x∗ a partir de um ponto inicialx(0) 6= x∗, entao o processo iterativo sempre converge para um pontofixo qualquer ponto inicial x′. Voce concorda ou discorda da afirmacao?Justique a sua resposta.
4. Resolucao de Sistemas de Equacoes Lineares 159
Exercıcio 4.4 Seja x a solucao do sistema linear Ax = b, onde x ∈ Rn,
A ∈ Rn×n e b ∈ R
n. Considere o sistema Ay = b+∆b obtido ao perturbarmoso lado direito do sistema original. Prof. Wilson afirma que se conhecermosκ(A), o numero de condicionamento da matriz A, entao pode-se estabeleceruma regiao S ⊆ R
n que depende de κ(A) tal que y ∈ S. Se voce discorda doProf. Wilson, justifique a resposta. Se voce concorda com o Prof. Wilson,mostre como que se obtem S?
Exercıcio 4.5 Considere o sistema de equacoes lineares Ax = b, onde x ∈R
n, A ∈ Rn×n e b ∈ R
n com n = 2. Ao aplicarmos o preparador classico dometodo de Jacobi, obtemos x = Bx+ d. E possıvel que o metodo de Jacobivenha a se comportar como o metodo de Gauss-Seidel? Para uma respostanegativa, justifique a resposta. Para uma resposta afirmativa, indique quecondicao leva ao mesmo comportamento dos metodos.
Exercıcio 4.6 Considere os sistemas abaixo indicados:
Ax1 = b1, Ax2 = b2, . . . , Axk = bk,
onde A ∈ Rn×n e xj, bj ∈ R
n para j = 1, . . . , k. Como que voce encontrariaas solucoes x1, . . . xk? O seu metodo deve ser o mais eficiente possıvel.
Exercıcio 4.7 Seja Ax = b um sistema de equacoes lineares, onde A ∈R
n×n e x, b ∈ Rn com n = 2. A Profa. Mirian afirma que se det(A) = 0,
entao qualquer que seja o preparador do metodo de Gauss-Seidel, o metodoiterativo nao converge. Voce concorda ou discorda da afirmacao? Justifiquesua resposta.
Exercıcio 4.8 Aplique os metodos de Gauss com pivoteamento, metodo ite-rativo de Jacobi, metodo iterativo de Gauss-Seidel, e decomposicao LU pararesolver o sistema de equacoes abaixo: (descreva todos os passos executadospor cada metodo)
2x1 − 3x2 + 12x3 − 5x4 = 65x1 + 10x2 − 3x3 + 2x4 = 14x1 + 2x2 − 5x3 + 12x4 = 1010x1 + 5x2 + 2x3 + x4 = 18
Exercıcio 4.9 Seja ‖M‖ =√
λmax(MTM) uma norma-matricial para M ∈R
n×n, onde λmax(M) e definido como o maior autovalor da matriz M . Con-sidere as matrizes quadradas abaixo:
A =
−1/3 0 023 1 0
−3/7 7/8 −9
B =
−10 1 55 −6 78 33 4
C =
−1/3 0 00 1 10 1 −4
160 4. Resolucao de Sistemas de Equacoes Lineares
Calcule ‖A‖∞, ‖B‖1 e ‖C‖.
Exercıcio 4.10 Seja o sistema Ax = b dado pelas equacoes abaixo:
3x1 − 13x2 + 1
4x3 = −10.5
x1 + 2x2 + x4 = 62.1x1 + 2x2 − 3.5x3 = 3.7
Prof. Kuhn afirma que se o metodo de Jacobi for obtido a partir do pre-parador classico, entao para qualquer ponto inicial x0 ∈ R
3 o processo ite-rativo resultante converge para uma solucao. Voce concorda ou discorda daafirmacao do Prof. Kuhn? Justifique a sua resposta.
Exercıcio 4.11 As questoes abaixo se referem a um sistema Ax = b ondeA ∈ R
m×n. (Justifique as respostas.)
i. Se m = n, como voce faria para calcular o condicionamento de A?
ii. Prof. Kuhn afirma que se n > m, ou seja, se ha mais variaveis do queequacoes, entao o sistema tem uma ou mais solucoes. Voce concordaou discorda da afirmacao?
iii. Prof. Kuhn afirma que se o sistema linear tem mais do que uma solucao,entao devem existir infinitas solucoes. Voce concorda ou discorda?
iv. Prof. Kuhn tambem afirma que se rank(AT ) = n e b ∈ range(A) entaoo sistema tem solucao unica. Voce concorda ou discorda?
Exercıcio 4.12 Estamos interessados em encontrar uma solucao para o sis-tema Ax = b, onde A ∈ R
n×n.
i. Sob quais condicoes o sistema tem um numero infinito de solucoes?
ii. Que condicao a matriz A deve satisfazer para se aplicar a fatoracaoCholesky?
iii. Para a matriz B =
1 1 31 5 73 7 14
, sabemos que ela admite uma fa-
toracao LU, onde L =
1 0 01 2 03 2 1
. Obtenha U e calcule a solucao
do sistema Ax = b para b1 =
10−1
e b2 =
21−2
atraves da
decomposicao LU.
4. Resolucao de Sistemas de Equacoes Lineares 161
Exercıcio 4.13 Modele o sistema de trelicas descrito na Figura 4.33, deforma a obter as matrizes A, B, e C tal que:
∆l1∆l2∆l3
= A
[
∆Sx
∆Sy
]
F1
F2
F3
= B
∆l1∆l2∆l3
[
fxfy
]
= C
F1
F2
F3
.
Obtenha portanto a matriz M = CBA de maneira que:
[
fxfy
]
= M
[
∆Sx
∆Sy
]
.
Para uma carga f = [ fx fy ]T = [ 1N 1.5N ]T e constantes k1 = 30N/m,k2 = 28N/m e k3 = 35N/m, obtenha o deslocamento ∆S resolvendo osistema de equacoes lineares utilizando a fatoracao LU. (Sugestao: utilizeOctave/Matlab para calcular a decomposicao LU de M).
l1
l2
l3
Θ1
Θ2
Θ3
F1
F2
F3
fx
fy
x (m)
y (m)
1 2 3
−1
−2(Sx, Sy)
Figura 4.33: Sistema de trelicas. O desenho nao esta em escala. (Sx, Sy) =(2,−2).
Exercıcio 4.14 Questoes de Verdadeiro/Falso.
i. Seja ‖ • ‖p uma norma vetorial definida por p ∈ N. Entao obrigatoria-mente ‖x‖∞ > ‖x‖p para qualquer x ∈ R
n.
162 4. Resolucao de Sistemas de Equacoes Lineares
ii. Seja A ∈ Rn×n uma matriz quadrada. Se A tem inversa, entao ‖A−1‖ >
1‖A‖ .
iii. Seja A ∈ Rn×n uma matriz quadrada que possui inversa. Suponha que
A = UΛUT tal que (i) UTU = I e ‖U‖ = 1 e (ii) Λ e uma matrizdiagonal. Entao obrigatoriamente κ(A) = κ(Λ).
iv. Seja A ∈ Rn×n uma matriz tal que A = AT e A−1 existe. Entao, com
certeza Ak = A.A . . . A (A multiplicada k vezes) e tal que κ(Ak) =κ(A)k.
v. Seja Ax = b um sistema de equacoes lineares onde A ∈ Rn×n tal
que rank(A) = n. Considere o metodo de Jacobi dado por x(k+1) =D−1[(D −A)x(k) + b], onde D e a matriz diagonal de A. Se ‖A‖∞ < 1entao o metodo de Jacobi e convergente para a solucao.
vi. Seja Ax = b um sistema de equacoes lineares onde A ∈ Rm×n, onde
m > n, mas tal que b ∈ range(A). Entao o metodo de mınimosquadrados (min ‖Ax − b‖) pode ser aplicado e encontra uma solucaox∗ de erro mınimo, ou seja, ‖Ax∗ − b‖ = 0.
vii. Seja Ax = b um sistema de equacoes lineares onde A ∈ Rm×n e tal que
n > m (ha mais variaveis do que equacoes). Entao o sistema tem umaou mais solucoes.
viii. Seja Ax = b um sistema de equacoes lineares onde A ∈ Rm×n. Se
rank(AT ) = n e b ∈ range(A) entao o sistema tem solucao unica.
ix. Para x ∈ Rn, seja ‖x‖∗ = min|xj| : j = 1, . . . , n. Entao ‖x‖∗ e uma
norma vetorial.
Exercıcio 4.15 Seja A ∈ Rn×n uma matriz quadrada. Dados os autovalores
λ1, λ2, . . . , λn de A, formule o problema de encontrar os autovetores como umproblema (ou problemas) que pode ser resolvido numericamente. Como voceresolveria este problema numerico?
Exercıcio 4.16 Seja Ax = b um sistema de equacoes lineares, onde A ∈R
n×n, b ∈ Rn×1 e x ∈ R
n×1. Seja a matriz D = diag(a11, a22, . . . , ann) (matrizcom a diagonal de A) inversıvel, o que nos leva a obter o processo iterativode Jacobi (classico)
x(k+1) = D−1[b− (A−D)x(k)]. (4.56)
4. Resolucao de Sistemas de Equacoes Lineares 163
O processo iterativo de Jacobi obtido com o preparador unitario e dado por
x(k+1) = b+ (I − A)x(k). (4.57)
Professor Kuhn afirma que se o processo iterativo de Jacobi (4.56) converge,a partir de um ponto inicial x(0) ∈ R
n, entao o processo iterativo de Jacobi(4.57) tambem converge a partir de x(0).
Capıtulo 5
Sistemas de EquacoesNao-Lineares, Otimizacao eMınimos Quadrados
Neste capıtulo estudaremos o problema de encontrar uma solucao para umsistemas de equacoes nao-lineares, para o qual vamos estender o algoritmode Newton apresentado em capıtulo anterior. Aplicacoes deste problematambem serao discutidas. Nocoes basicas de otimizacao, incluindo conceitosde otimalidade e um algoritmo inspirado no metodo de Newton com retro-cesso sera proposto para resolver problemas de minimizacao. Trataremosainda de problemas de interpolacao, mınimos quadrados e minimizacao denorma. Este dois ultimos problemas estao relacionados com os problemasde encontrar uma solucao de um sistema de equacoes lineares sem solucao(mınimos quadrados) e com infinitas solucoes (minimizacao de norma).
5.1 Sistemas de Equacoes Nao-Lineares
O problema de encontrar uma solucao para um sistema de n equacoesnao-lineares em n variaveis e expresso por:
f1(x1, x2, . . . , xn) = 0f2(x1, x2, . . . , xn) = 0
...fn(x1, x2, . . . , xn) = 0
⇒ f(x) = 0 (5.1)
onde x ∈ Rn e f : Rn → R
n.
166 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
5.1.1 Matriz de Derivadas
Para f : Rn → R
n diferenciavel, podemos calcular o gradiente de f,denotado por ∇f :
∇f(x) =
∂f1∂x1
∂f1∂x2
. . . ∂f1∂xn
∂f2∂x1
∂f2∂x2
. . . ∂f2∂xn
......
......
∂fn∂x1
∂fn∂x2
. . . ∂fn∂xn
(5.2)
O gradiente ∇f e conhecido tambem por Jacobiano.
Exemplo: Calculo do Jacobiano
Considere a funcao f : R2 → R2 definida por:
f(x) =
[
e2x1+x2 − x1
x21 − x2
]
O gradiente de f obtido segundo a expressao (5.2) e:
∇f(x) =[
2e2x1+x2 − 1 e2x1+x2
2x1 −1
]
5.1.2 Linearizacao
Podemos desenvolver a expansao de Taylor para uma funcao f : Rn → Rn,
da mesma forma que desenvolvemos para uma funcao f : R→ R. Assumindoque f = [f1, . . . , fn]
T , vamos primeiramente obter a expansao de Taylor deprimeira ordem para fi em torno de um ponto x:
fi(x) ≈ fi(x) +∂fi∂x1
(x)(x1 − x1) +∂fi∂x2
(x)(x2 − x2) + . . .+∂fi∂xn
(x)(xn − xn)
= fi(x) +n∑
j=1
∂fi∂xj
(x)(xj − xj)
= fi(x) +∇fi(x)T (x− x)
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 167
Portanto
f1(x)f2(x)
...fn(x)
≈
f1(x)f2(x)...
fn(x)
+
∂f1∂x1
(x)(x1 − x1) +∂f1∂x2
(x)(x2 − x2) + . . .+ ∂f1∂xn
(x)(xn − xn)∂f2∂x1
(x)(x1 − x1) +∂f2∂x2
(x)(x2 − x2) + . . .+ ∂f2∂xn
(x)(xn − xn)...
∂fn∂x1
(x)(x1 − x1) +∂fn∂x2
(x)(x2 − x2) + . . .+ ∂fn∂xn
(x)(xn − xn)
≈
f1(x)f2(x)...
fn(x)
+
∂f1∂x1
(x) ∂f1∂x2
(x) . . . ∂f1∂xn
(x)∂f2∂x1
(x) ∂f2∂x2
(x) . . . ∂f2∂xn
(x)...
∂fn∂x1
(x) ∂fn∂x2
(x) . . . ∂fn∂xn
(x)
(x1 − x1)(x2 − x2)
...(xn − xn)
De forma mais compacta,
f(x) = f(x) +∇f(x)(x− x)
= f(x) +∇f(x)∆x
Exemplo: Expansao de Taylor
Linearizando a funcao do exemplo anterior em torno do ponto x = [0 0]obtemos:
f(x) =
[
10
]
+
[
1 10 −1
]
.
[
x1
x2
]
5.1.3 Aplicacao: Circuito Estatico Nao-Linear
Aqui vamos considerar o problema de analisar o comportamento em re-gime permanente do circuito nao-linear ilustrado na Figura 5.1. Dois resis-tores nao-lineares caracterizados pelas equacoes:
i1 = g(v1)
i2 = g(v2)
onde g(v) e uma funcao nao-linear da tensao atraves do resistor.
168 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
RR
V1 V2
I1 I2
E
+++
−−−
Figura 5.1: Circuito eletrico com componentes nao-lineares
Desenvolvendo as equacoes associadas ao circuito obtemos:
E = R(i1 + i2) + v1E = R(i1 + i2) +Ri2 + v2
⇒
E = Rg(v1) +Rg(v2) + v1E = Rg(v1) +Rg(v2) +Rg(v2) + v2
⇒
E−v1R
= g(v1) + g(v2)E−v2R
= g(v1) + 2g(v2)⇒
g(v1) + g(v2) +v1−ER
= 0g(v1) + 2g(v2) +
v2−ER
= 0
Portanto, os valores de tensao atraves dos resistores podem ser obtidos re-solvendo o sistema de equacoes nao-lineares acima.
Outra maneira de se obter um sistema de equacoes equivalente segue
vR1 + v1 = E ⇒ vR1 = E − v1iR1 =
vR1
R= E−v1
R
vR2 + v2 = v1 ⇒ vR2 = v1 − v2iR2 =
vR2
R= v1−v2
R
iR2 = i2 ⇒ i2 = v1−v2R
⇒ g(v2) = v1−v2R
⇒ g(v2)− v1−v2R
= 0
iR1 = i1 + i2E−v1R
= g(v1) +v1−v2
R⇒ g(v1) +
v1−ER
+ v1−v2R
= 0
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 169
Portanto, o problema se reduz a encontrar uma raiz para o sistema deequacoes abaixo:
g(v1) +v1−ER
+ v1−v2R
= 0g(v2)− v1−v2
R= 0
Podemos entao colocar o sistema (5.3) na forma:
f1(v1, v2) = g(v1) +v1−ER
+ v1−v2R
= 0f2(v1, v2) = g(v2)− v1−v2
R= 0
ou, de forma mais compacta,
f(v) =
[
f1(v1, v2)f2(v1, v2)
]
= 0
Vamos agora calcular o Jacobiano de f em torno de um ponto v = (v1, v2):
∇f(v1, v2) =[
g′(v1) + 2/R −1/R−1/R g′(v2) + 1/R
]
Portanto, a expansao de Taylor de primeira ordem para f em torno do ponto(v1, v2) tem a forma:
f(v1, v2) ≈ f(v1, v2) +∇f(v1, v2).[
v1 − v1v2 − v2
]
Com base na expansao de Taylor acima, podemos desenvolver o metodo deNewton para o problema de analise do circuito nao-linear. Desejamos que:
f(v1, v2)+∇f(v1, v2).[
v1 − v1v2 − v2
]
= 0 ⇒[
v1v2
]
=
[
v1v2
]
−∇f−1(v1, v2).f(v1, v2)
assumindo que ∇f(v1, v2) e inversıvel.
5.1.4 Algoritmo de Newton
Newton(f, x(0), ǫ)
1: k ← 02: while ‖f(x(k))‖ > ǫ do3: x(k+1) ← x(k) −∇f−1(x(k)).f(x(k))4: k ← k + 15: end while6: Return x(k)
170 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Observe que cada iteracao requer uma avaliacao de f(x) (i.e., n funcoes es-calares) e de ∇f(x) (i.e., n2 derivadas parciais). Note tambem que o metodode Newton assume que ∇f(xk) e nao singular pois, caso contrario, o metodonao esta definido. Na pratica, calcula-se xk − ∇f−1(xk).f(xk) atraves dasolucao de um sistema de equacoes lineares:
a) Calcule Jk = ∇f(xk) e gk = f(xk)
b) Resolva o sistema:
xk+1 = xk − J−1k gk ⇒ Jk(x
k+1 − xk) = −gk⇒ Jk∆xk = −gk, ∆xk = xk+1 − xk
c) Obtenha o proximo iterando:
xk+1 = xk +∆xk
Exemplo 1
Considere o problema de encontrar uma solucao para o sistema deequacoes nao-lineares abaixo:
f1(x1, x2) = log(x21 + 2x2
2 + 1)− 0.5 = 0f2(x1, x2) = x2 − x2
1 + 0.2 = 0
O sistema possui duas equacoes e duas variaveis, conforme ilustracao naFigura 5.2. As solucoes para o sistema sao (0.70, 0.29) e (−0.70, 0.29).
Exemplo 2: Rastreamento com Radares
Aqui vamos considerar o cenario onde dois radares estao localizados emposicoes conhecidas, (p1, q1) e (p2, q2), os quais podem determinar a distanciade suas posicoes ate uma aeronave que esta se deslocando dentro do espacoaereo. Denotando por ρ1 e ρ2 as distancias destes radares ate a aeronave,o problema e determinar a localizacao (x, y) da aeronave. O problema eilustrado na Figura 5.3. Podemos colocar o problema na forma de duasequacoes e duas variaveis:
f1(x, y) =√
(p1 − x)2 + (q1 − y)2 − ρ1 = 0
f2(x, y) =√
(p2 − x)2 + (q2 − y)2 − ρ2 = 0
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 171
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
0
0
x1
x2
f2(x)=0 f1(x)=0
Figura 5.2: Ilustracao das curvas de nıvel de duas funcoes nao lineares
Assumindo que (x, y) 6= (p1, q1) e (x, y) 6= (p2, q2), o Jacobiano de f = (f1, f2)pode ser obtido como segue:
∇f(x, y) =[
∂f1/∂x ∂f1/∂y∂f2/∂x ∂f2/∂y
]
=
x−p1√(p1−x)2+(q1−y)2
y−q1√(p1−x)2+(q1−y)2
x−p2√(p2−x)2+(q2−y)2
y−q2√(p2−x)2+(q2−y)2
Fazendo
z =
[
xy
]
e f(z) =
[
f1(x, y)f2(x, y)
]
O metodo de Newton assume a forma:
zk+1 = zk −∇f−1(zk).f(zk)
5.1.5 Convergencia do Metodo de Newton
Teorema 5.1 Se ∇f(x) e nao-singular e x0 e suficientemente proximo deuma solucao x∗, f(x∗) = 0, entao existe uma constante ǫ > 0 tal que:
‖xk+1 − x∗‖ 6 ǫ‖xk − x∗‖2
Em outras palavras, se as condicoes do teorema sao satisfeitas, o algoritmode Newton converge com taxa quadratica. Contudo, na pratica, nao sabemoso valor de ǫ e nao sabemos quao proximo de x∗ o iterando inicial x0 deveestar.
172 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Radar 1 Radar 2
ρ1 ρ2
(x, y)
(p1, q1) (p2, q2)
Figura 5.3: Ilustracao de dois radares que detectam a distancia ate umaaeronave
5.2 Minimizacao Irrestrita
Um problema geral com aplicacoes diversas e o problema de encontrar ummınimo de uma funcao qualquer sem restricoes. Em notacao matematica, oproblema toma a forma:
Minimize f(x)x ∈ R
n
onde f : Rn → R e uma funcao e x ∈ Rn e um vetor de variaveis de decisao.
Definicao 5.1 (Mınimo Global) x∗ e um otimo global se f(x∗) 6 f(x) paratodo x ∈ R
n.
Definicao 5.2 (Mınimo Local) x∗ e otimo local se existe ǫ > 0, tal quef(x∗) 6 f(x) para todo x ∈ R
n tal que ‖x− x∗‖ 6 ǫ.
A Figura 5.4 ilustra os conceitos de mınimos locais e globais. Os pontosx1, x2, e x4 sao mınimos locais enquanto que o ponto x3 e um mınimo global.
Definicao 5.3 (Valor Otimo) O valor otimo (ou mınimo) de f e o maiorα ∈ R tal que f(x) > α para todo x ∈ R
n, neste caso α = min f(x).
• Se x∗ e uma solucao otima, entao f(x∗) = min f(x).
• Se f(x) nao tem limite inferior, entao dizemos que min f(x) = −∞.
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 173
x1 x2 x3 x4 x
y
f(x)
Figura 5.4: Ilustracao de mınimos locais e globais de uma funcao f(x)
5.2.1 Exemplos
Os exemplos de funcoes abaixo ilustram os conceitos de valor otimo esolucao otima.
1) f(x) = (x− 1)2 tem valor otimo obtido com x∗ = 1.
2) f(x) = 1x2+1
tem valor otimo 0, mas nao e atingido por nenhuma solucaofinita.
3) f(x) = x nao tem valor otimo, min f(x) = −∞.
5.2.2 Condicoes de Otimalidade para Problemas comuma Variavel
Seja f(x) uma funcao de uma variavel, f : R→ R, para a qual desejamosencontrar um mınimo. Vamos assumir que f e duas vezes diferenciavel.
Proposicao 5.1 (Condicao necessaria) Se x∗ e um otimo local, entaof ′(x∗) = 0 e f ′′(x∗) > 0.
Prova: Primeiro, vamos mostrar que f ′(x∗) = 0. Suponha que existe mınimolocal x∗ tal que f ′(x∗) 6= 0. Pela expansao de Taylor de primeira ordem, temosque:
f(x) = f(x∗) + f ′(x∗)(x− x∗)
174 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
para |x− x∗| suficientemente pequeno. Defina x = −f ′(x∗)δ + x∗ com δ > 0suficientemente pequeno para que a expansao seja valida. Entao:
f(x) = f(x∗) + f ′(x∗)(−f ′(x∗)δ + x∗ − x∗)
= f(x∗)− f ′(x∗)2δ
< f(x∗) [pois f ′(x∗) 6= 0 e δ > 0]
Isto nos leva a concluir que x∗ nao e mınimo local, contradizendo a hipotese.Concluımos que se x∗ e mınimo local entao obrigatoriamente f ′(x∗) = 0.
Segundo, vamos mostrar que f ′′(x∗) > 0. Suponha que x∗ e mınimo locale que f ′′(x∗) < 0. Pela expansao de Taylor de segunda orgem, temos que:
f(x) = f(x∗) + f ′(x∗)(x− x∗) +1
2f ′′(x∗)(x− x∗)2
= f(x∗) +1
2f ′′(x∗)(x− x∗)2 [pois f ′(x∗) = 0]
para |x − x∗| suficientemente pequeno. Defina x = δ + x∗ com |δ| > 0suficientemente pequeno para garantir a validade da expansao de Taylor.Entao:
f(x) = f(x∗) +1
2f ′′(x∗)(x− x∗)2
= f(x∗) +1
2f ′′(x∗)(δ + x∗ − x∗)2
= f(x∗) +1
2f ′′(x∗)δ2
< f(x∗) [pois f ′′(x∗) < 0 e δ2 > 0]
implicando em existir x na vizinhanca de x∗ com objetivo estritamente menor.Mas isto significa que x∗ nao pode ser um mınimo local, contradizendo ahipotese. Portanto, se x∗ e um mınimo local entao obrigatoriamente f ′′(x∗) >0. .
Proposicao 5.2 (Condicao suficiente) Se x∗ satisfaz f ′(x∗) = 0 e f ′′(x∗) >0, entao x∗ e um otimo local.
Prova: Seja x∗ um ponto que satisfaz as condicoes f ′(x∗) = 0 e f ′′(x∗) >0. Seja x = δ + x∗ um ponto na vizinhanca de x∗ com δ 6= 0. Com |δ|
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 175
suficientemente pequeno, pela expansao de Taylor de segunda ordem, vale:
f(x) = f(x∗) + f ′(x∗)(x− x∗) +1
2f ′′(x∗)(x− x∗)2
= f(x∗) +1
2f ′′(x∗)(δ + x∗ − x∗)2
= f(x∗) +1
2f ′′(x∗)δ2
> f(x∗) [pois f ′′(x∗) > 0 e δ2 > 0]
Logo, existe uma vizinhanca N(x∗) em torno de x∗ tal que f(x∗) < f(x) paratodo x ∈ N(x∗)\x∗, satisfazendo as condicoes de otimalidade local.
Definicao 5.4 (Funcao convexa) Uma funcao f : R→ R e convexa se paratodo x, y ∈ R e α ∈ [0, 1] valer:
f(αx+ (1− α)y) 6 αf(x) + (1− α)f(y)
Proposicao 5.3 Se f e convexa, entao todo o mınimo local e tambem ummınimo global.
Prova: Seja x∗ um mınimo local e suponha, por absurdo, que x∗ nao sejaum mınimo global. Seja x um mınimo global e considere o segmento de retaque une os pontos x∗ e x, ou seja,
x = αx+ (1− α)x∗ onde α ∈ (0, 1].
Por convexidade de f , temos que:
f(x) 6 αf(x) + (1− α)f(x∗)
< αf(x∗) + (1− α)f(x∗) [Pois f(x) < f(x∗)]
= f(x∗)
Qualquer vizinhanca N de x∗ contem um pedaco do segmento de reta acimadefinido e, portanto, sempre existira um x em N que satisfaca a desigualdadef(x) < f(x∗). Conclui-se que x∗ nao e um otimo local, contradizendo ahipotese.
Proposicao 5.4 Uma funcao diferenciavel f e convexa se e somente sef(z) > f(x) + f ′(x)(z − x) para todo x, z ∈ R.
176 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Prova: (Necessidade) Suponha que f e convexa. Uma vez que f e dife-renciavel, vale:
limα→0
f(x+ α(z − x))− f(x)
α= f ′(x)(z − x) (5.3)
Sendo f convexa, temos que:
f(x+ α(z − x)) 6 αf(z) + (1− α)f(x), ∀α ∈ [0, 1]
⇒ f(x+ α(z − x))− f(x) 6 α(f(z)− f(x)), ∀α ∈ [0, 1]
⇒ f(x+ α(z − x))− f(x)
α6 f(z)− f(x), ∀α ∈ [0, 1] (5.4)
Fazendo α→ 0 em (5.4) e usando (5.3), deduzimos que:
f(z)− f(x) > limα→0
f(x+ α(z − x))− f(x)
α= f ′(x)(z − x)
⇒ f(z) > f(x) + f ′(x)(z − x)
(Suficiencia) Suponha que f(z) > f(x)+ f ′(x)(z−x) para todo x, z ∈ R.Seja z = αx+(1−α)y para x, y ∈ R e α ∈ [0, 1]. A partir desta desigualdade,deduzimos:
f(x) > f(z) + f ′(z)(x− z)
f(y) > f(z) + f ′(z)(y − z)
Multiplicando a primeira por α, multiplicando a segunda por (1 − α) e so-mando os resultados, obtemos:
αf(x) + (1− α)f(y) > f(z) + (α(x− z) + (1− α)(y − z))f ′(z)
= f(z) + (αx+ (1− α)y − αz − (1− α)z)f ′(z)
= f(z) + (z − z)f ′(z)
= f(z)
= f(αx+ (1− α)y)
demonstrando que f e convexa.
A Proposicao 5.4 e ilustrada na Fig. 5.5. Para qualquer ponto x, noteque a reta y(z) = f(x) + f ′(x)(z − x) define um limite inferior para f(z), ouseja, y(z) 6 f(z).
Proposicao 5.5 Seja f uma funcao duas vezes continuamente diferenciavel.Se f ′′(x) > 0 para todo x, entao f e convexa.
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 177
x z
f(x)
f(z)
f(x) + f ′(x)(z − x)
Figura 5.5: Ilustracao de funcao convexa: f(z) > f(x) + f ′(x)(z − x) paratodo x, z ∈ R.
Prova: A partir da expansao de Taylor de segunda ordem, para quaisquerx e z tem-se:
f(z) = f(x) + f ′(x)(z − x) +1
2f ′′(x+ α(z − x))(z − x)2
para alguma α ∈ [0, 1]. Uma vez que f ′′(y) > 0 para todo y, deduzimos que:
f(z) > f(x) + f ′(x)(z − x)
Logo, segue da Proposicao 5.4 que f e convexa.
Exemplos de Funcoes Convexas
1) f(x) = ax2 + bx + c com a > 0, pois f ′(x) = 2ax + b e f ′′(x) = 2a.Portanto, f ′′(x) > 0 para todo o lugar. x∗ = −b
2ae um otimo local unico.
2) Para f(x) = log(ex + e−x) temos que
f ′(x) = ex−e−x
ex+e−x
f ′′(x) = 4(ex+e−x)2
Portanto, f ′′(x) > 0 para todo x e x∗ = 0 e um otimo global.
3) Para f(x) = x4, temos
f ′(x) = 4x3
f ′′(x) = 12x2
Logo f ′′(x) > 0 em todo o lugar e x∗ = 0 e um otimo global unico.
178 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
4) Para f(x) = x3, podemos verificar que f ′′(x) = 6x. Embora f ′(0) = 0e f ′′(0) = 0, x = 0 nao e um otimo local.
5.3 Minimizacao de Funcoes de uma
Variavel: Metodo de Newton
Considere o problema de minimizacao irrestrita em uma variavel
Minimize f(x)x ∈ R
onde f : R → R. Podemos realizar a busca por um ponto x que satisfaz ascondicoes de otimalidade de primeira ordem aplicando o metodo de Newtonna equacao f ′(x) = 0. Neste caso, o algoritmo de Newton consistira dospassos dados abaixo.
Newton-Minimize(f, x(0), ǫ)
1: k ← 02: while |f ′(x(k))| > ǫ do
3: x(k+1) ← x(k) − f ′(x(k))
f ′′(x(k))
4: k ← k + 15: end while6: return x(k)
Alguns problemas podem surgir na aplicacao da estrategia acima:
• o metodo converge somente se iniciarmos com um ponto x0 proximo dasolucao x∗, onde f ′(x∗) = 0; e
• pode convergir para um ponto de maximo ou de inflexao.
5.3.1 Interpretacao de uma Iteracao
Considere a linearizacao f ′(x′) em torno do ponto x, conforme desenvol-vimento abaixo:
f ′(x′) ≈ flin(x′) = f ′(x) + f ′′(x)(x′ − x)
Fazendo flin(x′) = 0 teremos
flin(x′) = 0 ⇔ f ′(x) + f ′′(x)(x′ − x) = 0
⇔ x′ = x− f ′(x)
f ′′(x)
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 179
x
x
f ′(x)
flin
Figura 5.6: Visao geometrica do metodo de Newton aplicado ao problemaf ′(x) = 0
5.3.2 Uma Segunda Interpretacao
Tomemos a aproximacao quadratica f(x′) de f(x):
f(x′) ≈ h(x′) = f(x) + f ′(x)(x′ − x) +1
2f ′′(x)(x′ − x)2
Faca x+ o mınimo de h(x′), ou seja,
h′(x′) = 0 ⇒ f ′(x) + f ′′(x)(x′ − x) = 0
⇒ x′ = x− f ′(x)
f ′′(x)
Exemplo
Tomando como exemplo a funcao f(x) = log (ex + e−x), calculamos asderivadas de primeira e segunda ordem:
f ′(x) =ex − e−x
ex + e−x
f ′′(x) =4
(ex + e−x)2
As funcoes f(x) e f ′(x) podem ser observadas na Figura 5.7.
180 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
−4 −2 0 2 40.5
1
1.5
2
2.5
3
3.5
−4 −2 0 2 4−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
Figura 5.7: Ilustracao grafica das funcoes f(x) e f ′(x)
5.4 Metodo de Newton com Retrocesso
(“Backtracking”) para Funcoes Convexas
Convex-Backtracking-Minimize(f, x(0), ǫ, α)
1: k ← 02: while |f ′(x(k))| > ǫ do
3: vk ← − f ′(xk)f ′′(xk)
4: while f(xk + vk) > f(xk) + αf ′(xk)vk do5: vk ← vk
2
6: end while7: xk+1 ← xk + vk8: k ← k + 19: end while10: return x(k)
O parametro α ∈ (0, 0.5) e ǫ > 0. O laco mais interno e dito “backtrac-king”: decresca o passo vk ate que f(xk + vk) 6 f(xk) + αf ′(xk)vk
A Figura 5.8 ilustra o funcionamento do metodo. O passo vk que induzo proximo iterando xk+1 = xk + vk so e aceito se o decrescimo induzido nafuncao e maior do que o previsto pela reta f(xk) + αf ′(xk)vk. Note que
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 181
para vk suficientemente pequeno, a condicao imposta e satisfeita. Portanto,o metodo comeca com o passo de Newton vk = −f ′(xk)/f
′′(xk) e reduz opasso ate que vk 6 vmax.
f(x)
f(x+ v)
f(x) + αf ′(x)v
f(x) + f ′(x)v
vvmax
Figura 5.8: Interpretacao geometrica do metodo de Newton para mini-mizacao de funcoes convexas
5.4.1 Convergencia do Metodo de Newton com Retro-cesso
Teorema 5.2 Se f ′′(x) > 0 em todo o lugar e f tem um ponto otimo globalx∗, entao o metodo de Newton com backtracking converge globalmente parax∗ com taxa de convergencia quadratica.
5.5 Algoritmo de Newton para Minimizacao
de Funcoes Nao Convexas
Seja x+ = x − f ′(x)f ′′(x)
o minimizador da aproximacao de segunda ordem
f2(y) = f(x) + f ′(x)(y − x) + 12f ′′(x)(y − x)2 da funcao f(x) em torno do
ponto x. Para o exemplo ilustrado na Figura 5.9, a solucao x+ e pior do quea solucao corrente x. Na verdade, a aplicacao pura do metodo vair convergirpara um ponto de maximo. Uma maneira de contornar este problema consisteem seguir a logica abaixo:
• Se f ′′(x) 6 0, faca x+ = x − f ′(x) (tome o passo dado pelo metodo dedescenso)
182 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
• Se f ′′(x) > 0, faca x+ = x− f ′(x)f ′′(x)
(aceita o passo de Newton)
A estrategia esbocada acima pode ser sintetizada no algoritmo abaixo.
Nonconvex-Backtracking-Minimize(f, x(0), ǫ, α)
1: k ← 02: while |f ′(x(k))| > ǫ do3: if f ′′(xk) > 0 then
4: vk ← − f ′(xk)f ′′(xk)
5: else6: vk ← −f ′(xk)7: end if8: while f(xk + vk) > f(xk) + αf ′(xk)vk do9: vk ← vk
2
10: end while11: xk+1 ← xk + vk12: k ← k + 113: end while14: return x(k)
Observacoes:
a) os iterandos satisfazem f(xk+1) < f(xk)
b) o algoritmo converge para um mınimo local
c) proximo do mınimo local x∗, se f ′′(x∗) > 0, o algoritmo toma passosde Newton que garante convergencia quadratica local.
5.6 Mınimos Quadrados e Ajuste de Curvas
Consideremos inicialmente um sistema com mais equacoes do quevariaveis:
a11x1 + a12x2 + . . . + a1nxn = b1a21x1 + a22x2 + . . . + a2nxn = b2a31x1 + a32x2 + . . . + a3nxn = b3
...am1x1 + am2x2 + . . . + amnxn = bm
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 183
x+x f2(y)
f(x)
Figura 5.9: Problemas do metodo de Newton aplicado a minimizacao defuncoes nao convexas.
o qual pode ser colocado na forma mais compacta como:
Ax = b
onde A ∈ Rm×n, x ∈ R
n×1, e b ∈ Rm×1.
Vamos assumir que nao existe solucao x tal que Ax = b.
5.6.1 Solucao por Mınimos Quadrados
O problema e encontrar uma solucao aproximada deAx = b, formalmente,queremos minimizar o erro que pode ser colocado em notacao matematicacomo segue:
P : Minimize ‖Ax− b‖x ∈ R
n
onde r = Ax− b e chamado de resıduo. A solucao x para P com menor erroresidual ‖r‖ = ‖Ax − b‖ e chamada de solucao de mınimos quadrados. Oproblema P pode ser colocado em uma forma equivalente P ′:
P ′ : Minimize ‖Ax− b‖2 = (Ax− b)T (Ax− b) =m∑
i=1
(aTi x− bi)2
x ∈ Rn
onde aTi e a i-esima linha de A.
184 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Exemplo
Considere o problema de encontrar uma solucao para um sistema de tresequacoes a duas variaveis:
2x1 = 1−x1 + x2 = 0
2x2 = −1(5.5)
A solucao por mınimos quadrados para (5.5) pode ser colocada na formaabaixo:
Minimize f = (2x1 − 1)2 + (x2 − x1)2 + (2x2 + 1)2
x1, x2
Para encontrar a solucao otima, as derivadas parciais de f devem ser nulas,ou seja, o gradiente ∇f de f deve ser nulo. Portanto:
∇f(x) = 0 ⇒ ∂f
∂x1
= 10x1 − 2x2 − 4 = 0
∂f
∂x2
= −2x1 + 10x2 + 4 = 0
Logo, a solucao e:
x1 =1
3e x2 = −
1
3
5.6.2 Ajuste de Curvas
O problema geral de ajuste de curvas pode ser colocado como segue.Ajuste a curva dada pela funcao:
g(t) = x1g1(t) + x2g2(t) + . . .+ xngn(t)
aos dados (t1, y1), . . . , (tm, ym), ou seja, gostarıamos que:
g(t1) = y1
g(t2) = y2... =
...
g(tm) = ym
onde gi(t) : R→ R, i = 1, . . . , n, sao funcoes quaisquer mas conhecidas; taisfuncoes sao ditas bases. Note que:
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 185
a) as variaveis do problema sao x1, x2, . . . , xn; e
b) tipicamente m≫ n.
Algumas aplicacoes de ajuste de curvas sao:
a) suavizacao de dados;
b) desenvolvimento de modelos para dados amostrais; e
c) extrapolacao.
5.6.3 Ajuste de Curvas: Um Problema de MınimosQuadrados
Podemos colocar o problema de ajuste de curvas como um problema demınimos quadrados, o qual assume a forma:
Minimize f =m∑
i=1
(g(ti)− yi)2
=m∑
i=1
[x1g1(ti) + x2g2(ti) + . . .+ xngn(ti)− yi]2
que, por sua vez, pode ser expresso de forma matricial:
Minimize ‖Ax− b‖2x ∈ R
n
onde
A =
g1(t1) g2(t1) . . . gn(t1)g1(t2) g2(t2) . . . gn(t2)
......
......
g1(tm) g2(tm) . . . gn(tm)
e b =
y1y2...ym
5.6.4 Exemplo: Ajuste de Polinomios
O problema consiste em ajustar o polinomio g(t) = x1+x2t+x3t2+ . . .+
xntn−1 aos dados (t1, y1), . . . , (tm, ym), onde m ≫ n, sendo que desejamos
queg(t1) = y1g(t2) = y2... =
...g(tm) = ym
186 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Em forma matricial, desejamos resolver o problema:
Minimize ‖Ax− b‖2x ∈ R
n
onde
A =
1 t1 t21 . . . tn−11
1 t2 t22 . . . tn−12
1 t3 t23 . . . tn−13
......
......
...1 tm t2m . . . tn−1
m
e b =
y1y2y3...ym
Se m = n e o sistema tiver solucao unica, pode-se utilizar um metodo desolucao de equacoes lineares.
5.6.5 Exemplo: Ajuste de Curva
Aqui desejamos encontrar um polinomio que melhor aproxima a funcaof(t) = 1
1+25t2no intervalo [−1, 1]. Nao sabemos de antemao quantos pontos
deverao ser utilizados para realizar a aproximacao, ou seja, nao sabemos ovalor de m. Alem disso, nao sabemos qual grau deve ser adotado para opolinomio, portanto vamos ter que realizar alguns experimentos numericose tracar graficos que nos ajudem a identificar os valores mais adequadospara m (numero de pontos amostrais) e n (sendo n− 1 o grau do polinomiointerpolador).
A Figura 5.10 ilustra a aproximacao de f(t) obtida ao ajustarmos p(t) =x1 + x2t+ x3t
2 + . . .+ xntn−1 a um conjunto de m = 5 pontos sendo o grau
do polinomio n− 1 = 4 (n = 5).A Figura 5.11 ilustra a aproximacao de f(t) com um polinomio de grau
n− 1 = 14 (n = 15) ao conjunto de m = 17 pontos.A Figura 5.12 ilustra a aproximacao de f(t) com um polinomio de grau
n− 1 = 4 (n = 5) a um conjunto de m = 65 pontos.Por fim, a Figura 5.13 mostra graficamente a aproximacao de f(t) obtida
com um polinomio p(t) de grau n−1 = 14 (n = 15) a um conjunto de m = 65pontos.
5.6.6 Identificacao de Sistemas
O problema de identificacao de sistema trata da busca de modelos de sis-temas que nao conhecemos seus elementos e conexoes. Temos apenas valoresde entrada e seus respectivos valores de saıda. Para o sistema ilustrado naFigura 5.14, por exemplo, podemos realizar um conjunto de experimentos
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 187
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
1.2
x
y
f(t)
g(t)
Figura 5.10: n = 5 e m = 5
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
x
y
f(t)
g(t)
Figura 5.11: n = 15 e m = 17
188 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−0.2
0
0.2
0.4
0.6
0.8
1
1.2
x
y
f(t)
g(t)
Figura 5.12: n = 5 e m = 65
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
x
y
f(t)
g(t)
Figura 5.13: n = 15 e m = 65
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 189
que consistem em injetar valores u(t), t = 0, . . . , N , e observar as respectivassaıdas temporais y(t), t = 0, . . . , N .
u(t) y(t)SISTEMA
Figura 5.14: Exemplo de sistema caixa-preta
Considere o exemplo de entradas e saıdas de um sistema qualquer con-forme Figura 5.15. Um modelo simples e amplamente utilizado para mode-lagem de sistema e dado por:
y(t) = h0u(t) + h1u(t− 1) + h2u(t− 2) + · · ·+ hnu(t− n) (5.6)
Este modelo e conhecido por moving average com n atrasos. Assim y(t) eo valor de predicao de y(t) produzido pelo modelo para a entrada corrente,u(t), e as n entradas anteriores, u(t− 1), u(t− 2), . . . , u(t− n). Portanto, apredicao e uma combinacao linear da entrada corrente e das n entradas an-teriores, sendo h0, h1, . . . , hn os parametros que definem a combinacao lineardas entradas.
0 10 20 30 40 50 60 70 80−3
−2
−1
0
1
2
3
0 10 20 30 40 50 60 70 80−3
−2
−1
0
1
2
3
t
t
u(t)
y(t)
Figura 5.15: Exemplo de entradas e saıdas de um sistema
190 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
5.6.7 Estimacao por Meio de Mınimos Quadrados
Aqui vamos considerar o problema de encontrar um modelo (i.e.,parametros h0, . . . , hn) tal que o erro de predicao seja minimizado:
Minimize E =
[
t=N∑
t=n
(y(t)− y(t))2]
12
h0, . . . , hn
(5.7)
onde: y(t) = h0u(t) + h1u(t− 1) + h2u(t− 2) + . . .+ hnu(t− n). Note que oerro E pode ser expresso na forma matricial, fazendo:
E =
[
t=N∑
t=n
(y(t)− y(t))2
]12
= ‖Ax− b‖
A =
u(n) u(n− 1) u(n− 2) . . . u(0)u(n+ 1) u(n) u(n− 1) . . . u(1)u(n+ 2) u(n+ 1) u(n) . . . u(2)
......
......
...u(N) u(N − 1) u(N − 2) . . . u(N − n)
x =
h0
h1
h2...hn
e b =
ynyn+1
yn+2...yN
Logo, o problema (5.7) pode ser colocado como um problema de mınimosquadrados:
Minimize ‖Ax− b‖2x ∈ R
n+1
5.6.8 Identificacao do Sistema Motor Taco-Gerador
O motor taco-gerador e um sensor de velocidade largamente utilizado naindustria. Ele consiste em um gerador de tensao ligado a um motor por umacorreia ou engrenagem como indica a Fig. 5.16. Conforme varia a velocidadeangular do motor varia a tensao gerada pelo taco-gerador. Em motoreseletricos, a velocidade angular do motor depende da tensao aplicada sobreele. Desta forma, pode-se estabelecer uma relacao causal entre a entrada de
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 191
tensao u aplicada ao motor e a tensao de saıda y mostrada pelo taco-gerador(funcao da velocidade angular ω do motor).
Figura 5.16: Motor taco-gerador.
A relacao entre a tensao de entrada u e a tensao de saıda y pode serobtida de duas formas diferentes:
Modelagem Fısico-Matematica: baseada nas leis da fısica e da ma-tematica que caracterizam o sistema. No caso do motor taco-gerador,aplicando as Leis de Newton, chegarıamos a seguinte equacao diferen-cial:
J · L d2y(t)
dt2+ (J ·R +B · L) dy(t)
dt+ (B ·R +Ka ·Kb) y(t) =
Ka
Kc
u(t)
onde:
• J e o momento de inercia do motor;
• Ka e a constante de proporcionalidade entre a corrente na arma-dura e o torque no motor;
• Kb e a constante de proporcionalidade entre a velocidade angulare a forca contra-eletromotriz do motor eletrico;
• Kc e a constante de proporcionalidade entre a velocidade angulardo gerador e a tensao y;
• B e o atrito do motor eletrico;
• L e a indutancia da armadura do motor eletrico;
• R e a resistencia da armadura do motor eletrico
192 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
A modelagem fısico-matematica de sistemas sera objeto de estudo noCapıtulo 7 que trata da sıntese e solucao numerica de equacoes dife-renciais.
Modelagem Experimental ou Identificacao de Sistemas: onde a par-tir da entrada e da saıda do sistema estima-se um modelo matematicosimilar ao modelo real. Na Fig. 5.17 sao dadas as curvas da entradau(t) e da saıda y(t) obtidas atraves de um ensaio em laboratorio.
0 50 100 150 200 250 300−20
−10
0
10
Ten
sao
de E
ntra
da: u
(t)
Tempo (t)
0 50 100 150 200 250 300−6
−4
−2
0
2
4
6
Ten
sao
de S
aida
: y(t
)
Tempo (t)
Figura 5.17: Motor taco-gerador.
O modelo de predicao y(t) esta ilustrado nas Figs. 5.18 e 5.19 para n =3 e n = 10, respectivamente. Como pode ser observado nestas figuras,o modelo de predicao nao e satisfatorio como indicam as normas dosvetores de erro, e = y(t)− y(t), que apresentam o valor ‖e‖ = 118.5214para o caso n = 3 e ‖e‖ = 107.4303 para o caso n = 10.
O modelo de predicao pode ser aprimorado utilizando-se a equacaoalternativa a seguir:
y(t) = h0u(t) + h1u(t− 1) + h2u(t− 2) + · · ·+ hnu(t− n)+ (5.8)
+ w1y(t− 1) + w2y(t− 2) + · · ·+ wny(t− n)
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 193
0 50 100 150 200 250 300−6
−4
−2
0
2
4
6
py(t
)
Tempo
0 50 100 150 200 250 300−6
−4
−2
0
2
4
6
Tempo
y(t)
− p
y(t)
Figura 5.18: Modelo de predicao y(t) obtido com a equacao (5.6) e n = 3. Ovetor de erros e = y(t)− y(t) tem norma ‖e‖ = 118.5214.
194 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
0 50 100 150 200 250 300−6
−4
−2
0
2
4
6
py(t
)
Tempo
0 50 100 150 200 250 300−6
−4
−2
0
2
4
6
Tempo
y(t)
− p
y(t)
Figura 5.19: Modelo de predicao y(t) obtido com a equacao (5.6) e n = 10.O vetor de erros e = y(t)− y(t) tem norma ‖e‖ = 107.4303.
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 195
que leva em consideracao as saıdas passadas alem das entradas pas-sadas. Os resultados obtidos com a equacao de predicao alternativa(5.8) estao ilustrados nas Figs. 5.20 e 5.21. Podemos observar umaqualidade satisfatoria do modelo alternativo.
0 50 100 150 200 250 300−6
−4
−2
0
2
4
6
py(t
)
Tempo
0 50 100 150 200 250 300−0.1
0
0.1
0.2
y(t)
− p
y(t)
Tempo
Figura 5.20: Modelo de predicao y(t) obtido com a equacao (5.8) e n = 3. Ovetor de erros e = y(t)− y(t) tem norma ‖e‖ = 0.5495.
5.6.9 Resolucao de Problemas de Mınimos Quadrados
Nesta secao vamos desenvolver uma formula com a solucao explıcita doproblema de mınimos quadrados. Primeiramente, vamos lembrar que o pro-blema tem a forma:
Minimize ‖Ax− b‖2x ∈ R
n
Seja A = [a1, a2, . . . , an] onde aj ∈ Rm×1 e o vetor correspondente a j-esima
coluna de A. Entao a distancia ‖Ax− b‖ e a distancia do vetor b ao vetor
a1x1 + a2x2 + . . .+ anxn
196 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
0 50 100 150 200 250 300−6
−4
−2
0
2
4
6
py(t
)
Tempo
0 50 100 150 200 250 300−0.1
−0.05
0
0.05
0.1
y(t)
− p
y(t)
Tempo
Figura 5.21: Modelo de predicao y(t) obtido com a equacao (5.8) e n = 10.O vetor de erros e = y(t)− y(t) tem norma ‖e‖ = 0.4778.
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 197
Logo o problema e encontrar uma combinacao das colunas de A que sejamais proxima de b. A combinacao Ax que minimiza o erro e precisamente aprojetacao de b no espaco gerado pelas colunas de A (range(A) = Ax : x ∈R
n). Abaixo ilustramos este aspecto geometrico do problema.
Exemplo
Considere o problema de mınimos quadrados onde:
A =
1 −11 20 0
e b =
142
Graficamente, as colunas de A, o vetor b e a solucao xLS do problema demınimos quadrados sao ilustrados na Figura 5.22.
x1
x2
x3
a1
a2
AxLSAxLS − b
b
Figura 5.22: Ilustracao geometrica do problema de mınimos quadrados
Solucao do Problema de Mınimos Quadrados
Para o problema de mınimos quadrados dado na Secao 5.6.9, serank(A) = n, entao a solucao e unica e dada por:
xLS = (ATA)−1AT b
Em outras palavras, se x 6= xLS entao ‖Ax − b‖2 > ‖AxLS − b‖2. Noteque assumimos que A ∈ R
m×n com m > n. Note que podemos encontrara solucao xLS resolvendo o sistema de equacoes lineares em n variaveis e nequacoes dado por:
ATAx = AT b
198 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Primeiro, vamos mostrar que ATA e nao-singular.
ATAx = 0 ⇒ xTATAx = 0
⇒ ‖Ax‖2 = 0
⇒ Ax = 0
⇒ x = 0 pois A tem posto completo
Portanto, a unica solucao para ATAx = 0 e x = 0 que implica que ATA naoe singular.
Segundo, vamos mostrar que se x 6= xLS tem-se ‖Ax−b‖2 > ‖AxLS−b‖2.‖Ax− b‖2 = ‖Ax− b+ AxLS − AxLS‖2
= ‖A(x− xLS) + (AxLS − b)‖2= ‖A(x− xLS)‖2 + ‖(AxLS − b)‖2
pois A(x− xLS) e (AxLS − b) sao ortogonais
> ‖AxLS − b‖2 ja que x 6= xLS
A ortogonalidade dos vetores acima pode ser verifica como segue:
(A(x− xLS))T (AxLS − b) = (x− xLS)
TAT (AxLS − b)
= (x− xLS)T (ATAxLS − AT b)
= (x− xLS)T (AT b− AT b)
= 0
Interpretacao Geometrica
A solucao otima para o problema de mınimos quadrados, xLS, e tal queAxLS e a projecao de b sobre o espaco gerado pelas colunas de A, como ilustraa Figura 5.23
‖AxLS − b‖ < ‖Ax− b‖b−AxLS
Ax
AxLS
b
0
b−Ax
Figura 5.23: Ilustracao geometrica do problema de mınimos quadrados
Note queATAxLS = AT b→ (Ax)T (b−AxLS) = 0. Portanto, (b−AxLS) ⊥Ax, para todo x ∈ R
n. Assim, ‖b− Ax‖2 = ‖b− AxLS‖2 + ‖A(x− xLS)‖
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 199
Interpretacao Alternativa
Defina f : R→ R como:
f(x) = ‖b− Ax‖2 =m∑
i=1
(bi − aTi x)2
onde:
A =
aT1aT2...aTm
sendo ai ∈ Rn×1 o vetor correspondente a i-esima linha de A, i = 1, . . . ,m.
Note que f e uma funcao diferenciavel em n variaveis. A solucao xLS e umminimizador de f , caracterizado por:
∇f(xLS) =
∂f(xLS)∂x1
∂f(xLS)∂x2...
∂f(xLS)∂xn
= 0
Quais sao as derivadas parciais de f(x) =∑m
i=1(aTi x − bi)
2? Pode serverificado que ∂f/∂xj e dado por:
∂f
∂xj
=m∑
i=1
2(aTi x− bi)aij
200 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Logo, o gradiente de f no ponto x e:
∇f(x) =
∂f(x)∂x1∂f(x)∂x2...
∂f(x)∂xn
=m∑
i=1
2(aTi x− bi)
ai1ai2...ain
=m∑
i=1
2(aTi x− bi)ai
=m∑
i=1
2(aiaTi x− aibi)
= 2(ATAx− AT b)
Conclusao,
∇f(x) = 0 ⇔ AATx = AT b
⇔ 2(ATAx− AT b) = 0
⇔ ATAx− AT b = 0
⇔ x = xLS
Resolucao Numerica do Problema de Mınimos Quadrados
Desejamos encontrar xLS que e a solucao do problema ATAx = AT b.Note que:
• ATA e simetrica;
• ATA e positiva semi-definida, ou seja, xATAx > 0 para todo x ∈ Rn; e
• ATA e positiva definida se A tem posto completo, ou seja, xTATAx =||Ax||2 > 0 para todo x 6= 0.
Portanto, se A tem posto completo podemos fazer uso da fatoracao Choleskypara encontrar uma matriz triangular inferior L tal que LLT = ATA. Umavez calculada a matriz Cholesky L, podemos facilmente encontrar a solucaoxLS.
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 201
5.7 Sistemas de Equacoes Lineares Sub-
Dimensionados
Considere o problema de encontrar uma solucao para o sistema deequacoes lineares Ax = b, A ∈ R
m×n e m 6 n, para o qual existem in-finitas solucoes. Em tal situacao, pode ser util encontrar uma solucao demenor norma, matematicamente:
Minimize ‖x‖Sujeito a :
Ax = b
Um vetor x que resolve este problema e dito solucao por norma mınima.
Teorema 5.3 Se rank(A) = m, entao AAT e nao singular e xLN =AT (AAT )−1b e a solucao unica que minimiza ‖x‖ (em outras palavras, seAx = b para x 6= xLN , entao ‖x‖ > ‖xLN‖).Prova: Primeiro, vamos mostrar que AAT e nao singular. Seja y ∈ R
m noespaco nulo de AAT . Entao:
AATy = 0 ⇒ yTAATy = 0
⇒ ‖ATy‖2 = 0
⇒ ATy = 0 ⇒ y = 0 [pois rank(A) = m]
Segundo, vamos mostrarq que xLN e uma solucao:
AxLN = AAT (AAT )−1b = b,
logo, xLN e uma solucao para Ax = b.Terceiro, vamos mostrar que xLN e uma solucao otima e unica. Considere
qualquer outra solucao x para Ax = b tal que x 6= xLN . Entao:
(x− xLN)TxLN = (x− xLN)
TAT (AAT )−1b
= (Ax− AxLN)T (AAT )−1b
= (b− b)T (AAT )−1b
= 0
Portanto, (x− xLN) e ortogonal a xLN . Logo,
‖x‖2 = ‖x− xLN + xLN‖2= ‖x− xLN‖2 + ‖xLN‖2> ‖xLN‖2
Concluımos que xLN e solucao unica.
202 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
5.7.1 Interpretacao Geometrica
x
xLN
x− xLN
O
z : Az = b
Figura 5.24: Interpretacao geometrica do problema de minimizacao de norma
• xLN e a solucao de Ax = bmais proxima da origem, em outras palavras,xLN e a projecao da origem no espaco de solucoes de Ax = b.
• Se Ax = b, entao x− xLN e ortogonal a xLN .
5.7.2 Calculando a Solucao de Menor Norma
O problema entao e calcular xLN conforme a expressao xLN =AT (AAT )−1b.
Solucao por meio da fatoracao Cholesky
1) Obtenha C = AAT
2) Obtenha uma fatoracao Cholesky C = LLT
3) Execute as mudancas de variaveis dadas por:
xLN = AT zz = (AAT )−1b
AAT z = be
(LLT )z = bLw = bLT z = w
Assim o problema consiste em resolver as equacoes:
xLN = AT zLT z = wLw = b
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 203
4) Calcule w resolvendo por substituicao a equacao Lw = b
5) Calcule z resolvendo por substituicao a equacao LT z = w
6) Calcule xLN = AT z
Exemplo
Seja o problema de minimizacao de norma dado por
A =
[
1 −1 1 11 0 1
212
]
e b =
[
01
]
Primeiro, obtemos C = AAT :4 22 3
2
e calculamos a fatoracao Cholesky:
L =
[
2 01 1√
2
]
⇒[
4 22 3
2
]
= AAT = LLT =
[
2 01 1√
2
]
.
[
2 10 1√
2
]
Resolvendo Lw = b, obtemos[
2 01 1√
2
]
.
[
w1
w2
]
=
[
01
]
⇒ w1 = 0, w2 =√2
Resolvendo LT z = w, obtemos:[
2 10 1√
2
]
.
[
z1z2
]
=
[
0√2
]
⇒ z1 = −1, z2 = 2
Por fim, calculamos xLN = AT z:
xLN =
1 1−1 01 1
2
1 12
.
[
−12
]
=
1100
5.7.3 Problemas de Minimizacao de Normas
Aplicacoes:
• sistemas de equacoes lineares com falta de equacoes
• solucao por minimizacao de norma
204 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
5.7.4 Sistemas com Mais Variaveis do que Equacoes
Para sistemas subdimensionados, com mais variaveis do que equacoes:
a11x1 + a12x2 + . . . + a1nxn = b1a21x1 + a22x2 + . . . + a2nxn = b2a31x1 + a32x2 + . . . + a3nxn = b3... +
... + . . . +... =
...am1x1 + am2x2 + . . . + amnxn = bm
Ou seja, um sistema Ax = b onde A ∈ Rm×n, x ∈ R
n×1 e b ∈ Rm×1. A
matriz A e gorda, m 6 n, tem mais variaveis do que equacoes—i.e., havarias escolhas de x que levam a uma mesma solucao b.
Exemplo: Transferencia de Massa
Vamos aqui considerar o problema de deslocar um bloco, conforme Figura5.25, de um ponto a outro em um intervalo de tempo. Alguns dados doproblema sao:
• a massa e unitaria, m = 1Kg;
• a velocidade e posicao sao nulas no instante t = 0s;
• o bloco esta sujeito a uma forca F (t);
• sao dados a posicao e velocidade final da massa no instante t = 10s; e
• a forca sera discretizada no tempo, constante em subintervalos, tal queF (t) = xj para j − 1 6 t < j, j = 1, . . . , 10.
O problema consiste em encontrar a sequencia de forcas x = (x1, . . . , xn)que move a massa da origem s(0) = 0 ate a posicao final s(10) = 1 tendovelocidade nula na chegada, s′(10) = 0. Seja:
• F (t) = xj para j − 1 6 t < j, j = 1, . . . , 10 a sequencia de forcas;
• s(t) a posicao da massa no instante t = 10; e
• s′(t) a velocidade da massa no instante t = 10.
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 205
mF (t)
Figura 5.25: Bloco de massa
A partir da Lei de Newton, temos que no instante t a aceleracao da massae dada por s′′(t) = F (t)/m = F (t), pois m = 1Kg. Integrando a aceleracaono tempo, podemos calcular a velocidade da massa no instante t = 10:
s′(10) =
∫ 10
0
F (t)dt
=
∫ 1
0
F (t)dt+
∫ 2
1
F (t)dt+ . . .+
∫ 10
9
F (t)dt
=
∫ 1
0
x1dt+
∫ 2
1
x2dt+ . . .+
∫ 10
9
x10dt
= x1
∫ 1
0
dt+ x2
∫ 2
1
dt+ . . .+ x10
∫ 10
9
dt
= x1 + x2 + . . .+ x10
=10∑
i=1
xi
206 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Da mesma forma, podemos fazer uso da velocidade media em cada subinter-valo para calcular a posicao da massa em funcao do tempo:
s(10) =
∫ 10
0
s′(t)dt
=
∫ 1
0
s′(t)dt+
∫ 2
1
s′(t)dt+ . . .+
∫ 10
9
s′(t)dt
=s(1)
2+
[
s(1) +s(2)− s(1)
2
]
+
[
s(2) +s(3)− s(2)
2
]
+ . . .
+
[
s(9) +s(10)− s(9)
2
]
=x1
2+
[
x1 +x1 + x2 − x1
2
]
+
[
x1 + x2 +x1 + x2 + x3 − x1 − x2
2
]
+ . . .
+
[
x1 + . . .+ x9 +x1 + . . .+ x10 − x1 − . . .− x9
2
]
=x1
2+(
x1 +x2
2
)
+(
x1 + x2 +x3
2
)
+ . . .+(
x1 + . . .+ x9 +x10
2
)
=(
9x1 +x1
2
)
+(
8x2 +x2
2
)
+(
7x3 +x3
2
)
+ . . .+x10
2
=10∑
i=1
(
1
2+ 10− i
)
xi
Para o entendimento da expressao s(10), o leitor pode observar a Fig. 5.26que traz a curva da velocidade em funcao do tempo. No fim do primeirointervalo, a velocidade e s′(1) = x1 e, portanto, a integral da curva dada pelaarea do triangulo e precisamente a posicao da massa, ou seja, s(1) = x1/2. Nofim do segundo intervalo, a velocidade e s′(2) = x1+x2 e, portanto, a integralda curva ate t = 2 nos da a posicao s(2) = x1/2 + x1 + (x1 + x2 − x1)/2 =x1/2 + (x1 + x2/2). E assim sucessivamente.
Em notacao matricial o problema pode ser colocado como o de encontrarx ∈ R
10 tal que Ax = b, onde:
A =
[
192
172
152
. . . 12
1 1 1 1 1
]
e b =
[
10
]
Uma solucao e x1, . . . , x8 = 0, x9 = 1 e x10 = −1. As Figuras 5.27, 5.28e 5.29 ilustram o deslocamento s(t), velocidade s′(t) e forca aplicada x(t) aolongo do tempo. Uma segunda solucao e x1 = 1, x2 = −1 e x3, . . . , x10 = 0.Ambas as solucoes tem norma ‖x‖2 = x2
1 + x22 + . . .+ x2
10 = 2.A solucao de menor norma tem vetor de forcas ilustrado na Figura 5.30.
O vetor de forcas e xLN = [0.0545 0.0424 0.0303 0.0182 0.0061 − 0.0545 −
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 207
S´(t)
x1
x1 + x2
x1 + x2 + x3
x1 + x2 + x3 + x4
0 1 2 3 4 t
Figura 5.26: Exemplo de velocidade em funcao do tempo.
0 1 2 3 4 5 6 7 8 9 100
0.2
0.4
0.6
0.8
1
1.2
1.4
tempo (s)
s(t): posicao
Figura 5.27: Deslocamento da massa
208 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
0 1 2 3 4 5 6 7 8 9 10−0.2
0
0.2
0.4
0.6
0.8
1
1.2
tempo (s)
s’(t): velocidade
Figura 5.28: Velocidade da massa
0 1 2 3 4 5 6 7 8 9 10
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
tempo (s)
x(t): forca
Figura 5.29: Forca aplicada a massa no fim do perıodo
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 209
0.0424 − 0.0303 − 0.0182 − 0.0061]T , com ‖xLN‖ = 0.1101 e ‖xLN‖2 =0.0121. O deslocamento s(t) e velocidade s′(t) induzidos pela forca aplicadasao ilustrados nas Figuras 5.31 e 5.32.
0 1 2 3 4 5 6 7 8 9 10−0.06
−0.04
−0.02
0
0.02
0.04
0.06
tempo (s)
x(t)
Figura 5.30: Forca de menor norma aplicada a massa ao longo do intervalo
0 1 2 3 4 5 6 7 8 9 100
0.2
0.4
0.6
0.8
1
1.2
1.4
tempo (s)
s(t)
Figura 5.31: Deslocamento da massa
210 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
0 1 2 3 4 5 6 7 8 9 100
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
tempo (s)
s’(t)
Figura 5.32: Velocidade da massa
5.8 Mınimos Quadrados Nao-linear
Considere o problema de encontrar uma solucao para m equacoes nao-lineares em n variaveis:
r1(x1, . . . , xn) = 0r2(x1, . . . , xn) = 0
...rm(x1, . . . , xn) = 0
onde ri : Rn → R para i = 1, . . . ,m. O problema pode ser colocado emforma vetorial r(x) = 0, onde r : Rn → R
m e definida como:
r(x) =
r1(x1, . . . , xn)r2(x1, . . . , xn)
...rm(x1, . . . , xn)
e x =
x1
x2...xn
Tipicamente, para m ≫ n, nao existe x ∈ Rn tal que r(x) = 0. Assim, nos
resta buscar uma solucao aproximada x tal que:
Minimize ‖r(x)‖2x ∈ R
n
Para o caso r(x) = Ax− b, o problema se reduz a um problema de mınimosquadrados linear. Note que a funcao g(x) = ‖r(x)‖2 pode e tipicamente
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 211
tem multiplos mınimos locais. Encontrar um mınimo global e extremamentedifıcil, logo ficamos satisfeitos com mınimos locais de boa qualidade. Para seter uma ideia da aplicacao pratica de tal problema, o problema de treinar re-des Neurais pode ser visto como um caso particular do problema de mınimosquadrados nao-linear.
Exemplo: Projeto de Indutor CMOS
Considere o problema de projetar simultaneamente em placa de silıcioum conjunto de 50 indutores. A indutancia do indutor i e uma funcao deum vetor x = (x1, x2, . . . , x5) de parametros de projeto, sendo dada por:
Li ≈ ex1nx2i wx3
i dx4i Dx5
i
O problema consiste em encontrar o vetor de parametros x = (x1, x2, . . . , x5)tal que Li
∼= Li para i = 1, . . . , 50, sendo Li a indutancia desejada para oi-esimo indutor.
Podemos portanto colocar o problema como um problema de mınimosquadrados nao-linear fazendo:
ri(x) = ex1nx2i wx3
i dx4i Dx5
i − Li, i = 1, . . . 50
O problema entao fica:
Minimizem∑
i=1
[ex1nx2i wx3
i dx4i Dx5
i − Li]2
x1, . . . , x5
Sera que e possıvel resolver o problema acima como um problema demınimos quadrados linear?
5.9 Referencias
Os topicos sobre sistemas de equacoes nao-lineares, mınimos quadra-dos, minimizacao de norma e introducao a otimizacao, apresentados nestecapıtulo, sao sınteses das notas de aula de Vandenberghe [7].
5.10 Exercıcios
Exercıcio 5.1 Considere os polinomios:
p(t) = c0 + c1t+ c2t2 + c3t
3
q(t) = d0 + d1t+ d2t2 + d3t
3
212 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
Tal que p(t1) = y1, p(t2) = y2, p(t3) = y3, p(t4) = q(t4), p′(t4) = q′(t4),
q(t5) = y5, q(t6) = y6 e q(t7) = y7, sendo que t1, . . . , t7 e y1, . . . , y3, y5, . . . , y7sao dados. Formule o problema de encontrar os polinomios p(t) e q(t) demaneira que eles possam ser encontrados atraves de um metodo numerico.Sua formulacao deve ser tao eficiente quanto possıvel.
Exercıcio 5.2 Aplique o metodo de Newton de forma a encontrar todasas solucoes do seguinte sistema de equacoes nao-lineares: (ilustre os passosseguidos pelo algoritmo para cada uma das raızes encontradas)
log(x21 + 2x2
2 + 1)− 1
2= 0
x2 − x21 + 0.2 = 0
Exercıcio 5.3 Resolva o sistema de equacoes:
x2 + 2zy3 + y4 = 93x3 − 6x2z − y3 = 4
x− 2z − y = 0
pelo metodo de Newton para obter precisao ate a terceira casa decimal.Use cada uma das tentativas iniciais: i) (x0, y0, z0) = (2.5, 0.5,−1); ii)(x0, y0, z0) = (3, 0, 2); iii) (x0, y0, z0) = (−3.5,−0.1, 1.2); e iv) (x0, y0, z0) =(3,−2, 0).
Exercıcio 5.4 Considere o problema de otimizacao abaixo:
P : Minimize ‖x‖Sujeito a :
Ax = b
Comparando P ao problema P ′ de encontrarmos uma solucao para Ax = b,sob quais condicoes em termos do posto da matriz A, rank(A), faz sentindoresolvermos o problema P em vez de P ′? De uma aplicacao do problema P .
Exercıcio 5.5 Considere o problema de otimizacao abaixo:
P : Minimize ‖Ax− b‖2x
Comparando P ao problema P ′ de encontrarmos uma solucao para Ax = b,sob quais condicoes em termos do posto da matriz A, rank(A), faz sentindoresolvermos o problema P em vez de P ′? De uma aplicacao de P .
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 213
Exercıcio 5.6 Considere o sistema mecanico da Fig. 5.33. Ha dois blocos,sendo um de massa m1 = 1kg localizado na posicao 0m e outro de massam2 = 2kg localizado na posicao 10m. Denota-se por xj a forca aplicada aobloco 1 e por yj a forca aplicada ao bloco 2, ambas durante o intervalo detempo j−1 6 t < j (segundos), e dadas em N . Durante o intervalo de tempo,as forcas nao podem ser modificadas. Seja x = [x1 . . . x10] e y = [y1 . . . y10]os vetores de forcas para o intervalo de tempo [0, 10s). Desejamos deslocaro bloco 1 ate uma posicao k e o bloco 2 ate a posicao k + 1, de forma queambos fiquem adjacentes ao fim dos 10s, sem que haja colisao.
Tarefas Especıficas:
1) Encontrar os vetores de forcas x e y, bem como a posicao k, de formaque f(x, y) = ‖x‖2 + ‖y‖2 seja minimizada, tal que no instante 10sambos os blocos fiquem adjacentes e com velocidade nula.
2) Simular o comportamento dos blocos para as forcas aplicadas, ilus-trando as forcas, as velocidades e posicao dos blocos em funcao dotempo. A simulacao devera ser feita atraves da integracao numericadas equacoes diferenciais ordinarias do movimento dos objetos. Utili-zar um ou mais metodos de solucao numerica (e.g., Euler or Runge-Kutta). Implementar a simulacao em Matlab, C, Pascal, Octave, ououtra linguagem de programacao/simulacao.
m1 m2x(t)
y(t)
0 1 2 3 4 5 6 7 8 9 10
Figura 5.33: Sistema fısico com dois blocos sujeitos a forcas horizontais
Exercıcio 5.7 O problema consiste em deslocar um bloco no plano, con-forme Figura 5.34 do ponto (x0, y0) ate o ponto (x1, y1) em um intervalo detempo de 20 s. Dados do problema:
• a massa e unitaria, m = 1Kg;
• a velocidade inicial e nula em t = 0s;
• a posicao inicial e (x0, y0) = (1,−1)m;
• o bloco esta sujeito a uma forca horizontal ux(t) e uma forca verticaluy(t) conforme indicado na figura;
214 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
• a posicao do bloco em t = 20s deve ser (x1, y1) = (2, 3)m;
• a velocidade final deve ser nula; e
• a forca sera discretizada no tempo, constante em subintervalos de 1s,tal que ux(t) = vxj e uy(t) = vyj para j−1 6 t < j, j = 1, . . . , n, n = 20.
Encontre a sequencia de forcas vx = (vx1 , . . . , vxn) e vy = (vy1 , . . . , v
yn) que
move a massa da posicao (x(0), y(0)) = (x0, y0) ate o ponto (x(20), y(20)) =(x1, y1), tendo velocidade nula na chegada, x(20) = 0 e y(20) = 0.
Tarefas:
1) modele o problema como um problema de minimizacao de norma;
2) calcule as sequencias de forcas que minimizam ‖(vx, vy)‖ e indique ovalor desta norma;
3) gere graficos da forca, posicao e velocidade em funcao do tempo:(vx(t), vy(t)), (x(t), y(t)) e (x(t), y(t)).
(x0, y0)
(x1, y1)
ux(t)uy(t)
Figura 5.34: Bloco de massa
Exercıcio 5.8 Considere a funcao f(x) = 12x3− 10x2 +3x+100. Encontre:
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 215
a) os pontos x ∈ R que satisfazem as condicoes de primeira-ordem paramınimo local;
b) os pontos que satisfazem as condicoes necessarias de segunda-ordempara mınimo local; e
c) os pontos que satisfazem as condicoes suficientes de segunda-ordempara mınimo local.
Exercıcio 5.9 O projeto de uma famılia de m capacitores em circuito inte-grado tem como parametros as variaveis x, y, k, z, t. A capacitancia Cj doindutor j e dada pela expressao:
Cj = exayj bkj g
zjd
tj
onde aj, bj, gj, e dj sao constantes conhecidas. Seja cj a capacitancia desejadapara o j-esimo capacitor. O problema e encontrar valores para as variaveisx, y, k, z, e t tal que Cj = cj para j = 1, . . . ,m. Sabemos que nao ha solucaopara o problema.
Prof. Antunes afirma que se pode resolver o problema por meio demınimos quadrados, nao sendo necessario resolver um problema de regressaonao-linear. Voce concorda ou discorda? Justifique.
Exercıcio 5.10 Seja f : Rn → Rn uma funcao nao-linear contınua e dife-
rencialmente contınua. Prof. Alberto dispoe de um pacote de otimizacao defuncoes nao-lineares contınuas que resolve problemas da forma:
Min g(x),
onde x ∈ Rn, g : Rn → R e g e contınua e diferenciavel. Pode-se utilizar o
pacote de software para encontrar uma raiz para f , i.e., um ponto x ∈ Rn
tal que f(x) = 0? Justifique a sua resposta.
Exercıcio 5.11 Questoes de verdadeiro/falso.
i. Prof. Kunz afirma que nao existe mınimo local para a funcao f(x) =ex
ex+e−x .
ii. Seja f : Rn → R uma funcao contınua e diferenciavel. Prof. Kunzafirma que se x ∈ R
n e um mınimo local, entao obrigatoriamente∇f(x) = 0.
iii. Seja f : Rn → R uma funcao contınua e diferenciavel. Prof. Kunzafirma que se existe um mınimo local, entao deve existir um mınimoglobal.
216 5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados
iv. Seja f : R → R uma funcao contınua e duas vezes diferenciavel. Paraum certo x ∈ R, tem-se f ′(x) = 0 e f ′′(x) > 0. Prof. Kunz afirma quex e um mınimo local.
v. Seja f : R→ R uma funcao contınua e duas vezes diferenciavel tal quef ′′(x) > 0 para todo x ∈ R. Prof. Kunz afirma que se x e um mınimolocal, entao obrigatoriamente x tambem e um otimo global.
vi. Considere a funcao f(x) = e−x/x2. Dejamos encontrar o mınimo globalde f(x) na regiao R = [1,∞). Prof. Kunz diz que se x ∈ R e ummınimo local para f(x) na regiao R, entao x e obrigatoriamente ummınimo global.
vii. Sejam f(x, y) e g(x, y) duas funcoes contınuas e diferenciaveis. Prof.Kunz afirma que se (x, y) e um mınimo local de h(x, y) = f(x, y) +g(x, y) entao (x, y) e tambem um mınimo local para f e g.
viii. Considere o problema de encontrar x ∈ Rn tal que:
Minimize ‖x‖Sujeito a :
Ax = b
onde A ∈ Rm×n. Prof. Kunz afirma que nao faz sentido resolver este
problema quando ha mais equacoes do que variaveis, ou seja, quandom > n.
ix. Seja Ax = b um sistema onde A ∈ Rn×n. Prof. Kuhn afirma que se
rank(AT ) = n, entao obrigatoriamente b ∈ range(A) e, portanto, assolucoes do problema de mınimos quadrados (xLS) e do problema deminimizacao de norma (xLN) sao identicas, ou seja, xLS = xLN .
Exercıcio 5.12 Seja f : R → R uma funcao nao-linear contınua e dife-rencialmente contınua. Prof. Kunz dispoe de um pacote para solucao desistemas de equacoes e desigualdades nao-lineares, que encontra, caso exista,uma solucao x para:
g(x) < 0h(x) = 0
onde g : R → R e h : R → R sao funcoes contınuas e diferenciaveis. Prof.Kunz afirma que se pode utilizar o pacote de software para encontrar ummınimo local para f(x). Voce concorda ou discorda do Prof. Kunz? Se vocediscorda, mostre porque nao podemos utilizar o pacote de software. Se voceconcorda, mostre como que um mınimo local pode ser encontrado.
5. Sistemas de Equacoes Nao-Lineares, Otimizacao e Mınimos Quadrados 217
Exercıcio 5.13 Considere o sistema de equacoes lineares dado por:
[
B1
B2
]
x =
[
b1b2
]
≡ Bx = b (5.9)
onde B1 ∈ Rm1×n, B2 ∈ R
m2×n, B ∈ R(m1+m2)×n e os vetores x, b1, b2 e b tem
dimensoes apropriadas.Sabe-se que o sistema (5.9) nao possui solucao, mas o sub-sistema
B1x = b1 possui infinitas solucoes. Deseja-se resolver o seguinte problema demınimos quadrados sob restricoes:
Minimize ‖Bx− b‖2 (5.10a)
Sujeito a: (5.10b)
B1x = b1 (5.10c)
E possıvel resolver esta generalizacao do problema de mınimos quadradosusando apenas os modelos e algoritmos desenvolvidos na disciplina? Se sim,mostre como a solucao pode ser obtida. Caso contrario, argumente umajustificativa da impossibilidade.
Exercıcio 5.14 A aplicacao do metodo de Newton para determinar umaraiz da funcao f(x) = x3 − 2x+ 2 pode entrar em laco infinito.
i. Obtenha uma funcao F : R2 → R2 tal que toda a solucao do sistema
de equacoes nao lineares F (y) = 0 define um par de pontos, x = y1e x = y2, para os quais o metodo de Newton entra em laco infinitoquando aplicado a equacao f(x) = 0.
ii. Aplique o metodo de Newton ao sistema F (x) = 0 e obtenha umasolucao y = (y1, y2).
Capıtulo 6
Revisao de Polinomios
Definicao 6.1 Um polinomio p e uma funcao com domınio e imagem emum conjunto C ou R dado na forma:
p : C → C
x 7→ p(x) = a0xn + a1x
n−1 + · · ·+ an−1x+ an
O numero inteiro n e dito grau do polinomio.
Teorema 6.1 Se p(x) e um polinomio de grau n, entao para qualquer αexiste um polinomio q(x) unico tal que: p(x) = (x− α)q(x) + p(α)
O Teorema 6.1 nos diz que, se dividirmos p(x) por (x−α) entao encontramoscomo quociente um polinomio de grau n− 1, se n > 1, e o resto e o valor dopolinomio calculado em α.
Exemplo
Considere o polinomio p(x) = 3x5 + 4x4 − 2x3 − x2 + 3x − 4 de grau 5.Para calcularmos o valor do polinomino para x = 2, p(2), podemos fazer asseguintes contas:
p(2) = 3× 25 + 4× 24 − 2× 23 − 22 + 3× 2− 4
o que implica em executarmos n adicoes e∑n
j=1 j = (n+1)n2
multiplicacoes.
Portanto, o procedimento executa Θ(n) adicoes e Θ(n2) multiplicacoes, oque nos leva a concluir que a complexidade computacional do procedimentoacima e da ordem Θ(n2) operacoes computacionais elementares. Sera queeste e o procedimento mais eficiente?
220 6. Revisao de Polinomios
Entretanto, observamos que:
p(x) = 3x5 + 4x4 − 2x3 − x2 + 3x− 4
= (3x4 + 4x3 − 2x2 − x+ 3)x− 4
= ((3x3 + 4x2 − 2x− 1)x+ 3)x− 4
= (((3x2 + 4x− 2)x− 1)x+ 3)x− 4
= ((((3x+ 4)x− 2)x− 1)x+ 3)x− 4
o que resulta no calculo de p(2) com apenas n adicoes e n multiplicacoes.Este segundo procedimento e muito mais eficiente que o anterior, tem umacomplexidade computacional de Θ(n) operacoes.
O esquema de calculo de p(x) acima pode ser utilizado para dividirmosp(x) por (x−α) e daı calculamos q(x) = b0x
4+ b1x3+ b2x
2+ b3x+ b4 e p(α).
Esquema de Horner/Briot-Ruffini
O esquema para calcular o quociente e ilustrado na tabela abaixo, ondeestamos buscando o quociente q(x) da divisao do polinomio p(x) = 3x5 +4x4 − 2x3 − x2 + 3x− 4 por (x− α), com α = 2.
3 4 -2 -1 3 -4
α = 2 6 20 36 70 1463 10 18 35 73 142b0 b1 b2 b3 b4 R = p(2)
A partir da tabela acima, obtemos o quociente atraves dos coeficientes dalinha mais abaixo, ou seja, q(x) = 3x4 + 10x3 + 18x2 + 35x+ 73 e tambem oresto p(2) = 142. Portanto, p(x) = (x− 2)q(x) + 142.
Na forma mais geral, o metodo Briot-Ruffini pode ser expresso atravesdas operacoes indicadas na tabela a seguir:
a0 a1 a2 a3 . . . an−1 anα b0α b1α b2α . . . bn−2α bn−1α
a0 a1 + b0α a2 + b1α a3 + b2α... an−1 + bn−2α an + bn−1α
b0 b1 b2 b3 bn−1 R = p(α)
Corolario 6.1 Se p(x) e um polinomio de grau n > 1 e p(α) = 0 entaoexiste um polinomio unico de grau n− 1, tal que p(x) = (x− α)q(x). Nestecaso, q(x) e chamado de polinomio reduzido.
6. Revisao de Polinomios 221
6.1 Enumeracao de Raızes
6.1.1 Enumeracao das Raızes de Uma Equacao Poli-nomial
Enumerar as raızes de um polinomio p(x) consiste em dizermos quantasraızes o polinomio possui e de que tipo elas sao. No que segue sao apresenta-dos alguns teoremas e outros resultados teoricos que podem nos auxiliar natarefa de enumeracao.
Teorema 6.2 O numero de raızes positivas de uma equacao polinomial p(x)com coeficientes reais, nunca e maior que o numero de trocas de sinal T nasequencia de seus coeficientes nao nulos, e se e menor, entao e sempre porum numero par.
Exemplo
Como exemplo, tome o polinomio p(x) = x3+2x2−3x−5, o qual apresentaa sequencia de sinais (+,+,−,−). Logo, segundo o Teorema 6.2, T ′ = 1 epode-se afirmar com exatidao que p(x) tem uma raiz positiva ja que ele naopode ter um numero negativo de raızes.
Observacao: A mesma regra acima, dada pelo Teorema 6.2, pode ser apli-cada para a enumeracao das raızes reais e negativas de p(x), calculando-sep(−x), pois as raızes positivas de:
p(−x) = −x3 + 2x2 + 3x− 5
se referem as raızes negativas de p(−x). Notando que a sequencia de sinaisde p(−x) e (−,+,+,−), concluımos que T ′ = 2 e daı deduzimos que p(x)pode ter duas ou zero raızes negativas. Tomando como base as deducoes deque p(x) tem uma raiz positiva e duas ou nenhuma raiz negativa, podemosdeduzir que:
• Se p(x) tiver duas raızes negativas, entao nao tera nenhuma raiz com-plexa. Se, contudo, nao tiver raızes negativas, entao tera duas comple-xas.
• E bom lembrar que, se um polinomio tem todos os coeficientes reais ese houver uma raız complexa, entao sua conjugada, tambem sera raizdo polinomio.
222 6. Revisao de Polinomios
Exemplo
Seja p(x) = x4 − x3 + x2 − x + 1 um polinomio de quarto grau. Temosque T = 4 e, portanto, p(x) tem quatro, duas ou nao tem raızes positivas.Procedendo a analise de p(−x) = x4 + x3 + x2 + x + 1, observamos queT ′ = 0 e daı verificamos que p(x) nao tem raızes negativas. Logo p(x) podeter quatro raızes positivas, ou duas raızes positivas e duas complexas, ounenhuma positiva e quatro complexas. Ha apenas tres possibilidades quantoaos tipos das raızes.
6.1.2 Enumeracao das Raızes Complexas
Nesta secao damos continuidade a formas e metodos de se enumerarraızes, onde serao enunciados resultados teoricos e procedimentos de enu-meracao.
Teorema 6.3 (Regra de du Gua) Dada a equacao polinomial p(x) = 0 degrau n sem raızes nulas e se para algum k, 1 6 k < n tivermos a2k 6 ak+1ak−1
entao p(x) tera raızes complexas.
O Teorema 6.3 nos da condicoes suficientes para existencia de raızes com-plexas. Note que se as condicoes do teorema nao puderem ser aplicadas, opolinomio pode ter raızes complexas. A regra da Lacuna abaixo enunciadapermite a conclusao sobre a existencia de raızes complexas
Teorema 6.4 (Regra da Lacuna)
• Se os coeficientes de p(x) forem todos reais e para algum k, 1 6 k < ntivermos ak = 0 e ak+1ak−1 > 0, entao p(x) = 0 tera raızes complexas.
• Se os coeficientes forem todos reais e existirem dois ou mais coeficientesnulos sucessivos, entao p(x) = 0 tera raızes complexas.
Exemplo
Vamos agora exemplificar a aplicacao dos teoremas enunciados. Inicial-mente, tomemos o polinomio p(x) = 2x5 + 3x4 + x3 + 2x2 − 5x + 3, para oqual verificamos que T = 2, e daı descobrimos que p(x) tem duas raızes ouzero raızes positivas. A partir de p(−x) = −2x5 + 3x4 − x3 + 2x2 + 5x + 3,calculamos que T ′ = 3, e daı deduzimos que p(x) tem tres raızes ou uma raızreal negativa. Na tabela abaixo listamos todas as possıveis combinacoes detipos de raızes.
6. Revisao de Polinomios 223
Reais Positivas Reais Negativas Complexas Total2 3 0 52 1 2 50 3 2 50 1 4 5
Pela regra de “du Gua” (ver Teorema 6.3), temos que a22 6 a3a1 ⇒
1 6 3 × 2 = 6. Daı chegamos a conclusao que p(x) tem raızes complexas e,por conseguinte, podemos eliminar a primeira alternativa do quadro anterior,restando apenas tres possibilidades para as raızes.
Exemplo
Repetindo os passos anteriores, tomemos agora o polinomio de sexto graup(x) = 2x6− 3x5− 2x3 + x2− x+1. A partir do fato que T = 4, concluımosque p(x) tem quatro, ou duas raızes, ou zero raızes positivas. Atraves dopolinomio p(−x) = 2x6+3x5+2x3+x2+x+1, temos que T ′ = 0, portanto,p(x) nao tem raızes reais negativas. Pela Regra da Lacuna temos que p(x) = 0tem raızes complexas pois: a2 = 0 e a1a3 > 0. Os possıveis arranjos de tipose numeros de raızes e dado no quadro abaixo:
Reais Positivas Reais Negativas Complexas Total4 0 2 62 0 4 60 0 6 6
Definicao 6.2 Seja f(x) = 0 uma equacao onde f : R 7→ R e uma funcaoqualquer. Se f(x) = 0, entao dizemos que x e uma raiz de f .
Definicao 6.3 Se x e um zero de f(x) entao a multiplicidade m de x e oınfimo de todos os numeros k, tais que:
limx→x
|f(x)||x− x|k <∞
Exemplo
Consideremos a funcao f(x) = x12 , uma raiz de x
12 = 0 e x = 0. Esta raiz
tem multiplicidade 12, pois
limx→0
|x 12 ||x| 12
<∞ mas limx→0
|x 12 ||x|a =∞ para a <
1
2.
224 6. Revisao de Polinomios
Teorema 6.5 Se x e um zero de f e se para algum inteiro m, f(x) e mvezes continuamente diferenciavel, entao a multiplicidade de x e pelo menosm vezes se, e somente se,
f(x) = f ′(x) = f ′′(x) = . . . = fm−1(x) = 0
A multiplicidade e exatamente m se fm(x) 6= 0
Teorema 6.6 Seja p(x) um polinomio de grau n > 1. A multiplicidade deum zero α de p(x) e m se, e somente se,
p(α) = p′(α) = p′′(α) = . . . = pm−1(α) = 0pm(α) 6= 0.
Teorema 6.7 Seja p(x) = a0xn + a1x
n−1 + . . .+ an−1x+ an, um polinomiode grau n. Entao existem numeros distintos α1, α2, . . . , αs (que podem sercomplexos) e inteiros m1,m2, . . . ,ms tal que para uma constante c unica te-mos:
p(x) = c(x− α1)m1 .(x− α2)
m2 . . . (x− αs)ms
s∑
j=1
mj = n.
O teorema acima e decorrencia do teorema fundamental da Algebra, quediz que todo polinomio com coeficientes complexos admite pelo menos umaraiz complexa. Nem todo o polinomio real admite uma raız real, por exemplox2 + 1 so admite raızes complexas.
Teorema 6.8 Se os coeficientes de p(x) sao reais e µ e a multiplicidade deuma raiz α entao perto de α o polinomio p(x) deve ter uma das formas daFigura 6.1.
Observacoes:
• A enumeracao de raızes reais ou complexas pode ser feita aproximada-mente pelo metodo grafico a ser visto posteriormente.
• A existencia de um maximo local negativo, ou mınimo local positivoindica a existencia nas proximidades de raızes complexas.
6. Revisao de Polinomios 225
µ=1 µ=1 µ=1µ=1
ααα α
µ=2,4,6,...
µ=2,4,6,... µ=1,3,5,... µ=1,3,5,...
Figura 6.1: Multiplicidade de raızes
6.2 Localizacao das Raızes
6.2.1 Localizacao das Raızes Reais de Uma EquacaoPolinomial
Dada a equacao polinomial p(x) = 0 podemos ter uma ideia mais oumenos precisa sobre quantos e de que tipo sao as raızes de equacao polino-mial. Este topico foi objeto de estudo na secao anterior. E preciso tambemsaber onde elas estao localizadas, o que sera o foco na presente secao. Seraoapresentadas definicoes e teoremas que permitem realizar a localizacao dasraızes.
Definicao 6.4 Localizar as raızes de p(x) = 0 e determinar um intervaloque contenha todas as raızes reais de p(x). Localizar as raızes complexas edeterminar os raios interno e externo que contenham as raızes complexas dep(x) = 0.
A Figura 6.2 ilustra o conceito de localizacao de raızes reais e complexas.
Teorema 6.9 (Laguerre) Dado o polinomio p(x) de coeficientes reais e dadoum numero α, obtemos p(x) = (x − α)q(x) + R. Se os coeficientes de q(x)e R forem todos positivos ou nulos, entao teremos que todas as raızes reaispositivas xj verificam xj < α.
226 6. Revisao de Polinomios
a b a b
ab
Figura 6.2: Localizacao de raızes
Cota de Laguerre-Thibault
Dado p(x) = 0 de coeficientes reais, faca a deflacao de p(x) por x−1, x−2,x− 3 . . ., ate x−m, onde q(x) tenha todos os coeficientes positivos ou nulos,assim como R(x) > 0 tal m e chamado de cota superior das raızes reais dep(x) = 0. Para determinar a cota inferior basta fazer o mesmo procedimentopara p(−x) e assim determina-se a cota inferior.
Exemplo
Tomemos como exemplo o polinomio p(x) = x5+x4−9x3−x2+20x−12e considere a tarefa de localizarmos as raızes de p(x) = 0.
1 1 -9 -1 20 -121 1 2 -7 -8 12
1 2 -7 -8 -12 0
1 1 -9 -1 20 -122 2 6 -6 -14 12
1 3 -3 -7 6 0
1 1 -9 -1 20 -123 3 12 9 24 132
1 4 3 8 44 120
Logo temos que todas as raızes positivas de p(x) = 0 sao menores que 3.Para pesquisar a localizacao das raızes negativas utiliza-se o mesmo procedi-mento, mas desta vez este e aplicado ao polinomio obtido ao multiplicar-sep(−x) = −x5 + x4 + 9x3 − x2 − 20x− 12 por −1.
6. Revisao de Polinomios 227
1 -1 -9 1 20 121 1 0 -9 -8 12
1 0 -9 -8 12 24
1 -1 -9 1 20 122 2 2 -14 -26 -12
1 1 -7 -13 -6 0
1 -1 -9 1 20 123 3 6 -9 -24 -12
1 2 -3 -8 -4 0
1 -1 -9 1 20 124 4 12 12 52 288
1 3 3 13 72 300Portanto, as raızes pertencem ao intervalo [-4,3].
Teorema 6.10 ( Cota de Vene ) Para toda a raiz positiva α de p(x) = 0onde a0 6= 0, verifica-se que:
0 6 α 6 1 +M
a0 + a1 + . . .+ ap
onde M e o valor absoluto do menor dos coeficientes negativos e ap e o ultimocoeficiente positivo antes do primeiro coeficiente negativo.
Exemplo
Vamos ilustrar a Cota de Vene com o polinomio p(x) = x5 + x4 − 9x3 −x2+20x−12. Note que M = |−12| = 12 e ap = 1. Logo, 0 6 α 6 1+ |−12|
1+1=
1 + 122= 7.
6.3 Localizacao das Raızes Complexas de
Uma Equacao Polinomial
Teorema 6.11 (Cota de Kojima) Dado o polinomio
p(x) = a0xn + a1x
n−1 + . . .+ an−1x+ an
toda a raiz α, real ou complexa, verifica que
|α| 6 q1 + q2
228 6. Revisao de Polinomios
onde q1 e q2 sao os valores maiores de:
∣
∣
∣
∣
aia0
∣
∣
∣
∣
1i
, i = 1, 2, . . . , n.
Exemplo
Seja o polinomio p(x) = x5 + x4 − 9x3 − x2 + 20x − 12, onde a0 = 1,a1 = 1, a2 = −9, a3 = −1, a4 = 20, e a5 = −12. Podemos entao verificarque a serie de fatores e:
111 , 9
12 , 1
13 , 20
14 , 12
15
= 1, 3, 1, 2.114743537, 1.643751829 .
Daı verificamos que q1 = 3 e q2 = 2.114742527. Logo, temos que toda raizsatisfaz |α| 6 5.114742527, o que nos da o raio externo do anel que contemas raızes de p(x).
Para determinar o raio interno do anel, devemos calcular p( 1x) = −12x5+
20x4 − x3 − 9x2 + x + 1 e aplicar o mesmo procedimento, pois as raızes dep( 1
x) sao os inversos das de p(x). Temos entao que:
(
20
12
) 11
,
(
1
12
) 12
,
(
9
12
) 13
,
(
1
12
) 14
,
(
1
12
) 15
=
1.666, 0.288675239, 0.908560296, 0.537284, 0.608364342 .
Daı verificamos que q1 = 1.666 e q2 = 0.908560296. c = 2.575226902 e daı acota inteira e 1
c= 0.388315288⇒ 0.388315288 < |α| < 5.114742527.
Teorema 6.12 (Cota de Cauchy) Dado um polinomio real p(x), entao todaraiz α real ou complexa, de p(x) = 0 satisfaz:
|α| < |β|
sendo β = limi→∞ xi com x0 = 0 e
xi =
(
|a1a0|xn−1
i−1 + |a2a0|xn−2
i−1 + . . .+ |an−1
a0|xi−1 + |
ana0|) 1
n
.
6. Revisao de Polinomios 229
Exemplo
Tomemos o polinomio p(x) = x5+x4−9x3−x2+20x−12. Entao x0 = 0e a0 = 1, o que nos leva a produzir a serie:
xk+1 = [x4k + 9x3
k + x2k + 20xk + 12]
15
Podemos entao verificar que
x1 =5√12 = 1.643751829
x2 = 2.485458195...
x10 = 3.805140857
Como resultado, podemos afirmar que nao ha nenhuma raiz fora do cırculocentrado em zero e de raio 4.0.
6.4 Separacao das Raızes de Uma Equacao
Polinomial
Definicao 6.5 Separar as raızes de uma equacao polinomial e o processo deencontrar uma sequencia de subintervalos distintos, tais que cada subintervalocontenha exatamente uma raiz real e cada raiz real esteja num subintervalo.
Teorema 6.13 (Bolzano) Se f for uma funcao continua em [a, b] e trocarde sinal nos extremos desse intervalo, entao existe pelo menos uma raiz realde f em [a, b].
Teorema 6.14 (Budan) Seja pk(a) o valor da derivada de ordem k de p(x)calculada para x = a. Seja va o numero de variacoes de sinal da sequencia:
p(a), p′(a), p′′(a), . . . , p(n+1)(a)
tomadas nesta ordem. Entao o numero de raızes de p(x) = 0 no intervalo(a, b) e igual ou menor que |va − vb| por um multiplo de 2.
Exemplo
Seja p(x) = x3 − 2x2 − x + 2 um polinomio de grau 3. Pela regra deDescartes temos duas variacoes de sinal e daı segue que existem duas raızes,
230 6. Revisao de Polinomios
ou nao temos raızes positivas. Vamos agora calcular a forma analıtica dasderivadas de p(x):
p′(x) = 3x2 − 4x− 1
p′′(x) = 6x− 4
p′′′(x) = 6
Calculando a cota de Laguerre-Thibault, conforme tabelas que seguemabaixo, podemos deduzir que as raızes positivas sao menores que 3 (cotasuperior igual a 3).
1 -2 -1 21 1 -1 -2
1 -1 -2 0
1 -2 -1 22 2 0 -2
1 0 -1 0
1 -2 -1 23 3 3 6
1 1 12 8Aplicando o Teorema de Budan, temos que v0 = 2 e v3 = 0, conforme
tabelas abaixo, logo ha duas ou nenhuma raiz real em [0, 3].
p(0) = 2 p(3) = 8p′(0) = −1 p′(3) = 10p′′(0) = −4 p′′(3) = 14p′′′(0) = 6 p′′′(3) = 6
Exemplo
Considere agora o polinomio:
p(x) = x4 − 4x3 + 6x2 + 4x+ 1
de grau 4. O numero de variacoes de sinal de p(x) e 4, donde podemos terquatro, duas ou nenhuma raiz positiva. Vamos entao calcular a Cota deLaguerre-Thibault, conforme desenvolvimento abaixo.
1 -4 6 4 11 1 -3 3 7
1 -3 3 7 8
6. Revisao de Polinomios 231
1 -4 6 4 12 2 -2 8 24
1 -2 4 12 25
1 -4 6 4 13 3 -3 3 21
1 -1 3 7 22
1 -4 6 4 14 4 0 24 56
1 0 6 28 57Uma vez que a Cota de Laguerre-Thibault e 4, podemos aplicar o Teorema
de Budan calculando v0 e v4, mas antes disso temos que obter as derivadasde p(x) :
p′(x) = 4x3 − 12x2 + 12x+ 4
p′′(x) = 12x2 − 24x+ 12
p′′′(x) = 24x− 24
p′′′′(x) = 24
Daı calculamos os valores das derivadas nos pontos x = 0 e x = 4, obtendoos resultados do quadro abaixo.
p(0) = 1 p(4) = 81p′(0) = 4 p′(4) = 108p′′(0) = 12 p′′(4) = 108p′′′(0) = −24 p′′′(4) = 72p′′′′(0) = 24 p′′′′(4) = 24
Portanto, deduzimos que v0 = 2 e v4 = 0. O teorema entao nos diz que onumero de raızes em (0, 4) e menor ou igual a |v0 − v4| = 2 por um multiplode 2. Portanto, deve haver duas ou nenhuma raiz no intervalo (0, 4).
6.5 Exercıcios
Exercıcio 6.1 Considere o polinomio:
p(x) = x7 + 4x6 − 7x5 − 34x4 − 24x3 − x+ 1
a) Prof. Miguel afirma que p(x) deve obrigatoriamente possuir pelo me-nos uma raiz real negativa e pelo menos duas raızes complexas. Voceconcorda ou discorda da afirmacao? Justifique a resposta.
232 6. Revisao de Polinomios
b) Prof. Clovis afirma que toda raiz α de p(x) verifica |α| 6 7.24. Voceconcorda ou discorda do Prof. Clovis? Justifique a resposta.
Exercıcio 6.2 Considere o polinomio:
p(x) = 2x7 + 4x6 − 7x5 + 12x4 − x− 1
Para cada afirmacao, indique se voce concorda ou discorda e justifique a suaresposta.
a) Prof. Miguel afirma que p(x) deve obrigatoriamente possuir pelo menosuma raiz real positiva.
b) Prof. Julius afirma que p(x) possui pelo menos duas raızes reais nega-tivas.
c) Prof. Antunes afirma que p(x) possui pelo menos duas raızes comple-xas.
d) Prof. Albus afirma que, se p(x) possuir uma raiz complexa, entao se αe uma raiz complexa, ela satisfaz a relacao: |α| 6 4.
Exercıcio 6.3 Dado o polinomio:
q(x) = 2x7 + 6x6 − 10x5 − 30x4 + 8x3 + 24x2,
execute as tarefas abaixo dando justificativas.
a) Encontre os numeros possıveis de raızes reais positivas.
b) Encontre os numeros possıveis de raızes reais negativas.
c) Podemos dizer que q(x) possui raızes complexas?
d) Se q(x) possui raızes reais, entao localize estas raızes.
e) Se q(x) possui raızes complexas, entao localize estas raızes.
Capıtulo 7
Integracao Numerica
Ao contrario da diferenciacao, a integral de uma funcao f(x) nao neces-sariamente possui uma solucao analıtica. Por exemplo, a integral limitadaF (x) =
∫ b
ae−x2
dx da funcao f(x) = e−x2nao possui solucao analıtica. Entao,
como podemos encontrar F (x)? Uma solucao aproximada (arbitrariamenteaproximada para o caso de uma maquina de precisao ilimitada) pode ser ob-tida por meio de metodos numericos. Este metodos serao objeto de estudono presente capıtulo.
7.1 O Problema da Integracao Numerica
Os metodos para o calculo de integrais definidas F (x) =∫ b
af(x)dx sao
agrupadas em quatro tipos:
Metodo Analıtico: Este metodo consiste em se encontrar a solucaoanalıtica de F (x), por exemplo F (x) =
∫
1xdx = ln x + c. Por ou-
tro lado, F (x) =∫
e−x2dx nao pode ser escrita como uma combinacao
finita de outras funcoes algebricas, logarıtmicas ou exponenciais. Nocaso de F (x) =
∫ x
01
1+x8dx, podemos obter F (x) atraves de varias eta-pas mas estas podem levar a erros e, alem disso, o resultado podeenvolver algumas funcoes que serao avaliadas numericamente que, porsua vez, poderiam acarretar erros numericos. Ha tambem ferramentascomputacionais inspiradas em algoritmos de Inteligencia Artificial (IA)que encontram as primitivas de varias funcoes, tais como as ferramen-tas encontradas em pacotes de software como Mathematica, Maple eMatlab.
Metodo Mecanico: Tais metodos fazem uso de instrumentos que calculama area delimitada por uma curva qualquer, todavia sao limitados quanto
234 7. Integracao Numerica
ao numero de dimensoes e tem aplicacoes restritas.
Metodo Grafico: Toma como base o desenho de y = f(x) no intervalo[a, b] que gera uma sequencia de iterandos no grafico ate que se obte-nha o resultado. Estes metodos sao pouco empregados uma vez quenao sao automaticos e portanto nao podem ser aplicados em sistemascomputacionais.
Metodo Numerico ou Algorıtmico: Os metodos numericos podem serempregados em geral e tem grande apelo pratico uma vez que podemser embutidos em ambientes computacionais.
7.2 Objetivo da Integracao Numerica
O metodo numerico para calcular a integral de f(x) utiliza exclusiva-mente as operacoes aritmeticas necessarias ao calculo de f(x), o que podeser conveniente, assim dispensando o computo das derivadas de f . Usual-mente vamos calcular a integral de f(x) de a ate b, ou seja, F (x) =
∫ b
af(x)dx,
onde −∞ < a < b < +∞.
7.2.1 Filosofias Basicas
Para calcular o valor aproximado da integral definida vamos utilizar umacombinacao linear de valores da funcao f(x) em certos pontos xj, a 6 xj 6 b,chamados de nos e certos valores wj que constituem os pesos. Mais formal-mente, vamos aproximar F (x) com a expressao:
∫ b
a
f(x)dx ∼= w1f(x1) + w2f(x2) + . . .+ wn+1f(xn+1) =n+1∑
j=1
wjf(xj) (7.1)
De acordo com os valores dos pesos e com a escolha de nos, temos no ladodireito de (7.1) o que chamamos de Regra de Integracao. A determinacaodos pesos e dos nos e feita de acordo com varias filosofias que se agrupamem duas subdivisoes:
Fixas: A escolha de nos nao depende do comportamento especıfico da funcaoa ser integrada, mas apenas da regra a ser utilizada.
Adaptativa: A escolha dos pontos xj depende do comportamento dafuncao, de modo que a densidade seja maior onde a funcao f(x) variacom menos “suavidade”.
7. Integracao Numerica 235
Tanto na filosofia fixa como na adaptativa, empregamos varios tipos deregras. As mais importantes sao:
Formulas de Newton-Cotes: Determinamos os pontos xj = x0 + jh quesao igualmente espacados de uma distancia h. Os pesos wj sao obti-dos a partir de um polinomio de grau m que interpola f nos pontos(xj, f(xj)). Portanto, a regra obtida e exata para qualquer polinomiode grau menor ou igual a m.
Formulas de Gauss: Determinamos os pontos xj e os pesos wj de modoque a regra seja exata para qualquer polinomio de grau p = 2n + 1,onde n e o numero de pontos a serem tomados no intervalo [a, b]. Ospontos xj assim obtidos nao sao igualmente espacados.
Formulas baseadas nos metodos de extrapolacao do limite: Asformulas Newtonianas podem apresentar uma convergencia lenta.Uma forma de se aumentar a velocidade de convergencia e aplicar umaformula de Newton-Cotes para h = hj, hj+1 < hj, obtendo-se uma
sequencia de aproximacoes da integral∫ b
af(x)dx.
As integrais a serem calculadas podem ser proprias ou improprias,convergentes ou nao. As integrais improprias sao aquelas nas quais ointervalo de integracao ou integrando sao ilimitados. Tais integrais saodefinidas como um limite de integrais proprias, como esta a seguir:
i.∫∞a
f(x)dx = limx→∞∫ x
af(x)dx, quando o limite existe
ii.∫ b
−∞ f(x)dx = limx→−∞∫ b
xf(x)dx
iii. No caso de integrando nao limitado, f e definida no intervalo (a, b) que e
ilimitada numa vizinhanca de a, entao:∫ b
af(x)dx = limr→a+
∫ b
rf(x)dx,
quando o limite existe.
Alem dos problemas anteriores, podemos ter integrais proprias, convergentes,porem mal comportadas. Isto ocorre quando a funcao nao tem um compor-tamento polinomial, apresenta picos ou oscilacoes frequentes. A Figura 7.1ilustra as questoes relativas a funcoes propias e impropias.
236 7. Integracao Numerica
7.3 Formulas Newtonianas
7.3.1 Consideracoes Iniciais
As formulas Newtonianas sao de aplicacao mais simples quando temos aexpressao de f ou quando obtemos uma tabela de pontos dados experimen-talmente. As formulas dadas pela interpolacao de f por polinomios de grau1, 2 ou m podem ser aplicadas no intervalo [a, b] constituindo regras simples,ou em subdivisoes [xj , xj+1] do intervalo [a, b] formando regras compostas.
As formulas Newtonianas podem ser:
Fechadas: Quando o integrando f e calculado em x0 = a e xm = b sendoque a funcao f deve ser definida nestes pontos.
Abertas: Quando o integrando nao e avaliado em ambas as extremidades dointervalo [a, b] e sim em pontos proximos, assim xm−r = a e xm+r = be 0 < r 6 m sao utilizados quando ha descontinuidade nos extremos.
Com termos de correcao: O integrando e avaliado em pontos xj fora dointervalo [a, b] para fornecer uma correcao ao valor calculado por umaregra fechada.
7.3.2 Regra dos Retangulos
Seja o intervalo finito [a, b] no eixo x, que e particionado em n subin-tervalos [xj, xj+1], j = 1, . . . , n, onde x1 = a, xn+1 = b, e hj = xj+1 − xj.Seja f uma funcao contınua, cuja integral nao e conhecida. Nosso objetivo ecalcular F (x) =
∫ b
af(x)dx pelo calculo das areas de retangulos. Este proce-
dimento e ilustrado na Figura 7.2, a qual exemplifica tres tipos de regras. NaFigura 7.2(a), a area de cada retangulo e dada por A = f(xj)hj, na Figura7.2(b) a area e dada por A = f(xj+1)hj, e por fim na Figura 7.2(c) a area edada por A = f(
xj+xj+1
2)hj. Em qualquer das escolhas, a soma das areas dos
retangulos sera uma aproximacao de∫ b
af(x)dx que denotaremos por I(f):
I(f) =
∫ b
a
f(x)dx
Considerando um intervalo de intregracao [a, b] subdividido em n subinter-valos, teremos:
I(f) ∼=n∑
j=1
Ij
Ij ∼=∫ xj+1
xj
f(x)dx, j = 1, . . . , n
7. Integracao Numerica 237
onde Ij e area do j-esimo retangulo, sendo dada por uma das tres formulasacima.
Duas regras para integracao sao:
Regra Simples: Uma formula simples para aproximacao de I(f) e utilizarapenas um retangulo, o que resulta nas expressoes abaixo dependendode como o retangulo e obtido:
I(f) ∼= f(a)(b− a)
I(f) ∼= f(b)(b− a)
I(f) ∼= f(a+ b
2)(b− a)
Regra Composta: O intervalo [a, b] e subdividido em n sub-intervalos.Pela regra dos retangulos, a integral sera indicada por R(hj) e as regrasde integracao sao:
R(hj) =n∑
j=1
f(xj)hj
R(hj) =n∑
j=1
f(xj+1)hj
R(hj) =n∑
j=1
f(xj + xj+1
2)hj
variando conforme o tipo de retangulo, onde xj+1 = xj + hj. No casoem que hj = h e uma constante, entao temos:
R(hj) = h
n∑
j=1
f(xj)
R(hj) = h
n∑
j=1
f(xj+1)
R(hj) = hn∑
j=1
f(xj + xj+1
2)
e consequentemente xj+1 = xj + h.
238 7. Integracao Numerica
7.3.3 Regra dos Trapezios
Se aproximarmos f por um polinomio f ∗(x) de grau 1 ao inves de umpolinomio de grau zero, como foi realizado na regra dos retangulos, teremos:
f ∗(x) =
[
f(a)− f(b)
a− b
]
x+af(b)− bf(a)
a− b
=f(a)x− bf(a)
a− b+
af(b)− f(b)x
a− b
= f(a)x− b
a− b+ f(b)
a− x
a− b
que pode ser colocado na forma:
f ∗(x) = f(a)x− b
a− b+ f(b)
x− a
b− a
Utilizando a aproximacao linear f ∗(x) de f(x), podemos verificar que:
∫ b
a
f(x)dx ∼=∫ b
a
f ∗(x)dx
=
∫ b
a
f(a)x− b
a− bdx+
∫ b
a
f(b)x− a
b− adx
=f(a)
a− b
b∫
a
(x− b)dx+f(b)
b− a
b∫
a
(x− a)dx
=f(a)
a− b
[
(x− b)2
2
]b
a
+f(b)
b− a
[
(x− a)2
2
]b
a
=f(a)
a− b
[
−(a− b)2
2
]
+f(b)
b− a
(b− a)2
2
=−f(a)(a− b)
2+
f(b)(b− a)
2
=−f(a)(a− b) + f(b)(b− a)
2
=b− a
2[f(a) + f(b)]
Ou seja:∫ b
a
f(x)dx ∼= b− a
2[f(a) + f(b)]
7. Integracao Numerica 239
que corresponde a regra simples do trapezio, conforme ilustracao na Figura7.3.
Se subdividirmos o intervalo [a, b] em n subintervalos e em cada umdeles aproximarmos f por uma reta teremos a regra dos trapezios composta.Indicando por T (hj) a aproximacao de I(f) pela regra composta dostrapezios, teremos:
T (hj) =n∑
j=1
Tj(hj)
=n∑
j=1
f(xj) + f(xj+1)
2hj
onde hj = xj+1−xj, j = 1, . . . , n. Se hj = h, para todo j, podemos simplificara expressao, obtendo:
T (h) = h
[
f(x1) + f(x2)
2+
f(x2) + f(x3)
2+ . . .+
f(xn) + f(xn+1)
2
]
ou ainda,
T (h) =h
2[f(x1) + 2f(x2) + 2f(x3) + . . .+ 2f(xn) + f(xn+1)]
7.3.4 Regra de Simpson
Se aproximarmos f por um polinomio f ∗ de grau 2 (uma parabola) te-remos a chamada Regra de Simpson. Porem, para interpolarmos f por umaparabola precisamos de 3 pontos para construirmos a formula da regra sim-ples. Sejam a e b dois pontos dados e ym, o ponto medio dado por ym = a+b
2.
Pelo polinomio de Lagrange temos que:
f(x) ∼= f ∗(x)
= f(a)(x− b)(x− ym)
(a− b)(a− ym)+ f(ym)
(x− a)(x− b)
(ym − a)(ym − b)+ f(b)
(x− a)(x− ym)
(b− a)(b− ym)
Podemos obter f ∗(x) atraves do polinomio de Gregory-Newton, usando asdiferencas finitas:
f ∗(x) = f(a) + (x− a)∆f(a)
h+ (x− a)(x− ym)
∆2f(a)
2h2
240 7. Integracao Numerica
onde,
∆f(a) = f(ym)− f(a)
∆2f(a) = f(b)− 2f(ym) + f(a)
Fazendo uma mudanca de variavel:
x(α) = a+ αh, α ∈ [0, 2]
dx
dα= h⇒ dx = hdα
x− a = a+ αh− a⇒ x− a = αh
De acordo com esta mudanca de variavel, temos que x(0) = a, x(1) = ym, ex(2) = b para h = b−a
2. Daı deduzimos que:
(x− a)(x− ym) = αh
[
a+ αh− (a+ a+ 2h)
2
]
= αh
[
2a+ 2αh− 2a− 2h
2
]
= αh [α− 1]h = α(α− 1)h2
Podemos entao obter a integral aproximada:
∫ b
a
f ∗(x)dx =
∫ 2
0
[
f(a) + αh∆f(a)
h+
α(α− 1)h2∆2f(a)
2h2
]
hdα
=
∫ 2
0
[
f(a) + α∆f(a) +α(α− 1)∆2f(a)
2
]
hdα
= h
[f(a)α]20 +∆f(a)
[
α2
2
]2
0
+∆2f(a)
2
[
α3
3− α2
2
]2
0
= h[2f(a) + 2(f(ym)− f(a)) +1
3(f(b)− 2f(ym) + f(a))]
Portanto∫ b
a
f ∗(x)dx =h
3[f(a) + 4f(ym) + f(b)],
onde: ym = a+b2
e h = b−a2.
A aproximacao quadratica f ∗(x) de f(x) no intervalo [a, b], com pontomedio em ym, e ilustrada na Figura 7.5.
7. Integracao Numerica 241
Regra Composta de Simpson
Seguindo a mesma tecnica de integracao da regra composta dos trapezios,mas desta fez utilizando o integrador de Simpson, obtemos a Regra Compostade Simpson:
S(hj) =n∑
j=1
Sj(h)
=n∑
j=1
hj
3[f(xj) + 4f(yj) + f(xj+1)]
onde yj =xj+xj+1
2e hj =
xj+1−xj
2, j = 1, . . . , n.
Expandindo a expressao de Simpson e assumindo que hj = h para todoj, podemos expressa-la na forma:
S(h) =h
3[f(x1) + 4f(y1) + 2f(x2) + 4f(y2) + 2f(x3) + . . .
+2f(xn) + 4f(yn) + f(xn+1)] .
7.3.5 Formula Geral das Regras Newtonianas
Podemos generalizar os procedimentos anteriores e aproximar f por umpolinomio de grau m. Lembre que na regra dos retangulos utilizamos umpolinomio interpolador de grau 0, na regra dos trapezios um polinomio degrau 1, e por ultimo um polinomio de grau 2 na regra de Simpson. Aoadotarmos um polinomio de grau m, precisamos determinar m+1 pontos nointervalo [a, b] para a aplicacao da regra simples. Seja:
• h > 0 a distancia entre os nos;
• x0 = a o no inicial;
• xk = x0 + hk, k = 0, . . . ,m, os demais nos; e
• fk = f(xk) o valor da funcao nos diferentes nos.
242 7. Integracao Numerica
Com base nestas definicoes, a formula de interpolacao de Newton nos da:
f(x) =m∑
k=0
(
uk
)
∆kf0 +Rm+1, onde
u =x− x0
h(
uk
)
=u(u− 1)(u− 2) . . . (u− k + 1)
k!
Rm+1 =h
(m+ 1)!u(u− 1) . . . (u−m)fm+1(η), x0 < η < xm
Integrando f e trocando a integral∫
com a somatoria∑
, temos:
∫ b
a
f(x)dx ∼= h
m∑
k=0
ak∆kf0 +Rm+1, onde
ak =
∫ β
α
(
uk
)
du; α =a− x0
he β =
b− x0
h
Rm+1 = hm+1
∫ β
α
(
um+ 1
)
f (m+1)(η(u))du
7.3.6 Exemplo 1
Tomemos como tarefa o calculo de∫ 1
0e−x2
dx, com n = 4 e n = 8 atravesda Regra dos Trapezios.
Caso i, n = 4: Nesta situacao os parametros e nos sao como segue:
h =b− a
4= 0.25
x1 = 0
x2 = 0.25
x3 = 0.5
x4 = 0.75
x5 = 1.0
Usando a expressao:
T (h) =h
2[f(x1) + 2f(x2) + 2f(x3) + . . .+ 2f(xn) + f(xn+1)]
7. Integracao Numerica 243
e substituindo os valores acima, obtemos:
T (h) = 0.125[1 + 2× 0.9394130632 + 2× 0.778800783
+2× 0.589788 + 0.367879441]
= 0.742984098
Caso ii, n = 8: Nesta situacao os parametros e nos sao como segue:
h = 0.125
x1 = 0
x2 = 0.125
x3 = 0.25
x4 = 0.375
x5 = 0.5
x6 = 0.625
x7 = 0.75
x8 = 0.875
x9 = 1.0
Usando a expressao:
T (h) =h
2[f(x1) + 2f(x2) + 2f(x3) + . . .+ 2f(xn) + f(xn+1)]
obtemos:
T (0.125) =0.125
2[f(x1) + 2f(x2) + 2f(x3) + . . .+ 2f(x8) + f(x9)]
= 0.745865615
Comparando os dois resultados, vimos que podemos confiar em doisdıgitos de cada resultado, entao:
∫ 1
0
e−x2 ∼= 0.74
7.3.7 Exemplo 2
Calcular f(x) sendo f a funcao tabelada a seguir, usando a regra deSimpson:
xj 1.9 2.0 2.1 2.2 2.3fj 3.41773 3.76220 4.14431 4.56791 5.03722
244 7. Integracao Numerica
Usando a regra de Simpson, temos:
∫ b
a
f(x)dx =h
3[f(x1) + 4f(x2) + 2f(x3) + 4f(x2) + . . .+ 4f(xn) + f(xn+1)]
h = 0.1
n = 4
Substituindo os valores acima, obtemos:
S(f) =0.1
3[3.41773 + 4× 3.76220 + 2× 4.14431 + 4× 4.56791 + 5.03722]
= 1.68880
7.3.8 Exemplo 3
Calcular∫ 2
1x ln xdx, usando a regra de Simpson, para n = 1 e n = 2.
Caso i, n = 1: Nesta situacao, os parametros sao conforme segue:
h =1
2
S(1) =h
3[f(1) + 4f(1.5) + f(2)]
=1
6[0 + 2.432790649 + 1.386294361]
= 0.636514163
Caso ii, n = 2: Nesta situacao, os parametros sao conforme segue:
h =1
4
S(0.25) =h
3[f(1) + 4f(1.25) + 2f(1.5) + 4f(1.75) + f(2)]
=0.25
3[0 + 1.115717756 + 1.216395324 + 3.917310515 + 1.386294361]
= 0.636309829
7.4 Estimativas de Erros
Para transformar a expressao abaixo numa igualdade:
∫ b
a
f(x)dx ∼=n+1∑
j=1
wjf(xj)
7. Integracao Numerica 245
consideraremos o erro que estamos cometendo. Embora o erro nao possaser calculado exatamente, em muitos casos ele pode ser estimado com boaprecisao. O processo de integracao numerica constitui um problema bem con-dicionado em princıpio. E claro que, ao aproximarmos f por um polinomiof ∗, estamos cometendo um erro mas se observarmos a Figura 7.6 veremosque a soma dos erros se anula a medida que n aumenta.
Adotaremos a notacao abaixo para erros:
• ETTS indicara o erro de truncamento da regra dos trapezios simples; e
• ETTC indicara o erro de truncamento da regra dos trapezios composta.
7.4.1 Erro de Truncamento na Regra dos TrapeziosSimples
Levando os erros em consideracao, a integral pode ser colocada na forma:
∫ b
a
f(x)dx =(b− a)
2[f(a) + f(b)] + ETTS
Teorema 7.1 Se f(x) e duas vezes diferenciavel em [a, b], entao o erro detruncamento ETTS e dado por:
ETTS = −h3
12f ′′(ξ), onde ξ ∈ [a, b]
Exemplo de Aplicacao
Calcular a integral I =∫ 2
1e−x
xdx pela regra dos trapezios simples.
I = T (1)
=1
2[f(1) + f(2)]
= 0.5(3.678794412× 10−1 + 6.76676416× 10−2)
= 0.5(4.355470828× 10−1)
= 2.1777735414× 10−1
O valor exato para 12 casas decimais e 2.170483423687x10−1 e, portanto, oerro absoluto e:
|2.1777735414× 10−1 − 2.170483423687× 10−1| = 4.729× 10−2
246 7. Integracao Numerica
Comparando o erro absoluto com o erro indicado pelo Teorema 7.1, precisa-mos inicialmente calcular as derivadas:
f ′(x) = −e−x
x2− e−x
x
= −(
1
x+
1
x2
)
e−x
f ′′(x) =e−x
x+
e−x
x2+ 2
e−x
x3+
e−x
x2
=
(
1
x+
2
x2+
2
x3
)
e−x
Fazendo ξ = 1, ξ ∈ [1, 2] temos que:
f ′′(ξ) = 5e−1 = 1.839
logo, o erro de truncamento previsto pelo teorema e |1312.f ′′(ξ)| = 0.15325.
Portanto, confirma-se que o erro absoluto e menor que o previsto.
7.4.2 Erro de Truncamento na Regra dos TrapeziosComposta
Teorema 7.2 Se f e duas vezes continuamente diferenciavel em [a, b], entaoo erro de truncamento da formula composta dos trapezios, para n subinter-valos, e dado por:
ETTC = −h2
12(b− a)f ′′(ξ), ξ ∈ [a, b]
Prova. Seja agora h = b−an
e n = b−ah. Para cada subintervalo [xi−1, xi],
i = 1, 2, . . . , n, temos:
∫ xi
xi−1
f(x)dx =h
2[f(xi) + f(xi−1)] + ETT i, onde
ETT i = −h3
12f ′′(ξi), ξi ∈ [xi−1, xi]
Uma vez que:
∫ b
a
f(x)dx =
∫ x2
x1
f(x)dx+
∫ x3
x2
f(x)dx+ . . .+
∫ xn
xn−1
f(x)dx
7. Integracao Numerica 247
e pela regra composta, temos que:
∫ b
a
f(x)dx =h
2[f(x0) + 2f(x1) + . . .+ 2f(xn−1) + f(xn)] +
n∑
i=1
ETT i
mas,
n∑
i=1
ETT i =n∑
i=1
−h3
12f ′′(ξi), ξi ∈ [xi−1, xi]
= −h3
12
n∑
i=1
f ′′(ξi)
= −(b− a)3
12n3
n∑
i=1
f ′′(ξi)
Como f ′′(x) e contınua, f ′′(x) assume todos os valores entre seus maximos emınimos em [a, b]. Portanto, existe algum ξ ∈ [a, b] tal que:
f ′′(ξ) =
n∑
i=1
f ′′(ξi)
n
Logo,
ETTC = −(b− a)3
12n3nf ′′(ξ)
= −(b− a)3
12n2f ′′(ξ)
= −h2
12(b− a)f ′′(ξ)
Exemplo de Aplicacao
Considerando o exemplo anterior, vamos calcular∫ 2
1e−x
xdx, com n =
2, 4, . . . , 256. Os resultados destes calculos, juntamente com o erro absolutoe os limites de erro calculados sao listados na tabela abaixo.
248 7. Integracao Numerica
Valor Erro Limite deh n calculado absoluto erros1 1 0.2177735413 4.729× 10−2 1.53× 10−1
5.0× 10−1 2 0.1832634907 1.280× 10−2 3.83× 10−2
2.5× 10−1 4 0.1737575538 3.270× 10−3 9.58× 10−3
1.25× 10−1 8 0.1715074075 8.240× 10−4 2.40× 10−3
6.25× 10−2 16 0.1706897700 2.060× 10−4 5.60× 10−4
...3.906× 10−3 256 0.1704847700 8.070× 10−7 2.34× 10−6
Podemos observar que cada vez que o numero de intervalos n e dobrado,o erro absoluto e reduzido por um fator de aproximadamente 4, o que estade acordo com o resultado do teorema.
7.4.3 Estimacao Numerica do Erro de Truncamento daRegra dos Trapezios
O que fazer quando f ′′(x) nao estiver disponıvel? Duas possibilidadessao:
i. Calcular f ′′(x) numericamente
ii. Calcular T (h) e T (h2) e comparar os resultados
No caso (i), a segunda derivada f ′′(x) e calculada numericamente pelaserie de Taylor se f e suficientemente diferenciavel:
f ′′(x) =f(x+ h)− 2f(x) + f(x− h)
h2+O(h2)
Logo, um limite de |f ′′(x)| pode ser calculado por:
max16j6n
f(xj+1)− 2f(xj) + f(xj−1)
h2
O limite acima pode ser util no caso da integracao para pontos tabeladosigualmente espacados de h.
No caso (ii), podemos utilizar o Teorema 7.2:
I − T (h) = −(b− a)
12h2f ′′(ξ1), ξ1 ∈ [a, b]
I − T (h
2) = −(b− a)
12
h2
4f ′′(ξ2), ξ2 ∈ [a, b]
7. Integracao Numerica 249
Assumindo que f ′′(ξ1) = f ′′(ξ2), temos que:
4[I − T (h
2)] ∼= I − T (h)
4I − 4T (h
2) ∼= I − T (h)
3I − 3T (h
2) ∼= T (
h
2)− T (h)
I − T (h
2) ∼=
T (h2)− T (h)
3
Chegamos a conclusao de que o erro de truncamento, ao calcularmos T (h2)
e, aproximadamente, a terca parte entre as duas aproximacoes T (h2) e T (h).
Este metodo e particularmente vantajoso, pois, ao calcularmos T (h2) podemos
reutilizar os valores de f usados para calcular T (h). Ou seja,
T (h) = h
[
f(a)
2+ f(a+ h) + f(a+ 2h) + . . .+ f(a+ (n− 1)h) +
f(b)
2
]
T (h
2) =
h
2
[
1
2f(a) + f(a+
h
2) + f(a+ h) + f(a+
3h
2) + f(a+ 2h)
+ . . .+ f(a+ (n− 1)h) + f(a+ (n− 1
2)h) +
f(b)
2
]
Portanto,
T (h
2) =
1
2T (h) +
h
2
n∑
j=1
f(a+ (j − 1
2)h)
logo o numero de avaliacoes e reduzido pela metade.
7.5 Quadratura Gaussiana
Os metodos de integracao numerica apresentados acima (a saber, regrados retangulos, dos trapezios e de Simpson) tomam como base uma regrasimples para escolha dos pontos de avaliacao da funcao f(x), onde xj+1 =xj + h. Esses metodos sao particularmente adequados para dados tabuladosde forma regular, tais como medidas de laboratorio e valores obtidos deprogramas de computador que produzem tabelas.
Se, por outro lado, tivermos a liberdade de escolher os pontos nos quais afuncao f(x) e avaliada, entao uma escolha cuidadosa pode levar a uma maiorprecisao da avaliacao da funcao. Este metodo, conhecido por Integracao
250 7. Integracao Numerica
Gaussiana ou Integracao de Gauss-Legendre, apresenta outras vantagens emvarias situacoes. Na avaliacao da integral:
∫ b
a
f(x)dx (7.2)
nao e necessario avaliar a funcao nos pontos extremos do intervalo, a e b. Estapropriedade e util quando se avalia integrais improprias, tais como aquelascom limites infinitos.
Para efeitos de simplificacao, fazemos uma mudanca de variavel com
x = a+b− a
2(t+ 1)
o que implica:
dx =b− a
2dt
Alem disso, para x = a temos t = −1 e para x = b temos t = 1. Por meioda mudanca de variavel e normalizacao do intervalo de integracao, podemosrepresentar (7.2) por:
(b− a)
2
∫ +1
−1
F (t)dt (7.3)
onde:
F (t) = f(a+b− a
2(t+ 1)) (7.4)
Logo, daqui em diante, vamos considerar apenas o problema normalizado:∫ +1
−1
F (t)dt (7.5)
A forma mais simples de integracao Guassiana se alicerca na escolhade um polinomio aproximador otimo do integrando F (t) sobre o intervalo[−1,+1]. Os detalhes da determinacao desse polinomio, ou seja, a deter-minacao dos coeficientes de t no polinomio, serao abordados mais a frente.Faremos uma aproximacao de (7.5) por valores da funcao e ponderacoes paravalores de t ∈ [−1,+1], conforme a expressao:
∫ +1
−1
F (t)dt =n∑
j=1
ωjF (tj) + E(G)n , n > 1 (7.6)
onde ωj e tj sao escolhidos de maneira que a regra seja exata para polinomiosde grau 2n − 1. Regras desta natureza sao ditas Gaussianas e os pontos tjnao sao necessariamente igualmente espacados. No que segue discutimos ocalculo das ponderacoes ωj e dos pontos de avaliacao tj.
7. Integracao Numerica 251
7.5.1 Regra de Gauss de Primeira Ordem
Nesta situacao, n = 1 e aproximaremos (7.5) de forma exata com umpolinomio de grau p = 2n− 1 = 1, o que leva a expressao:
∫ +1
−1
F (t)dt = ω1F (t1) + E(G)1 (7.7)
Vamos encontrar os valores para situacoes onde F (t) = tk para k ∈ 0, 1.Para k = 0:
∫ +1
−1
F (t)dt =
∫ +1
−1
1dt = [t]+1−1 = 2
O que leva a:ω1F (t1) = 2 ⇔ ω1t
01 ⇔ ω1 = 2
Para k = 1:∫ +1
−1
F (t)dt =
∫ +1
−1
tdt = [t2
2]+1−1 = 0
Daı segue que:
ω1F (t1) = 0 ⇔ ω1t11 = 0 ⇔ t1 = 0
Dos desenvolvimentos acima, concluımos que:
∫ +1
−1
F (t)dt = 2F (0) + E(G)1 (7.8)
7.5.2 Regra de Gauss de Segunda Ordem
Nesta situacao, n = 2 e aproximaremos (7.5) com a expressao:
∫ +1
−1
F (t)dt = ω1F (t1) + ω2F (t2) + E(G)2 (7.9)
Agora, ω1, ω2, t1 e t2 devem ser escolhidos de forma que (7.9) seja exata parapolinomios de grau ate p = 2n − 1 = 3. Vamos encontrar os valores parasituacoes onde F (t) = tk para k ∈ 0, 1, 2, 3.Para k = 0:
∫ +1
−1
F (t)dt =
∫ +1
−1
t0dt =
∫ +1
−1
dt = 2
= ω1F (t1) + ω2F (t2) = ω1t01 + ω2t
02 = ω1 + ω2(7.10)
252 7. Integracao Numerica
Para k = 1:
∫ +1
−1
F (t)dt =
∫ +1
−1
t1dt = [t2
2]+1−1 = 0
= ω1F (t1) + ω2F (t2) = ω1t11 + ω2t
12 = ω1t1 + ω2t2(7.11)
Para k = 2:
∫ +1
−1
F (t)dt =
∫ +1
−1
t2dt = [t3
3]+1−1 =
2
3= ω1t
21 + ω2t
22 (7.12)
Para k = 3:
∫ +1
−1
F (t)dt =
∫ +1
−1
t3dt = [t4
4]+1−1 = 0 = ω1t
31 + ω2t
32 (7.13)
A partir das equacoes (7.10)–(7.13) chegamos a um sitema de equacoes nao-lineares:
ω1 + ω2 = 2 (7.14)
ω1t1 + ω2t2 = 0 (7.15)
ω1t21 + ω2t
22 =
2
3(7.16)
ω1t31 + ω2t
32 = 0 (7.17)
Podemos resolver (7.14)–(7.17) fazendo, primeiramente, ω1 = ω2 = 1, o queresolve (7.14). Daı, obtemos a partir de (7.15) que t1 = −t2. Substiuindoestes resultados em (7.16), deduzimos que t21 + t22 = 2t22 = 2/3⇒ t2 = 1/
√3
e, por sua vez, descobrimos que t1 = −1/√3. Observe ainda que os valores
obtidos para os parametros satisfazem a equacao (7.17). Com base nestesdesenvolvimentos, concluımos que:
∫ +1
−1
F (t)dt = ω1F (t1) + ω2F (t2) + E(G)2
= F (− 1√3) + F (+
1√3) + E
(G)2 (7.18)
7.5.3 Exemplo de Aplicacao
Como exemplo, vamos calcular of valor da integral definida∫ 6
2x3
3dx por
meio da quadratura Gaussiana de segunda ordem.
7. Integracao Numerica 253
Etapa 1: A primeira etapa corresponde a mudanca de variavel. Com a = 2,b = 6 e f(x) = x3/3, obtemos:
x = a+(b− a)
2(t+ 1)
= 2 +(6− 2)
2(t+ 1)
= 4 + 2t
⇒ dx = 2dt
F (t) = f(a+b− a
2(t+ 1))
= f(4 + 2t)
Chegamos assim a equivalencia:
∫ 6
2
x3
3dx =
∫ b
a
f(x)dx =b− a
2
∫ +1
−1
F (t)dt = 2
∫ +1
−1
(2t+ 4)3
3dt
Etapa 2: Com n = 2, temos∫ +1
−1F (t)dt ≈ F (− 1√
3) + F (+ 1√
3). Calculando
estes valores, obtemos:
F (− 1√3) =
(−2/√3 + 4)3
3= 7.678358
F (+1√3) =
(2/√3 + 4)3
3= 45.655075
Entao, calculamos que:
∫ 6
2
x3
3dx = 2
∫ +1
−1
(2t+ 4)3
3dt = 2× (7.678358 + 45.655075)
= 2× 53.333333
= 106.666666
Analiticamente,
∫ 6
2
x3
3dx =
[
x4
4× 3
]6
2
=64 − 24
12= 106.666666
verificando o erro nulo para o caso de um polinomio de grau 3.
254 7. Integracao Numerica
Tabela 7.1: Ponderacoes e pontos de amostragem para quadratura Gaussianan ωj tj1 ω1 = 2 t1 = 0
2 ω1 = ω2 = 1 t1 = −1/√3 e t2 = 1/
√3
3 ω1 = ω2 = 5/9 t1 = −√0.6 e t2 =
√0.6
ω3 = 8/9 t3 = 04 ω1 = ω4 = 0.3478548451 t1 = −0.8611363116 e t4 = −t1
ω2 = ω3 = 0.6521451549 t2 = −0.3399810436 e t3 = −t2
7.5.4 Quadratura de Ordem Superior
Atraves de desenvolvimento semelhante ao apresentado acima, e possıvelencontrar as ponderacoes ωj e os pontos de avaliacao tj para a integracaoGaussiana de ordem 3, 4, e maior. Abaixo apresentamos na Tabela 7.5.4 osvalores ja calculados destes parametros para quadratura de ordem ate 4.
Com relacao aos erros cometidos pela regra da quadratura Gaussiana, es-timativas dos erros podem ser estabelecidas conforme a ordem da quadratura.Para n = 2,
E(G)2 =
1
135F (iv)(β), para β ∈ [−1,+1]
Portanto,
|E(G)2 | 6
1
135max|F (iv)(β)| : β ∈ [−1,+1]
Para o caso de f(x) corresponder a um polinomio de grau igual ou inferior a3, o erro produzido pela quadratura e nulo.
7.6 Referencias
O conteudo deste capıtulo foi inspirado nos textos de Claudio e Marins[1] e de Dyer e Ip [3].
7.7 Exercıcios
Exercıcio 7.1 Calcule∫ 2
1exdx usando i) a regra dos retangulos simples e ii)
a regra dos trapezios simples.
Exercıcio 7.2 Considere a Tabela 7.2 com pontos de uma funcao desconhe-cida f(x), mas contınua. Tarefas:
7. Integracao Numerica 255
a) Calcule∫ 4
0f(x)dx usando a Regra de Simpson
b) Calcule∫ 4
0f(x)dx usando a Regra dos Trapezios
c) Calcule∫ 4
0f(x)dx usando a Regra dos Retangulos com altura dada pela
media dos valores da funcao nos extremos de cada subintervalo.
Tabela 7.2: Pontos da funcao f(x)
x 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0f(x) -4271 -2522 499 1795 4358 7187 10279 13633 17217
Exercıcio 7.3 Seja f(x) uma funcao duas vezes diferenciavel no intervalo[a, b]. Entao o erro de truncamento produzido pela regra dos trapezios sim-
ples, ETTS, obtido ao se calcular∫ b
af(x)dx e dado por
ETTS = −h3
12f ′′(ξ), onde ξ ∈ [a, b].
Calcule o erro maximo de ETTS gerado ao aplicarmos a regra dos trapeziospara calcular
∫ 2
1e−x
x2 dx.
Exercıcio 7.4 Calcule o erro maximo de ETTS gerado ao aplicarmos a regrados trapezios simples para calcular
∫ π
π/2[2x4−3x3+2x2−x+1−sin(x−π/2)]dx.
Exercıcio 7.5 Desejamos calcular∫ 4
−4f(x)dx da forma mais precisa
possıvel. Nao conhecemos a funcao f(x), mas sabemos os valores de f emalguns pontos, conforme Tabela 7.3. Sabendo que f(x) e um polinomio degrau 6, como que voce calcularia a integral? Basta explicar com clareza comoque voce resolveria o problema. Nao e necessario calcular o valor da integral.
Tabela 7.3: Pontos da funcao f(x)
x -3 -2 -1 0 1 2 3f(x) 1339 171 7 1 3 79 751
Exercıcio 7.6 Calcule aproximacoes para as integrais I1 e I2 por meio dosmetodos:
256 7. Integracao Numerica
i. regra dos retangulos simples (extremo a esquerda);
ii. regra dos retangulos composta (extremo a esquerda), com n = 10;
iii. regra dos trapezios simples;
iv. regra dos trapezios composta, com n = 10;
v. regra de Simpson simples;
vi. regra de Simpson composta, com n = 10;
vii. quadratura Gaussiana de 2a ordem; e
viii. quadratura Gaussiana de 3a ordem.
I1 =
∫ 3
0
(3x3 + 2x2 + 2x− 2)dx
I2 =
∫ 5
0
e−x2
x+ 1dx
Outras tarefas:
i. calcule o valor analıtico de I1;
ii. calcule o erro absoluto das aproximacoes calculadas acima para I1, itens(a)-(h) acima;
iii. calcule o erro maximo cometido com a regra dos trapezios simples combase nos resultados teoricos, assumindo que nao se conhece o valorexato de I1; e
iv. calcule o erro maximo cometido com a regra dos trapezios compostacom base nos resultados teoricos, assumindo que nao se conhece o valorexato de I1.
7. Integracao Numerica 257
(a) (b)
(c) (d)
xx
xx
y
yy
y
f(x)
f(x)
f(x)f(x)
aa
aa
bb
bb
Integral propriaIntegral propria
Integral impropriaIntegral impropria- Intervalo de integracao limitado
- Bem comportada- Integrando suave, polinomial
- Mal comportada
- Integrando pode ser limitado- Integrando nao limitado ou ilimitado
- Integrando nao suave, comvariacoes bruscas
Figura 7.1: Comportamento de integrais
258 7. Integracao Numerica
x1x1x1 x2x2x2 x3x3x3 x4x4x4
(a) (b) (c)
Figura 7.2: Regras dos retangulos
A
f(x)f ∗(x)
a b
Figura 7.3: Regra simples do trapezio
x1 = a x2 x3 x4 x5 x6 = b
Figura 7.4: Regra composta do trapezio
7. Integracao Numerica 259
a bym
f(x)
f ∗(x)
Figura 7.5: Regra de Simpsom
a b
f(x)
f ∗(x)
x
y
Figura 7.6: Cancelamento de erros
Capıtulo 8
Resolucao Numerica deEquacoes DiferenciaisOrdinarias
Fenomenos fısicos frequentemente envolvem relacoes entre uma variavelindependente x e uma variavel dependente y, que nao sao faceis ou mesmopossıveis de serem descritas como uma funcao da variavel independente: y =f(x). Por outro lado, podemos muitas vezes estabelecer a relacao entre y ex atraves de seus valores e as derivadas da funcao desconhecida dy/dx. Emcircuitos eletricos, por exemplo, desejamos encontrar a voltagem como umafuncao do tempo, v(t), que pode ser escrita como uma relacao das derivadasde v no tempo e as propriedades do circuito. Uma relacao expressa comouma funcao da variavel independente x, da variavel dependente y e suasderivadas y′(x), y′′(x), . . . e dita equacao diferencial. Uma relacao que envolvederivadas ate ordem n e dita equacao diferencial ordinaria (EDO), podendoser colocada na forma matematica:
f(x, y(x), y′(x), . . . , y(n)(x)) = 0
Neste capıtulo faremos uma breve introducao a modelagem de fenomenosfısicos atraves de equacoes diferenciais, desenvolveremos ainda metodos paraencontrar solucoes numericas para equacoes e sistemas de equacoes diferen-ciais ordinarias. No caso da variavel independente ser o tempo t, o sistemade equacoes diferenciais ordinarias toma a forma:
x1 = f1(x1, . . . , xn)
x2 = f2(x1, . . . , xn)...
...
xn = fn(x1, . . . , xn)
262 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
Mais especificamente, estaremos interessados no problema de encontrar atrajetoria x(t), t ∈ [0, T ], a partir de um estado inicial x(0) ∈ R
n ondex(t) = (x1(t), . . . , xn(t)).
8.1 Modelagem com Equacoes Diferenciais
Objetivando ilustrar a modelagem com equacoes diferencias, desenvolve-remos a seguir modelos de sistemas dinamicos.
8.1.1 Circuito RC
O circuito RC e composto de uma fonte de tensao, vi(t), em serie com umresistor R e um capacitor C, conforme ilustracao da Figura 8.1. Da Fısica,sabemos que a corrente no capacitor e proporcional a taxa de variacao datensao atraves do capacitor, matematicamente:
i(t) = Cdvc(t)
dt, (8.1)
sendo a capacitancia C a constante de proporcionalidade. Pela lei de Kirchoff,a soma das quedas dos potenciais ao longo da malha deve ser nulo, o queleva a expressao:
vi(t)−Ri(t)− vc(t) = 0 (8.2)
Substituindo i(t) em (8.2) pela relacao (8.1), surge uma equacao diferencialde primeira ordem:
vi(t)−RCdvc(t)
dt− vc(t) = 0 =⇒ dvc(t)
dt= − 1
RCvc(t) +
1
RCvi(t) (8.3)
Considere o caso simples onde vi(t) = 0 para todo t e vc(0) = voc , corres-pondendo a situacao de descarga do capacitor. Entao, a solucao analıtica de(8.3) pode ser obtida:
dvc(t)
dt= − 1
RCvc(t) ⇔
dvc(t)
vc(t)= − dt
RC
⇔∫ T
t=0
dvc(t)
vc(t)=
∫ T
t=0
− dt
RC
⇔ ln vc(t) = −t
RC+ k (8.4)
onde k e uma constante. Portanto, a partir de (8.4), deduzimos que a tensaono capacitor decresce exponencialmente na taxa inversa de RC:
vc(t) = e−t
RC+k = eke−
tRC = voce
− tRC (8.5)
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 263
+
+
+
−−
−
vi(t)
R
C vc(t)i(t)
Figura 8.1: Circuito RC
Para um circuito RC onde R = 2 Ω, C = 0.1 F e vc(0) = 2 V , a curva detensao no capacitor em funcao do tempo pode ser observada na Figura 8.2.Esta curva caracteriza a descarga da energia do capacitor que, por sua vez,e dissipada pelo resistor.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Tempo (s)
Vc
(V)
Figura 8.2: Curva de descarga do capacitor em um circuito RC
8.1.2 Circuito RLC
O circuito RLC consiste de uma fonte de tensao vi(t) em serie com umresistor R, um indutor L e um capacitor C, de acordo com o diagrama daFigura 8.3. A lei de Kirchoff nos diz que a soma das quedas dos potenciaisao longo da malha deve ser nulo, portanto:
vi(t)−Ri(t)− Ldi(t)
dt− vc(t) = 0 (8.6)
Lembramos que a queda de tensao no indutor e proporcional a taxa de va-riacao da corrente, sendo L a constante de proporcionalidade. Uma vez que a
264 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
corrente atraves do capacitor e proporcional a taxa de variacao da queda detensao no capacitor, obtemos juntamente com (8.6), o sistema de equacoesdiferenciais de 1a ordem:
vi(t) = Ri(t) + Ldi(t)
dt+ vc(t) (8.7)
i(t) = Cdvc(t)
dt(8.8)
que, por sua vez, pode ser colocado na forma matricial:
[
di(t)/dtdvc(t)/dt
]
=
[
−R/L −1/L1/C 0
] [
i(t)vc(t)
]
+
[
1/L0
]
vi(t) (8.9)
Alternativamente, o sistema de primeira ordem (8.9) pode ser colocado comouma equacao diferencial de segunda ordem, bastando para isto substituir(8.8) em (8.7):
vi(t) = LCd2vc(t)
dt2+RC
dvc(t)
dt+ vc(t) (8.10)
Aqui ilustramos como se transforma uma EDO de ordem n em um sistemaEDO de primeira ordem com n equacoes. Definindo x como variavel deestado:
x(t) =
[
x1(t)x2(t)
]
=
[
vc(t)dvc(t)/dt
]
e estabelecendo u(t) como a entrada e y(t) como a saıda, teremos:
u(t) = vi(t), y(t) = vc(t)
Note que a entrada e a tensao vi(t), enquanto a saıda (o que e observado) ea queda de tensao no capacitor. Agora podemos expressar a EDO (8.10) de2a ordem em um sistema EDO de 1a ordem:
[
x1(t)x2(t)
]
=
[
0 1−1/LC −R/L
] [
x1(t)x2(t)
]
+
[
01/LC
]
u(t) (8.11)
y(t) =[
1 0]
[
x1(t)x2(t)
]
(8.12)
As equacoes diferenciais do circuito RLC, conforme (8.11)–(8.12), fazemparte dos sistemas de equacoes diferenciais lineares:
x = Ax+ Bu (8.13)
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 265
++
+
+−
−
−
−
vi(t)
R L
C vc(t)i(t)
Figura 8.3: Circuito RLC
para A ∈ Rn×n, x ∈ R
n, B ∈ Rn×m e u ∈ R
m. Supondo que u e uma funcaode x como, por exemplo, u = −Kx onde K e a matriz de ganhos, podemosassumir que (8.13) e da forma:
x = Ax (8.14)
Uma solucao analıtica para (8.14) pode ser obtida. Quando este sistemase reduz a uma equacao, x = ax, a solucao e trivial, assumindo a formax(t) = eat. O caso geral nao e muito diferente do caso particular, para tanto,definimos a funcao exponencial de matriz como:
eAt = I + At+1
2!A2t2 +
1
3!A3t3 + . . . =
∞∑
k=0
(At)k
k!(8.15)
Entao, x(t) = eAtx0 e a solucao de (8.14) com x(0) = x0. Basta verificar que:
d
dt
[
eAt]
x0 =d
dt
[
I + At+1
2!A2t2 +
1
3!A3t3 + . . .
]
x0
=
[
0 + A+ A2t+1
2!A3t2 +
1
3!A4t3 + . . .
]
x0
= A
[
I + At+1
2!A2t2 +
1
3!A3t3 + . . .
]
x0
= AeAtx0 (8.16)
Uma propriedade fundamental de sistemas dinamicos sob a acao de con-troladores e a estabilidade, que pode ser entendida como a convergencia doestado x(t) para um ponto de equilıbrio x∗. De maneira simplificada, dizemosque o sistema (8.14) e estavel se:
limt→∞
x(t) = x∗
266 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
Sob quais condicoes o sistema caracterizado pela equacao x = ax e estavel?E facil de verificar que a estabilidade e garantida a partir de qualquer pontoinicial x0 = x(0) quando a < 0, o que equivale a dizer que lim
t→∞eatx0 = 0.
O que podemos dizer sobre a convergencia de um sistema multivariavelcaracterizado pelo sistema EDO x = Ax? Convergencia pode ser garantidaquando eAt, em outras palavras, quando a serie I+At+A2t2/2!+A3t3/3!+. . .e convergente, o que ocorre quando todos os autovalores de A tem parte realnegativa.
A Figura 8.4 ilustra a resposta do circuito RLC para uma entrada nula,u(t) = 0, com R = 2 Ω, C = 0.1 F , L = 0.4 H, vc(0) = 2 V e vc(0) = 10 V/s.Sao dadas as curvas vc(t) e vc(t) para t ∈ [0, 4] s. Observe que o circuitoRLC e convergente para a origem a partir do ponto inicial dado. Na verdade,o circuito e estavel como pode ser verificado calculando os autovalores de A,a saber −2∓ 4j, os quais tem parte real negativa garantindo convergencia apartir de qualquer estado inicial.
0 0.5 1 1.5 2 2.5 3 3.5 4−1
0
1
2
3
Tempo (s)
Vc
(V)
0 0.5 1 1.5 2 2.5 3 3.5 4−10
−5
0
5
10
Tempo (s)
dVc/
dt (
V/s
)
Figura 8.4: Resposta do circuito RLC a entrada u(t) = 0.
8.1.3 Supensao de Automovel (Simplificada)
A suspensao de uma roda de veıculo automator pode ser representada,de forma simplificada, pela massa M (Kg) suportada pela roda, um con-junto de molas representado pela mola ideal com constante K (N/m) e umamortecedor representado pelo sistema de absorcao B (Ns/m). A Figura 8.5apresenta os diversos componentes do sistema de suspensao. Conforme eixoscoordenados, o sistema esta em repouso na posicao y = 0 e velocidade y = 0.
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 267
O sistema de suspensao e submetido a uma forca externa f(t) dependente doterreno e da carga do veıculo. As forcas e respectivas direcoes de referenciaestao indicadas na figura. De acordo com a lei de Newton, a soma das forcas
que atuam no sistema deve igualar a massa vezes a aceleracao,n∑
i=1
Fi = Ma,
ou seja, f − FM − FK − FB = Md2y(t)/dt2. Formalmente:
f(t)−Mg −Ky(t)−Bdy(t)
dt= M
d2y(t)
dt2(8.17)
d2y(t)
dt2+
B
M
dy(t)
dt+
K
My(t) = −g + 1
Mf(t) (8.18)
Da mesma forma que no circuito RLC, vamos definir o estado do sistemacomo x(t), sendo este dado por:
[
x1(t)x2(t)
]
=
[
y(t)dy(t)/dt
]
(8.19)
Procedendo a mudanca de variavel, substituımos x(t) no lugar de y(t) edy(t)/dt em (8.17)–(8.18), obtendo:
[
x1(t)x2(t)
]
=
[
y(t)dy(t)/dt
]
⇔[
x1(t)x2(t)
]
=
[
y(t)y(t)
]
(8.20)
que nos leva a:
[
x1(t)x2(t)
]
=
[
x2(t)
− BM
dy(t)dt− K
My(t)− g + 1
Mf(t)
]
=
[
x2(t)− B
Mx2(t)− K
Mx1(t)− g + 1
Mf(t)
]
(8.21)
Separando as influencias do estado e externas, o sistema (8.21) assume aforma:
[
x1
x2
]
=
[
0 1−K/M −B/M
] [
x1
x2
]
+
[
01/M
]
u+
[
0−1
]
g(8.22)
y =[
1 0]
[
x1
x2
]
(8.23)
onde u = f(t) e a entrada (forca externa), x(t) e o estado e y = x1(t) e asaıda (posicao).
268 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
x
yf
FBFK
FM
B K
M
Figura 8.5: Suspensao de automovel simplificada
8.1.4 Sistema de Massas Acopladas
O sistema de duas massas acopladas pode ser visto na Figura 8.6. As-sumimos que a forca exercida pela “mola” e nula quando os blocos estaoseparados de uma distancia ∆y, FK = 0, enquanto a forca exercida pelo“amortecedor” e nula se a variacao de velocidade da massa M1 em relacao aM2 e nula, FB = 0. Aplicando a 2a lei de Newton, a soma das forcas aplicadasem cada massa iguala a massa vezes a aceleracao, em notacao matematica,isto equivale a dizer que:
M1y1(t) = FK + FB
= K [y2(t)− y1(t)−∆y] + B [y2(t)− y1(t)] (8.24)
M2y2(t) = f(t)− FK − FB
= f(t)−K [y2(t)− y1(t)−∆y]−B [y2(t)− y1(t)] (8.25)
Deixando o vetor x(t) definir as variaveis de estado como:
x1(t)x2(t)x3(t)x4(t)
=
y1(t)y1(t)y2(t)y2(t)
podemos representar o sistema EDO de segunda ordem (8.24)–(8.25) comoum sistema EDO de primeira ordem, x = Ax + Bu, com variavel de estado
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 269
dada pelo vetor x, como segue:
x1(t)x2(t)x3(t)x4(t)
=
0 1 0 0− K
M1− B
M1
KM1
BM1
0 0 0 1KM2
BM2
− KM2− B
M2
x1(t)x2(t)x3(t)x4(t)
+
0
−K∆y
M1
0K∆y
M2
+
0001
M2
u
(8.26)com u(t) = f(t).
y1
y2
M1 M2 f(t)
K
B
FK
FB
Figura 8.6: Sistema de duas massas acopladas
8.1.5 Motor de Corrente Contınua
Um modelo simplificado do motor de corrente contınua controlado pelaarmadura aparece na Figura 8.7. Neste esquema, va(t) e a tensao aplicadaa armadura, que esta em serie com o resistor Ra, o indutor La da armadurae a tensao vb(t) induzida pela corrente ia(t). A corrente da armadura geraum torque T (t) = kmia(t) proporcional a magnitude da corrente. O torquegerado movimenta a carga e o movimento rotacional produz a tensao vb(t)(forca eletromotriz). O sistema ilustra a conversao de energia eletrica emenergia mecanica. Sendo J o coeficiente de inercia da carga e D o coeficienteviscoso da mesma, temos pela 2a lei de Newton que:
T (t) = kmia(t)
= Jd2Θ(t)
dt2+D
dΘ(t)
dt(8.27)
vb(t) = kbw(t)
= kbdΘ(t)
dt(8.28)
270 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
onde w(t) e a velocidade angular. Equacionando o circuito da armadura,obtemos:
va(t) = Raia(t) + Ladia(t)
dt+ vb(t)
= Raia(t) + Ladia(t)
dt+ kb
dΘ(t)
dt(8.29)
Agora, escolhendo x(t) =[
ia(t) Θ(t) dΘ(t)/dt]T
e u(t) = va(t), podemoscolocar as equacoes (8.27)–(8.29) na forma:
x1(t)x2(t)x3(t)
=
−Ra/La 0 −kb/La
0 0 1km/J 0 −D/J
x1(t)x2(t)x3(t)
+
1/La
00
u(t) (8.30)
Note que (8.29) e um sistema de equacoes diferenciais ordinarias de primeiraordem.
va
Ra La
vb
+
+
−−
T Θ
J,D
ia
Figura 8.7: Motor de corrente contınua (CC) controlado pela armadura
8.1.6 Satelite em Orbita
Aqui consideramos a dinamica de um satelite em orbita em torno daTerra, como mostra a Figura 8.8. Adota-se o sistema de coordenadas polares,onde r(t) e a distancia entre o satelite e a Terra e α(t) e o angulo em relacaoa referencia. Tanto o angulo quanto a distancia variam no tempo, portantoo movimento do satelite e caracterizado por r(t), r(t), α(t) e α(t). O sateliteesta equipado com um sistema de propulsao que produz uma impulsao nadirecao tangencial a sua trajetoria, Ft(t), e uma impulsao ortogonal a tra-jetoria, Fr(t). Conforme diagrama da figura, a velocidade tangencial vt(t)
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 271
esta relacionada a velocidade angular pela equacao:
vt(t) = r(t)α(t)
Ja a velocidade radial e precisamente a taxa de variacao radial:
vr(t) = r(t)
A energia cinetica total do sistema, k(t), instantanea e dada por:
k(t) =1
2[vt(t)
2 + vr(t)2]
=1
2[r(t)2α(t)2 + r(t)2] (8.31)
Conforme o operador Lagrange, temos que:
d
dt
[
∂k(t)
∂r(t)
]
−[
∂k(t)
∂r(t)
]
= Fr(t)−cM
r(t)2(8.32)
d
dt
[
∂k(t)
∂α(t)
]
−[
∂k(t)
∂α(t)
]
= Ft(t) (8.33)
onde c e a constante gravitacional. Desenvolvendo (8.32), concluımos que:
Mr(t)−Mr(t)α(t)2 = Fr(t)−cM
r(t)2
ou, alternativamente,
r(t) = r(t)α(t)2 − c
r(t)2+ Fr(t) (8.34)
Similarmente, desenvolvendo (8.33), concluımos que:
2Mr(t)r(t)α(t) +Mr(t)2α(t) = Ft(t)
ou
α(t) = −2r(t)α(t)
r(t)+
Ft(t)
Mr(t)2(8.35)
Em sıntese, a dinamica do satelite em orbita e caracterizada pelas equacoesordinarias de segunda ordem (8.34)–(8.35):
r(t) = r(t)α(t)2 − c
r(t)2+ Fr(t) (8.36)
α(t) = −2r(t)α(t)
r(t)+
Ft(t)
Mr(t)2(8.37)
272 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
M
vr
vt
α
r
Figura 8.8: Satelite em orbita
8.1.7 Pendulo Invertido
Aqui, ilustramos a concepcao do sistema dinamico que caracteriza o mo-vimento de um veıculo com pendulo invertido acoplado, conforme mostra aFigura 8.9. Serao obtidas as equacoes diferenciais que regem o movimentodo veıculo e do pendulo em resposta a forcas externas e a acao da gravidade.
mg
Fy
Fz
uM
θ
θ
θ
m
l
z
y
Figura 8.9: Veıculo com pendulo invertido
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 273
Sistema Dinamico
Para tornar o desenvolvimento mais simples, assumimos que o carro e opendulo se movem no mesmo plano, e que podemos desprezar a friccao, amassa da haste e a forca do vento. O problema classico de controle consisteem encontrar uma lei de controle que mantenha o pendulo na posicao vertical,o qual se encontra deslocado da posicao podendo estar se deslocando parabaixo. Faz-se entao uso da forca horizontal para trazer o pendulo de voltaa posicao vertical. A forca horizontal e denotada por u(t), a posicao dohorizontal do veıculo e dada por y(t) enquanto que a posicao horizontal damassa do pendulo e denotada por yp(t), e o angulo da haste do pendulo emrelacao ao eixo vertical e denotado por θ(t). Assumimos que no sistema decoordenadas (y, z) a origem de z e a posicao onde a haste esta acoplada aocarro, ou seja, z = 0 na origem do angulo θ.
De acordo com as leis de Newton, as forcas aplicadas segundo o eixo ho-rizontal devem estar em equilıbrio, ou seja, a massa do carro multiplicadapela aceleracao acrescida da massa do pendulo multiplicada por sua ace-leracao deve igualar a forca externa. Matematicamente, este princıpio leva aequacao:
Md2
dt2y +m
d2
dt2yp = u (8.38)
A posicao da massa do pendulo pode ser expressa como uma funcao de y edo angulo θ:
yp = y + l sin θzp = l cos θ
(8.39)
onde l e o comprimento da haste do pendulo. E substituindo (8.40) em (8.38)obtemos:
Md2
dt2y +m
d2
dt2(y + l sin θ) = u (8.40)
Observando que:
d
dtsin θ = (cos θ)θ (8.41)
d2
dt2sin θ = −(sin θ)θ2 + (cos θ)θ (8.42)
d
dtcos θ = −(sin θ)θ (8.43)
d2
dt2cos θ = −(cos θ)θ2 − (sin θ)θ (8.44)
podemos colocar (8.40) na forma:
(M +m)y −ml(sin θ)θ2 +ml(cos θ)θ = u (8.45)
274 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
Aplicando agora as leis de Newton ao movimento rotacional, verificamos queos torques aplicados a massa do pendulo devem estar em equilıbrio, ou seja,o torque resultante da aceleracao angular deve igualar ao torque resultanteda acao da gravidade. Isto leva a equacao
(Fy cos θ)l − (Fz sin θ)l = (mg sin θ)l (8.46)
As forcas Fy e Fz sao as componentes das forcas que atuam na massa dopendulo, podendo ser obtidas a partir das equacoes (8.39) e (8.41)–(8.44),resultando nas equacoes:
Fy = md2
dt2yp
= md2
dt2(y + l sin θ)
= m(
y − l sin θθ2 + l cos θθ)
(8.47)
Fz = md2
dt2zp
= −m(
l cos θθ2 + l sin θθ)
(8.48)
Substituindo (8.47) e (8.48) em (8.46) e observando que l se cancela, obtemosa equacao:
mg sin θ = m(
y − l sin θθ2 + l cos θθ)
cos θ +m(
l cos θθ2 + l sin θθ)
sin θ
= my cos θ −ml sin θ cos θθ2 +ml cos θ cos θθ
+ml cos θ sin θθ2 +ml sin θ sin θθ
= my cos θ +mlθ (8.49)
Portanto, as equacoes que descrevem o sistema sao (8.45) e (8.49), que jus-tapostas levam ao sistema:
(M +m)y −ml(sin θ)θ2 +ml(cos θ)θ = u
my cos θ +mlθ = mg sin θ(8.50)
O sistema de equacoes diferenciais (8.50) e relativamente complexo em vir-tude de sua natureza nao-linear.
Modelo Matricial
No que segue, modificamos o sistema (8.50) de maneira a deixar asvariaveis y e θ em funcao das demais. O sistema (8.50) e equivalente a:
(M +m)y +ml(cos θ)θ = u+ml(sin θ)θ2
my cos θ +mlθ = mg sin θ
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 275
que pode ser colocado em forma matricial:
[
(M +m) ml cos θm cos θ ml
] [
y
θ
]
=
[
u+ml sin θθ2
mg sin θ
]
(8.51)
E multiplicando pela matriz inversa ambos os lados da igualdade (8.51) ob-temos:
[
y
θ
]
=1
(M +m)ml −m2l cos2 θ
[
ml −ml cos θ−m cos θ (M +m)
] [
u+ml sin θθ2
mg sin θ
]
(8.52)
=1
(M +m)l −ml cos2 θ
[
lu+ml2 sin θθ2 −mlg sin θ cos θ
− cos θu−ml sin θ cos θθ2 + (M +m)g sin θ
]
Sistema de Equacoes de 1a Ordem
Podemos expressar (8.52) em um sistema envolvendo apenas derivadasde variaveis por meio de uma mudanca de variaveis, fazendo:
x1
x2
x3
x4
=
yyθ
θ
⇒
x1
x2
x3
x4
=
yy
θ
θ
(8.53)
o que nos leva a concluir que:
x1 = x2
x2 =u+ml sin x3x4
2 −mg sin x3 cos x3
(M +m)−m cos2 x3
x3 = x4
x4 =− cos x3u−ml sin x3 cos x3x4
2 + (M +m)g sin x3
(M +m)l −ml cos2 x3
(8.54)
Concluımos que o sistema pode ser modelado pelas equacoes (8.50) ou, equi-valentemente, pelas equacoes (8.54) por meio da mudanca de variaveis defi-nida por (8.53). De forma mais compacta, (8.54) pode ser colocado em formavetorial fazendo x = (x1, x2, x3, x4) e F (x, u) corresponder ao lado direito dosistema (8.54), o que leva a:
x = F (x, u) (8.55)
276 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
Linearizacao
Podemos, alternativamente, considerar uma linearizacao do sistema (8.50)em torno do ponto de equilıbrio θ = 0 e θ = 0, colocando o pendulo na posicaovertical, o que sera objeto de analise mais a frente.
Tomando como ponto de equilıbrio a posicao (y, y, θ, θ) = 0 e forca u = 0e assumindo pequenas perturbacoes no ponto de equilıbrio1, podemos sim-plificar o modelo x = F (x, u) por meio de uma aproximacao linear fazendouso da serie de Taylor:
x = F (0, 0) +∇xF (0, 0)x+∇uF (0, 0)u
= ∇xF (0, 0)x+∇uF (0, 0)u (8.56)
Fazendo F (x, u) = [f1, f2, f3, f4]T , com f1 = x2, f2 = (u + ml sin x3x4
2 −mg sin x3 cos x3)/[(M + m) − m cos2 x3], f3 = x4 e f4 = (− cos x3u −ml sin x3 cosx3x4
2+(M +m)g sin x3)/[(M +m)l−ml cos2 x3], podemos pro-ceder a linearizacao, conforme segue. Para f1, obtemos:
∂
∂x1
f1 = 0,∂
∂x2
f1 = 1,∂
∂x3
f1 = 0,∂
∂x4
f1 = 0,∂
∂uf1 = 0
Para f2, obtemos:∂
∂x1
f2 = 0,∂
∂x2
f2 = 0
∂
∂x3
f2 =ml cos x3x4
2 −mg cos2 x3 +mg sin2 x3
(M +m)−m cos2 x3
−(u+ml sin x3x42 −mg sin x3 cos x3)(2m cos x3 sin x3)
[(M +m)−m cos2 x3]2
∂
∂x3
f2(0) = −mg
M∂
∂x4
f2 =2ml sin x3x4
(M +m)−m cos2 x3
⇒ ∂
∂x4
f2(0) = 0
∂
∂uf2 =
1
(M +m)−m cos2 x3
⇒ ∂
∂uf2(0) =
1
M
Para f3, obtemos:
∂
∂x1
f3 = 0,∂
∂x2
f3 = 0,∂
∂x3
f3 = 0,∂
∂x4
f3 = 1,∂
∂uf3 = 0,
1Note que F (0, 0) = 0 o que implica x = 0
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 277
Para f4, obtemos:∂
∂x1
f4 = 0,∂
∂x2
f4 = 0
∂
∂x3
f4 =sin x3u−ml cos2 x3x
24 +ml sin2 x3x
24 + (M +m)g cos x3
(M +m)l −ml cos2 x3
− [2ml cos x3 sin x3][− cos x3u−ml sin x3 cos x3x42 + (M +m)g sin x3]
[(M +m)l −ml cos2 x3]2
∂
∂x3
f4(0) =(M +m)g
Ml∂
∂x4
f4 =−2ml sin x3 cos x3x4
(M +m)l −ml cos2 x3
⇒ ∂
∂x4
f4(0) = 0
∂
∂uf4 =
− cos x3
(M +m)l −ml cos2 x3
⇒ ∂
∂uf4(0) = −
1
Ml
A partir das derivadas ∂fi(0)/∂xj, geramos a aproximacao linear:
x1
x2
x3
x4
=
0 1 0 00 0 −mg
M0
0 0 0 1
0 0 − (M+m)gMl
0
x1
x2
x3
x4
+
01M
0− 1
Ml
u (8.57)
Problemas como o descrito acima tem as relacoes entre as variaveis des-critas em termos de equacoes diferenciais, ou seja, equacoes que envolvem umfuncao desconhecida e algumas de suas derivadas. Uma equacao que envolvederivadas ate ordem n e chamada de equacao diferencial ordinaria (ODE).
8.2 Exemplos de Equacoes Diferenciais
Exemplo
Uma lista de equacoes diferenciais exemplo segue abaixo:
a) dydx
= y + x2
b) dydx
= y2
c) dydx
= 2x+ 3
d) ex dydx
+ 7xy = x2 + 1
e) dydx
= y + 1
278 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
f) d2ydx2 + 3 dy
dx− 17y = 0
g) xyy′′ + xy′ = 0
h) exy′′ + 2y′ + 3xy = x+ 3
As equacoes dadas em (a) e (e) sao equacoes diferenciais de primeira ordem elineares. Ja as equacoes (f) e (h) sao equacoes diferenciais de segunda ordeme lineares, enquanto que a equacao (g) e uma equacao diferencial de segundaordem e nao-linear.
Exemplo
Considere a equacao diferencial linear de primeira ordem:
dy
dx= 2x+ 3
que pode ser escrita como y′ = f(x) sendo f(x) = 2x+3 uma funcao contınuapara a < x < b. A solucao da equacao e dada por:
y =
∫
f(x)dx+ c
=
∫
(2x+ 3)dx
= x2 + 3x+ c
8.3 Problema de Valor Inicial
O problema de valor inicial consiste em encontrar uma solucao para aequacao diferencial
y(n)(x) = f(x, y, y′, . . . , y(n−1)) (8.58)
sendo as condicoes iniciais dadas por:
y(a) = ξ1
y′(a) = ξ2...
...
y(n−1)(a) = ξn
No que segue desenvolveremos metodos numericos para resolver of problema(8.58).
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 279
8.4 Sistemas de Equacoes Diferenciais
Um sistema de equacoes diferenciais de primeira ordem tem a seguinteforma:
y′1(x) = f1(x, y1, y2, . . . , yn)y′2(x) = f2(x, y1, y2, . . . , yn)
...y′n(x) = fn(x, y1, y2, . . . , yn)
(8.59)
Quando o problema acima tem solucao, entao ele tem, em geral, variassolucoes, ou seja, uma famılia de solucoes. Com as condicoes iniciais abaixo,temos o problema do valor inicial:
y1(x) = y(x)y2(x) = y′(x)
...yn(x) = yn−1(x)
Note que a equacao diferencial do problema de valor inicial, (8.58), pode sercolocada na forma de um sistema de equacoes diferenciais de primeira ordem,conforme modelo dado por (8.59). Para tanto, basta proceder como segue:
y(n) = f(x, y, y′, . . . , y(n−1)) ⇔
y(n)(x) = f(x, y, y′, . . . , y(n−1))y1 = yy2 = y′
...yn = y(n−1)
⇔
y′1 = y′
y′2 = y′′
...y′n = y(n)
⇔
y′1 = y2y′2 = y′3...
y′n = f(x, y1, y2, . . . , yn)
(8.60)
Exemplo
Considere o problema de valor inicial dado por:
y′′′(x) = xy′ + exy(x) + x2 + 1, 0 6 x < 1 (8.61)
280 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
tal que y(0) = 1, y′(0) = 0, e y′′(0) = −1. Podemos entao transformar (8.61)em um sistema de equacoes de primeira ordem, fazendo:
y1 = yy2 = y′
y3 = y′′⇒
y′1 = y2y′2 = y3y′3 = xy2 + exy1 + x2 + 1y1(0) = 1, y2(0) = 0, y3(0) = −1
(8.62)
8.5 Equacoes de Diferencas
Uma equacao de diferencas de ordem n e uma sequencia de equacoes daforma:
gk(yk+n, yk+n−1, . . . , yk) = 0, k = 0, 1, 2 . . .yj = ξj, j = 0, 1, 2 . . . , n− 1
(8.63)
Os gk sao funcoes de n + 1 variaveis e os valores ξj sao dados especıficos.Uma solucao de tal equacao e uma sequencia (y0, y1, . . . , yn−1, yn, yn+1, . . .)que satisfaz as equacoes (8.63).
Uma forma especial das equacoes (8.63) e:
αnyk+n + αn−1yk+n−1 + . . .+ αyk = 0, k = 0, 1, 2, . . .yj = ξj, j = 0, 1, 2, . . . , n− 1
(8.64)
Em (8.64), os gk independem de k e sao funcoes lineares homogeneas de todasas variaveis, e por esta razao sao chamadas de equacoes de diferencas lineareshomogeneas, com coeficientes constantes.
Exemplos
Abaixo listamos tres exemplos de equacoes de diferencas lineares:
a) yk+2 − 5yk+1 + 6yk = 0, y0 = 0, y1 = 1
b) yk+1 − yk = 0 e y0 = 0
c) yk+3 − 2yk+2 − yk+1 + 2yk = 0, y0 = 0, y1 = −3, e y2 = 1
8.6 Metodo de Euler
Estudaremos agora metodos que aproximam uma equacao diferencial poruma equacao de diferencas. Determinar numericamente uma solucao de uma
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 281
equacao diferencial e encontrar os valores (y1, y2, . . . , yn) atraves de uma apro-ximacao da equacao de diferencas. Tal aproximacao introduz um erro detruncamento e um erro de arredondamento.
Vamos resolver a ODE de primeira ordem da forma y′ = f(x, y) sujeitaa condicao inicial y(x0) = y0. Primeiramente, vamos analisar o problemagraficamente. Suponhamos que y = F (x) e que a solucao analıtica seja acurva mostrada no grafico da figura abaixo.
y = F (x)
x0 x1 x2
y0
y1
y2
x
y
Figura 8.10: Ilustracao de uma primitiva F (x)
Para fazer uma estimativa de y1, em torno do ponto (x0, y0) vamos con-siderar que:
dy
dx|(x0,y0) = f(x0, y0)
que pode ser aproximado em torno de (x0, y0) por:
y − y0x− x0
∼= f(x0, y0)
Observando que, se h = x1 − x0 tender a zero, a ordenada do ponto Q(y) tende a y1 e daı:
y = y0 + hf(x0, y0)y1 ∼= y0 + hf(x0, y0)
(8.65)
Generalizando, temos a seguinte equacao a diferencas, que e a expressao deEuler:
yk+1 = yk + hf(xk, yk) (8.66)
282 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
x0 x1
y0
y1
x
y
P (x1, y1)
Q(x1, y)y
Figura 8.11: Metodo de Euler
Outro enfoque consiste em considerar a aproximacao:
y′(x) ∼= [y(x+ h)− y(x)]
h(8.67)
Introduzindo a notacao
xk = a+ kh, = 0, 1, 2, . . .
de modo que a = x0 < x1 < x2 < . . . < xn = b. Fazendo yk representaruma aproximacao para y(xk) onde y(x) e a solucao de y′ = f(x, y(x)), entao(8.67) sugere que:
y′(xk) =[yk+1 − yk]
hPortanto,
yk+1 − yk = hy′(xk)⇒ yk+1 = yk + hf(xk, yk) (8.68)
que e novamente a expressao do metodo de Euler.
8.6.1 Exemplo
Resolver a equacao diferencial y′ = 2x + 3, para x = 1.0, 1.1, 1.2, 1.3,tendo como condicoes iniciais y = 1 quando x = 1.
Temos que f(x, y) = 2x+ 3, x0 = 1, y0 = 1, h = 0.1.
Passo 0 Temos, pelas condicoes iniciais que:
y0 = 1
x0 = 1
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 283
Passo 1 Calculamos y1 para x1 = 1.1 conforme segue:
y1 = y0 + hf(x0, y0)
= 1 + 0.1(2× 1 + 3)
= 1.5
x1 = x0 + h
x0 = 1.0y0 = 1.0
x1 = 1.1y1 = 1.5
Passo 2 Calculamos y2 para x2 = 1.2 conforme segue:
y2 = y1 + hf(x1, y1)
= 1.5 + 0.1(2× 1.1 + 3)
= 2.02
x2 = 1.2
Passo 3 Calculamos y3 para x3 = 1.3 conforme segue:
y3 = y2 + hf(x2, y2)
= 2.56
x3 = 1.3
8.6.2 O Algoritmo de Euler
Algoritmo de Euler (f, a, b, ξ, h)
x← ay ← ξEnquanto x 6 b
y ← y + hf(x, y)x← x+ hSaida(x,y)
Fim enquanto
8.7 Metodo de Euler para Sistemas de
Equacoes
Aqui vamos estender o metodo de Euler desenvolvido na secao para resol-ver numericamente sistemas de equacoes diferenciais.. Vejamos inicialmente
284 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
um sistema de duas equacoes:
y′ = f(t, y, z)z′ = g(t, y, z)
Fazendo h0 = t1 − t0, temos:
y(t1) = y1= y0 + h0f(t0, y0, z0)
z(t1) = z1= z0 + h0g(t0, y0, z0)
Generalizando para um passo h qualquer, temos:
yk+1 = yk + hf(tk, yk, zk)zk+1 = zk + hg(tk, yk, zk)
Para um conjunto de n equacoes o metodo assume a forma:
yk+11 = yk1 + hf1(x(k), y
k1 , y
k2 , . . . , y
kn)
yk+12 = yk2 + hf2(x(k), y
k1 , y
k2 , . . . , y
kn)
...yk+1n = ykn + hfn(x(k), y
k1 , y
k2 , . . . , y
kn)
(8.69)
Logo, as equacoes (8.69) nos dao um processo iterativo para calcular a solucaonumerica aproximada de y(x) a partir de um conjunto de condicoes iniciais.Isto significa que a trajetoria (xk, y
k) : k = 0, 1, 2, . . ., conforme (8.69),produz uma solucao aproximada para y(x).
8.8 Metodos Baseados na Serie de Taylor
Tomemos como ponte de partida a equacao diferencial ordinaria:
y′ = f(x, y(x))
y(x0) = y0
Seja y = F (x) a solucao, ou seja, F ′(x) = f(x, y) com F (x0) = y0. Assu-miremos que F e diferenciavel ate ordem n. Expandindo F (x) na serie deTaylor em torno de x0, temos:
F (x) = F (x0) +x− x0
1!F ′(x0) +
(x− x0)2
2!F ′′(x0) + . . .
+(x− x0)
n
n!F (n)(x0) (8.70)
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 285
Sabemos que:
F (x0) = y0
F ′(x0) = f(x0, y0)
= y′0
Entretanto precisamos ainda determinar y′′0 , y′′′0 , . . . , y
(n)0 . Nao conhecemos
estas derivadas pois F (x) nao e conhecida. Se f for suficientemente derivavel,elas podem ser determinadas considerando-se a derivada total em relacao ax, pois f e funcao implıcita de y. Isto nos leva aos desenvolvimento abaixo:
y′ = f(x, y(x))
y′′ = f ′(x, y(x))
= ∂f∂y
dydx
+ ∂f∂x
= fy(x, y(x)).f(x, y(x)) + fx(x, y(x))= fyf + fx
y′′′ = ∂fyf
∂y. dydx
+ ∂fyf
∂x+ ∂fx
∂x. dydx.∂fx∂x
= fxx + 2fxyf + fyyf2 + fxfy + f 2
y f
(8.71)
8.8.1 Exemplo
Considere a ODE y′ = x + y2 e a condicao inicial y(0) = 1. Conformedesenvolvimento acima, sabemos que
y′′ = fx + fyf = 1 + 2y′y.
Observando que fx = 1, fy = 2y, fxx = 0 e fxy = 0, podemos verificar que:
y′′′ = fyyf2 + fxfy + f 2
y f
= 2(x+ y2)2 + 1.(2y) + (2y)2(x+ y2)
= 2(x+ 2xy2 + y4) + 2y + 4y2x+ 4y4
= 2x+ 4xy2 + 2y4 + 2y + 4y2x+ 4x4
= 6y4 + 2y + 4xy2 + 4y2x+ 2x
286 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
Asim temos:
y′(0) = 0 + y20 = y20= 1
y′′(0) = 1 + 2yy′
= 1 + 2y0y′0
= 1 + 2.1.1
= 3
y′′′(0) = 6y4 + 2y + 4xy2 + 4y2x+ 2x
= 6y40 + 2y0
= 6.1 + 2.1
= 8
Isto nos leva a solucao aproximada:
y(x) = 1 + x+3
2x2 +
8
6x3 + ET
Onde ET denota o erro cometido.
8.9 Metodo de Runge-Kutta
Os metodos de Runge-Kutta sao obtidos pela serie de Taylor em que seomite os termos de mais alta ordem na expansao. Se cancelarmos os termosque contem potencias de h de ordem maior que p, obtemos um metodo deordem p. O metodo de Euler estudado anteriormente e de primeira ordem.Para desenvolvermos os metodos, vamos expandir yk+1 em vez de F (x) comodescrito na equacao (8.70), ou seja:
yk+1 = y(xk) + hy′(xk) +h2
2y′′(xk) +
h3
6y′′′(xk) (8.72)
8.9.1 Metodo de Runge-Kutta de Segunda Ordem
Assumindo que y(x) e tres vezes continuamente diferenciavel, entao oteorema de Taylor nos da:
yk+1 = y(xk) + hy′(xk) +h2
2y′′(xk) +
h3
6y′′′(ξk) (8.73)
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 287
para algum ξk ∈ [xk, xk+1]. Usando a notacao
y′(xk) = f(xk, y(xk))
vemos que
y(xk+1) = y(xk) + hf(xk, y(xk)) +h2
2[df(x, y(x))
dx] +O(h3) (8.74)
Para calcular df(x,y(x))dx
poderıamos usar uma das formulas de (8.71), masterıamos o problema das derivadas parciais, entao usamos uma aproximacaodada pela derivacao do polinomio interpolador de grau um, ou seja:
p(x) = f(x1)x− x2
x1 − x2
+ f(x2)x− x1
x2 − x1
entao:
p′(x) = f(x1)1
x1 − x2
+ f(x2)1
x2 − x1
daı temos com h = x2 − x1 que:
df(x, y(x))
dx=
1
h[f(x+ h, y(x+ h))− f(x, y(x))] +O(h) (8.75)
Escrevendo a equacao (8.75) para x = xk e substituindo em (8.74), temos:
y(xk+1) = y(xk) + hf(xk, y(xk))
+h2
2
[
f(xk+1, y(xk+1))− f(xk, y(xk))
h
]
+O(h3)
∼= y(xk) +h
2[f(xk+1, y(xk+1)) + f(xk, y(xk))]
= yk +h
2[f(xk+1, yk+1)− f(xk, yk)] (8.76)
Todavia, a formula (8.76) nao pode ser utilizada para calcular y1, y2, . . . porcausa do termo yk+1 = y(xk+1) no lado direito da igualdade. As formulasdo tipo (8.76) sao chamadas formulas implıcitas. Substituindo yk+1 emf(xk+1, yk+1) pela expressao do metodo de Euler, temos:
f(xk+1, yk+1) = f(xk+1, y(xk) + hy′(xk) +O(h2))
= f(xk+1, y(xk) + hy′(xk)) +O(h2) (8.77)
A substituicao de (8.77) em (8.76), nos leva a:
yk+1 = yk +h
2[f(xk, yk) + f(xk+1, yk + hf(xk, yk)] +O(h3) (8.78)
288 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
que e conhecida como formula de Runge-Kutta de segunda ordem.Para uma equacao diferencial do tipo y′ = f(x, y), com condicao inicial
y(x0) = y0, O metodo Runge-Kutta de segunda-ordem pode ser reescrito daseguinte forma:
xk+1 = xk + h
yk+1 = yk +k1 + k2
2,
onde:
k1 = hf(xk, yk)
k2 = hf(xk+1, yk + k1)
8.10 Exercıcios
Exercıcio 8.1 Considere o Problema com Condicoes de Contorno a seguir:
−d2x(t)
dt2+ x(t) = r(t) , com
t0 6 t 6 tfx(t0) = x0 e x(tf ) = xf
(8.79)
O problema, contınuo na variavel t, consiste em determinar a funcao x(t) quesatisfaz (8.79).
Este problema pode ser tratado computacionalmente atraves da discre-tizacao do intervalo de tempo considerado. Como r(t) e uma funcao conhe-cida, divide-se o intervalo [t0 , tf ] em n+1 subintervalos igualmente espacadose considera-se a informacao relativa a r(t) em n instantes de tempo discretos:
tk = t0 + kT ⇒ r(tk) = rk , k = 1, 2, . . . , n
Deseja-se, entao, calcular os valores aproximados de x(t) nos instantes deter-minados, levando em consideracao as condicoes de contorno:
x(tk) = xk , k = 1, 2, . . . , ncom x(t0) = x0 e x(tf) = x (t0 + (n+ 1)T ) = xf
Para tanto, pode-se utilizar a aproximacao seguinte:
d2x(t)
dt2≈ x(t+ T )− 2x(t) + x(t− T )
T 2(8.80)
a) Equacione a estrategia de discretizacao delineada acima, conhecidacomo Metodo das diferencas finitas, sob a forma de um sistema deequacoes lineares que permita determinar as aproximacoes xk.
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 289
b) Considere r(t) = t, t0 = 0, tf = 1, x(0) = x(1) = 0 e n = 6:
i. Utilize um metodo direto para obter a solucao do sistema deequacoes correspondente. Justifique a escolha de metodo.
ii. Utilize o Metodo de Gauss-Siedel para encontrar uma aproximacaopara a solucao (10 iteracoes / aproximacao inicial “nula”). Analisea convergencia do metodo.
Exercıcio 8.2 Para o circuito dado na Figura 8.12, a equacao diferencialordinaria de segunda ordem que descreve o comportamento dinamico do sis-tema e dada por:
Ld2
dt2i(t) +R
d
dti(t) +
1
Ci(t) = 3.5 cos (3.5t)
Executar as seguintes tarefas:
a) Calcular utilizando o metodo de Euler o valor da corrente apos 3.8segundos, assumindo que i(0) = i′(0) = 0. Utilizar passo de integracaosuficientemente pequeno. A implementacao deve ser feita em Matlab,Octave ou Scilab.
b) Calcular utilizando o metodo de Runge-Kutta o valor da corrente apos3.8 segundos, assumindo que i(0) = i′(0) = 0. Utilizar passo de inte-gracao suficientemente pequeno. A implementacao deve ser feita emMatlab, Octave ou Scilab.
c) Gerar grafico da curva i(t) para o perıodo de integracao.
d) Gerar grafico da curva i′(t) para o perıodo de integracao.
R = 1 L = 3H
C = 0, 005F
t = 0
sin(3, 5t)
Figura 8.12: Circuito eletrico
290 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
Exercıcio 8.3 Para o pendulo invertido ilustrado na Figura 8.9, a dinamicado movimento pode ser aproximada em torno do estado (y, y, θ, θ) =(0, 0, 0, 0) pelas equacoes diferenciais abaixo:
(M +m)y +mlθ = u
2lθ − 2gθ + y = 0(8.81)
onde M = 10Kg, m = 0.5Kg, g = 9.8m/s2, e l = 50cm. Executar asseguintes tarefas:
a) Fazendo x1 = y, x2 = y, x3 = θ, x4 = θ e x = (x1, x2, x3, x4), obter umsistema de equacoes diferenciais
x = F (x, u)
equivalente ao sistema de equacoes (8.81).
b) Seja a lei de controle dada por u(t) = −Kx(t) onde
K = [ −3.1623 −10.1554 −494.4166 −110.6079 ]
Obter a trajetoria de x(t) para t ∈ [0, 10s] usando o metodo de Runge-Kutta e fazendo x(0) = [ 0.2 0 0.5 0 ]T . Apresentar em graficos ascurvas x1(t), . . . , x4(t). Qual e o valor de x(10)?
c) Repetir o item (b) com x(0) = [ −0.3 0 0.8 0 ]T .
Exercıcio 8.4 Considere o sistema mecanico da Figura 8.13, onde:
• M = 5kg, massa do corpo;
• K = 3m/N , coeficiente da mola;
• D = 1Ns/m, coeficiente de atrito viscoso;
• F = 10e−2tN , forca aplicada no corpo; e
• V (t), velocidade do corpo.
A equacao diferencial que caracteriza o movimento do corpo e dada por:
5d2V (t)
dt2+ 4
dV (t)
dt+
1
3V (t) = −20e−2t
Sabemos que para t = 0s a velocidade do corpo e 1.5m/s e a aceleracao e0.5m/s2.
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 291
a) Calcular utilizando o metodo de Euler a velocidade e aceleracao docorpo apos 5s. Utilizar passo de integracao suficientemente pequeno.A implementacao deve ser feita em Matlab, Octave ou Scilab.
b) Calcular utilizando o metodo de Runge-Kutta de 2a ordem a velocidadee aceleracao do corpo apos 5s. Utilizar passo de integracao suficiente-mente pequeno. A implementacao deve ser feita em Matlab, Octave ouScilab.
c) Apresentar grafico da curva V (t) para o perıodo de integracao.
d) Apresentar grafico da curva V ′(t) para o perıodo de integracao.
M
V (t)
FK
Figura 8.13: Sistema mecanico
Exercıcio 8.5 A dinamica do movimento do sistema de dois pendulos des-crito Figura 8.14 pode ser descrita pelas equacoes diferenciais abaixo:
θ1 = −d−11 (d2θ2 + φ1)
θ2 =(
m2α22 + I2 − d22
d1
)−1 (
u+ d2d1φ1 −m2l1α2θ
21 sin θ2 − φ2
)
d1 = m1α21 +m2(l
21 + α2
2 + 2l1α2 cos θ2) + I1 + I2d2 = m2(α
22 + l1α2 cos θ2) + I2
φ1 = −m2l1α2θ22sin θ2 − 2m2l1α2θ2θ1 sin θ2 + (m1α1 +m2l1)g cos(θ1 − π
2) + φ2
φ2 = m2α2g cos(θ1 + θ2 − π2)
(8.82)onde u e o torque aplicado na junta, m1 = m2 = 1 sao as massas dashastes, l1 = l2 = 1 sao os comprimentos das hastes, α1 = α2 = 1/2 saoos comprimentos ate o centro de massa das barras, I1 = I2 = 1 sao osmomentos de inercia das barras, e g = 9.8 e a aceleracao da gravidade.Todas as unidades estao no sistema internacional.
292 8. Resolucao Numerica de Equacoes Diferenciais Ordinarias
a) Fazendo x1 = θ1, x2 = θ1, x3 = θ2, x4 = θ2 e x = (x1, x2, x3, x4), obterum sistema de equacoes diferenciais
x = F (x, u)
equivalente ao sistema de equacoes (8.82).
b) Quando nenhum torque externo e aplicado, u(t) = 0, obter a trajetoriade x(t) para t ∈ [0, 10s] usando o metodo de Runge-Kutta de 2a ordeme fazendo x(0) = [π
7, 0.2, π
10,−0.1]. Apresentar em graficos as curvas
x1(t), . . . , x4(t). Qual e o valor de x(10)?
Θ
Θ2
1Torque
Figura 8.14: Sistema mecanico de dois pendulos
Exercıcio 8.6 Seja o PVI:
y′(t) = f(t, y(t))y(t0) = y0 , t0 6 t 6 tf
a) Represente graficamente e de uma explicacao para um passo do metodode Euler.
b) Elabore um pseudo-codigo para a implementacao computacional dometodo de Runge-Kutta de 2a-ordem. Considere:
i) dados de entrada (fornecidos pelo usuario): a condicao inicial, ointervalo de calculo e o numero de iteracoes desejadas;
ii) que para valores particulares de (t, y), o valor numerico def(t, y(t)) obtidos pela chamada de uma “rotina” (ou funcao auxi-liar) com a sintaxe: Fty = avaliaF(t,y);
8. Resolucao Numerica de Equacoes Diferenciais Ordinarias 293
iii) dados de saıda: o programa correspondente ao pseudo-codigo de-ver fornecer os valores aproximados de y(t) ao longo das iteracoese os valores correspondentes da variavel independente.
Referencias Bibliograficas
[1] D. M. Claudio and J. M. Marins. Calculo Numerico Computacional.Atlas, 1994.
[2] T. H. Cormen, C. E. Leiserson, and R. L. Rivest. Introduction to Algo-rithms. MIT Press, Cambridge, MA, 1990.
[3] C. C. Dyer and S. S. Ip. An Elementary Introduction to Scientific Compu-ting. Division of Physical Sciences, Univerisity of Toronto at Scarborough,January 2000.
[4] H. Jeffreys and B. S. Jeffreys. Methods of Mathematical Physics. Cam-bridge University Press, Cambridge, England, 3rd edition, 1988.
[5] W. H. Press, B. P. Flannery, S. A. Teukolsky, and W. T. Vetterling. Nu-merical Recipes in FORTRAN: The Art of Scientific Computing. Cam-bridge University Press, Cambridge, England, 2nd edition, 1992.
[6] S. L. Salas, E. Hille, and J. T. Anderson. Calculus: One and SeveralVariables, with Analytic Geometry. John Wiley and Sons, New York,NY, 5th edition, 1986.
[7] L. Vandenberghe. Applied Numerical Computing. Lecture Notes forEE103, 2001.
Apendice A
Fundamentos Matematicos
A.1 Limites e Continuidade
Informalmente,limx→c
f(x) = l
significa que para x proximo mas diferente de c, f(x) esta proximo de l, oque significa dizer que se
|x− c| e pequeno mas diferente de zero, entao |f(x)− l| e pequeno.
Dizer que limx→c f(x) = l significa dizer que |f(x) − l| pode tornar-se arbi-trariamente pequeno simplesmente fazendo |x − c| suficientemente pequenomas diferente de zero. Se voce tomar ǫ > 0, entao |f(x) − l| pode se tornarmenor do que ǫ se 0 < |x − c| < δ para um δ suficientemente pequeno. Adefinicao a seguir formaliza este princıpio.
Definicao A.1 O limite de uma funcao
limx→c
f(x) = l sse
para cada ǫ > 0 existe δ > 0 tal quese 0 < |x− c| < δ, entao |f(x)− l| < ǫ
Exemplo A.1 Mostre que limx→2(2x− 1) = 3.
(Encontrando δ) Seja ǫ > 0. Desejamos encontrar δ > 0 tal que,
se 0 < |x− 2| < δ, entao |(2x− 1)− 3| < ǫ
Primeiramente, estabelecemos a conexao entre
|(2x− 1)− 3| e |x− 2|.
298 A. Fundamentos Matematicos
A conexao e simples,
|(2x− 1)− 3| = |2x− 4| = 2|x− 2|. (A.1)
Para fazer |(2x− 1)− 3| menor do que ǫ, precisamos apenas fazer |x− 2| serduas vezes menor. Isso sugere a escolha de δ = ǫ
2. (Mostrando que funciona)
Para mostrar que esta escolha funciona, note que se 0 < |x − 2| < ǫ2, entao
2|x− 2| < ǫ e de (A.1) temos que |(2x− 1)− 3| < ǫ.
Definicao A.2 (O limite a esquerda de uma funcao) Seja f uma funcaodefinida no intervalo (a, c).
limx→c−
f(x) = l sse
para cada ǫ > 0 existe δ > 0 tal quese c− δ < x < c, entao |f(x)− l| < ǫ
Definicao A.3 (O limite a direita de uma funcao) Seja f uma funcao defi-nida no intervalo (c, d).
limx→c+
f(x) = l sse
para cada ǫ > 0 existe δ > 0 tal quese c < x < c+ δ, entao |f(x)− l| < ǫ
Segue das definicoes acima que
limx→c
f(x) = l sse limx→c+
= l e limx→c−
= l
Dizemos que um processo e contınuo se ele e realizado sem interrupcaoe sem mudancas bruscas. Na matematica, a palavra “contınuo” tem umsignificado diferente.
Seja f uma funcao definida no intervalo aberto (c− δ, c+ δ).
Definicao A.4 A funcao f e contınua no ponto c se e somente selimx→c f(x) = c.
Se o domınio da funcao f contem o intervalo aberto (c− δ, c + δ), entaoha apenas duas razoes para f nao ser contınua no ponto c: i) f(x) naotem um limite quando x tende para c, neste caso dizemos que c e umadescontinuidade; ii) f(x) tem um limite l, mas o limite l e diferente de c. Noultimo caso, podemos eliminar a descontinuidade redefinindo f de forma quef(x) = l. A Figura A.1 ilustra a transformacao de uma funcao descontınua(a) em uma funcao contınua (b).
Uma funcao que e contınua dentro de um intervalo nao tem saltos nem in-terrupcoes, portanto a sua curva nao e quebrada. Com base nestes princıpios,dois teoremas podem ser estabelecidos.
A. Fundamentos Matematicos 299
xx
yy
cc
(a) (b)
Figura A.1: Eliminando a descontinuidade de uma funcao.
Teorema A.1 (Teorema do valor intermediario) Se f e contınua no inter-valo [a, b] e C e um numero entre f(a) e f(b), entao existe c ∈ [a, b] tal quef(c) = C.
Teorema A.2 (Teorema do maximo e mınimo) Se f e contınua em [a, b],entao f tem um valor maximo M e mınimo m no intervalo [a, b].
A.2 Diferenciacao
Considere uma funcao f : R → R e o ponto (x, f(x)) de seu grafico,conforme Figura A.2. Como que se obtem, quando esta existe, a tangente dacurva no ponto (x, f(x))?
Para responder esta questao, tomamos um numero pequeno h 6= 0 e nacurva obtemos o ponto ((x + h), f(x + h)), conforme ilustracao na FiguraA.3. Agora tracamos a reta secante que passa pelos pontos (x, f(x)) e ((x+h), f(x + h)). Dependendo de h > 0 ou h < 0, a secante tera diferentesinclinacoes. A medida que h tende para zero da direita, a secante tendepara uma posicao limite, o mesmo ocorrendo quando h tende para zero daesquerda. A reta nesta posicao limite e dita “tangente da curva no ponto(x, f(x))”.
Uma vez que as secantes tem inclinacao dada por:
f(x+ h)− f(x)
h
espera-se que a tangente, a posicao limite destas secantes, tenha inclinacao
300 A. Fundamentos Matematicos
x
y
(x, f(x))
Figura A.2: Funcao exemplo.
x x
y
(x, f(x)) (x, f(x))
f(x) f(x)
(x + h, f(x + h))
(x + h, f(x + h))
h > 0 h < 0
Secante
Secante
Limite
Limite
Figura A.3: Secantes da funcao.
A. Fundamentos Matematicos 301
dada por:
limh→0
f(x+ h)− f(x)
h.
Definicao A.5 Uma funcao f e dita diferenciavel no ponto x se
limx→c
f(x+ h)− f(x)
hexiste.
Se este limite existe, entao a derivada de f no ponto x e denotada por f ′(x).
Teorema A.3 Se f e diferenciavel no ponto x, entao f e contınua em x.
Teorema A.4 (Regra do produto) Se f e g sao duas funcoes diferenciaveisno ponto x, entao
(fg)′(x) = f(x)g′(x) + f ′(x)g(x).
Definicao A.6 (Derivada da soma e multiplo escalar) Seja α um numeroreal. Se f e g sao diferenciaveis no ponto x, entao f + g and αf sao dife-renciaveis no ponto x tal que:
(f + g)′(x) = f ′(x) + g′(x) and (αf)′(x) = αf ′(x).
Aqui vamos considerar a diferenciacao de funcoes compostas. Suponhaque y e uma funcao diferenciavel em u:
y = f(u)
e u e uma funcao diferenciavel em x:
u = g(x).
Portanto, y e uma funcao de x:
y = f(u) = f(g(x)).
Podemos dizer que y tem uma derivada em relacao a x? Sim, y tem umauma derivada em relacao a x dada pela formula:
dy
dx=
dy
du
du
dx.
A formula acima e conhecida como regra da cadeia, a qual diz que a taxa devariacao de y com respeito a x e a taxa de variacao de y com respeito a u
302 A. Fundamentos Matematicos
vezes a taxa de variacao de u com respeito a x. Como exemplo, considere asfuncoes a seguir:
y = 2u e u = 3x.
Entao, temos quey = 2x.
Note quedy
dx= 6,
dy
du= 2,
du
dx= 3
o que nos leva a confirmar a regra da cadeia pois:
dy
dx=
dy
du
du
dx.
Teorema A.5 (Regra da cadeia) Se g e diferenciavel no ponto x e f e dife-renciavel no ponto g(x), entao a composicao f.g e diferenciavel no ponto xtal que
(f.g)′(x) = f ′(g(x))g′(x).
A.2.1 Aplicacao de Diferenciacao
Um tanque cujo corte facial e um triangulo equilatero recebe agua na taxade 4 cm3/min. Tendo a abertura do tanque 12 cm de comprimento, com quevelocidade a agua esta subindo no instante em que ela atinge a profundidadede 11
2cm?
A Figura A.4 ilustra o corte facial do tanque. Seja x a profundidadeda agua e V o volume de agua em cm3. Sabemos que dV
dt= 4 cm3/min e
desejamos saber dxdt
quando x = 32cm. Note que l = x
tan(60o)= x
√3
3. Portanto,
a area da secao facial e lx =√33x2 e o volume de agua armazenado no tanque
e 12(
x2√3
3
)
= 4√3x2.
Diferenciando V = 4√3x2 com respeito a t obtemos
dV
dt= 8√3x
dx
dt.
Substituindo x = 32e dV
dt= 4, temos
4 = 8√3
(
3
2
)
dx
dt
o que nos leva a concluir que
dx
dt=
1
9
√3.
A. Fundamentos Matematicos 303
No instante em que a agua atinge a altura 112cm, o nıvel da agua esta subindo
a uma taxa de 19
√3cm/s.
x
60oNıvel daAgua
l
Figura A.4: Corte facial do tanque.
A.3 Teorema do Valor Medio
O Teorema do Valor-Medio foi primeiramente enunciado pelo matematicoJoseph Louis Lagrange (1736–1813), cujas aplicacoes podem ser encontradasem varios problemas da matematica.
Teorema A.6 (Torema do Valor Medio) Se f e uma funcao diferenciavelem (a, b) e contınua em [a, b], entao existe um numero c ∈ (a, b) tal que
f ′(c) =f(b)− f(a)
b− a.
O numero c e a inclinacao da reta l que passa atraves dos pontos (a, f(a)) e(b, f(b)). Dizer que existe pelo menos um numero c tal que
f ′(c) =f(b)− f(a)
b− a
significa dizer que o grafico da funcao f tem pelo menos um ponto (c, f(c))no qual a tangente e paralela a l. Esta configuracao e ilustrada na FiguraA.5.
304 A. Fundamentos Matematicos
l
a bc x
(c, f(c))
(b, f(b))
(a, f(a))
f(x)
Tangente
Figura A.5: Ilustracao do Teorema do Valor Medio.
A.4 Maximos e Mınimos
Em problemas de Engenharia e Fısica, rotineiramente se deseja deter-minar quao grande ou quao pequena uma certa quantidade pode ser. Se oproblema admite uma formulacao matematica, entao podemos em princıpioreduzi-lo ao problema de encontrar o valor mınimo ou maximo de uma certafuncao. No que segue, vamos considerar os valores maximos e mınimos deuma funcao em um intervalo aberto.
Definicao A.7 (Mınimo/Maximo Local) Uma funcao f tem um maximolocal no ponto c sse
f(c) ≥ f(x) para todo x suficiente proximo de c.
A funcao tem um mınimo local no ponto c sse
f(c) ≤ f(x) para todo x suficiente proximo de c.
As nocoes de pontos de maximo e mınimo locais sao ilustradas na FiguraA.6.
A.5 Introducao a Equacoes Diferenciais
Na Natureza e comum encontrarmos sistemas cujas grandezas variam notempo. Se uma quantitade y varia no tempo de acordo com uma equacaodiferencial, entao y e tipicamente descrita por uma equacao que envolve y e
A. Fundamentos Matematicos 305
a b c
(c, f(c))
(b, f(b))
(a, f(a))
f(x)
x
y
Maximo
Maximo
Mınimo Local
Local
Local
Figura A.6: Pontos de maximo e mınimo de uma funcao.
suas derivadas. Tal equacao e conhecida como equacao diferencial. Exemplosde equacoes diferenciais sao:
y′ = 2y + e−y2 , 2y′′ − y′ + 2y = 0, y′′ + 2y′ − y = x.
Equacoes diferenciais sao essencias na modelagem matematica de fenomenosfısicos, tendo inumeras aplicacoes reais em engenharia, fısica e matematica.
Muitas vezes os problemas de interesse sao tao complexos que a analisedestes torna-se intratavel. A investigacao do impacto de novas polıticas cam-biais na economia de um paıs e a influencia do acumulo de resıduos poluentesem um ecosistema configuram sistemas de complexidade consideravel. Emtais sistemas, o topico de interesse pode ser identificado com certa facilidademas, por outro lado, e muito difıcil de se chegar a conclusoes. As relacoes en-tre as grandezas podem nao ser aparentes. Em tais situacoes, se faz necessarioo emprego de modelos simplificados que tomam como hipoteses premissas res-tritivas. Por exemplo, na modelagem de sistemas mecanicos podemos des-considerar as variacoes da gravidade e a resistencia do ar para velocidadesbaixas. Contudo, e importante que as hipoteses sejam enunciadas de formaa deixar claro as limitacoes e a regiao de validade. Se as hipoteses podemser escritas em notacao matematica, entao as ferramentas de modelagem esolucao matematica podem ser empregadas no tratamento do problema. Oprocesso de transcrever, formular, analisar e resolver um problema em umcontexto matematico e conhecido como modelagem matematica.
O objetivo da modelagem matematica e melhor enteder um fenomeno domundo real, o que nao e uma tarefa trivial. Muitas vezes, desejamos construirum modelo que nos permita fazer predicoes que por sua vez podem ser em-pregadas para influenciar a evolucao de eventos. Por exemplo, o modelo de
306 A. Fundamentos Matematicos
um tanque de biomassa pode ser utilizado na determinacao da temperaturae composicao que garantam maior geracao de energia.
Equacoes Diferenciais de Primeira Ordem
A ordem de uma equacao diferencial e a ordem da derivada mais alta queaparece na equacao. As equacoes
y′ + 2y = x3 and y′ − xy/2 = ex
sao equacoes de primeira ordem;
y′′ − 2y′ + y = 2x and y′′ + 4y = 0
sao equacoes de segunda ordem. Uma funcao y e dita uma solucao da equacaodiferencial se ela satisfaz a equacao. Por exemplo, a funcao
y = x+ e−2x
e uma solucao da equacao diferencial
y′ + 2y = 2x+ 1.
Basta verificar que
y′ + 2y = (x+ e−2x)′ + 2(x+ e−2x) = 1− 2e−2x + 2x+ 2e−2x = 2x+ 1.
Para ilustrar a solucao de equacoes diferenciais de primeira ordem, vamosconsiderar equacoes lineares na forma
y′ + p(x)y = q(x)
onde p e q(x) sao funcoes contınuas. No caso mais simples, quando p(x) = 0para todo x, a equacao se reduz a
y′ = q(x). (A.2)
As solucoes desta equacao sao antiderivadas de q podendo ser escritas naforma y = Q(x). Portanto,
y = Q(x) + c (A.3)
e uma solucao com c sendo uma constante arbitraria. A equacao (A.3) e ditasolucao geral e qualquer solucao de (A.2) pode ser obtida ajustando o valorda constante c. A funcao y = x2, por exemplo, resolve a equacao diferencialy′ = 2x. A solucao geral e portanto y = x2 + c.
A. Fundamentos Matematicos 307
Para resolver uma equacao na forma
y′ + p(x)y = q(x)
primeiramente calculamos
P (x) =
∫
p(x)dx
sem considerar constantes. Multiplicamos a equacao diferencial por eP (x)
obtendo
eP (x)y′ + eP (x)p(x)y = eP (x)q(x).
O lado esquerdo da equacao acima e
d
dx[eP (x)y]
portanto, a equacao pode ser escrita como
d
dx[eP (x)y] = eP (x)q(x).
Integrando, obtemos
eP (x)y =
∫
eP (x)q(x)dx+ c
e a solucao e dada por
y = e−P (x)∫
eP (x)q(x)dx+ c.
Modelo Presa-Predador
Objetivando ilustrar a modelagem matematica, vamos considerar umcenario de duas especies onde uma serve de alimento a outra. Digamos queas especies sao raposas e coelhos. Se a populacao de coelhos cresce, entaoas raposas encontram presas com mais facilidade e em decorrencia de me-lhor alimento tambem crescem em numero. Apos algum tempo, a populacaode coelhos decresce. Como consequencia, a populacao de raposas tambemdecresce em virtude da dificuldade de encontrar alimento. A reducao dapopulacao de raposas, por sua vez, facilita o crescimento da populacao decoelhos, levando de volta ao inıcio do ciclo.
308 A. Fundamentos Matematicos
Seja x o numero de raposas e y o numero de coelhos no instante t. Vamosconsiderar as especies separadamente. Se nao ha raposas, a populacao decoelhos cresce exponencialmente, o que pode ser modelado pela equacao
dy
dt= ay, a > 0. (A.4)
Por outro lado, se nao ha coelhos, a populacao de raposas decresce exponen-cialmente conforme modelo
dx
dt= −bx, b > 0. (A.5)
Para considerar a interacao entre especies, vamos assumir que ha um numeroabundante de coelhos e raposas. Vamos assumir tambem que a taxa na qualraposas matam coelhos e proporcional ao produto xy. Assim, subtraımosum termo proporcional a xy de (A.4), dessa forma modelando a reducao dapopulacao de coelhos. Adicionamos tambem um termo proporcional a xya expressao (A.5), modelando o crescimento da populacao de raposas. Omodelo em equacoes diferenciais fica
dy
dt= ay − sxy,
dx
dt= rxy − bx, onde a, b, r, s > 0.
O termo xy e adotado em vez da expressao x+ y pois a quantitdade xy e amaior possıvel quando x e y sao aproximadamente iguais. O maior numerode presas serao capturadas quando nao ha um numero relativo elevado deraposas a procura de presas e quanto nao ha um numero muito pequeno decoelhos.
As equacoes diferenciais A.5 forma um sistema de equacoes. Podemosresolver o sistema eleminando a variavel independente t:
dy
dx=
dy/dt
dx/dt
que pode ser escrita como
dy
dx=
y(a− sx)
x(ry − b).
A. Fundamentos Matematicos 309
Separando as variaveis obtemos
dy
y(a− sx)=
dx
x(ry − b),
ry − b
ydy =
(a− sx)
xdx,
ry − b ln y + sx− a ln x = c,
ry + sx− ln xayb = c,
ry + sx− c = ln xayb,
ery+sx−c = xayb,
e−c =xayb
eryesx.
Fazendo k = e−c, a solucao fica
k =xayb
eryesx. (A.6)
Note que k pode ser calculado com base nos valores iniciais de x e y (x(0)e y(0)). Observe tambem que k nao depende do tempo. Para analisar ocomportamento da solucao, note que o lado direito de (A.6) e composto dedois termos similares da forma:
f(z) =zp
emz, p,m > 0.
O grafico da curva f(z) tem a forma dada na Figura A.7.Se fixarmos o valor de x em (A.6) e resolvermos a equacao para y, obte-
remos dois valores. Ou seja, f(z) assume este valor em dois pontos, z1 e z2.A excecao ocorre quando y = b/r onde z = p/m. Nesse valor de y, x assumeseu valor maximo ou mınimo. De forma similar, linhas horizontais ordinari-amente interceptam o grafico de (A.6) duas vezes, sendo que y assume seuvalor maximo ou mınimo quando x assume o valor a/s. O grafico de (A.6) euma curva conhecida como trajetoria. Trajetorias para dois valores de K eparametros fixos para a, b, r e s aparecem na Figura A.8.
Para determinar a direcao das trajetorias, conforme indicado pelas setas,basta verificar que
dx
dy= x(ry − b) > 0 sse y > b/r.
Portanto, o movimento e no sentido horario. O ponto E = (a/s, b/r) e umponto de equilıbrio. As duas populacoes nao mudam com o passar do tempo.Na pratica tal equilıbrio nao ocorre. O comportamento cıclico ilustrado pelafigura melhor representa o caso real.
310 A. Fundamentos Matematicos
z1 z2
f(z)
( pme
)p
zpm
Figura A.7: Grafico da funcao f(z) = zp
emz , p,m > 0.
41 2 3 5 6 7 9 108
1
2
3
4
5
6
7 x = as= 4
y = br= 3
y
x
K = 0, 16
Figura A.8: Trajetorias para K = 0, 16.
A. Fundamentos Matematicos 311
A.6 Vetores
Uma tripla x = (x1, x2, x3) que define uma direcao v = x1i + x2j + x3ke um vetor do plano cartesiano, onde i e o vetor de comprimento unitarioque da a direcao do eixo x, j e o vetor de comprimento unitario que da adirecao do eixo y, e k e unitario e da a direcao do eixo z. Os vetores i, j ek sao ortogonais entre si. Note que i = (1, 0, 0), j = (0, 1, 0) e k = (0, 0, 1).O ponto 0 = (0, 0, 0) e a origem do plano cartesiano e serve de referencia.A Figura A.9 ilustra o plano cartesiano. Neste apendice vamos diferenciarescalares de vetores adotando fonte em negrito para os vetores.
x
z
y0
Figura A.9: Plano cartesiano.
A adocao do plano cartesiano para representacao de vetores facilitaoperacoes basicas sobre vetores. Por exemplo, a soma vetorial de dois ve-tores a = (a1, a2, a3) e b = (b1, b2, b3) pode ser obtida fazendo:
a+ b = (a1, a2, a3) + (b1, b2, b3) = (a1 + b1, a2 + b2, a3 + b3)
A multiplicacao de um vetor a por um escalar α tambem e simples, sendodada por:
αa = (αa1, αa2, αa3)
A soma vetorial de dois vetores a e b esta exemplificada na Figura A.10.Dois vetores nao nulos a e b sao ditos paralelos se a = αb para algum
escalar α. Dois vetores paralelos a e b tem a mesma direcao se α > 0; elestem direcoes opostas se α < 0.
O comprimento de um vetor e medido por meio de normas. A norma l-2ou norma Euclidiana de um vetor x = (x1, x2, x3) e definida como:
‖x‖ =√
x21 + x2
2 + x23
312 A. Fundamentos Matematicos
x
z
y0
a
b
a+ b
Figura A.10: Soma vetorial.
Note que toda a norma ‖ · ‖ satisfaz as propriedades:
(1) ‖x‖ ≥ 0 para todo x ∈ R3;
(2) ‖αx‖ = |α|‖x‖ para todo x ∈ R3 e α ∈ R; e
(3) ‖a+ b‖ ≤ ‖a‖+ ‖b‖ para todo a,b ∈ R3.
A.6.1 Produto Interno
O produto interno tem inumeras aplicacoes em fısica e geometria. Paradois vetores arbitrarios a = (a1, a2, a3) e b = (b1, b2, b3), o produto interno eum escalar denotado por a · b e definido por:
a · b = a1b1 + a2b2 + a3b3
Observe que a · a = ‖a‖2. O produto interno de um vetor a qualquer com ovetor nulo e zero:
a · 0 = 0 e 0 · a = 0
Podemos mostrar que o produto interno e comutativo verificando que:
a · b = a1b1 + a2b2 + a3b3 = b1a1 + b2a2 + b3a3 = b · aEscalares tambem sao passıveis de fatoracao conforme a deducao abaixo de-monstra:
αa · βb = αβa1b1 + αβa2b2 + αβa3b3
= αβ(a1b1 + a2b2 + a3b3)
= αβa · b
A. Fundamentos Matematicos 313
Da maneira semelhante ao desenvolvido acima pode-se mostrar que o produtointerno e distributivo, ou seja, a · (b+ c) = a · b+ a · c.
Se dois vetores a e b sao nao nulos, entao o produto interno a · b podeser interpretado geometricamente tomando como base o triangulo formadopelos vetores a, b e a− b conforme indicado na Figura A.11. Pela lei doscosenos, temos que:
‖a− b‖2 = ‖a‖2 + ‖b‖2 − 2‖a‖‖b‖ cos θo que nos leva a:
2‖a‖‖b‖ cos θ = ‖a‖2 + ‖b‖2 − ‖a− b‖2= [a21 + a22 + a23] + [b21 + b22 + b23]
−[(a1 − b1)2 + (a2 − b2)
2 + (a3 − b3)2]
= [a21 + a22 + a23] + [b21 + b22 + b23]
−[a21 − 2a1b1 + b21 + a22 − 2a2b2 + b22 + a23 − 2a3b3 + b23]
= 2a1b1 + 2a2b2 + 2a3b3
= 2a · bportanto, concluımos que:
a · b = ‖a‖‖b‖ cos θ (A.7)
a
b
a− b
θ
Figura A.11: Produto interno.
A partir da expressao (A.7) podemos verificar que o produto interno nosda uma medida do quanto as direcoes de dois vetores se assemelham. Amedida que as direcoes de dois vetores se tornam opostas o produto internoentre eles decresce.
1) Quanto dois vetores a e b tem a mesma direcao, θ = 0, o produtointerno se torna:
a · b = ‖a‖‖b‖que e o maximo valor possıvel para o produto interno a · b.
314 A. Fundamentos Matematicos
2) Quando a e b tem direcoes opostas, θ = −π, o produto interno assumeo valor:
a · b = −‖a‖‖b‖
que e o mınimo valor possıvel para a · b.
3) Quando a e b sao ortogonais, θ = π2, o produto interno assume o valor:
a · b = 0
Concluımos que dois vetores sao perpendiculares se e somente se oproduto interno entre eles e nulo.
A.6.2 Projecoes
Se b e um vetor nao nulo, entao um vetor a arbitrario pode ser escritode maneira unica como a soma de um vetor b‖ paralelo a b e um vetor b⊥
ortogonal a b:
a = b‖ + b⊥
Uma ilustracao da decomposicao de a em b‖ (projecao de a sobre b) e b⊥ edada na Figura A.12.
a
b
b‖
b⊥
θ
Figura A.12: Produto interno.
A projecao de a sobre b e denotada por projb(a). Para a ilustracao da
Figura A.12, projb(a) = b‖. Note que a projecao de a em b e um multiplo
α do vetor b, ou seja:
projb(a) = b‖ = αb
A. Fundamentos Matematicos 315
Podemos calcular α por meio da relacao trigonometrica dada na Figura A.12:
α = ‖a‖ cos θ
= ‖a‖‖b‖‖b‖ cos θ
=1
‖b‖a · b
Logo, concluımos que a projecao de a em b pode ser definida como:
projb(a) = αb
=a · b‖b‖ b
= (a · b)ub
onde ub = b/‖b‖ e o vetor unitario na direcao de b. Vale ressaltar quea projecao de um vetor sobre outro pode ser facilmente calculada a partirdo produto interno entre eles. Para calcular a representacao do vetor a emtermos de componentes ortogonais e paralelas ao vetor b, basta calcular b‖
e depois subtrair de a para obter b⊥.A desigualdade de Schwartz, |a · b| ≤ ‖a‖‖b‖, e facilmente demonstrada
a partir do produto interno:
|a · b| = |‖a‖‖b‖ cos θ|= ‖a‖‖b‖ | cos θ|≤ ‖a‖‖b‖ (A.8)
Fazendo uso da desigualdade de Schwartz podemos tambem demonstrar adesigualdade triangular:
‖a+ b‖ ≤ ‖a‖+ ‖b‖
Para tanto, basta verificar que:
‖a+ b‖2 = (a+ b) · (a+ b)
= a · a+ a · b+ b · a+ b · b= a · a+ 2a · b+ b · b≤ a · a+ 2|a · b|+ b · b≤ ‖a‖2 + 2‖a‖‖b‖+ ‖b‖2= (‖a‖+ ‖b‖)2
Logo, deduzimos que ‖a+ b‖ ≤ ‖a‖+ ‖b‖.
316 A. Fundamentos Matematicos
A.6.3 Produto Cruzado
Na mecanica e eletromagnetismo a nocao de produto cruzado desempenhaum papel relevante. Na Mecanica, o produto cruzado esta relacionado amomento de angular, torque e fenomenos de rotacao. No Eletromagnetismo,o produto cruzado permite expressas leis das forcas que atuam sobre cargaseletricas em movimento. Para vetores
a = a1i+ a2j+ a3k e b = b1i+ b2j+ b3k,
o produto cruzado a× b e definido como:
a× b = (a2b3 − a3b2)i+ (a3b1 − a1b3)j+ (a1b2 − a2b1)k
Diferentemente do produto interno a ·b que e um escalar, o produto internoa×b e um vetor. Tomando como base o determinando de matrizes, podemosexpressar o produto cruzado como um determinante:
a× b =
∣
∣
∣
∣
∣
∣
i j ka1 a2 a3b1 b2 b3
∣
∣
∣
∣
∣
∣
=
∣
∣
∣
∣
a2 a3b2 b3
∣
∣
∣
∣
i−∣
∣
∣
∣
a1 a3b1 b3
∣
∣
∣
∣
j+
∣
∣
∣
∣
a1 a2b1 b2
∣
∣
∣
∣
k
As seguintes propriedade de produto cruzado podem ser verificadas pormeio de manipulacoes algebricas:
1) (Anticomutatividade) b× a = −a× b;
2) (Autocancelamento) a× a = 0;
3) (Fatoracao de escalares) αa× βb = αβa× b;
4) (Distributividade sobre soma) a× (b+ c) = (a× b) + (a× c);
5) (Ortogonalidade) (a× b) ⊥ a e (a× b) ⊥ b; e
6) ‖a× b‖2 = ‖a‖2‖b‖2 − (a · b)2.Se um dos vetores a e b e nulo, a = 0 ou b = 0, entao a× b = 0. Caso
nenhum dos vetores seja nulo, entao podemos expressar o produto internocomo:
a · b = ‖a‖‖b‖ cos θe usando a propriedade (6) podemos verificar que:
‖a× b‖2 = ‖a‖2‖b‖2 − (a · b)2= ‖a‖2‖b‖2 − ‖a‖2‖b‖2 cos2 θ= ‖a‖2‖b‖2(1− cos2 θ)
= ‖a‖2‖b‖2 sin2 θ
A. Fundamentos Matematicos 317
que por sua vez implica em:
‖a× b‖ = ‖a‖‖b‖ sin θEsta expressao nos diz que a norma do produto cruzado de dois vetores naonulos e precisamente a area do paralelogramo cujos lados sao definidos porestes vetores. Esta propriedade e ilustrada na Figura A.13.
‖a‖
‖b‖ ‖b‖ sin θ
θ
Figura A.13: A area do paralelogramo com lados a e b e precisamente ‖a×b‖.
A.7 Calculo Vetorial
Dadas funcoes reais f1, f2 e f3 (fj : R → R), entao para cada t ∈ R
podemos definir o vetor:
f(t) = f1(t)i+ f2(t)j+ f3(t)k (A.9)
que induz uma funcao vetorial f . Por exemplo, fazendo f1(t) = sin t, f2(t) =cos t, f3(t) = 0, obtemos a funcao vetorial:
f(t) = sin ti+ cos tj
Note que para todo t,
‖f(t)‖ =√
sin2 t+ cos2 t = 1
Definicao A.8 (Limite) Uma funcao f dada por (A.9) possui um “limite”em t0 se e somente se f1, f2 e f3 possuem limite em t0. Seja u = x1i+x2j+x3k. Dizemos que:
limt→t0
f(t) = u ⇔ limt→t0
f1(t) = x1,
limt→t0
f2(t) = x2, e
limt→t0
f3(t) = x3 (A.10)
318 A. Fundamentos Matematicos
Definicao A.9 (Continuidade) Dizemos que uma funcao vetorial f econtınua em t0 se e somente se cada componente e contınua em t0. Ma-tematicamente, f e contınua se e somente se
limt→t0
f1(t) = f1(t0), limt→t0
f2(t) = f2(t0) e limt→t0
f3(t) = f3(t0)
De forma mais compacta, f e contınua ⇔ limt→t0 f(t) = f(t0).
Definicao A.10 (Diferenciacao) Uma funcao vetorial f e diferenciavel emt se e somente se cada um de seus componentes e diferenciavel em t. Logo
f ′(t) = f ′1(t)i+ f ′
2(t)j+ f ′3(t)k
sendo f ′(t) dita derivada de f dem t.
Podemos tambem definir f ′(t) como o limite do vetor do quociente dediferenca:
f ′(t) = limh→0
f(t+ h)− f(t)
hRegras de diferenciacao:
i. (f + g)′(t) = f ′(t) + g′(t)
ii. (αf)′(t) = αf ′(t) (para todo escalar α)
iii. [u(t)f(t)]′ = u′(t)f(t) + u(t)f ′(t)
iv. (f · g)′(t) = f(t) · g′(t) + f ′(t) · g(t)
v. (f × g)′(t) = f ′(t)× g(t) + f(t)× g′(t)
vi. f(u(t))′ = f ′(u(t))u′(t) (regra da cadeia)
Definicao A.11 (Integracao) Para uma funcao vetorial f contınua em [a, b],a integral de f e definida componente a componente:
∫ b
a
f(t)dt =
(∫ b
a
f1(t)dt
)
i+
(∫ b
a
f2(t)dt
)
j+
(∫ b
a
f3(t)dt
)
k
Regras de integracao:
i.∫ b
a[f(t) + g(t)]dt =
∫ b
af(t)dt+
∫ b
ag(t)dt
ii.∫ b
aαf(t)dt = α
∫ b
af(t)dt (para todo escalar α)
iii.∫ b
ac · f(t)dt = c ·
∫ b
af(t)dt (para todo vetor c)
iv.∫ b
a‖f(t)‖dt ≥ ‖
∫ b
af(t)dt‖
A. Fundamentos Matematicos 319
A.8 Funcoes de Multiplas Variaveis
A.8.1 Exemplos
Seja D ⊆ R2 um subconjunto do plano xy e seja f(x, y) uma funcao que
associa a cada ponto (x, y) de D um escalar. Tal funcao e dita funcao de duasvariaveis. O conjunto D e dito domınio de f . O conjuunto I = f(x, y) :(x, y) ∈ D e dito varredura de f .
Dois exemplos:
• Para D = R2, a funcao f(x, y) = xy associa um valor real a cada
elemento de D.
• Seja D = (x, y) : x2+ y2 < 1 o disco aberto de raio unitario no planoxy. A funcao f(x, y) = 1√
1−(x2+y2)esta definida dentro do disco aberto
D.
Seja D ⊆ R3 um subconjunto do espaco xyz. Uma funcao f(x, y, z)
que associa um valor real a cada ponto (x, y, z) de D e dita funcao de tresvariaveis. Da mesma forma que no caso anterior, D e o domınio de f ef(x, y, z) : (x, y, z) ∈ D e a varredura.
Como exemplo, Seja D = (x, y, z) : x2 + y2 + z2 < 1 uma bola tri-dimensional aberta de raio unitario. A cada ponto (x, y, z) ∈ D associamoso numero f(x, y, z) =
√
1− (x2 + y2 + z2).
A.8.2 Superfıcies
As superfıcies no espaco xyz definidas por equacoes da forma:
ax2 + by2 + cz2 + dxy + exz + fyz + hx+ iy + jz + k = 0 (A.11)
sao conhecidas por superfıcies quadraticas. Exemplos de superfıcies destafamılia sao: i) elipsoide; ii) hiperboloide de uma folha; iii) hiperboloide deduas folhas; iv) conica quadratica.
A.8.3 Elipsoide
O elipsoide com centro na origem e simetrico com respeito aos tres eixosconsiste das solucoes da equacao:
x2
a2+
y2
b2+
z2
c2= 1
320 A. Fundamentos Matematicos
O elipsoide ε = (x, y, z) : x2
a2+ y2
b2+ z2
c2= 1 intercepta os eixos coordenados
em 6 pontos: (±a, 0, 0), (0,±b, 0), e (0, 0,±c). Esses pontos sao conhecidospor vertices.
A superfıcie definida por ε e limitada, satisfazendo: |x| ≤ a, |y| ≤ b, e|z| ≤ c.
Todos os tracos do elipsoide definem elipses. Por exemplo, o traco noplano xy e obtido fazendo z = 0 que consiste da equacao:
x2
a2+
y2
b2= 1
a qual define uma elipse no plano xy.
Todas as secoes paralelas aos planos coordenados sao tambem elipses. Porexemplo, fazendo y = y0, teremos:
x2
a2+
z2
c2= 1− y20
b2
Esta elipse e a intersecao do elipsoide com o plano definido por y = y0.
Os numeros a, b e c sao os semi-eixos do elipsoide. Quando todos ossemi-eixos sao iguais, a superfıcie ε define uma esfera.
A.8.4 Derivadas Parciais
Seja f uma funcao de x, y e z, por exemplo, considere f(x, y, z) = 3x2y−5x cos(πy) + sin(z)x2. A derivada parcial de f com respeito a x e a funcao∂f∂x
obtida diferenciando f com respeito a x, enquanto que y e z sao tomadascomo constantes. Para o exemplo dado,
∂f
∂x= 6xy − 5 cos(πy) + 2 sin(z)x
A derivada parcial de f com respeito a y e a funcao ∂f∂y
obtida diferenciandof com respeito a y, enquanto que x e z sao tomadas como constantes. Parao exemplo dado,
∂f
∂y= 3x2 + 5πx sin(πy)
Da mesma forma para z, obtemos
∂f
∂z= x2 cos(z)
A. Fundamentos Matematicos 321
Formalmente, as derivadas parciais sao definidas em termos dos limites:
∂f
∂x= lim
h→0
f(x+ h, y, z)− f(x, y, z)
h∂f
∂y= lim
h→0
f(x, y + y, z)− f(x, y, z)
h
∂f
∂z= lim
h→0
f(x, y, z + h)− f(x, y, z)
h
Definicao A.12 Seja f : Rn → R uma funcao multivariada. Se as primei-ras derivadas parciais de f sao contınuas no ponto x, entao f e diferenciavelem x e
∇f(x) = ∂f
∂x(x)i+
∂f
∂y(x)j+
∂f
∂z(x)k
A.8.5 Diferenciacao e Gradiente
No caso de funcoes univariadas, o quociente
f(x+ h)− f(x)
h
era dito derivada de f no ponto x quando o quociente tinha limite parah → 0. No caso multivariado, podemos tomar a diferenca f(x + h) − f(x),mas o quociente
f(x+ h)− f(x)
hnao faz sentido ja que h e um vetor.
Seja o(h) um numero que e proporcional ao comprimento de h, i.e. ‖h‖.Dizemos que f : Rn → R e diferenciavel no ponto x se e somente se existeum vetor y tal que
f(x+ h)− f(x) = y · h+ o(h)
Tal vetor y, quando definido, e unico. Este vetor e dito gradiente de f noponto x e denotado por ∇f(x).
A.9 Conversao Entre Bases
A.9.1 Conversao de Numeros Inteiros
Sendo N um numero inteiro expresso em uma base S, representado porNS, deseja-se converter esse mesmo numero a base R (R 6= S), ou seja trans-formar NS em MR mantendo-se o valor do dado. Para fazermos tal conversao
322 A. Fundamentos Matematicos
Tabela A.1: Exemplo de conversao de base: (283)10 = (100011011)2n 0 1 2 3 4 5 6 7 8 9Nn 283 141 70 35 17 8 4 2 1 0An — 1 1 0 1 1 0 0 0 1
podemos lancar mao do metodo da sequencia de divisoes. Inicialmente di-vidiremos N por R, que gerara um resto A1 e um quociente N1, que depoisde dividido por R gerara um resto A2 e um quociente N2. Repetiremos esseprocesso ate chegarmos a um Nn−1 < R, que produzira um An = Nn−1. Umavez feitas todas as divisoes necessarias podemos construir o M , M = AnAn−1
. . .A1. Esse resultado pode ser melhor entendido se repararmos que:
N = R×N1 + A1
= R× (R×N2 + A2) + A1
= R× (R× (R×N3 + A3) + A2) + A1
...
= R× (R× (R× (. . . (R×Nn−1 + An−1) . . .) + A2) + A1
= R× (R× (R× (. . . (R× An + An−1) . . .) + A2) + A1
Ou seja:
N = An ×Rn−1 + An−1 ×Rn−2 + . . .+ A2 ×R + A1
Comprovando que NS = MR.
Exemplo:
Deseja-se converter o numero (283)10 para a base binaria.De acordo com o metodo das divisoes sequenciais, teremos a Tabela A.9.1Lembrando que Nn e o quociente e An e o resto da divisao de Nn−1 por
R, no caso 2.Uma vez calculados os valores de An podemos dizer que (283)10 =
(100011011)2, de acordo com M = AnAn−1 . . .A1 e 283 = 1 × 28 + 1 ×24 + 1× 23 + 1× 21 + 1× 20.
A.9.2 Conversao de Numeros Puramente Fracionarios
Como vimos, a conversao de um numero inteiro N pode ser representadapor: N = An × Rn−1 + An−1 × Rn−2 + . . . + A2 × R + A1. Por extensao,
A. Fundamentos Matematicos 323
Tabela A.2: Exemplo de conversao de base: (0.283)10 = (0.01001)2i NF ×R = R×NF Ai
-1 0.283× 2 = 0.566 0-2 0.566× 2 = 1.132 1-3 0.132× 2 = 0.264 0-4 0.264× 2 = 0.528 0-5 0.528× 2 = 1.056 1
podemos dizer que a parte fracionaria de um numero (aqui chamada de NF )tem sua conversao para a base R dada por:
NF = A−1 ×R−1 + A−2 ×R−2 + A−3 ×R−3 + . . .
Podemos definir os valores de A−1,A−2, etc por uma sequencia de multi-plicacoes, ou seja ao pegarmos o NF e multiplicarmos por R, teremos umnovo numero, o qual sua parte inteira sera igual ao fator A−1. Se subtrairmoso valor de A−1 da multiplicacao, teremos um novo numero fracionario semparte inteira, e podemos aplicar novamente o metodo. O numero de iteracoesdeterminara o numero de casas apos a vırgula (precisao) da conversao.
NF = A−1 ×R−1 + A−2 ×R−2 + A−3 ×R−3 + . . .
NF ×R = A−1 + A−2 ×R−1 + A−3 ×R−2 + . . .
R× (NF ×R− A−1) = A−2 + A−3 ×R−1 + . . .
A parte inteira de NF × R sera o valor de A−1. A parte inteira de R ×(NF ×R−A−1) sera o valor de A−2. E assim sucessivamente ate o numerodesejado de casas apos a vırgula.
Exemplo:
Deseja-se converter o numero (0.283)10 para a base binaria, com uma pre-cisao de 5 casas apos a vırgula. De acordo com o metodo das multiplicacoessequenciais, teremos a Tabela A.9.2.
Uma vez montada a tabela e facil visualizar os valores de Ai e por con-sequencia chegar a conversao desejada: (0.283)10 = (0.01001)2
A.9.3 Conversao de Numeros com Parte Fracionaria eParte Inteira
Caso um numero contenha tanto parte inteira quanto fracionaria, deve-mos proceder a conversao separadamente e juntar as duas solucoes no final,
324 A. Fundamentos Matematicos
pois:
NT = N +NF
N = An ×Rn−1 + An−1 ×Rn−2 + . . .+ A2 ×R + A1
NF = A−1 ×R−1 + A−2 ×R−2 + A−3 ×R−3 + . . .
Portanto:
NT = An ×Rn−1 + An−1 ×Rn−2 + . . .+ A2 ×R + A1
+A−1 ×R−1 + A−2 ×R−2 + A−3 ×R−3 + . . .
Exemplo:
Deseja-se converter o numero (283.283)10 para a base binaria, comuma precisao de 5 casas apos a vırgula. Utilizando os resultados ja en-contrados nos exemplos anteriores, chegamos ao resultado: (283.283)10 =(100011011.01001)2
A.9.4 Exercıcios
i. Um dado numero tem sua representacao dada por (275.65625)10, pede-se sua representacao na base binaria com precisao de 5 casas decimais.
ii. Desafio: Usando o MatLab (ou similar), implementar um algoritmoque transforme um certo numero decimal em um binario, e vice versa.
A.10 Referencias
Os conceitos apresentados neste apendice sao resumos editados e tradu-zidos do livro texto de Salas, Hille e Anderson [6]. O leitor interessando emaprofundar os topicos acima pode consultar diretamente o referido texto.
Apendice B
Exemplos de Codigo Matlab
B.1 Capıtulo 3
B.1.1 Figura 3.2
x =[];
y1 = [];
y2 = [];
y3 = [];
y4 = [];
y5 = [];
j = 0;
for k=-3:0.1:3
j = j+1;
x(j) = k;
y1(j) = exp(k);
y2(j) = exp(k) - exp(-k);
y5(j) = 0;
end
clf;
subplot(2,2,1);
plot(x,y1);
hold;
plot(x,y5);
subplot(2,2,2);
plot(x,y2);
hold;
plot(x,y5);
j=0;
for k=-2:0.1:2
j = j+1;
326 B. Exemplos de Codigo Matlab
x3(j) = k;
y3(j) = exp(k) - exp(-k) -3*k;
end
subplot(2,2,3);
plot(x3,y3);
hold;
plot(x,y5);
x4 = [];
y4b = [];
j=0;
for k=-5:0.1:5
j = j+1;
x4(j) = k;
y4(j) = cos(k) - 0.5;
y4b(j) = 0;
end
subplot(2,2,4);
plot(x4,y4);
hold;
plot(x4,y4b);
B.1.2 Metodo de Ponto Fixo para Funcao f(x) =x2/10− x+ 1
%--------------------------
% Iterative Process
x = [];
l = [];
x(1) = 1.5;
l(1) = 1;
for k=2:100
x(k) = (x(k-1)^2)/10 + 1;
l(k) = k;
end
plot(l,x);
B.1.3 Algoritmo da Biseccao
function [x] = bissec(funcao,a,b);
% BISSEC calcula a raiz de funcoes nao-lineares dentro de um
% intervalo estabelecido. Ela recebe os seguintes parametros:
%
% -> BISSEC(funcao,a,b)
B. Exemplos de Codigo Matlab 327
%
% - funcao = funcao definida por apenas uma variavel qualquer. Deve estar entre
% aspas simples.
% - a = extremo esquerdo do intervalo de avaliacao
% - b = extremo direito do intervalo de avaliacao
%
% Exemplo:
%
% >> BISSEC(’2*x^2+3*x-6’,1,3)
%
% ans %
% 1.1375
if (nargin ~= 3)
error(’A funcao BISSEC precisa de tres parametros. Mais informacoes: >> help bissec’);
end
lim=1000;
e1=10^(-10);
e2=10^(-10);
x0=a;
x1=b;
i=0;
f0=subs(funcao,x0);
f1=subs(funcao,x1);
if (f0*f1 > 0)
error(’Nao existe raiz entre a e b’);
end
while (i < lim)
if (abs(f0) <= e2)
x=x0;
break
end
if (abs(f1) <= e2)
x=x1;
break
end
if ((abs(x0-x1)) < (e1*(abs(x1))))
x=x0;
break
end
x2=(x0+x1)/2;
f2=subs(funcao,x2);
328 B. Exemplos de Codigo Matlab
if ((f2*f0) < 0)
x1=x2;
f1=f2;
else
x0=x2;
f0=f2;
end
i=i+1;
end
if (i > lim)
error(’Nao atingiu exatidao’);
end
Apendice C
Exercıcios Resolvidos
Capıtulo 2
Secao 2.1
i.
G =F
E
=(Y + Y + Y + Y + Y )−H
(X +X +X)−H
=
5
(
3
5−H
)
−H
3
(
2
3−H
)
−H
=3− 6H
2− 4H
=0
0
Indeterminacao.
ii. (a) HP25, F (10, 9,−98, 100)(a) 358200000001
(b) 0.100000000 · 10−98
(c) 0.999999999 · 10100(d) x : |x| > 0.999999999 · 10100 (e) x : 0 < |x| < 0.100000000 · 10−98
330 C. Exercıcios Resolvidos
(b) IBM 360/370, F (16, 6,−64, 63)(a) 4.026531841
(b) 0.100000 · 16−64
(c) 0.FFFFFF · 1663(d) x : |x| > 0.FFFFFF · 1663(e) x : 0 < |x| < 0.100000 · 16−64
(c) B6700, F (8, 13,−51, 77)(a) 124107374985217
(b) 0.1000000000000 · 8−51
(c) 0.7777777777777 · 1077(d) x : |x| > 0.7777777777777 · 1077(e) x : 0 < |x| < 0.1000000000000 · 8−51
iii. 0.110 para ambos os casos
Secao 2.4.1
i. ∇(a) = 5
8∆(a) =
3
4o(a) =
3
4∇(b) = 5
8∆(b) =
3
4o(b) =
5
8
ii. EA(∇(a)) =5
56ER(∇(a)) =
1
8
EA(∆(a)) =1
28ER(∆(a)) =
1
20
EA(o(a)) =5
56ER(o(a)) =
1
8
EA(∇(b)) =1
24ER(∇(b)) =
1
16
EA(∆(b)) =1
12ER(∆(b)) =
1
8
EA(o(b)) =1
24ER(o(b)) =
1
16
iii. DIGSE(x) = 4DIGSE(y) = 4
iv. Sim
C. Exercıcios Resolvidos 331
Secao 2.8
Exercıcio 2.1 Nao. Aumento de precisao nao implica aumento de exatidao.
Exercıcio 2.2 Nao. Ha muitos algoritmos mais exatos porem com custostemporais maiores para chegar a solucao.
Exercıcio 2.3 Erro Inerente: Erro intrınseco ao modelo matematico ado-tado. Para corrigi-lo, faz-se necessaria uma revisao do modelo identifi-cando as origens de tal erro.Erro de Discretizacao: Erro que aparece quando substitui-se umprocesso infinito por um processo finito. Para diminui-lo, deve ser au-mentado o numero de iteracoes ou termos relevantes.Erro de Arredondamento: Surge ao trabalharmos com maquinasdigitais e sistemas de ponto flutuante, onde faz-se necessario o arre-dondamento. Pode ser minimizado utilizando o arredondamento parao numero de maquina mais proximo (ox).
Exercıcio 2.6 17
Exercıcio 2.7 28.8125; 0.421875; 1000011; 1011101.001
Exercıcio 2.10
yn =
∫ 2
0
nn logn xex−1dx =
∫ 2
0
xnex−1dx
y1 =
∫ 2
0
xex−1dx =1 + e2
e
yn =
∫ 2
0
xnex−1dx = 2ne− nyn−1
y1 =1 + e2
e
y2 = 22e− 2y1 =2(e2 − 1)
e
y3 = 23e− 3y2 =2(e2 + 3)
e
y4 = 24e− 4y3 =8(e2 − 3)
e
Exercıcio 2.11 (a) 0 < | x| < 0.250 (b) | x| > 3.5 (c) 0.250
332 C. Exercıcios Resolvidos
(d) 0.3125
(e) 0.375
Exercıcio 2.12 b1 precisa ser maior que zero pois se fosse zero terıamos duasrepresentacoes diferentes em ponto flutuante para o mesmo numero, oque e nao desejavel.
Exercıcio 2.13 i. Sim
ii. Nao
iii. Sim
iv. Sim
Exercıcio 2.14 Item a)
f(x+∆x) =√x sin(x) +
[
1
2√xsin(x) +
√x cos(x)
]
∆x+
+
[ −14(x)
3
2
sin(x) +cos(x)
2√x
+1
2√xcos(x)−√x sin(x)
]
∆x2
2
f(x) =√x0 sin(x0) +
[
1
2√x0
sin(x0) +√x0 cos(x0)
]
(x− x0) +
+
[ −14(x0)
3
2
sin(x0) +cos(x0)
2√x0
+1
2√x0
cos(x0)−√x0 sin(x0)
]
(x− x0)2
2
=
√
π
2sin(π
2
)
+
[
1
2√
π2
sin(π
2
)
+
√
π
2cos(π
2
)
]
(
x− π
2
)
+
−14(
π2
)3
2
sin(π
2
)
+cos(
π2
)
2√
π2
+1
2√
π2
cos(π
2
)
−√
π
2sin(π
2
)
(
x− π2
)2
2
= 1.2533 + 0.3985(
x− π
2
)
− 1.3803(x− π
2 )2
2
Item b) f(
π3
)
= 0.8552. Item c) f(
π3
)
= 0.8862, ER = 3.50.
Exercıcio 2.15 Conversao de numeros na base 4 para base 5 em ponto flutuantes.Tem-se os algorismos na base a ser transformada:
N4 = 0.132
Para facilitar o processo converte-se esse numero a uma base familiar(base 10, porexemplo):
N4 → N10 = 0× 40 + 1× 4−1 + 3× 4−2 + 2× 4−3 = 0 +1
4+
3
16+
2
64=
8 + 6 + 1
32=
15
32= 0, 46875
C. Exercıcios Resolvidos 333
A partir do numero obtido, aplica-se o metodo de conversao ja conhecido(base 10para outra base qualquer):
i. O numero escrito na base 10 e multiplicada pelo numero de algorismospossıveis na nossa base(5, para base 5, 2 para base 2);
ii. Do numero resultante da multiplicacao subtrai-se o maior numero inteiropossıvel que ainda o mantenha positivo;
iii. Esse numero inteiro e o primeiro elemento da mantissa do algorismo ja con-vertido e a mantissa resultante da subtracao passa novamente pelos processos1,2,3.
0, 46873 ∗ 5→ 2, 34375⇒ 20, 34375 ∗ 5→ 1, 71875⇒ 10, 71875 ∗ 5→ 3, 59375⇒ 30, 59375 ∗ 5→ 2, 96875⇒ 20, 96875 ∗ 5→ 3, 84375⇒ 4
Logo, o numero N4 = 0, 132, N10 =0, 46875 em base 5 e 0, 21324∗...
1
5+
1
25+
1
125+
1
625+
1
3125
*O numero obtido atraves desse metodo possui ”infinitos”algorismo, visto que po-
emos multiplicar ”infinitamente”a mantissa por 54, logo o valor resultante, no seu
reconvertidos sera uma aproximacao do valor real. Entretanto, existem casos em
que a mantissa assume o valor zero, logo nesse caso o numero tem dıgitos finitos.
334 C. Exercıcios Resolvidos
Capıtulo 3
Secao 3.9
Exercıcio 3.1 Discordo. Ha casos onde o Metodo de Newton nao convergepara a solucao entrando em lacos infinitos ou divergindo.
Exercıcio 3.2
xk+1 = xk − f(xk)
f ′(xk)= xk −
√xk
1
2√xk
= xk − 2xk = −xk se x > 0
xk+1 = xk − f(xk)
f ′(xk)= xk +
√−xk
1
2√
−xk
= xk − 2xk = −xk se x < 0
a) Sim. x = 0b) Nao
c) Sim. x = ℜ− 0
Exercıcio 3.3 Discordo.
Exercıcio 3.4 x∗ = 0.56116456934659
Exercıcio 3.5 x = 1.8
Exercıcio 3.6
(x− x2)2 − 3x2 − 5x− 5 = 0
x4 − 2x3 − 2x2 − 5x− 5 = 0
Aplicando-se o Metodo da Bisseccao na equacao acima com (a, b) =(−1.5, 0) tem-se como solucao z∗ = (−0.9006426,−1.7117997).
Exercıcio 3.7
g(x) = x+ c(x)f(x)
g(x) = x+ (xe−x)
(
− 1
e−x(1 + x)
)
g(x) =x2
x+ 1
Para o ponto fixo convergir para uma solucao com x0 ∈ I = [0, 1), afuncao deve obedecer a tres condicoes:
C. Exercıcios Resolvidos 335
i. Deve ser contınua em I.
Visivelmente satisfeita.
ii. g(I) ∈ I
Como g(0) = 0 e g(1) = 0.5 e todos os outros pontos de g(I)estao dentro de I, a condicao 2 e satisfeita.
iii. |g′(I)| < 1
g′(x) =x2 + 2x
(x+ 1)2
Como |g′(0)| = 0 e |g′(1)| = 0.75 e todos os outros pontos de g′(I)estao dentro de I, a condicao 3 e satisfeita.
Exercıcio 3.8 Pode-se calcular a raiz de um numero xs pelo metodo deNewton.
y =√xs
y2 = xs
y2 − xs = 0
Aplicando o Metodo de Newton na equacao f(y) = y2 − xs acimavisando encontrar uma solucao positiva yn positiva:
yn+1 = yn −f(yn)
f ′(yn)
yn+1 = yn −y2n − xs
2yn
yn+1 =1
2
(
yn +xs
yn
)
Se iterar-se esta funcao a partir de um chute inicial y0 proximo asolucao, o metodo ira convergir para a solucao ideal.
Exercıcio 3.9 Implemente em uma plataforma computacional.
Exercıcio 3.10 ∇F (x, y) =
[
∂f1/∂x ∂f1/∂y∂f2/∂x ∂f2/∂y
]
336 C. Exercıcios Resolvidos
∇F =
[
e−x2−y2 − 2xe−x2−y2(x− y + 14) −e−x2−y2 − 2ye−x2−y2(x− y + 1
4)
4x − sin y
]
∇F (1, 0) =
[
−0.55181916 −0.367879444 0
]
F (1, 0) =
[
0.459849303
]
Para calcular o primeiro iterando utiliza-se a formula:
[
x1
y1
]
=
[
x0
y0
]
−∇F−1(x0, y0) · F (x0, y0)
=
[
10
]
−[
0 0.25−2.71828183711 −0.375
]
·[
0.459849303
]
=
[
0.252.375
]
Exercıcio 3.11
i) Falso
ii) Falso
iii) Falso
iv) Falso
v) Falso
Exercıcio 3.12 Substituindo as expressoes:
f(x) = x3 + 2.21x+ 2(5.3ex − x)
= x3 + 0.21x+ 10.6ex
Basta aplicar algum metodo numerico para encontrar um x∗ tal quef(x∗) = 0.
Exercıcio 3.13
P (λ) = −λ5 + 2λ4 + 72λ3 + 34λ2 − 647λ− 918
autovalores(A) = −2.2307, −2, −6.4588, 3.4468, 9.2427
Exercıcio 3.14 Desenvolver em uma plataforma computacional.
C. Exercıcios Resolvidos 337
Exercıcio 3.15 O problema consiste em:
min P (x, y) = min πx+ 2x+ 2y
A(x, y) = 2xy = 3.8
Fazendo as devidas substituicoes:
f(x) = πx+ 2x+3.8
x
f ′(x) = π + 2− 3.8
x2
f ′′(x) =7.6
x3
Note que para x > 0, f ′′(x) esta crescendo, entao f(x) e convexa.Portanto, o ponto de mınimo pode ser encontrado fazendo f ′(x) = 0.
f ′(x) = 0
π + 2− 3.8
x2= 0
x =
√
3.8
π + 2
Tem-se que x = 0.859694 e y = 2.210088.
Exercıcio 3.17 O processo iterativo advem da aplicacao do metodo de New-ton para computar f(x) =
√x.
a) Primeiramente, observe que g(y) e continua em I e portanto nosresta mostrar que g(y) ∈ I para todo y ∈ I.
g(y) ∈ I ⇔ 1 < g(y) < x
⇔ 1 <y2 + x
2y< x
1 < (y2 + x)/2y ⇔ 2y < y2 + x⇔ y2− 2y+ x > 0. Analisando asraızes da funcao quadratica, temos que ∆ = b2 − 4ac = 4− 4x <0⇔ x > 1. Portanto a quadratica tem somente raızes complexas esendo convexa nunca assumira valor negativo, verificando-se assimque 1 < (y2 + x)/2y para todo y ∈ I.
Por outro lado, (y2 + x)/2y < x ⇔ y2 + x < 2yx ⇔ y2 − 2xy +x < 0. Analisando as raızes da funcao quadratica, temos que∆ = b2 − 4ac = (−2x)2 − 4x = 4x2 − 4x = 4x(x − 1). ∆ > 0 ⇔
338 C. Exercıcios Resolvidos
4x2− 4x > 0⇔ 4x2 > 4x⇔ x2 > x⇔ |x| > 1, que e verificado jaque x > 1. Considere as duas raızes da quadratica dadas por:
y′ =−b+
√∆
2a=
2x+√
4(x2 − x)
2
= x+√x2 − x
> x (ja que x > 1)
y′′ =−b−
√∆
2a=
2x−√
4(x2 − x)
2
= x−√x2 − x
Note que:
y′′ > 1⇔ x−√x2 − x > 1
⇔ (x− 1) >√x2 − x
⇒ (x− 1)2 >√x2 − x
2
⇔ x2 − 2x+ 1 > x2 − x
⇔ −2x+ 1 > −x⇔ x < 1
Assim, a raiz y′′ ≤ 1 e a raiz y′ > x. Ja que a quadratica y2−2xy+x < 0 e convexa, na regiao definida pelo intervalo I = (1, x) estaassume valor estritamente negativo e, portanto, (y2 + x)/2y < x.
O desenvolvimento acima mostra que g(y) e contınua e g(I) ⊆ I,garantindo a existencia de um ponto fixo em I.
C. Exercıcios Resolvidos 339
Capıtulo 4
Secao 4.19
Exercıcio 4.1
a) Aplicando na equacao Diofantina, tem-se:
(a0+a1s)(d0+d1s+d2s2)+(b0+b1s)(n0+n1s+n2s
2) = δ0+δ1s+δ2s2+δ3s
3
Por igualdade de polinomios:
a0d0 + b0n0 = δ0
a1d0 + b0d1 + b1n0 + b0n1 = δ1
a0d2 + a1d1 + b0n2 + b1n1 = δ2
a1d2 + b1n2 = δ3
Escrevendo em modo matricial:
d0 0 n0 0d1 d0 n1 n0
d2 d1 n2 n1
0 d2 0 n2
a0a1b0b1
=
δ0δ1δ2δ3
b) Pelos dados fornecidos:
n0 = 1 n1 = 1 n2 = 0
d0 = 1 d1 = 2.5 d2 = 1
δ0 = 40 δ1 = 34 δ2 = 10 δ3 = 1
Substituindo na matriz:
1 0 1 02.5 1 1 11 2.5 0 10 1 0 0
a0a1b0b1
=
4034101
Apos aplicar o Metodo de Gauss com pivoteamento:
A(s) = −29 + s
B(s) = 69 + 36.5s
340 C. Exercıcios Resolvidos
c)
1 01 10 1
[
b0b1
]
=
40337.5
Exercıcio 4.2
a) O criterio das linhas diz que dado um sistema de equacoes Ax = b,se
n∑
j=1 ; j 6=i
| aij| < | aii| , i = 1, 2, ..., n
entao o Metodo de Gauss-Seidel gera uma sequencia convergente.
Aplicando-o para as linhas da matriz:
1a linha) |0.7|+ | − 1|+ |1| < |3| Verdadeiro2a linha) |1|+ | − 1|+ |0| < |2| Falso3a linha) |1|+ | − 1|+ |0.7| < |3| Verdadeiro4a linha) |1|+ |0|+ |1| < |2| Falso
Nao se pode afirmar nada sobre os Metodos de Jacobi e Gauss-Seidel a partir do criterio das linhas pois a condicao suficientenao foi corroborada.
b) Aplicando o criterio de Sassenfeld obteve-se os seguintes β:
β1 = 0.9 β21 = 0.45 β3 = 0.45 β4 = 0.675
Por este criterio, pode-se concluir que ha convergencia garantida.
c)[
t11 t21 v11 v21]t=
[
1
3
1
6− 1
18− 5
36
]t
Exercıcio 4.3
a) Sim. Vide Teorema 4.5.
b) Sim. A convergencia e uma caracterıstica intrınseca ao sistema,independente do chute inicial. Se converge para um ponto inicialdiferente da solucao, convergira para todos.
C. Exercıcios Resolvidos 341
Exercıcio 4.4
||x− x′||||x|| ≤ κ(A)
||b− b′||||b||
||x− y|| ≤ κ(A)||x|| ||b− (b−∆b)||||b||
||x− y|| ≤ κ(A)||x|| ||∆b||||b||
S =
y ∈ ℜn : ||x− y|| ≤ κ(A)||x|| ||∆b||||b||
Exercıcio 4.5 Ometodo de Jacobi pode portar-se como o metodo de Gauss-Seidel. Para tanto, o chute inicial x0 for igual a solucao x∗.
Exercıcio 4.6 A solucao mais sensata e a fatoracao LU da matriz A, o quefacilita a resolucao de diferentes problemas com matrizes b diferentes.Caso optasse por outros metodos, como Eliminacao de Gauss, a matrizA teria que ser processada a cada modelo diferente.
Exercıcio 4.7 Falso. O metodo iterativo pode ou nao convergir casodet(A) = 0. Para tanto, devem ser analisados os outros criterios comocriterio das linhas, diagonal dominante ou criterio de Sassenfeld.
Exercıcio 4.8 Desenvolver sobre uma plataforma computacional. A solucaoe:
[
x1 x2 x3 x4
]
=[
−0.6126 1.9404 1.5985 1.2270]
Exercıcio 4.9 ||A||∞ = 24 ||B||1 = 40 ||C|| = 4
Exercıcio 4.10 A matriz B = −D−1(A − D) define o processo itera-tivo de Jacobi com preparador classico. Note que ‖B‖1 = 1.1 e‖B‖∞ = 1.1714, nao permitindo concluir que o processo converge.No entanto, ‖B‖2 =
√
λmax(BTB) = 0.9530 < 1, garantindo que oprocesso iterativo xk+1 = Bxk +D−1b e convergente.
Exercıcio 4.11
i. κ(A) = ||A||.||A−1||ii. Nao. O sistema tera obrigatoriamente infinitas solucoes, nao po-
dendo ter apenas uma.
342 C. Exercıcios Resolvidos
iii. Sim. Um sistema linear tem uma solucao, infinitas solucoes ounenhuma solucao.
iv. Correto.
Exercıcio 4.12
i. rank(A) = rank([A|b]) < n
ii. A matriz A deve ser definida positiva.
iii. U =
1 1 30 2 20 0 1
Para b1: x1 =[
7.25 2.75 −3]
Para b2: x2 =[
16.25 6.75 −7]
Exercıcio 4.13[
fxfy
]
= CBA
[
∆Sx
∆Sy
]
onde: C =
[
sin θ1 sin θ2 − cos θ3− cos θ1 cos θ2 − cos θ3
]
B =
k1 0 00 k2 00 0 k3
A =
sin θ1 − cos θ1sin θ2 cos θ2− cos θ3 − sin θ3
Resolvendo o sistema para as condicoes especificadas, chega-se a:
∆S =
[
0.01620.0275
]
Exercıcio 4.14
i. FALSO
ii. VERDADEIRO
iii. VERDADEIRO
iv. VERDADEIRO
v. FALSO
C. Exercıcios Resolvidos 343
vi. FALSO
vii. FALSO
viii. VERDADEIRO
Exercıcio 4.15
Avn = λnvn
(A− λnI)vn = 0
A− λ1I 0 · · · 00 A− λ2I · · · 0
0 0. . . 0
0 0 · · · A− λnI
v1v2...vn
=
00...0
Exercıcio 4.16 Falso. Testar os diferentes preparadores para o sistema:
[
4 11 4
] [
x1
x2
]
=
[
00
]
O sistema com preparador unitario nao convirgira enquanto o sistemacom preparador classico convirgira.
344 C. Exercıcios Resolvidos
Capıtulo 5
Secao 5.10
Exercıcio 5.1
1 t1 t21 t31 0 0 0 01 t2 t22 t32 0 0 0 01 t3 t23 t33 0 0 0 01 t4 t24 t34 −1 −t4 −t24 −t340 1 2t4 3t24 0 −1 −2t4 −3t240 0 0 0 1 t5 t25 t350 0 0 0 1 t6 t26 t360 0 0 0 1 t7 t27 t37
c0c1c2c3d0d1d2d3
=
y1y2y300y5y6y7
Exercıcio 5.2[
x1, k+1
x2, k+1
]
=
[
x1, k
x2, k
]
−[
∂f1/∂x1 ∂f1/∂x2
∂f2/∂x1 ∂f2/∂x2
]−1 [f1f2
]
onde:
∂f1/∂x1 =2x1, k
(x21, k + 2x2
2, k + 1) log(10)
∂f1/∂x2 =4x2, k
(x21, k + 2x2
2, k + 1) log(10)
∂f2/∂x1 = −2x1, k
∂f2/∂x2 = 1
f1 = log(x21, k + 2x2
2, k + 1)− 1
2f2 = x2, k − x2
1, k + 0.2
Exercıcio 5.3
xk+1
yk+1
zk+1
=
xk
ykzk
−
∂f1/∂x ∂f1/∂y ∂f1/∂z∂f2/∂x ∂f2/∂y ∂f2/∂z∂f3/∂x ∂f3/∂y ∂f3/∂z
−1
f1f2f3
xk+1
yk+1
zk+1
=
xk
ykzk
−
2xk 6zky2k + 4y3k 2y3k
9x2k − 12xkzk −3y2k −6x2
k
1 −1 −2
−1
x2k + 2zky
3k + y4k
3x3k − 6x2
kzk − y3kxk − 2zk − yk
C. Exercıcios Resolvidos 345
Exercıcio 5.4 Faz sentido utilizar P quando rank(A) = rank([A|b]) < n,ou seja, tem-se um sistema subdimensionado com infinitas solucoes.Sao aplicaveis em sistemas de otimizacao onde procura-se a solucao demenor norma.
Exercıcio 5.5 Faz sentido utilizar P quando rank(A) < rank([A|b]), ouseja, nao ha solucao para o sistema. Neste caso tenta-se minimizar oerro da solucao encontrada. Tem aplicacoes em problemas similarescomo ajuste de curvas, ajuste de polinomios e identificacao de sistemasdiscretos por predicao.
Exercıcio 5.7
[
1 1 · · · 1 1392
372· · · 3
212
]
2×20
vx1vx2...vx19vx20
20×1
=
[
01
]
[
1 1 · · · 1 1392
372· · · 3
212
]
2×20
vy1vy2...vy19vy20
20×1
=
[
04
]
Exercıcio 5.8
a) 13.1816 e 0.1517
b) 13.1816
c) 13.1816
Exercıcio 5.9 E possıvel.
Cj = cj ⇔ lnCj = ln cj ⇔ ln(exayj bkj g
zjd
tj) = ln cj
x+ y ln aj + k ln bj + z ln gj + t ln dj = ln cj
O problema se constitui entao em min ||Aw − b|| 2, aonde
A =
1 ln a1 ln b1 ln g1 ln d11 ln a2 ln b2 ln g2 ln d2
...1 ln am ln bm ln gm ln dm
w =
xykzt
b =
ln c1ln c2...
ln cn
346 C. Exercıcios Resolvidos
Exercıcio 5.11
i. FALSO
ii. VERDADEIRO
iii. FALSO
iv. FALSO
v. VERDADEIRO
vi. VERDADEIRO
vii. FALSO
viii. FALSO
ix. VERDADEIRO
Exercıcio 5.12 Se g(x) = −f ′′(x) e h(x) = f ′(x) entao existe x tal que:
g(x) < 0 ⇔ f ′′(x) > 0
h(x) = 0 ⇔ f ′(x) = 0
Entao x satisfaz a condicao suficiente de segunda ordem para mınimolocal. Entao pode-se aplicar o pacote de software.
C. Exercıcios Resolvidos 347
Capıtulo 6
Secao 6.5
Exercıcio 6.1
a) Calculando a Cota de Laguerre-Thibault:
p (x) = x7 + 4x6 − 7x5 − 34x4 − 24x3 − x+ 1
S = (+,+,−,−,−,−,+) ⇒ T = 2
p (−x) = −x7 + 4x6 + 7x5 − 34x4 + 24x3 + x+ 1
S ′ = (−,+,+,−,+,+,+) ⇒ T ′ = 3
Possui 2 ou nenhuma raızes positivas e, 3 ou 1 raızes negativas.
Por a5 = 0, pode-se concluir pela Regra da Lacuna que para haverraızes complexas a4a6 > 0.
a4 · a6 > 0 ⇒ (−24) · (−1) > 0 ⇒ 24 > 0
Possui raızes complexas conjugadas.
VERDADEIRO
b) Pela Cota de Kojima, tem-se a seguinte serie de fatores:4, 2.646, 3.24, 2.213, 1, 1. A soma dos dois maiores fatores e7.24. Desta forma, pode-se afirmar que o modulo de toda e qual-quer raiz de p (x) e menor que 7.24.
VERDADEIRO
Exercıcio 6.2
p (x) = 2x7 + 4x6 − 7x5 + 12x4 − x− 1
S = (+,+,−,+,−,−) ⇒ T = 3
p (−x) = −2x7 + 4x6 + 7x5 + 12x4 + x− 1
S ′ = (−,+,+,+,+,−) ⇒ T ′ = 2
Possui 3 ou 1 raızes positivas e, 2 ou nenhuma raızes negativas.
Por a5 e a4 serem nulos, pode-se concluir pela Regra da Lacuna que haraızes complexas conjugadas.
348 C. Exercıcios Resolvidos
Pela Cota de Kojima, tem-se a seguinte serie de fatores:2, 1.8708, 1.8171, 0.8909, 0.9057. A soma dos dois maiores fatores e3.8708. Desta forma, pode-se afirmar que o modulo de toda e qualquerraiz de p (x) e menor que 4.
a) VERDADEIRO
b) FALSO
c) VERDADEIRO
d) VERDADEIRO.
Exercıcio 6.3
q(x) = (2x5 + 6x4 − 10x3 − 30x2 + 8x1 + 24)x2
h(x) = 2x5 + 6x4 − 10x3 − 30x2 + 8x1 + 24
S = (+,+,−,−,+,+) ⇒ T = 2
h(−x) = −2x5 + 6x4 + 10x3 − 30x2 − 8x1 + 24
S ′ = (−,+,+,−,−,+) ⇒ T ′ = 3
a) q(x) tem duas ou nenhuma raiz positiva
b) q(x) tem tres ou uma raiz positiva
c) Nao possui raızes complexas (verificar com a Regra da Lacuna)
d) As raızes sao 0, 0, 1, 2, −1, −2, −3 (tentar encontrar as cotassuperior e inferior)
e) Nao ha raızes complexas.
C. Exercıcios Resolvidos 349
Capıtulo 7
Secao 7.7
Exercıcio 7.1
i) 4.4816890
ii) 5.0536689
Exercıcio 7.2
a) 20598
b) 20851
c) Pela Esquerda = 15479 Pela Direita = 26223.
Exercıcio 7.3 Considerando ξ = 1, por ser aonde f ′′(ξ) possui maiormodulo, tem-se que
max ETTS = 0.3372
Exercıcio 7.4
f(x) = 24 − 3x3 + 2x2 − x+ 1− sin(
x− π
2
)
f ′(x) = 8x3 − 9x2 + 4x− 1− cos(
x− π
2
)
f ′′(x) = 24x2 − 18x+ 4 + sin(
x− π
2
)
Considerando ξ = π, por ser aonde f ′′(ξ) possui maior modulo, e h = π2:
max ETTS =
(
π2
)3
12×(
24π2 − 18π + 4 + sin(π
2
))
max ETTS = 59.85562
350 C. Exercıcios Resolvidos
Capıtulo 8
Secao 8.10
Exercıcio 8.2 i(3.8) = 0.0043
Exercıcio 8.3 [Item a)] Partindo das equacoes diferenciais dadas no pro-blema reescritas abaixo:
(M +m) y +mlθ = u
2lθ − 2gθ + y = 0
Primeiramente e preciso modificar as variaveis utilizadas, como suge-rido no prrblema. As novas variaveis utilizadas sao as seguintes:
y = x1
y = x2
θ = x3
θ = x4
Com estas novas variaveis, as equacoes ficam da seguinte forma:
(M +m) x2 +mlx4 = u2lx4 − 2gx3 + x2 = 0
Pode-se manipular estas duas equacoes de forma a obter um sistemada forma x = F (x, u). Isolando x2 da primeira equacao e substituindona segunda equacao obtem-se a seguinte expressao:
x4 =2g (M +m)
l (2M +m)x3 −
u
l (2M +m)
Realizando o mesmo procedimento, agora isolando x4 da segundaequacao e substituindo na primeira equacao, tem-se o seguinte resul-tado:
x2 =−mg
(
M + m2
)x3 +u
(
M + m2
)
Sabendo que x1 = x2 e x3 = x4 pode-se montar o seguinte sistemas dotipo x = F (x, u):
x1
x2
x3
x4
=
0 1 0 00 0 −mg
M+m2
0
0 0 0 1
0 0 2g(M+m)l(2M+m)
0
·
x1
x2
x3
x4
+
01
(M+m2 )
0−1
l(2M+m)
· u
C. Exercıcios Resolvidos 351
[Item b)] Substituindo os valores das variaveis do problema e da leide controle u = −kx, pode-se simplificar as equacoes, chegando a umproblema do tipo x = (A− bk) x, dado por
x1
x2
x3
x4
=
0 1 0 00, 3085 0, 9908 47, 7577 10, 7910
0 0 0 1−0, 3085 −0, 9908 −28, 1577 −10, 7910
·
x1
x2
x3
x4
(C.1)
Este sistema de equacoes define o movimento do pendulo invertidoao longo do tempo. Para calcular estas saıdas aplica-se o metodode Runge-Kutta para equacoes diferenciais do tipo x = F (x, t) comcondicao inicial x (t0) = x0 conhecida e h dado como o intervalo deintegracao .
Aplicando o metodo chega-se as seguintes expressoes:
tk+1 = tk + h
xk+1 = xk +k1 + k2
2k1 = h · F (xk, tk)
k2 = h · F (xk + k1, tk+1)
As condicoes iniciais do problema sao conhecidas e dadas por:
t0 = 0
h = 0, 1
x0 =[
0, 2 0 0, 5 0]T
x (0) = x0 =[
0 23, 9406 0 −14, 1406]T
onde x0 foi calculado com o sistema de equacoes (C.1). Pode-se exem-plificar a solucao do problema calculando a primeira iteracao. Paraeste caso tem-se os seguintes valores:
t1 = 0, 1
k1 = h · x0
=[
0 2, 3941 0 −1, 4141]T
k2 = h · x1
= h · x (x0 + k1, t1) =[
0, 2394 1, 1053 −0, 1414 −0, 1253]T
x (0, 1) =[
0, 3197 1, 7497 0, 4293 −0, 7697]T
352 C. Exercıcios Resolvidos
A tabela a seguir apresenta alguns pontos da trajetoria de x.
x (0) x (0, 1) · · · x (9, 9) x (10)
x1 0, 2 0, 3197 · · · −0, 0845 −0, 0896x2 0, 0 1, 7497 · · · −0, 0553 −0, 0483x3 0, 5 0, 4293 · · · 0, 0037 0, 0035x4 0, 0 −0, 7697 · · · −0, 0022 −0, 0021
A seguir esta um grafico representando a evolucao de x (t) no intervalode 0 a 10 segundos para as condicoes iniciais dadas.
0 1 2 3 4 5 6 7 8 9 10−2
−1
0
1
2
3
4
5
Tempo (s)
Am
plitu
de
Trajetórias de x(t)
x1(t)x2(t)x3(t)x4(t)
Figura C.1: Trajetoria do sistema pendulo invertido.
[Item c)] Modificando agora a condicao inicial x0 e aplicando o mesmoprocedimento chega-se ao grafico de x (t) dado a seguir. Percebem-sevariacoes em relacao as amplitudes se comparadas ao grafico anterior,porem apresentando comportamento semelhante ao longo da trajetoria.
x (0) x (0, 1) · · · x (9, 9) x (10)
x1 −0, 3 −0, 1094 · · · −0, 1201 −0, 1286x2 0, 0 2, 7898 · · · −0, 0908 −0, 0800x3 0, 8 0, 6878 · · · 0, 0058 0, 0054x4 0, 0 −1, 2218 · · · −0, 0033 −0, 0032
C. Exercıcios Resolvidos 353
0 1 2 3 4 5 6 7 8 9 10−2
−1
0
1
2
3
4
5
6
7
Tempo (s)
Am
plitu
de
Trajetórias de x(t)
x1(t)x2(t)x3(t)x4(t)
Figura C.2: Trajetoria do sistema pendulo invertido.
Exercıcio 8.4
x1 = V = x2
x2 = V = −45x2 − 1
15x1 − 4e−2t
a) V (5) = −0.4365m/s V (5) = −0.0306m/s2
b) V (5) = −0.4343m/s V (5) = −0.0307m/s2
Top Related