Fundamentos de Análise Numérica (I)

Fundamentos-Analise-Numerica-1.pdf

Fundamentos de Análise Numérica (I) Teoria e Exercícios Carlos J. S. Alves Versão de 2001/2002 Departamento de Matemática Instituto Superior Técnico, Universidade Técnica de Lisboa Av. Rovisco Pais 1, 1049-001 LISBOA, PORTUGAL Versão também disponível na AEIST - Associação de Estudantes do Instituto Superior Técnico Ind´ ıce 1 Introdu¸˜o ca 1.1 Representa¸˜o de n´meros . . . . . . . . . . . . . . . . ca u 1.1.1 N´meros reais . . . . . . . . . . . . . . . . . . . u 1.1.2 Sistema de ponto flutuante . . . . . . . . . . . . 1.1.3 Tipos de arredondamento . . . . . . . . . . . . 1.1.4 Erro absoluto e erro relativo . . . . . . . . . . . 1.2 Algoritmos e propaga¸˜o de erros . . . . . . . . . . . . ca 1.2.1 Propaga¸˜o do erro em fun¸˜es de uma vari´vel ca co a 1.2.2 Propaga¸˜o do erro em opera¸˜es . . . . . . . . ca co 1.2.3 Propaga¸˜o de erros de arredondamento . . . . ca 1.2.4 Algoritmos e rotinas elementares . . . . . . . . 1.3 Condicionamento e estabilidade num´rica . . . . . . . . e 1.4 Exerc´ ıcios . . . . . . . . . . . . . . . . . . . . . . . . . 2 Determina¸˜o de Ra´ ca ızes Reais e Complexas 2.1 Convergˆncia de sucess˜es . . . . . . . . . . . e o 2.1.1 Ordem de convergˆncia . . . . . . . . . e 2.1.2 Tempo de c´lculo . . . . . . . . . . . . a 2.2 Teoremas elementares e a localiza¸˜o de ra´ ca ızes 2.3 M´todo da Bissec¸˜o . . . . . . . . . . . . . . e ca 2.4 M´todo da Falsa Posi¸˜o . . . . . . . . . . . . e ca 2.4.1 M´todo da falsa posi¸˜o modificado . . e ca 2.5 M´todo do ponto fixo num intervalo limitado . e 2.5.1 Acelera¸˜o de convergˆncia . . . . . . . ca e 2.6 M´todo de Newton . . . . . . . . . . . . . . . e 2.6.1 Convergˆncia do m´todo de Newton . e e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 4 5 6 7 8 10 11 12 14 15 21 23 26 29 33 35 37 40 46 47 56 58 59 64 67 68 72 75 78 80 82 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7 2.8 2.6.2 F´rmula de erro do m´todo de Newton . . . . o e 2.6.3 M´todo de Newton no caso de zeros m´ltiplos e u 2.6.4 M´todo da Secante . . . . . . . . . . . . . . . e 2.6.5 M´todos de ordem superior . . . . . . . . . . e M´todos para Equa¸˜es Alg´bricas . . . . . . . . . . e co e 2.7.1 M´todo de Bernoulli . . . . . . . . . . . . . . e 2.7.2 Condicionamento no c´lculo de ra´ a ızes . . . . . Generaliza¸˜o a ra´ complexas . . . . . . . . . . . ca ızes 1 2.9 2.8.1 M´todo de Newton nos complexos . . . . . . . . . . . . . . . . . . . . 85 e Exerc´ ıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 95 97 98 101 103 104 105 109 111 113 115 116 117 122 122 126 128 132 132 134 141 145 145 149 151 153 158 160 164 164 168 169 174 181 183 183 184 186 187 3 Teorema do Ponto Fixo de Banach 3.1 Espa¸os Normados . . . . . . . . . . . . . . . . . . . c 3.1.1 No¸˜es Topol´gicas em Espa¸os Normados . . co o c 3.1.2 Normas equivalentes . . . . . . . . . . . . . . 3.2 Espa¸os de Banach . . . . . . . . . . . . . . . . . . . c 3.2.1 Operadores Cont´ ınuos . . . . . . . . . . . . . 3.2.2 Operadores Lineares . . . . . . . . . . . . . . 3.3 M´todo do Ponto Fixo e o Teorema de Banach . . . . e 3.4 Deriva¸˜o de Fr´chet . . . . . . . . . . . . . . . . . . ca e 3.4.1 Corol´rio do Teorema do Ponto Fixo . . . . . a 3.4.2 Comportamento assimpt´tico da convergˆncia. o e 3.4.3 Convergˆncia de ordem superior . . . . . . . . e 3.4.4 M´todo de Newton . . . . . . . . . . . . . . . e 3.5 Exerc´ ıcios . . . . . . . . . . . . . . . . . . . . . . . . 4 Resolu¸˜o de Sistemas de Equa¸oes ca c˜ 4.1 Normas de Matrizes . . . . . . . . . . . . . . . . . . . . . . . 4.2 M´todos Iterativos para Sistemas de Equa¸˜es N˜o Lineares e co a 4.2.1 M´todo de Newton para Sistemas de Equa¸˜es . . . . e co 4.3 M´todos Iterativos para Sistemas Lineares . . . . . . . . . . e 4.3.1 M´todos de Jacobi e Gauss-Seidel . . . . . . . . . . . e 4.3.2 Convergˆncia dos M´todos de Jacobi e Gauss-Seidel . e e 4.3.3 M´todos de Relaxa¸˜o e SOR . . . . . . . . . . . . . e ca 4.4 M´todos Directos para Sistemas Lineares . . . . . . . . . . . e 4.4.1 Condicionamento de um Sistema Linear . . . . . . . 4.4.2 M´todo de Elimina¸˜o de Gauss . . . . . . . . . . . . e ca 4.4.3 N´mero de Opera¸˜es . . . . . . . . . . . . . . . . . u co 4.4.4 M´todos de Factoriza¸˜o ou Compactos . . . . . . . . e ca 4.4.5 M´todos Iterativos e M´todos Directos . . . . . . . . e e 4.5 Exerc´ ıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Determina¸˜o de Valores e Vectores Pr´prios de Matrizes ca o 5.1 No¸˜es b´sicas . . . . . . . . . . . . . . . . . . . . . . . . . . co a 5.1.1 Valores pr´prios e o polin´mio caracter´ o o ıstico . . . . . 5.2 Teorema de Gerschgorin . . . . . . . . . . . . . . . . . . . . 5.3 M´todo das Potˆncias . . . . . . . . . . . . . . . . . . . . . e e 5.4 M´todo das itera¸˜es inversas . . . . . . . . . . . . . . . . . e co 5.5 M´todos de Factoriza¸˜o . . . . . . . . . . . . . . . . . . . . e ca 5.5.1 M´todo LR . . . . . . . . . . . . . . . . . . . . . . . e 5.5.2 M´todo QR . . . . . . . . . . . . . . . . . . . . . . . e 5.5.3 M´todo QR com deslocamento . . . . . . . . . . . . . e 5.6 Condicionamento do c´lculo de valores pr´prios . . . . . . . a o 2 5.7 5.8 C´lculo de ra´ polinomiais . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 a ızes Exerc´ ıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 193 196 197 197 198 200 201 205 206 209 210 211 6 Introdu¸˜o a m´todos de optimiza¸ao ca e c˜ 6.1 M´todo dos m´ e ınimos quadrados . . . . . . . . 6.1.1 Aproxima¸˜o no caso discreto . . . . . ca 6.1.2 Aproxima¸˜o no caso cont´ ca ınuo . . . . . 6.1.3 Dependˆncia n˜o linear nos coeficientes e a 6.2 Minimiza¸˜o sem restri¸˜es . . . . . . . . . . . ca co 6.2.1 M´todos de descida . . . . . . . . . . . e 6.2.2 M´todo do gradiente . . . . . . . . . . e 6.2.3 Aplica¸˜o ` resolu¸˜o de sistemas . . . ca a ca 6.2.4 M´todo do gradiente conjugado . . . . e 6.2.5 M´todo de Newton . . . . . . . . . . . e 6.2.6 M´todo das coordenadas . . . . . . . . e 6.3 Exerc´ ıcios . . . . . . . . . . . . . . . . . . . . 7 Anexos 7.1 Resultados Elementares de An´lise . . . . . . a 7.1.1 Fun¸˜es de v´rias vari´veis reais . . . . co a a 7.1.2 Fun¸˜es de uma vari´vel complexa . . co a 7.2 Equa¸˜es `s Diferen¸as . . . . . . . . . . . . . co a c 7.2.1 Solu¸˜es de uma Equa¸˜o `s Diferen¸as co ca a c 7.2.2 Equa¸˜es `s diferen¸as n˜o homog´neas co a c a e 7.2.3 M´todo da varia¸˜o de constantes . . . e ca 7.2.4 Exerc´ ıcios . . . . . . . . . . . . . . . . 7.3 Teoria de Erros em Espa¸os Normados . . . . c 7.3.1 Erro, Absoluto e Relativo . . . . . . . 7.3.2 Propaga¸˜o de Erros . . . . . . . . . . ca 7.4 Operadores integrais e matrizes . . . . . . . . 8 Exerc´ ıcios resolvidos 8.1 Exerc´ ıcios de avalia¸˜es anteriores co 8.1.1 1a. Avalia¸˜o (97) . . . . ca 8.1.2 2a. Avalia¸˜o (97) . . . . ca 8.1.3 Teste (98) . . . . . . . . . 8.1.4 1a. Avalia¸˜o (98) . . . . ca 8.1.5 2a. Avalia¸˜o (98) . . . . ca 8.1.6 Teste (99) . . . . . . . . . 8.1.7 1a. Avalia¸˜o (99) . . . . ca 8.2 Resolu¸˜es . . . . . . . . . . . . . co 8.2.1 1a. Avalia¸˜o (97) . . . . ca 8.2.2 2a. Avalia¸˜o (97) . . . . ca 8.2.3 Teste (98) . . . . . . . . . 8.2.4 1a. Avalia¸˜o (98) . . . . ca . . . . . . . . . . . . . . . . . . . . . . . . . . 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Homog´nea e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 . 214 . 214 . 216 . 219 . 221 . 222 . 223 . 224 . 225 . 225 . 225 . 228 . . . . . . . . . . . . . 232 232 232 234 235 236 238 240 241 243 243 246 250 252 8.3 8.4 8.2.5 2a. Avalia¸˜o (98) . . . . . . . ca 8.2.6 Teste (99) . . . . . . . . . . . . 8.2.7 1a. Avalia¸˜o (99) . . . . . . . ca Trabalhos computacionais . . . . . . . 8.3.1 Trabalhos computacionais (97) . 8.3.2 Trabalhos computacionais (98) . 8.3.3 Trabalhos computacionais (99) . Gloss´rio . . . . . . . . . . . . . . . . . a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 261 264 268 268 270 274 277 4 Pref´cio a Estas folhas seguem essencialmente os cursos de An´lise Num´rica I leccionados em 1997, a e 98 e 99 aos alunos da Licenciatura em Matem´tica Aplicada e Computa¸˜o do Instituto a ca Superior T´cnico. A disciplina An´lise Num´rica I ´ leccionada no segundo ano, segundo e a e e ´ semestre, pressupondo-se que os alunos j´ possuem conhecimentos elementares de Algebra a Linear e de An´lise Matem´tica (cujo quarto semestre decorre em simultˆneo). Conv´m a a a e referir que An´lise Num´rica I ´ complementada pela disciplina de An´lise Num´rica II, a e e a e leccionada no semestre seguinte. Durante estes dois semestres s˜o introduzidos n˜o apea a nas todos os aspectos fundamentais de An´lise Num´rica, que s˜o leccionados num unico a e a ´ co semestre nas licenciaturas em engenharia, mas tamb´m algumas no¸˜es mais profundas e dentro da teoria elementar. Assim, na An´lise Num´rica I, o objecto de estudo ´ essena e e cialmente a aproxima¸˜o de solu¸˜es de equa¸˜es, numa perspectiva abstracta que difere ca co co profundamente da apresentada nas licenciaturas em engenharia, sendo ainda adicionados dois cap´ ıtulos introdut´rios noutras mat´rias, um relativo ` aproxima¸˜o de valores pr´prios o e a ca o de matrizes e um outro, muito breve, relativo a m´todos minimiza¸˜o (que poderia tamb´m e ca e ser ligado ` aproxima¸˜o de solu¸˜es de equa¸˜es). a ca co co A mat´ria apresentada representa n˜o apenas uma solu¸˜o de compromisso entre aspece a ca tos mais te´ricos e aspectos mais num´ricos, seguindo t´picos de programas anteriores (cf. o e o L. Loura [21] e P. Lima [20]), mas encerra tamb´m uma vis˜o pessoal dos fundamentos da e a An´lise Num´rica. Podemos dizer que grande parte do curso est´ centrado no teorema do a e a ponto fixo de Banach, j´ que as suas consequˆncias acabam por fundamentar muitos aspeca e tos dos m´todos num´ricos utilizados neste curso introdut´rio. Esta perspectiva unificadora e e o leva ` introdu¸˜o de no¸˜es abstractas de topologia e de an´lise funcional elementar. O a ca co a teorema de Banach surge como uma generaliza¸˜o de um teorema elementar nos n´ meros ca u reais, num dos casos not´veis em que n˜o se trata de generalizar por generalizar, aspecto a a simplista e por vezes nefasto na matem´tica. A abstrac¸˜o deve ser acompanhada da clara a ca indica¸˜o das ideias elementares que a originaram. Uma vez compreendidas essas no¸˜es ca co ser´ mais f´cil estabelecer o paralelismo e tentar apreender at´ que ponto ´ poss´ e util a a e e ıvel ´ a generaliza¸˜o. Quando a aplica¸˜o da teoria abstracta se resume ao caso elementar que ca ca a gerou, trata-se de uma abstra¸˜o est´ril. N˜o ´ isso que acontece com o teorema de Baca e a e nach. A ideia do teorema do ponto fixo ´ aplic´vel n˜o apenas ` solu¸˜o de equa¸˜es com e a a a ca co co a fun¸˜es reais ou complexas, mas tamb´m a sistemas de equa¸˜es lineares ou n˜o lineares, a co e equa¸˜es diferenciais ou integrais e a outros problemas. Devemos tamb´m ter presente que co e a a quando colocamos o problema num contexto abstracto, como os resultados s˜o aplic´veis a todas as estruturas que a´ estejam enquadradas, perdemos informa¸˜o acerca da riqueza da ı ca estrutura que pretendemos estudar em particular. Assim, o m´todo do ponto fixo ser´ um e a utens´ razoavelmente geral, mas haver´ outros m´todos que se adequam particularmente ılio a e em cada contexto. Desta forma, no Cap´ ıtulo 2 ´ introduzido o m´todo do ponto fixo no caso real e complexo, e e como uma motiva¸˜o para a obten¸˜o dos resultados mais abstractos que encontramos ca ca ´ no Cap´ ıtulo 3, mas tamb´m s˜o apresentados outros m´todos particulares. E claro que e a e poderia ser apresentado imediatamente o caso mais geral, enunciando o teorema de Banach 5 e deduzindo depois o resultado no caso real como um exerc´ ıcio. No entanto, h´ dois pontos a em ter em conta. Por um lado, n˜o ´ esse o processo natural de descoberta em matem´tica, e a e a da descoberta da matem´tica, parecendo mais conveniente introduzir o conceito como uma a generaliza¸˜o. Por outro lado, ser´ conveniente saber aplicar o teorema na sua generalidade ca a aos diversos casos particulares. Assim, no Cap´ ıtulo 4 s˜o obtidos um conjunto de resultados a que devem ser vistos como corol´rios (ou exerc´ a ıcios...) da teoria apresentada no Cap´ ıtulo 3, quando aplicada a espa¸os vectoriais de dimens˜o finita. Mesmo os Cap´ c a ıtulos 5 e 6, acerca da determina¸˜o de valores pr´prios e introdu¸˜o a m´todos de optimiza¸˜o (respectivamente), ca o ca e ca contˆm alguns resultados que surgem como consequˆncia do Cap´ e e ıtulo 3. Havendo v´rias linguagens de programa¸˜o que podem acompanhar um curso de An´lise a ca a Num´rica, a escolha da linguagem Mathematica ´ uma heran¸a da introdu¸˜o dessa line e c ca guagem como base de programa¸˜o na licenciatura. Trata-se de uma linguagem de alto ca n´ ıvel, e poder´ tornar-se num modelo para futuras linguagens de programa¸˜o. O tempo a ca de c´lculo ´ em muitas circunstˆncias ainda um problema que ´ compensado pela facilidade a e a e de programa¸˜o e pela maior fiabilidade dos resultados. Como acontece com linguagens ca de alto n´ ıvel, o Mathematica pode ser um bom banco de ensaios para programas mais sofisticados que poder˜o depois ser desenvolvidos em linguagens de mais baixo n´ a ıvel, onde o tempo de c´lculo poder´ ser muito menor (p.ex. o Fortran ou o C... ´ claro que um a a e bom conjunto de rotinas nessas linguagens pode servir o mesmo prop´sito). Ao longo do o texto s˜o colocadas v´rias notas referentes a rotinas do Mathematica, `s suas limita¸˜es e a a a co a alguns erros que foram detectados por n´s desde a vers˜o 2 at´ ` 4. Para maior detalhe o a ea acerca da linguagem e das suas possibilidades, salientamos o aspecto mais pr´tico em [2] e a formal em [4]. Uma palavra de agradecimento aos alunos que pela receptividade e empenho permitiram uma maior motiva¸˜o na compila¸˜o destas folhas e tamb´m aos meus colegas Ana Silvestre ca ca e e M´rio Gra¸a, pela pertinˆncia em cr´ a c e ıticas e algumas sugest˜es. Ao meu colega M´rio o a Gra¸a devo ainda uma valiosa lista de gralhas da primeira vers˜o de 1999. c a Carlos J. S. Alves 6 7 Cap´ ıtulo 1 Introdu¸˜o ca A An´lise Num´rica envolve v´rios aspectos distintos que a ligam directamente ` Algebra, a e a a ´ ` An´lise Matem´tica, e ` Programa¸˜o. Normalmente, um problema de f´ a a a a ca ısica (ou de engenharia), leva a formular um modelo, o qual se torna objecto de estudo da matem´tica a aplicada. Para a resolu¸˜o desse problema, n˜o ´ suficiente a matem´tica apresentar reca a e a sultados te´ricos, por exemplo, acerca da existˆncia de solu¸˜o. Num problema pr´tico o e ca a ´ necess´rio saber construir, ou aproximar, essa solu¸ao. Esse ´ o principal aspecto da e a c˜ e An´lise Num´rica.Por outro lado, mesmo que a constru¸˜o seja exacta, ela envolve nora e ca malmente c´lculos infinitos, imposs´ a ıveis de realizar, pelo que ´ necess´rio saber controlar e a o erro que cometemos ao considerar aproxima¸˜es; este ´ outro aspecto importante dentro co e da An´lise Num´rica. Finalmente, a realiza¸˜o dos c´lculos deve ser optimizada de forma a a e ca a obtermos rapidamente um bom resultado, atrav´s da programa¸˜o de algoritmos eficientes. e ca A programa¸˜o constitui portanto um outro aspecto de relevo na An´lise Num´rica, pois ca a e ela permite a obten¸˜o do resultado final. Todos estes passos tˆm originado o progresso ca e tecnol´gico a que nos habitu´mos. A investiga¸˜o tecnol´gica leva a novos modelos que n˜o o a ca o a dispensam uma simula¸˜o num´rica a priori. Esses modelos num´ricos est˜o presentes, por ca e e a exemplo, na propaga¸˜o de ondas, no escoamento de fluidos ou na resistˆncia de materiais, ca e cujas aplica¸˜es na ind´ stria englobam telecomunica¸˜es, engenharia mecˆnica, engenharia co u co a de materiais, engenharia civil, aeroespacial, etc... Breve apontamento hist´rico o Para compreender o enquadramento da an´lise num´rica na matem´tica, ser´ convea e a a niente recordar brevemente o seu percurso hist´rico. o Na antiguidade, o desenvolvimento da matem´tica ficou a dever-se sobretudo aos gregos, a ainda que haja registo de algumas proezas assinal´veis na Babil´nia e no Egipto, como a o seja a resolu¸˜o de equa¸˜es de segundo grau. Os gregos basearam a matem´tica em ca co a rela¸˜es geom´tricas, tendo o expoente dessa abordagem sido Euclides, que formulou uma co e teoria (Elementos, s´c.III-a.C.) baseada em 5 axiomas que permitem deduzir a geometria e euclidiana (curiosamente, s´ no s´c.XIX se confirmou que o quinto axioma: “por um ponto o e exterior a uma recta passa apenas uma paralela” — era mesmo necess´rio... ou seja, n˜o se a a deduzia dos restantes). A concep¸˜o grega que preconizava a constru¸˜o de entidades geom´tricas atrav´s de ca ca e e r´gua e compasso deixou v´rios problemas em aberto que s´ muito mais tarde, com o desene a o 1 volvimento da An´lise Matem´tica foram resolvidos. Por exemplo, a quest˜o da quadratura a a a do c´ ırculo, relacionada com a transcendˆncia de π, s´ foi resolvida no fim do s´c.XIX por e o e Hermite e Lindemann. Na antiguidade, o valor atribu´ a π era normalmente grosseiro ıdo (por exemplo, na B´ ıblia h´ cita¸˜es que indiciam π = 3), e o primeiro a tentar determinar a co por aproxima¸˜es o valor de π foi Arquimedes, baseado no m´todo da exaust˜o, um m´todo co e a e que havia sido introduzido por Eudoxo (disc´ ıpulo de Plat˜o). Considerando dois pol´ a ıgonos, um interior e outro exterior, Arquimedes determinou que 3 + 10 < π < 3 + 1 . Podemos 71 7 considerar este resultado como um dos primeiros resultados de An´lise Num´rica. a e S´ no Renascimento ´ que a matem´tica vai sofrer um novo grande impulso, come¸ando o e a c com a escola italiana de Bolonha, no s´c.XVI, com Tartaglia, Cardano, Ferrari, os quais e encontraram f´rmulas resolventes para as equa¸˜es de terceiro e quarto grau. Este deseno co volvimento da ´lgebra vai ligar-se ` geometria com Descartes e Fermat (s´c.XVII), e surge a a e ent˜o a geometria anal´ a ıtica que est´ na origem do c´lculo infinitesimal de Newton e Leibniz a a (s´c.XVIII). e Com o c´lculo infinitesimal come¸aram algumas bases da An´lise Num´rica. At´ ao a c a e e s´c.XIX ela coabitou indistintamente com a An´lise Matem´tica, pois o formalismo axe a a iom´tico que mais tarde se pretendeu copiar de Euclides ainda n˜o havia sido adoptado. a a No s´c. XIX, com o esfor¸o de rigor de Cauchy, Bolzano e Weierstrass, e posteriormente e c com as ideias de Dedekind e Cantor, os matem´ticos empenharam-se em formalizar axa iomaticamente toda a An´lise a partir da teoria de conjuntos, com Zermelo e Fraenkel. a ca Mas a quest˜o axiom´tica n˜o foi, nem ´, pac´ a a a e ıfica... desde a aceita¸˜o do axioma da escolha at´ ` pol´mica construtivista no princ´ ea e ıpio do s´c.XX. Conv´m notar que surgiram e e duas posi¸˜es claramente distintas. De um lado Hilbert, defendendo a existˆncia de um co e infinito actual, e sustentando que a partir de um n´mero finito de axiomas seria poss´ u ıvel deduzir qualquer proposi¸˜o matem´tica, e de outro lado, Brouwer, defendendo apenas a ca a existˆncia de um infinito potencial. A posi¸˜o de Hilbert mostrou-se ser irrealiz´vel quando e ca a G¨del, nos anos 30, baseado no m´todo da diagonal de Cantor, demonstrou a existˆncia de o e e proposi¸˜es semanticamente verdadeiras que no entanto n˜o podem ser deduzidas usando co a os crit´rios defendidos por Hilbert (teorema da incompletude de G¨del). Essencialmente e o por raz˜es pr´ticas, a maioria da An´lise ainda faz uso da no¸˜o de infinito actual, o que o a a ca permite a existˆncia de demonstra¸˜es n˜o construtivas, atrav´s de uma redu¸ao ao absurdo, e co a e c˜ e utilizando por vezes o pol´mico axioma da escolha. As demonstra¸˜es n˜o-construtivas e co a n˜o fornecem qualquer m´todo para explicitar as entidades cuja existˆncia foi provada no a e e sentido cl´ssico, sendo necess´rio, na pr´tica, resultados construtivos que permitam calcular a a a essas entidades. A An´lise Num´rica cont´m a componente de construtividade da Matem´tica, fornecendo a e e a m´todos de aproxima¸˜o (que podem constituir eles pr´prios demonstra¸˜es construtivas), e ca o co e estudando o erro inerente em cada passo da aproxima¸˜o. A no¸˜o de erro e o controlo do ca ca erro constitui assim um aspecto fulcral na An´lise Num´rica, que come¸aremos por abora e c dar no caso mais simples, quando nos apercebemos que a pr´pria representa¸˜o de n´ meros o ca u reais tem que ser aproximada quando trabalhamos com m´quinas de aritm´tica finita. a e Terminamos o breve apontamento hist´rico, referindo que a An´lise Num´rica come¸ou a o a e c e surgir como disciplina bem identificada recentemente, j´ que o desenvolvimento de m´todos a num´ricos acentuou-se com o aparecimento dos primeiros computadores, especialmente a e 2 partir dos anos 50. Se anteriormente o processo manual de c´lculo tornava irrealiz´veis a a muitos m´todos, a automatiza¸˜o permitiu a implementa¸˜o de processos iterativos sime ca ca ples. Paralelamente a esse desenvolvimento computacional novos problemas te´ricos foram o colocados, mesmo para a resolu¸˜o de problemas elementares, j´ que o tempo de c´lculo e a ca a a estabilidade num´rica tornaram-se factores determinantes na efic´cia dos algoritmos. Sendo e a dif´ fazer uma an´lise objectiva de um passado recente, para o qual muitos contribuiram, ıcil a talvez mere¸a um especial realce os trabalhos de Wilkinson nos anos 60, especialmente no c ´ que diz respeito a algumas bases do c´lculo num´rico. E claro que, havendo v´rias ´reas a e a a onde ´ importante o desenvolvimento de m´todos num´ricos (e a tamb´m a sua justifica¸˜o e e e e ca te´rica), a pr´pria An´lise Num´rica pode ser dividida em m´ ltiplas ´reas particulares, que o o a e u a v˜o desde m´todos num´ricos para problemas elementares, at´ ao desenvolvimento e estudo a e e e de novos m´todos para equa¸˜es diferenciais ou integrais, por exemplo. A evolu¸˜o na sime co ca ula¸˜o computacional de fen´menos f´ ca o ısicos ´ um bom exemplo onde os m´todos num´ricos e e e tˆm determinado grande parte da evolu¸˜o tecnol´gica mais recente. e ca o Alguns dos assuntos que iremos abordar podem parecer mais ou menos elementares, ou mais ou menos actuais. O nosso prop´sito n˜o ´ apresentar uma lista dos mais efio a e cazes m´todos num´ricos que existem actualmente para resolver determinados problemas e e espec´ ıficos... at´ porque essa lista correria o risco de estar desactualizada rapidamente. O e nosso objectivo ´ apenas apresentar v´rias possibilidades de racioc´ que poder˜o ser uteis e a ınio a ´ na resolu¸˜o de problemas mais complicados. Essa poss´ generaliza¸˜o ´ exemplificada ca ıvel ca e no texto com a adapta¸˜o de um m´todo simples, o m´todo do ponto fixo, para contextos ca e e menos triviais. Refira-se que, mesmo assim, a maioria dos m´todos apresentados s˜o actuais e a e s˜o ainda utilizados nos mais diversos contextos. a Por fim, salientamos que na sua parte te´rica a An´lise Num´rica abrange diversas o a e ´ ´reas da Matem´tica, desde a An´lise ` Algebra, pelo que os seus resultados e m´todos a a a a e podem ser enquadrados em qualquer um desses campos. A unica eventual distin¸˜o reside ´ ca na componente de construtividade (como j´ foi referido) ou nos prop´sitos subjacentes, j´ a o a que na An´lise Num´rica se procura o c´lculo efectivo e o controlo desse c´lculo atrav´s a e a a e de estimativas de erro. Na sua parte aplicada a An´lise Num´rica necessita de um cona e hecimento pr´tico de programa¸˜o, de linguagens de baixo e alto n´ a ca ıvel, bem como alguns conhecimentos de computa¸˜o gr´fica. ca a 1.1 Representa¸˜o de n´meros ca u Um dos primeiros aspectos num´ricos que apreendemos ´ o sistema de numera¸˜o ´rabe. e e ca a H´ nesse sistema um grande avan¸o face aos que o precederam historicamente (ex: gregos, a c romanos), quer na facilidade de execu¸˜o de opera¸˜es, quer no optimizar da extens˜o da ca co a nota¸˜o. O sistema de numera¸˜o ´rabe ´ um avan¸o num´rico que passou despercebido ca ca a e c e ` matem´tica grega, mais preocupada com propriedades conceptuais relacionadas com a a a geometria. O sistema ´rabe permitiu que o c´lculo num´rico fosse facilmente mecanizado no a a e que diz respeito `s opera¸˜es elementares, libertando-se de qualquer interpreta¸˜o aplicada a co ca ` geometria ou a qualquer outro modelo intuitivo. O exemplo m´ximo dessa mecaniza¸˜o a a ca teve como pioneiros B. Pascal ou C. Babbage que construiram as primeiras m´quinas de a 3 calcular mecˆnicas e que culminaram, passados quase trˆs s´culos, no aparecimento de a e e computadores electr´nicos. o Por uma quest˜o de efic´cia, a n´ interno os computadores trabalham com um sistema a a ıvel de numera¸˜o bin´ria ao inv´s do habitual sistema decimal que utilizamos correntemente. ca a e No entanto, o processo de efectuar as opera¸˜es elementares ´ exactamente o mesmo, qualco e quer que seja a base que se considere. Qualquer n´mero natural pode ser representado u numa base β escrevendo x = an ...a1 a0 em que cada ai ∈ {0, .., β − 1}, significando que x = n ai β i . i=0 Assim, x = 110.1 na base 2 representa o n´ mero 6.5, pois x = 1·22 +1·21 +0·20 +1·2−1 = u 4 + 2 + 0 + 1 = 6.5, mas a mesma representa¸˜o x = 110.1 na base decimal (β = 10) tem o ca 2 significado habitual, que designa um n´mero completamente diferente... A utiliza¸˜o destes u ca sistemas num´ricos tem a vantagem de permitir representar n´meros n˜o inteiros atrav´s e u a e da introdu¸˜o do ponto (ou da v´ ca ırgula...). No entanto, quando o n´mero de algarismos ´ u e finito esses n´ meros s˜o apenas alguns dos n´meros racionais. u a u Vejamos quais as possibilidades da nota¸˜o decimal servir para uma potencial repreca senta¸˜o de qualquer n´ mero real. ca u 1.1.1 N´meros reais u Come¸amos por rever a no¸˜o de n´ mero real. Para isso vamos considerar a constru¸˜o c ca u ca de Cantor dos n´meros reais a partir dos racionais (e.g. [14]), n˜o seguindo a perspectiva u a axiom´tica dos n´meros reais (e.g. [11]). a u Come¸amos por considerar a no¸˜o de sucess˜o de Cauchy de racionais. c ca a Defini¸˜o 1.1 Dizemos que uma sucess˜o (xn ) de racionais ´ uma sucess˜o de Cauchy se ca a e a ∀δ > 0 (racional) ∃p ∈ N : |xn − xm | < δ, (n, m ≥ p) Defini¸˜o 1.2 Um n´ mero real ´ uma classe de equivalˆncia de sucess˜es de Cauchy de ca u e e o racionais, definida pela rela¸ao de equivalˆncia c˜ e (xn ) ∼ (yn ) ⇐⇒ ∀δ > 0 ∃p ∈ N : |xn − ym | < δ, (n, m ≥ p) Cada elemento da classe de equivalˆncia pode ser um seu representante, mas normale mente tomamos como representante da classe uma sucess˜o de racionais que s˜o m´ ltiplos a a u de potˆncias de 10 (base decimal). Ou seja, normalmente escrevemos um n´mero real na e u nota¸ao cient´fica (decimal): c˜ ı x = ±0.a1 a2 . . . an . . . × 10t . Com efeito a sucess˜o de racionais a x1 = ±0.a1 × 10t , x2 = ±0.a1 a2 × 10t , ..., xn = ±0.a1 a2 . . . an × 10t , ... 4 ´ uma sucess˜o de Cauchy, e ´ o representante escolhido na nota¸˜o cient´ e a e ca ıfica para a classe de equivalˆncia x. e No caso da nota¸˜o cient´ ca ıfica, um n´ mero representa-se atrav´s do sinal, da mantissa u e e do expoente, na base decimal. Os d´ ıgitos an variam entre 0 e 9, mas o primeiro d´ ıgito da mantissa deve ser diferente de zero (o n´mero zero ´ representado ` parte). Nesta u e a representa¸˜o pode haver uma ambiguidade, j´ que o n´ mero real 1 pode ser representado ca a u pela sucess˜o 1.0000... ou por 0.99999..., mas podemos considerar uma representa¸˜o unica a ca ´ se privilegiarmos sempre uma aproxima¸˜o superior (em valor absoluto). ca Ao efectuarmos c´lculos e, a menos que estivessemos na posse de uma m´quina com a a mem´ria infinita (uma te´rica m´quina de Turing), a representa¸˜o de um n´mero tem que o o a ca u ser finita. Consequentemente somos obrigados a considerar um n´ mero finito de d´ u ıgitos na mantissa e uma limita¸˜o nos valores dos expoentes admitidos, o que leva ` no¸˜o de ca a ca representa¸˜o num sistema de ponto flutuante1 . ca 1.1.2 Sistema de ponto flutuante Um sistema de ponto flutuante F P (β, n, t1 , t2 ) ´ um subconjunto finito de racionais, que se e caracteriza pela base β (usualmente trabalhamos com base decimal, β = 10, mas internamente as m´quinas usam a base bin´ria, β = 2), pelo n´mero de d´ a a u ıgitos na mantissa n, e por uma limita¸˜o nos expoentes que podem tomar valores entre t1 e t2 . ca Defini¸˜o 1.3 .Sejam n ∈ N, t1 , t2 ∈ Z. O subconjunto dos racionais, ca F P (10, n, t1 , t2 ) = x∈Q: x = 0 ou x = ±0.a1 a2 . . . an × 10t , ai ∈ {0, ..., 9}, a1 = 0, t ∈ {t1 , ..., t2 } ´ designado por sistema de ponto flutuante em base decimal, com n d´gitos na mantissa, e e ı expoentes variando entre t1 e t2 . Quando apenas for importante referir o n´mero de d´gitos na mantissa, usamos a nota¸ao u ı c˜ F P (n). Este tipo de conjuntos ´ adequado a uma representa¸˜o aproximada dos reais j´ que exe ca a iste densidade dos racionais nos reais (o que ´ uma consequˆncia da defini¸˜o apresentada). e e ca Assim, qualquer n´ mero real pode ser aproximado ‘tanto quanto se queira’ atrav´s de um u e sistema de ponto flutuante, desde que consideremos um n´mero de d´ u ıgitos suficientemente grande na mantissa e expoentes adequados... claro que essa precis˜o ser´ paga em termos a a de mem´ria computacional e de tempo de c´lculo. o a Usualmente, um n´ mero em precis˜o simples utiliza 32 bits (4 bytes) e um dos sistemas u a usado ´ F P (2, 24, −127, 127) (conjunto que cont´m mais de 2 mil milh˜es de n´ meros) e e o u ´ Seguimos a designa¸˜o usada em [27]. E tamb´m usada a designa¸ao v´rgula flutuante j´ que a tradi¸ao ca e c˜ ı a c˜ europeia insiste em representar os n´meros decimais atrav´s da v´ u e ırgula. Essa tradi¸ao provoca frequentes c˜ bugs na interac¸˜o de software europeu e americano. Bases de dados com d´ ca ıgitos escritos com v´ ırgulas n˜o s˜o interpretadas devidamente por programas em que se prevˆ o uso do ponto. Como a esmagadora a a e maioria do software produzido internacionalmente utiliza o ponto, come¸a a fazer tanto sentido insistir na c quest˜o da v´ a ırgula, quanto o uso de medidas imperiais anglo-sax´nicas ao inv´s do Sistema Internacional . o e Da mesma forma, ao longo do texto ir´ usar-se a nota¸ao internacional sin para seno e n˜o sen. a c˜ a 1 5 gerando erros relativos de arredondamento da ordem de 0.6 × 10−7 . Se quisermos erros relativos inferiores a 0.2 × 10−16 , teremos que utilizar precis˜o dupla, por exemplo, a F P (2, 56, −127, 127), o que consumir´ o dobro de mem´ria: 8 bytes. a o Observa¸˜o: Na linguagem Mathematica o c´lculo num´rico utiliza, por defeito, uma ca a e precis˜o de 16 d´ a ıgitos, o que corresponde a precis˜o dupla. Esse valor pode ser aumentado a ´ usando a rotina SetPrecision. E poss´ saber o n´mero de d´gitos correctos2 num n´mero ıvel u ı u apresentado usando as rotinas Precision ou Accuracy. • Note-se que h´ uma enorme diferen¸a entre escrever 1 ou 1.0 no Mathematica, o a c primeiro valor ´ considerado um s´ e ımbolo, o segundo ´ encarado como um valor num´rico. e e A diferen¸a cifra-se especialmente no tempo de c´lculo, podendo dar origem a tempos de esc a pera insuport´veis. Por exemplo, consideremos um ciclo em que calculamos xn+1 = cos(xn ). a Se introduzirmos o valor 1 em x0 o resultado ser´ cos(cos(cos(cos(1)))) ao fim de 4 itera¸oes. a c˜ O Mathematica n˜o simplica a express˜o porque como ´ dado um s´ a a e ımbolo que ele considera exacto (se fizer Precision[1] obter´ ∞), tentar´ ser coerente e dar um valor com a mesma a a precis˜o... portanto n˜o poderia dar um valor decimal (com apenas 16 d´ a a ıgitos). No entanto, a a e se introduzir o valor 1.0 em x0 o resultado j´ ser´ diferente, porque o valor 1.0 ´ considerado num´rico e poder´ dar um resultado com a mesma precis˜o, ou seja 16 d´ e a a ıgitos (se fizer Precision[1.0] obter´ 16, ou seja os 16 d´ a ıgitos com que trabalha numericamente). Note-se que o valor apresentado tem normalmente 6 d´ ıgitos significativos, mas poder´ visualizar os a restantes usando a rotina N[x4 ,16]. Se colocar N[x4 ,100] aparecer˜o 100 d´ a ıgitos, dos quais apenas os 16 primeiros tˆm algum significado (com efeito se fizer Precision[N[x4 ,100]] cone tinuar´ a obter 16). Para garantir maior precis˜o deve declarar os valores num´ricos que a a e introduzir com precis˜o suplementar usando a rotina SetPrecision. A filosofia do Mathemata ica neste aspecto parece simples, cada s´ ımbolo tem associada uma precis˜o, e o resultado a ter´ que ter a precis˜o do menor s´mbolo introduzido (quando isso n˜o ´ poss´ aparece a a ı a e ıvel uma mensagem de aviso). Esta filosofia ´ penosa em termos de c´lculo, j´ que para garane a a tir a precis˜o, podem ser efectuados c´lculos internos com uma imensid˜o de d´ a a a ıgitos (que nunca s˜o apresentados). Tem a vantagem de permitir normalmente resultados rigorosos... a ao longo do texto referiremos alguns que n˜o o s˜o e que foram por n´s detectados... haver´ a a o a outros! 1.1.3 Tipos de arredondamento x = ±0.a1 a2 . . . an an+1 . . . × 10t Dado um n´mero real x, descrito em nota¸˜o cient´ u ca ıfica por coloca-se a quest˜o de represent´-lo aproximadamente num sistema de ponto flutuante a a F P (10, n, t1 , t2 ). Por vezes ´ tamb´m introduzida a no¸ao de algarismo significativo. Preferimos ao longo do texto usar e e c˜ a no¸˜o ‘vaga’ e intuitiva de d´ ca ıgito correcto. Estas no¸oes podem ser bem definidas, mas sem vantagens c˜ adicionais para a compreens˜o. a Apenas importa referir que apesar da aproxima¸ao 0.9999 n˜o apresentar nenhum d´ c˜ a ıgito igual aos d´ ıgitos de 1.000, ´ ´bvio que se trata de uma boa aproxima¸ao, e ´ nesse sentido que se introduz a no¸ao de algarismo eo c˜ e c˜ significativo e que falaremos aqui em d´ ıgitos ‘correctos’. 2 6 Se o valor do expoente t n˜o estiver inclu´ no conjunto {t1 , ..., t2 }, ocorrem dois tipos a ıdo de problemas incontorn´veis: a — overflow : se o valor do expoente t ´ superior a t2 , e — underflow : se o valor do expoente t ´ inferior a t1 . e Por exemplo, querendo representar x = 0.1 × 10151 em F P (10, 8, −100, 100), ocorre um problema de overflow e um problema de underflow se tentarmos representar 1/x = 0.1 × 10−149 (aproximar por zero poderia levar a graves erros...) Ainda que se considere um outro sistema maior, por exemplo, F P (10, 8, −200, 200), apesar desses problemas j´ n˜o ocorrerem para estes valores de x ou 1/x, v˜o ocorrer para a a a 2 2 e a a x e 1/x , e assim sucessivamente... ´ nesse sentido que estes problemas s˜o incontorn´veis3 . Suponhamos agora que t1 ≤ t < t2 , e portanto n˜o h´ problema com os expoentes. H´ a a a no entanto o problema com o n´mero infinito de d´ u ıgitos da mantissa que podemos resolver considerando dois tipos de arredondamento: Arredondamento por Corte f l(x) = ±0.a1 a2 . . . an × 10t Arredondamento Sim´trico e f l(x) = ±0.a1 a2 . . . an × 10t Os d´ ıgitos ai e o expoente t resultam da representa¸˜o da soma de 0.a1 a2 . . . an ... × 10t com ca t−n 0.5 × 10 , considerando depois um arredondamento por corte. O valor f l(x) ´ um racional, elemento de F P (10, n, t1 , t2 ), que aproxima x. (Repare-se e que fl(x) nunca ´ nulo.) e Interessa-nos controlar os efeitos que essa aproxima¸˜o pode trazer nos c´lculos posteca a riores, devido ao erro que se comete ao aproximar x por f l(x). 1.1.4 Erro absoluto e erro relativo Ao considerarmos os arredondamentos necess´rios pelas constri¸˜es do sistema F P da a co m´quina v˜o ocorrer erros, que vamos distinguir. a a Defini¸˜o 1.4 Consideremos x um valor exacto e x um valor aproximado de x. Definimos: ca ˜ ˜ Erro : ex = x − x ˜ Erro Absoluto : |ex | = |x − x| ˜ ˜ x 4 Erro Relativo : Se x = 0, definimos δx = x−˜ , e designamos por erro relativo este valor ˜ x ou o seu m´dulo. o Note-se que as linguagens simb´licas podem parecer resolver este problema, j´ que se escrevermos o a 10 × 10900 , elas podem dar o resultado 101000 , mas se pedirmos de seguida sin(10100 × 10900 ), sem alterar a precis˜o interna das rotinas, v˜o ocorrer erros. Por exemplo, no Mathematica o valor devolvido seria a a sistematicamente 0... x 4 H´ autores que consideram δx = x−˜ . a ˜ x ˜ 100 3 7 Estas defini¸˜es ir˜o ser usadas e generalizadas ao longo do curso, inicialmente estamos co a interessados no caso x = f l(x). ˜ Devemos ter presente que se conhecessemos o valor exacto do erro para uma dada aproxima¸˜o, isso implicaria imediatamente o conhecimento do valor exacto, e deixaria de ca fazer sentido falar em erro... Por isso estas no¸˜es ser˜o utilizadas com o objectivo de obter co a estimativas de forma a controlar o erro, atrav´s de majora¸˜es ou minora¸˜es. e co co A introdu¸˜o da no¸˜o de erro absoluto ´ assim clara, vamos estar interessados apenas ca ca e em controlar a diferen¸a entre os dois n´ meros, majorando-a, n˜o nos interessando se c u a aproxima¸˜o ´ feita por defeito ou excesso relativamente ao valor exacto. Ao longo do ca e curso poderemos mesmo cometer o abuso de chamar erro ao erro absoluto, j´ que para a efeitos de majora¸˜es ´ claro que a unica majora¸˜o que interessar´ ser´ a majora¸˜o do co e ´ ca a a ca erro absoluto. A introdu¸˜o da no¸˜o de erro relativo prende-se com o simples facto intuitivo de que um ca ca mesmo erro absoluto pode ter significados diferentes em termos relativos. Assim, quando pretendemos medir a distˆncia de Lisboa ao Porto, se apenas garantirmos que o erro absoa luto ´ inferior a 100 Km podemos considerar que se trata de uma majora¸˜o excessivamente e ca grande do erro absoluto, mas quando medimos uma distˆncia da Terra a Marte se garana tirmos um valor com um erro absoluto inferior a 100 Km, podemos consider´-lo excelente. a O erro relativo pode ser expresso em termos percentuais, assim, se |δx | = 1, dizemos ˜ que temos um erro relativo de 100%, etc. Como iremos estar interessados em controlar os erros relativos originados pelo arredondamento, come¸amos por definir a no¸˜o de unidade de arredondamento, que est´ directac ca a mente ligada ` precis˜o do sistema F P utilizado. a a • Designamos por unidade de arredondamento o valor u que ´ o menor majorante do e erro relativo de arredondamento, |δarr | = |x − f l(x)| ≤u |x| Exerc´ ıcio 1.1 Estando a trabalhar num sistema F P com N d´gitos na mantissa, mostre ı que podemos obter os seguintes majorantes para a unidade de arredondamento: No caso de arredondamento por corte, u = 101−n . No caso de arredondamento sim´trico, u = 0.5 × 101−n . e (No caso de se trabalhar com uma base bin´ria, u = 21−n ) a 1.2 Algoritmos e propaga¸˜o de erros ca Interessa-nos agora saber de que maneira os erros podem ser propagados ao efectuarmos o c´lculo de uma fun¸˜o ou de uma opera¸˜o. a ca ca Para ilustrarmos o problema em quest˜o, numa vulgar m´quina de calcular, pensemos a a em extrair m vezes uma raiz quadrada a um valor x e de seguida aplicar o mesmo n´mero u de vezes o quadrado ao resultado. Se n˜o houvessem erros de arredondamento o resultado a 8 seria o valor x que hav´ ıamos inserido, mas como eles existem, ao fim de um n´mero de u vezes razo´vel (m > 5) a maioria das m´quinas apresenta um resultado diferente do valor a a inserido. A resistˆncia das m´quinas a este processo pode ser maior ou menor consoante o e a n´mero de ‘d´ u ıgitos de guarda’ que utiliza. A t´cnica de utilizar ‘d´gitos de guarda’ consiste em trabalhar internamente com uma e ı precis˜o superior ` que apresenta no visor. Assim, o utilizador entra e vˆ valores num a a e sistema F P com n d´ ıgitos na mantissa, mas internamente a m´quina trabalha numa base a bin´ria com N d´ a ıgitos na mantissa de forma a que a unidade de arredondamento 21−N em que trabalha seja suficientemente inferior ` v´ a ısivel pelo utilizador que ´ 0.5 × 101−n . Desta e forma, se para n = 8 seria suficiente tomar N = 26, uma op¸˜o comum ´ usar N = 32, ca e garantindo mais dois d´ ıgitos decimais que o utilizador n˜o vˆ. a e e Em programas de c´lculo mais sofisticados, como o Mathematica, este problema tamb´m a ocorre, mas pode ser contornado se o valor x for declarado com uma precis˜o suplementar, a usando a rotina SetPrecision. Esta vantagem ´ paga em termos de tempo de computa¸˜o. e ca Observa¸ao: Informa¸˜o acerca do funcionamento num´rico do Mathematica pode ser c˜ ca e encontrada no help relativo ao package NumericalMath‘Microscope‘. Note-se ainda que ´ poss´ e ıvel efectuar c´lculos num determinado sistema FP usando o package Numericala Math‘ComputerArithmetic‘. Exemplo 1.1 Consideremos um valor de M fixo. Sendo x0 = a, calculamos uma lista de M valores dada recursivamente por xn+1 = f l(g(˜n )), ˜ x ou seja, trata-se do resultado da aplica¸ao sucessiva de uma fun¸ao g, sujeita a erros de c˜ c˜ arredondamento. Tendo obtido o valor xM , tentamos regressar ao valor inicial aplicando a opera¸ao inversa. Ou seja, consideramos yM = xM e fazemos c˜ yn−1 = f l(g −1 (˜n )). ˜ y A quest˜o que se coloca ´ saber se o valor x0 ´ ou n˜o igual ao valor y0 . Se os c´lculos a e e a a fossem exactos seria... mas sujeitos a erros de arredondamento, obtemos valores diferentes. Test´mos a fun¸ao Sqrt do Mathematica, come¸ando com x0 = 2. Apesar de apresentar sua c˜ c cessivamente o valor de defeito Precision 16, podemos ver na figura em baixo, a esquerda, ` que o n´mero de d´gitos exactos decresce rapidamente com o valor de M. Ao definir x0 u ı com SetPrecision[2.0,16] este problema ´ contornado pelo Mathematica, usando a teoria de e propaga¸ao de erros, ao aumentar internamente a precis˜o do n´mero de d´gitos dos c´lculos c˜ a u ı a interm´dios. Como apresentamos na figura em baixo, a direita, o n´mero de d´gitos para o e ` u ı c´lculo de xM aumenta e atinge uma precis˜o de 46 casas decimais quando consideramos a ˜ a M = 100. S´ desta forma o programa garante os 16 d´gitos correctos em y0 , n˜o havendo o ı ˜ a erro assinal´vel. Como ´ compreens´vel, o tempo de c´lculo ´ muito diferente... para cala e ı a e cular um valor xn o programa aparenta necessitar de aumentar um d´gito na mantissa do ı ˜ sistema F P bin´rio. Em alguns dos valores testados a diferen¸a cifrou-se em aproximadaa c mente 6 vezes mais tempo (... o que de certa maneira ser´ an´logo a usar para o mesmo a a 9 c´lculo um processador a 100Mhz em vez de outro a 600Mhz), mas poder´ ser muito maior a a em c´lculos mais complexos. a 5 0 1 5 1. 25 1 0 75 . 2 0 4 0 3 0 5 25 . 2 0 4 0 6 0 8 0 10 0 1 0 2 0 4 0 6 0 8 0 10 0 Noutros programas, como o Fortran, Visual Basic ou C, esta possibilidade de alterar o sistema num´rico n˜o ´ normalmente poss´vel, ficando assim limitados a situa¸oes semele a e ı c˜ hantes a apresentada na figura da esquerda, normalmente ainda piores (sendo um caso ` extremo algumas calculadoras menos sofisticadas). O estudo b´sico acerca da propaga¸˜o de erros, que efectuamos neste par´grafo, ´ sufia ca a e cientemente exemplificativo de um estudo numa perspectiva mais abstracta, que se poder´ a encontrar em anexo. 1.2.1 Propaga¸˜o do erro em fun¸oes de uma vari´vel ca c˜ a Se tivermos um valor x que aproxima x, ao calcularmos a imagem por uma fun¸˜o φ ∈ ˜ ca 2 C (Vx ) em que Vx ´ uma vizinhan¸a de x que cont´m o ponto x, vamos obter um valor e c e ˜ aproximado φ(˜) que ser´ diferente do valor φ(x). Para controlarmos o erro que se propaga x a ao aplicarmos esta fun¸˜o, usamos a expans˜o em s´rie de Taylor de φ em torno de um ca a e ponto x : eφ(˜) = φ(x) − φ(˜) = φ (x)ex + o(ex ) x ˜ ˜ x quando ex tende para zero. Desta forma, desprezando o termo o(ex), podemos definir eφ (x) = φ (x)ex ˜ ˜ e para o erro relativo, quando φ(x) = 0, obtemos xφ (x) ˜ δφ (x) = δx ˜ φ(x) Observa¸˜o: Estas aproxima¸˜es pressup˜em que se considere erros pequenos, j´ que ca co o a 1 2 o termo desprezado o(ex ) ´, com efeito, 2 φ (ξx )ex , e assim assume-se implicitamente, por ˜ e ˜ quest˜es de simplifica¸˜o, que a fun¸˜o tem segunda derivada e que ela ´ ‘regular’, n˜o o ca ca e a tomando valores muito altos pr´ximo de x. Quanto maiores forem os valores dessa segunda o derivada, entre x e x, piores ser˜o estas estimativas linearizadas. ˜ a 10 Defini¸˜o 1.5 O m´dulo do valor pφ (x) = ca o condi¸˜o de φ em x. ca xφ (x) φ(x) ´ normalmente designado n´ mero de e u A situa¸˜o de mau condicionamento ocorre para valores de z para os quais pφ (z) = ±∞. ca Isto significa que ao considerarmos valores z pr´ximos de z vamos obter grandes erros ˜ o relativos para φ(˜), ainda que o erro relativo associado a z seja pequeno. Obtemos, por z ˜ exemplo: ˜ ˜ ˜ ˜ δxn = nδx ; δex = xδx ; δcos(x) = −x tan(x)δx ; δsin(x) = x cot(x)δx ˜ ˜ ˜ ˜ ˜ ˜ ˜ ˜ Exerc´ ıcio 1.2 a) Mostre que δ(αf +βg) ∼ αδf + β δg , ou seja, n˜o h´ linearidade de δf . a a ˜ ˜ b) Mostre que δf ◦g (x) = pf (g(x))δg (x). ˜ A al´ ınea b) traduz uma propriedade importante, que nos permite separar o c´lculo de δf a ˜ em v´rios passos. Assim, se quisermos calcular δexp(x2 +1) , podemos decompor esse c´lculo a a 2x2 2 ˜ atrav´s de duas fun¸˜es mais simples, z1 (x) = x + 1, z2 (x) = exp(x). Como δx2 +1 = x2 +1 δx , e co 2x2 ˜ ˜ δexp(x2 +1) (x) = pexp(x) (x2 + 1)δx2 +1 (x) = (x2 + 1) 2 δx = 2x2 δx . ˜ ˜ x +1 1.2.2 Propaga¸˜o do erro em opera¸oes ca c˜ Se considerarmos agora fun¸˜es com duas ou mais vari´veis, φ(x), em que x = (˜1 , .., xN ) co a ˜ x ˜ aproxima x = (x1 , .., xN ), obtemos pela f´rmula de Taylor (a duas vari´veis) o a eφ(˜) = x 1 φ(x) ex + ex · ˜ ˜ 2 2 φ(x + ξex) ex = ˜ ˜ φ(x).ex + o(||ex ||), ˜ ˜ supondo que 2 φ (a matriz Hessiana de φ) ´ regular, para ex = (ex1 , ..., exN ) suficientemente e ˜ ˜ ˜ pequenos. Logo, quando os valores x s˜o pr´ximos de x, fazemos a mesma lineariza¸˜o, desprezando ˜ a o ca o termo o(||ex ||) e podemos estabelecer ˜ N eφ (x) = ˜ φ(x).ex = ˜ k=1 ∂φ (x)exk , ˜ ∂xk definindo-se a express˜o para a aproxima¸˜o do erro relativo: a ca N ˜ δφ (x) = k=1 ∂φ xk ∂xk (x) N φ(x) δxk = ˜ k=1 pxk δxk ˜ em que pxk s˜o os n´ meros de condi¸˜o a u ca pxk = ∂φ xk ∂xk (x) φ(x) 11 . • Obtemos, por exemplo, para o caso das opera¸˜es elementares, co ˜ δxy = δx + δy ; ˜ ˜ ˜ δx+y = x y δx + δy ; ˜ ˜ x+y x+y ˜ δx/y = δx − δy ˜ ˜ ˜ δx−y = x y δx − δy . ˜ ˜ x−y x−y Vemos imediatamente que quando h´ subtrac¸˜o de n´meros muito pr´ximos podemos ter a ca u o n´meros de condi¸˜o muito elevados — trata-se do caso de cancelamento subtractivo. u ca Exemplo 1.2 Vemos na pr´xima figura como num sistema F P com 4 d´gitos na mantissa o ı os erros relativos originados pelo cancelamento subtractivo s˜o significativamente maiores a que os erros relativos que advˆm de uma divis˜o, mesmo quando se trata de uma divis˜o e a a por valores pr´ximos de zero. o 00 .1 008 .0 006 .0 004 .0 002 .0 0 42 . 44 . 46 . 48 . 54 42 . 5 48 . 46 . 44 . 00 .1 008 .0 006 .0 004 .0 002 .0 0 02 . 04 . 06 . 08 . 1 02 . 1 08 . 06 . 04 . ˜ Na figura da esquerda, representa-se o gr´fico de δx−y , para valores x, y ∈]4, 5[. Nota-se a perfeitamente que pr´ximo da diagonal y = x os erros relativos s˜o muito elevados, o que o a reflecte o problema de mau condicionamento na situa¸ao de cancelamento subtractivo. Na c˜ ˜ figura da direita apresentamos o gr´fico de de δx/y , para x, y ∈]0, 1[. Ainda que a divis˜o a a por valores pr´ximos de zero coloque problemas num´ricos de ‘overflow’, e um aumento do o e erro absoluto, o comportamento do erro relativo n˜o ´ afectado significativamente, conforme a e previsto. 1.2.3 Propaga¸˜o de erros de arredondamento ca Ainda que na concep¸˜o da matem´tica cl´ssica o tempo n˜o exista (...ou melhor, todas ca a a a as rela¸˜es e express˜es matem´ticas n˜o dependem do tempo), sabemos que para n´s o co o a a o 2 resultado da express˜o cos(0.34 + 0.659) + 0.34 n˜o ´ obtido num unico momento. Ou a a e ´ seja, devemos efectuar umas opera¸˜es antes de outras, de acordo com as prioridades conco vencionadas. De forma semelhante, as opera¸˜es efectuadas numa m´quina n˜o s˜o todas co a a a feitas ao mesmo tempo... ´ necess´rio programar um algoritmo. e a Um algoritmo pode ser visto como uma lista ordenada de tarefas elementares. As tarefas elementares dependem da linguagem de programa¸˜o. Assim, por exemplo, podemos ca encarar o co-seno como uma fun¸˜o elementar, mas n˜o nos devemos esquecer que isso se ca a deve apenas ao facto da linguagem de programa¸˜o possuir um algoritmo subjacente que ca 12 permite o conforto de evitar uma programa¸˜o penosa. A pr´pria soma ou multiplica¸˜o de ca o ca n´meros levar-nos-ia ` programa¸˜o de algoritmos que aprendemos na instru¸˜o b´sica5 . u a ca ca a A evolu¸˜o das linguagens de programa¸˜o tende a tornar elementares tarefas que anca ca teriormente n˜o o seriam. Assim, as linguagens simb´licas actuais (como o Mathematica) a o contˆm subrotinas elementares que n˜o o seriam em linguagens cl´ssicas. e a a Querendo calcular cos(x + y) + x2 , consideramos o algoritmo: z1 = x + y; z2 = x2 ; z3 = cos(z1 ); z4 = z2 + z3 . H´ assim uma ordena¸˜o de tarefas que est´ subjacente no ´ a ca a ındice de z, e que nos dita a ordem pela qual podemos decompor a express˜o inicial numa sucess˜o de tarefas elea a mentares. Este ´ um caso simples, mas podemos pensar de forma semelhante para algo e mais complicado. Actualmente, um outro passo ´ dado no sentido da programa¸˜o paralela. Ou seja, e ca 2 ao inv´s de esperarmos pelo valor de x + y e s´ depois calcular x , podemos pedir a uma e o outra m´quina (ou processador) que o efectue. Isto n˜o evita, no entanto, o uso de um a a algoritmo semelhante e o escalonamento no tempo, necessitando ainda de uma programa¸˜o ca da coordena¸˜o entre as v´rias m´quinas. Como ´ ´bvio, neste caso extremamente simples ca a a eo isso n˜o se justificaria, mas podemos retirar a ideia subjacente. a Ainda que os valores dados a x e a y sejam os correctos, n˜o podemos esperar que os a valores devolvidos pela m´quina sejam exactos, apenas podemos admitir que a rotina seja a eficaz e que esse valor esteja s´ afectado de erros de arredondamento. Basta pensar na o rotina co-seno... o computador ter´ que devolver sempre um n´ mero num sistema F P, que a u vir´ afectado de um erro de arredondamento. a Assim, o resultado obtido em cada uma das opera¸˜es vem afectado de erros relativos co de arredondamento δarrk , ou seja, ˜ ˜ δzk = δf + δarrk onde f ´ a opera¸˜o, ou fun¸˜o, calculada no passo k. Os erros relativos |δarrk | podem ser e ca ca majorados pela unidade de arredondamento u. Note-se que h´ uma propaga¸˜o destes erros de arredondamento ao longo do algoritmo, a ca o que pode tamb´m causar grandes erros relativos no resultado (originando um problema e de instabilidade num´rica). e De referir que, por exemplo, a implementa¸ao computacional do algoritmo da divis˜o n˜o ´ trivial, e foi c˜ a a e assunto de investiga¸˜o, com o objectivo de diminuir o n´mero de opera¸oes elementares e assim aumentar ca u c˜ a rapidez de c´lculo. Para nos apercebermos da dificuldade inerente a estes algoritmos prim´rios, basta a a tentar programar as opera¸˜es elementares com uma base qualquer (que ser´ um parˆmetro dado pelo co a a utilizador). A programa¸˜o necess´ria ` resolu¸˜o de um sistema linear, que ser´ aqui abordada, ´ mais f´cil que a ca a a ca a e a programa¸˜o de um algoritmo de divis˜o. ca a 5 13 No final do algoritmo, com m passos, se tivermos x1 , ..., xn valores aproximados, obtemos: ˜ δz = px1 δx1 + ... + pxn δxn + q1 δarr1 + ... + qm δarrm ˜ ˜ Observa¸˜o: Devido ` lineariza¸˜o efectuada (ao desprezar os termos quadr´ticos), e ca a ca a como consequˆncia da al´ e ınea b) de um exerc´ anterior, os valores px1 , ...pxn coincidem, ıcio quer considerando um c´lculo passo a passo, quer considerando um c´lculo directo na fun¸˜o a a ca f. Apenas os valores q1 , ..., qm ir˜o depender do algoritmo considerado. a 1.2.4 Algoritmos e rotinas elementares Da mesma forma que apresent´mos um algoritmo para o c´lculo da fun¸˜o cos(x + y) + a a ca x2 , decompondo esse c´lculo em v´rias opera¸˜es elementares, podemos fazer o mesmo a a co decompondo o c´lculo para problemas mais complicados atrav´s de rotinas elementares. a e Assim, se quisermos calcular z = x+y, em que x ´ a solu¸˜o unica da equa¸˜o cos(x) = x e ca ´ ca 1 −t2 e em que y = 0 e dt, podemos separar esse c´lculo em trˆs etapas a e x = FindRoot[z == Cos[z], {z, 0}][[1, 2]]; y = NIntegrate[Exp[−tˆ2], {t, 0, 1}]; z=x+y N˜o vamos agora entrar em detalhe acerca de pormenores acerca das rotinas FindRoot e a NIntegrate, interessa-nos apenas que elas devolvem um valor aproximado do valor correcto que pretendemos calcular, de tal forma que o unico erro existente ´ o erro de arredonda´ e mento. Portanto, o unico erro que h´ a calcular ´ ´ a e ˜ δz = x y δx + δy ˜ ˜ x+y x+y x δ x+y arr1 ˜ em que δx , δy s˜o erros de arredondamento, podendo escrever-se δz = ˜ ˜ a Supondo agora que y = x −t2 e dt, 0 + y δ . x+y arr2 a segunda atribui¸˜o ser´ ca a y = NIntegrate[Exp[−tˆ2], {t, 0, x}]; e no c´lculo de y j´ ser´ necess´rio considerar o erro de arredondamento obtido no c´lculo a a a a a de x, j´ que y ´ entendida como fun¸˜o de x. Assim, δx = δarr1 a e ca ˜ xy (x) xe−x ˜ δy = δx + δarr2 = δx + δarr2 . ˜ ˜ y(x) y Neste caso, ´ poss´ uma express˜o simples j´ que ´ f´cil calcular y (x) = e−x . Finalmente e ıvel a a e a ter´ ıamos ˜ δz = x y x(1 + e−x ) y δx + δy + δarr3 = δx + ( )δarr2 + δarr3 ˜ ˜ ˜ x+y x+y x+y x+y 14 2 2 2 Podemos ainda pensar que o valor de y era dado por y = a e−t dt, em que a era um parˆmetro de entrada que poderia estar afectado de erro. O c´lculo do erro j´ seria a a a diferente, pois y seria visto como fun¸˜o de a e de x, ca x ∂y (x, a) a ∂y (x, a) xe−x ae−a ˜ δy = ∂x δx + ∂a δa + δarr2 = δx − δa + δarr2 . ˜ ˜ ˜ ˜ y(x, a) y(x, a) y y 2 2 x 2 1.3 Condicionamento e estabilidade num´rica e As no¸˜es que encontr´mos neste cap´ co a ıtulo, referentes a n´meros reais, podem ser generu alizadas a espa¸os abstractos como se apresenta em Anexo. Nesse contexto geral vamos c definir a no¸˜o de condicionamento para um problema gen´rico. Iremos ainda falar de esca e tabilidade computacional (ou num´rica) j´ que associado ` implementa¸˜o computacional e a a ca da resolu¸˜o de um problema estar´ subjacente um algoritmo. ca a • Num problema P existem dados (de entrada) que podemos agrupar muito geralmente num vector x, e existem os resultados (dados de sa´ ıda), que genericamente podemos designar por y = P(x). Defini¸˜o 1.6 Um problema diz-se bem condicionado se pequenos erros relativos nos dados ca produzem pequenos erros relativos no resultado. Caso contr´rio, diz-se mal condicionado. a Em concreto, dizemos que o problema P ´ bem condicionado para um dado x se existir e uma constante M ≥ 0 tal que6 ||δy || ≤ M ||δx ||, ∀ˆ ∈ Vx, x ˜ ˆ onde y = P(˜), e Vx ´ uma vizinhan¸a de x. ˜ x e c No caso de dimens˜o finita, em que os dados de entrada podem ser vistos como x = a (x1 , ..., xN ), ´ claro que se algum dos pesos verificar pxi = ∞, para dados (x1 , ..., xN ), ent˜o e a o problema ser´ mal condicionado para esses dados, pois n˜o ser´ poss´ a a a ıvel encontrar a constante M. Como j´ referimos, um problema de mau condicionamento d´-se no caso de cancelamento a a subtractivo. A f´rmula o x1 x2 ˜ δx1 − δx , δx1 −x2 = ˜ ˜ x1 − x2 x1 − x2 2 reflecte isso mesmo. Com efeito, para dados x = (x1 , x2 ) = 0 em que x1 → x2 ´ ´bvio que eo px1 , px2 → ∞. 6 No caso em que y = f (x1 , ..., xd ) consideramos simplesmente ||δy || = |δy | e ||δx || como o erro relativo ˜ ˜ ˆ dado por uma certa norma vectorial, por exemplo : ||δx ||∞ = ˆ Ver apˆndice. e max |δxi | |δx1 | + ... + |δxd | ˆ ˆ ˆ ou ||δx ||1 = . ˆ max |xi | |x1 | + ... + |xd | 15 Observa¸˜o: Podemos observar que o problema de calcular uma fun¸˜o real f poder´ ca ca a 7 ser mal condicionado em x = 0 se f (x) = ∞ ou se f (x) = 0 (excluindo indetermina¸˜es) . co • Ao traduzirmos um problema P em termos de um algoritmo A, para al´m dos erros e dos dados temos que considerar tamb´m os erros de arredondamento que se ir˜o propagar e a ao longo da execu¸˜o do algoritmo. Assim, considerando dados de entrada x e resultados ca y = A(x), definimos: Defini¸˜o 1.7 Um algoritmo ´ computacionalmente (ou numericamente) est´vel se a peca e a quenos erros relativos dos dados, e a pequenos valores da unidade de arredondamento, corresponder um pequeno erro relativo nos resultados. Caso contr´rio, diz-se computaa cionalmente (ou numericamente) inst´vel. a e a Em concreto, dizemos que um algoritmo A ´ computacionalmente est´vel para um dado x se existir uma constante M ≥ 0 tal que x ||δy || ≤ M (u + ||δx ||), ∀ˆ ∈ Vx , ˜ ˆ onde y = A(˜) e Vx ´ uma vizinhan¸a de x. O valor u ´ aqui colocado porque ´ um ˜ x e c e e majorante de todos os erros relativos de arredondamento |δarri |. O algoritmo A ´ computacionalmente inst´vel para dados (x1 , ..., xN ) se algum dos pesos e a verificar pxi = ∞ ou qi = ∞ para esses dados. Observa¸oes: c˜ ´ claro que um algoritmo implementado num problema mal condicionado nunca (i) E poder´ ser computacionalmente est´vel. a a (ii) A constante M desempenha um papel importante para compara¸˜o entre v´rios ca a algoritmos, j´ que consoante o algoritmo podemos obter valores de M diferentes, e podemos a mesmo obter algoritmos computacionalmente est´veis enquantos outros s˜o inst´veis para a a a um mesmo problema. No caso de fun¸˜es vectoriais (ou operadores A) isto corresponde aos casos em que a matriz jacobiana co (ou a derivada de Fr´chet) n˜o ´ limitada. e a e Ou seja, caso ||Ax || = ∞ ou se ||Ax|| = 0(⇔ Ax = 0), isto deve-se a f´rmula que obtemos no Anexo, ` o ˜ ||δA x|| ≤ ||x|| ||Ax || ||δx ||. ˜ ||Ax|| 7 Se A for um operador linear cont´ ınuo, bijectivo, com inversa cont´ ınua, ent˜o a ˜ ||δA x|| ≤ ||A−1 || ||A|| ||δx ||, ˜ e este ´ o caso das matrizes invert´ e ıveis. Como veremos, mais tarde (no cap´ ıtulo 4), ao valor ||A−1 || ||A|| chamaremos n´mero de condi¸ao da matriz A, e este valor estabelece uma maneira de identificar quais os u c˜ sistemas em que a exactid˜o da solu¸˜o ´ mais (ou menos) afectada pela exactid˜o dos dados. Como ´ a ca e a e claro, um n´mero de condi¸˜o pequeno garantir´ a priori melhor exactid˜o. u ca a a 16 Exemplo 1.3 O exemplo mais trivial surge, por exemplo, ao escrever num algoritmo z1 = x − 1 z2 = z1 + 1 ao inv´s de escrever imediatamente z2 = x. Isto implica que haja um arredondamento na e primeira atribui¸ao, o que provoca uma instabilidade para valores de x pr´ximos de zero. c˜ o Com efeito, x ˜ δz1 = x−1 δx + δarr1 ˜ 1 ˜ ˜ δz2 = z1z+1 δz1 + δarr2 assim, x−1 x x−1 ˜ δz2 = ( δx + δarr1 ) + δarr2 = δx + δarr1 + δarr2 ˜ ˜ x x−1 x e o peso q1 = x−1 tende para infinito quando x tende para zero, tornando o algoritmo x inst´vel para valores pr´ximos de zero. a o De facto, se estivessemos a trabalhar com arredondamento por corte, com 8 d´gitos na ı mantissa, verific´vamos que se x = 0.1 × 10−11 (que seria representado exactamente) ent˜o a a z1 = −0.999 999 999 999 seria representado − 0.999 999 99 × 100 z2 = 0.1 × 10−7 isto gera um erro relativo |δz2 | = |0.1×10 −0.1×10 | = 9999, ou seja um erro relativo de 0.1×10−11 quase 1000%. Se n˜o escandaliza que o resultado dˆ 0.1 × 10−7 enquanto deveria ser 0.1 × 10−11 , isto pode a e ter consequˆncias mais dr´sticas em opera¸oes subsequentes... basta pensar que fazendo de e a c˜ seguida z3 = z2 /x, ao inv´s de obtermos 1 ir´amos ter 10 000, etc. e ı (Nota: Este exemplo pode n˜o ser observ´vel, em certas m´quinas, porque os programas a a a de c´lculo, as linguagens de programa¸˜o, ou as m´quinas de calcular, utilizam d´ a ca a ıgitos suplementares, os designados d´gitos de guarda, que evitam ‘algumas’ vezes estes problemas). ı Como ´ claro, este ´ um exemplo trivial, mas existem outras situa¸˜es em que a mue e co dan¸a para um algoritmo computacionalmente est´vel (s´ poss´ se o problema for bem c a o ıvel condicionado) n˜o ´ t˜o simples! a e a Exemplo 1.4 Ilustramos a instabilidade num´rica com um problema que ocorria na vers˜o e a 3 do Mathematica e que foi recentemente corrigido (ou melhor, contornado) na vers˜o.4. a Consideramos a seguinte matriz   1. 2 ··· N 3 ··· N + 1  1  2   A=  .  . ... ... . . 10  ..  . N N + 1 · · · 2N − 1 −11 −7 se pretendermos calcular os valores pr´prios podemos pensar em duas possibilidades: o (i) utilizar a rotina Eigenvalues, que nos d´ uma lista com os valores pr´prios, a o 17 (ii) usar a rotina CharacteristicPolynomial, que nos d´ o polin´mio caracter´stico de A, e a o ı calcular as ra´zes desse polin´mio, usando a rotina NSolve. ı o Sem entrar em detalhes sobre as rotinas, o c´lculo dos valores pr´prios por um processo ou a o por outro ´ matematicamente equivalente, mas pode n˜o o ser do ponto de vista num´rico. e a e Usando a vers˜o anterior do Mathematica, se efectuarmos (i) obtemos o gr´fico que se a a mostra em baixo, a esquerda, onde os pontos correspondem aos valores pr´prios (no plano ` o de Argand). Efectuando (ii) obtemos o gr´fico que mostra a direita. A diferen¸a ´ enorme... a ` c e e aqui apenas consider´mos uma matriz 15 × 15... seria muito maior para matrizes de a dimens˜o superior. a 15 . 1 05 . 5 -. 05 1 -. 15 1 0 1 5 2 0 15 . 1 05 . 5 -. 05 1 -. 15 1 0 1 5 2 0 ´ Ap´s visualizar os gr´ficos podemos mesmo duvidar se algum deles ´ correcto. E claro que o a e neste caso, como escolhemos uma matriz sim´trica, que ter´ valores pr´prios reais, sabemos e a o imediatamente que o segundo gr´fico ´ incorrecto. No entanto, se tiv´ssemos escolhido outro a e e tipo de matriz, a diferen¸a seria at´ maior e n˜o poder´amos aju´zar t˜o facilmente. Estas c e a ı ı a quest˜es ilustram bem como os problemas num´ricos podem ser colocados, mesmo quando o e se domina a teoria subjacente. Perante estes dois gr´ficos, o utilizador da vers˜o anterior a a do Mathematica (ou doutro programa qualquer...) poderia tentar confirmar se cometeu algum erro na introdu¸ao dos dados, ou manifestar o seu desagrado ao fabricante... Dever´ c˜ a ter sido esta ultima hip´tese que levou a que fosse contornado o problema na vers˜o mais ´ o a recente. Mas analisemos esta diferen¸a face a teoria que acabamos de expor. Iremos ver que o c ` problema do c´lculo de valores pr´prios ´ bem condicionado (relativamente a varia¸ao a o e ` c˜ dos elementos) quando a matriz ´ sim´trica. Portanto, n˜o se trata de uma quest˜o de e e a a mau condicionamento do problema. Trata-se, com efeito, de um problema de instabilidade num´rica. e Qual o problema com o procedimento (ii)? A anterior rotina CharacteristicPolynomial apresentava o polin´mio caracter´stico na sua forma can´nica, o que n˜o acontece na vers˜o o ı o a a actual em que apresenta apenas a factoriza¸ao, usando os valores obtidos em Eigenvalues c˜ (´ nesse sentido que dizemos que contorna o problema). No c´lculo efectuado pela antee a ı rior rotina, os valores dos coeficientes do polin´mio caracter´stico eram calculados de forma o diferente e sujeitos a sucessivos erros de arredondamento, o que levava a erros apreci´veis a nos coeficientes do polin´mio caracter´stico. Esses erros podem mesmo ser ampliados pelo o ı c´lculo das ra´zes do polin´mio, que como veremos (no pr´ximo cap´tulo) ´ um problema a ı o o ı e mal condicionado face a varia¸ao dos coeficientes. ` c˜ Terminamos, notando que esta diferen¸a apenas acontecia se um dos coeficientes da matriz c for considerado num´rico (...coloc´mos um pequeno ponto num dos elementos da matriz, e a c para ilustrar esse facto, pois, como j´ referimos, o programa faz a diferen¸a entre 1 e 1.). a Se todos os elementos fossem considerados exactamente, as rotinas do programa devolviam o mesmo resultado. • Contudo, n˜o se pode pensar que ´ sempre poss´vel contornar um problema introduzindo a e ı 18 valores ‘exactos’, por trˆs raz˜es diferentes. Primeiro, porque a diferen¸a entre o tempo e o c de c´lculo do valor ‘exacto’ e do valor num´rico ser´ abissal... (as diferen¸as cifram-se a e a c entre milissegundos e minutos), j´ que, n˜o sendo permitadas simplifica¸oes num´ricas, a a c˜ e acumulam-se express˜es n˜o simplificadas, que tamb´m podem atingir facilmente o limite o a e da mem´ria da m´quina... que ser´ sempre finito! Segundo, porque se fosse devolvida uma o a a express˜o n˜o simplificada, para a avaliar teriam que ser efectuados c´lculos num´ricos, a a a e podendo de novo haver instabilidade. Terceiro, porque os valores dados (neste caso, os introduzidos nos elementos da matriz) podem resultar de outros c´lculos num´ricos. a e Observa¸˜o 1: ca Real¸amos que a quest˜o da instabilidade num´rica ´ um problema do algoritmo, ou c a e e seja (como j´ mencion´mos) da necessidade de dividir um c´lculo em subc´lculos. O que a a a a devemos evitar ´ que esses subc´lculos sejam mal condicionados. O problema pode ser e a bem condicionado, mas se para o seu c´lculo efectuarmos c´lculos em subproblemas mal a a condicionados, ent˜o ´ natural que haja instabilidade. a e Por exemplo, o c´lculo da fun¸˜o f (x) = 1 − cos(x) ´ um problema bem condicionado. a ca e No entanto, se pensarmos em proceder ao seu c´lculo efectuando a subtrac¸˜o, sabemos que a ca estamos a introduzir um problema mal condicionado, devido ao cancelamento subtractivo. Para valores de x pr´ximos de zero (quando ocorre esse cancelamento) devemos pensar o numa maneira equivalente de efectuar o c´lculo, por exemplo, usando a rela¸˜o 1−cos(x) = a ca 2 x 2 sin ( 2 ). A nova maneira de calcular f poder´ envolver mais subc´lculos, mas nenhum deles a a ´ mal condicionado (se x ´ pr´ximo de zero). Desta forma n˜o se altera o condicionamento e e o a a do problema inicial. Se decompusermos um problema P em subproblemas P1 , ..., PN , ent˜o para que a composi¸˜o desses problemas mantenha o condicionamento de P cada um deles ca dever´ ser bem condicionado. No exemplo anterior isso n˜o ocorreu quando nos propus´mos a a e calcular o polin´mio caracter´ o ıstico com uma rotina mal condicionada. Observa¸˜o 2: (propaga¸ao de erro em m´todos iterativos) ca c˜ e No pr´ximo cap´ o ıtulo iremos focar a nossa aten¸˜o em m´todos iterativos que envolvem ca e algoritmos do tipo zn+1 = g(zn ) podemos avaliar o erro relativo, usando a f´rmula j´ estabelecida, e portanto o a zn g (zn ) ˜ δz + δarrn+1 , δzn+1 = g(zn ) n reparamos que isto origina uma sucess˜o do tipo dn+1 = pn dn + an+1 , o que no final de m a itera¸˜es d´ co a dm+1 = pm · · · p0 d0 + pm · · · p1 a1 + ... + pm am + am+1 . Portanto o erro de arredondamento representado por ak ir´ aparecer multiplicado pelos faca tores pk , pk+1 , ... seguintes. Se a multiplica¸˜o destes factores tender para zero, a influˆncia ca e dos erros de arredondamento anteriores ser´ negligenciada.nas futuras itera¸oes. Ora para a c˜ 19 que a multiplica¸˜o desses factores tenda para zero ser´ conveniente que eles sejam em ca a m´dulo menores que 1, ou seja o |pn | = zn g (zn ) < 1. g(zn ) Reparamos que no caso em que zn ≈ g(zn ) e |g (zn )| < 1 ent˜o a condi¸˜o verifica-se, e a ca ser´ esse o caso dos m´todos de ponto fixo que veremos no pr´ximo cap´ a e o ıtulo. Portanto, nesses m´todos a influˆncia do erro relativo inicial e dos erros de arredondamento anteriores e e ´ negligenci´vel. e a Note-se, no entanto, que para valores de |g (zn )| pr´ximos de 1, o que acontecer´ quando o a a convergˆncia for lenta, os erros de arredondamento imediatamente anteriores n˜o s˜o t˜o e a a a negligenci´veis. a Como ´ ´bvio, o ultimo erro de arredondamento mant´m inalterado, e deve ter-se espeeo ´ e ˜ cial aten¸˜o a ele quando atingimos a precis˜o da m´quina, pois nesse caso |δzn | ≈ |δarrn | ≈ ca a a u, e ser´ escusado efectuar mais itera¸˜es, pois n˜o obteremos erros mais pequenos! a co a Observa¸˜o 3: (problema inverso) ca Quanto melhor for condicionado um certo problema pior ser´ o condicionamento do a problema inverso associado. Com efeito, basta pensar que se os erros relativos dos resultados s˜o muito pequenos face aos erros dos dados, ent˜o esses dados passam a ser os resultados, a a e vice-versa. Portanto, a rela¸˜o verifica-se no sentido inverso... os pequenos erros relativos ca dos dados originam os erros relativos apreci´veis nos resultados. a Um exemplo ´ o caso apresentado na observa¸˜o anterior. Para a itera¸˜o wn+1 = e ca ca −1 g (wn ) teremos wn (g −1 ) (wn ) ˜ δwn + δarrn+1 . δwn+1 = g −1 (wn ) e podemos mesmo ver que, como wn = g(wn+1 ), ˜ δwn+1 = g(wn+1 ) δw + δarrn+1 , wn+1 g (wn+1 ) n em que o n´mero de condi¸˜o ´ o inverso do obtido no c´lculo directo de g(wn+1 ). u ca e a Seguindo o caso anterior, vimos que o problema era bem condicionado para wn ≈ g(wn ), 1 ou tamb´m, wn ≈ g −1 (wn ), quando |g (wn )| < 1. Como |(g −1 ) (wn )| = | g (g−1 (wn )) | ≈ e 1 | g (wn ) | > 1, ao inv´s de haver um decr´scimo do erro relativo passar a acontecer um e e incremento, devido ` sucessiva multiplica¸˜o de factores maiores que 1. Esses factores a ca ir˜o aumentar exponencialmente o efeito dos erros de arredondamento. Podemos perceber a isso num exemplo que vimos anteriormente, quando efectu´mos ra´ a ızes sucessivas de um n´mero, e depois pretendemos regressar efectuando quadrados sucessivos. Na primeira u √ etapa, ao considerar zn+1 = zn , os erros relativos comportavam-se na forma 1 ˜ δzn+1 = δzn + δarrn+1 , 2 fazendo decrescer os efeitos dos erros de arredondamento iniciais na propor¸˜o 21 . Na etapa ca n 2 inversa, ao considerar wn+1 = wn , os erros relativos passam a ter o comportamento ˜ δwn+1 = 2δwn + δarrn+1 , 20 o que incrementa os efeitos dos erros de arredondamento iniciais na propor¸˜o 2n . Assim, ca −16 ainda que o erro de arredondamento inicial seja inferior a 10 , ao fim de N itera¸˜es co log(10) N −16 a teremos 2 10 , e para N > 53 ≈ 16 log(2) ,o efeito do erro de arredondamento inicial ser´ da grandeza das unidades. Isto justifica os resultados obtidos nesse exemplo, e tamb´m a e maneira de contornar este problema adicionando um d´ ıgito no sistema F P bin´rio, que foi a a solu¸˜o apresentada pelo programa Mathematica. Note-se que efectuando o mesmo para ca uma raiz quarta, e regressando elevando a quatro, a solu¸˜o come¸a a ser mais dispendiosa... ca c ser´ necess´rio adicionar 2 d´ a a ıgitos bin´rios em cada itera¸˜o, e ao inv´s das 46 casas decimais a ca e usadas nos c´lculos interm´dios para M = 100, o Mathematica utiliza 76... podemos pensar a e assim no esfor¸o computacional que poder´ ser exigido em c´lculos mais complexos. c a a 1.4 Exerc´ ıcios A = 0.492, B = 0.603, C = −0.494, D = −0.602, E = 10−5 1. Considere os valores Com a finalidade de calcular A+B+C +D , E dois indiv´ ıduos, usando uma m´quina com 3 d´ a ıgitos na mantissa e com arredondamento sim´trico, efectuaram esse c´lculo de forma distinta, mas aritmeticamente equivalente. e a O indiv´ ıduo X calculou A+B, depois C +D, somou os valores, e dividiu por E, obtendo F = 0. Por seu turno, o indiv´ ıduo Y calculou A + C, depois B + D, somou os valores, e dividiu por E, tendo obtido F = −100. Verifique os c´lculos efectuados pelos dois indiv´ a ıduos e comente a disparidade de resultados obtidos, atendendo a que se usaram processos matematicamente equivalentes. 2. Sabendo que cos(xi ) para i = 1, ..., 20 ´ calculado com um relativo inferior a 10−6 , e indique uma estimativa para o erro relativo de F = 20 P = k=1 cos(xk ) baseando-se nas f´rmulas obtidas para a propaga¸˜o do erro relativo em fun¸˜es. o ca co 3. a) Determine para que valores de x o c´lculo de f(x) = 1 − cos(x) conduz a um a problema mal condicionado. b) Considere o seguinte algoritmo para o c´lculo de f a z1 = cos(x) ; z2 = 1 − z1 . Mostre que o algoritmo ´ inst´vel para x ∼ 0 (apesar de o problema ser bem condicionado). e a 1−cos(x) c) Baseado na f´rmula o = sin2 ( x ), escreva um algoritmo equivalente, numerica2 2 mente est´vel para x ∼ 0. a 21 4. Mostre que, usando a aproxima¸˜o cos(x) ∼ 1 − x + x , se tˆm as seguintes estimaca e 2 24 tivas para o erro absoluto e relativo: |ecos(x) | ≤ 1 ∼ 0.35 × 10−3 2880 √ 2 |δcos(x) | ≤ 2880 2 4 para qualquer x ∈ [−π/4, π/4]. √ a 5. Ao calcular-se a express˜o f(x) = x − x2 − 1 numa m´quina usando o sistema a de virgula flutuante VF(10,6,-30,30) com arredondamento sim´trico, verificou-se que para e valores de x muito grandes o erro relativo era tamb´m grande. e a) Verifique que o erro relativo ´ 100% para x = 2000. Qual o valor do erro relativo e para valores de x ainda maiores? b) Qual a raz˜o desse erro relativo grande: o problema ´ mal condicionado ou h´ instaa e a bilidade num´rica? Justifique e apresente uma forma de calcular f (x) que n˜o apresente e a erros relativos t˜o grandes. a 6. Determine uma fun¸˜o f (x) que verifique ca δf (x) ∼ xe−x δx Sugest˜o: Verifique primeiro que a y f (y) ∼ C exp δf (x) dx . ex e repare que esta f´rmula permite obter a fun¸˜o f a partir da express˜o do erro relativo. o ca a 7. Efectuar o exerc´ 3 no anexo acerca de equa¸˜es `s diferen¸as. ıcio co a c 22 Cap´ ıtulo 2 Determina¸˜o de Ra´ ca ızes Reais e Complexas O objectivo deste cap´ ıtulo ´ aproximar solu¸˜es reais (ou complexas) de equa¸˜es da forma: e co co f (x) = 0 onde f dever´ ser, pelo menos, uma fun¸˜o cont´ a ca ınua numa vizinhan¸a da raiz. Os valores c x que verificam a equa¸˜o s˜o tamb´m chamados ra´zes da equa¸˜o, ou ainda, zeros da ca a e ı ca fun¸˜o f. ca Para casos particulares de f a determina¸˜o das ra´ ca ızes da equa¸˜o f (x) = 0 pode ca ser considerada trivial, j´ que a podemos reduzir algebricamente a problemas de resolu¸˜o a ca a elementar. Por exemplo, resolver uma equa¸˜o linear ax+b = 0, reduz-se a efectuar a divis˜o ca 2 −b/a, enquanto para resolver uma equa¸˜o do segundo grau ax + bx + c = 0, podemos usar ca √ b2 uma f´rmula resolvente que nos d´ x = −b± 2a −4ac , valores que s˜o trivialmente calcul´veis o a a a (admitindo que o c´lculo de ra´ quadradas tamb´m o ´!). a ızes e e A determina¸˜o de uma f´rmula resolvente para equa¸˜es de terceiro e quarto grau conca o co stituiu um dif´ problema alg´brico que resistiu dois mil´nios e foi finalmente resolvido ıcil e e por matem´ticos italianos do s´c. XVI (Tartaglia, Cardan, Ferrari). No entanto, a dea e termina¸˜o da f´rmula resolvente para uma equa¸˜o de grau 5 voltou a causar grandes ca o ca dificuldades aos matem´ticos seguintes, durante quase trˆs s´culos. No seguimento de traa e e balhos de Lagrange, Vandermonde e Ruffini, demonstrou-se no s´c. XIX (Galois, Abel), que e ´ imposs´ obter uma f´rmula resolvente geral para equa¸˜es alg´bricas de grau maior ou e ıvel o co e igual a cinco! Este resultado surpreendente apresenta logo grandes restri¸˜es ` possibilidade co a de resolu¸˜o alg´brica de equa¸˜es. Com efeito, se existe dificuldade/impossibilidade em ca e co determinar algebricamente zeros de polin´mios, essa dificuldade/impossibilidade assume o ainda maiores propor¸˜es quando consideramos fun¸˜es f n˜o polinomiais. co co a Por exemplo, se ´ simples dizer que os zeros da fun¸˜o f (x) = sin(x) s˜o os valores e ca a x = kπ para k ∈ Z, j´ nos ´ imposs´ determinar de forma geral as ra´ de equa¸˜es da a e ıvel ızes co forma sin(ax2 + b) = cx + d, etc. Para este tipo de equa¸˜es n˜o lineares temos, no entanto, co a a possibilidade de encontrar solu¸˜es usando m´todos iterativos. Os m´todos iterativos co e e permitem construir uma sucess˜o que, em cada termo, tem apenas uma aproxima¸˜o da a ca solu¸˜o, mas que, enquanto sucess˜o, ´ a pr´pria solu¸˜o do problema. Importa assim ca a e o ca 23 desmistificar o conceito de solu¸˜o, ou mais concretamente o conceito de solu¸˜o exacta, ca ca com um exemplo. Consideremos a equa¸˜o x3 − 3x − 3 = 0, que tem uma raiz real, dada por ca √ 1 3 z = √ ( 3− 5+ 3 2 e consideremos a sucess˜o dada por a x0 = 2, xn+1 = 2x3 + 3 n , 2 −3 3xn 3 3+ √ 5) cujos primeiros termos s˜o x1 = 19 = 2.1111..., x2 = 3181 = 2.1038. Facilmente diremos que a 9 1512 o valor apresentado para z com a f´rmula resolvente ´ a solu¸˜o exacta e que a sucess˜o (xn ) o e ca a apenas nos dar´ valores aproximados. No entanto, como iremos ver que a sucess˜o converge a a para a solu¸˜o do problema, trata-se de uma sucess˜o de Cauchy que ´ um representante ca a e da classe de equivalˆncia da solu¸˜o e portanto (xn ) ´ a solu¸ao exacta! e ca e c˜ a Do ponto de vista de c´lculo, para obter x2 foi apenas necess´rio efectuar algumas a multiplica¸˜es e uma divis˜o, e os cinco d´ co a ıgitos apresentados s˜o j´ os correctos, enquanto a a que para calcular o valor aproximado de z a partir da f´rmula resolvente espera-nos ainda o ´ o trabalho de calcular os radicais... E o h´bito de ter uma f´rmula expl´ a o ıcita, em que o valor o ca ´ dado a partir de fun¸˜es conhecidas que gera o conceito de f´rmula ou solu¸˜o exacta. e co Uma f´rmula expl´ o ıcita apenas nos transporta de um problema (o de resolver a equa¸˜o) ca para outro (o de calcular as ra´ ızes). Isso acontece de um modo geral e n˜o apenas neste a caso. As f´rmulas expl´ o ıcitas remetem-nos para entidades conhecidas, e por isso s˜o uteis a ´ teoricamente. No entanto, a n´ de c´lculo, para obter uma aproxima¸˜o idˆntica, pode ıvel a ca e ser mais moroso efectuar as opera¸˜es segundo uma f´rmula expl´ co o ıcita do que segundo um m´todo iterativo. e Note-se que cada termo da sucess˜o xn ´ apenas uma aproxima¸˜o racional1 da solu¸˜o a e ca ca ´ z. E a pr´pria sucess˜o (xn ) que se identifica com z. Para al´m disso, quando calculamos os o a e termos xn n˜o ´ poss´ armazenar todos os d´ a e ıvel ıgitos no sistema de ponto flutuante F P (.) que a m´quina utiliza. H´ um erro de arredondamento, que se traduz em considerar xn , a a ˜ um n´ mero pertencente a esse sistema. Mesmo com esse erro de arredondamento, como o u m´todo ´ numericamente est´vel, os termos seguintes s˜o muito pouco afectados, at´ que e e a a e se atinja a m´xima precis˜o do sistema. a a Refira-se ainda que o pr´prio processo emp´ o ırico de verificar que uma sucess˜o est´ a a a convergir, reparando que os d´ ıgitos n˜o se v˜o alterando (que corresponde ao nosso processo a a intuitivo de verificar que se trata de uma sucess˜o de Cauchy... e que por vezes leva a erros a de julgamento!), implica que se esteja a vislumbrar a evolu¸˜o da sucess˜o e n˜o apenas ca a a um termo. Ap´s esta introdu¸˜o resumimos o conte´do do cap´ o ca u ıtulo. Come¸aremos por apresentar c algumas no¸˜es acerca da convergˆncia de sucess˜es e do tempo de c´lculo num m´todo co e o a e Ainda que os valores xn sejam reais, podemos sempre tomar racionais xn (para n suficientemente ˜ grande, retirados da sucess˜o de Cauchy que define xn ), de forma a que a sucess˜o (˜n ) seja uma sucess˜o a a x a de Cauchy de racionais, representante da classe de equivalˆncia do real z. e 1 24 iterativo. De seguida relembramos alguns teoremas elementares de An´lise Matem´tica, a a que nos ser˜o uteis e apresentamos dois m´todos elementares — os m´todos da bissec¸˜o e a ´ e e ca da falsa-posi¸˜o — que apesar de parecerem pouco sofisticados ou demasiado triviais conca stituem ainda uma alternativa quando outros n˜o s˜o aplic´veis, ou como m´todos para uma a a a e primeira aproxima¸˜o das ra´ ca ızes. De seguida, apresentamos o m´todo do ponto fixo cuja e simplicidade e efic´cia merece maior relevo. Ao contr´rio dos anteriores, as possibilidades a a de generaliza¸˜o deste m´todo para fun¸˜es de vari´vel complexa ou a casos mais abstracca e co a tos (que veremos nos cap´ ıtulos seguintes) s˜o not´veis. Como caso particular do m´todo a a e do ponto fixo, assegurando uma grande rapidez de convergˆncia, salienta-se o m´todo de e e Newton. Essa rapidez de convergˆncia tem como exigˆncia a diferenciabilidade da fun¸˜o, e e ca o que nem sempre se afigura f´cil ou poss´ de efectuar. Uma possibilidade de evitar o a ıvel c´lculo da derivada e obter ainda uma rapidez de convergˆncia razo´vel pode ser posta em a e a pr´tica usando os m´todos da secante ou de Steffensen. a e Este cap´ ıtulo cont´m ainda uma referˆncia ao m´todo de Bernoulli, aplic´vel apenas a e e e a equa¸˜es alg´bricas e n˜o muito eficaz, mas que apresenta ideias completamente distintas co e a dos m´todos anteriores (o interesse especial do m´todo de Bernoulli residiu historicamente e e na possibilidade de aproximar ra´ evitando ao m´ximo o c´lculo de divis˜es). ızes a a o Finalmente, ´ inclu´ uma pequena referˆncia ` determina¸˜o de ra´ e ıda e a ca ızes complexas atrav´s da generaliza¸˜o dos m´todos do ponto fixo, de Newton e da secante. Esta gene ca e eraliza¸˜o antecede e motiva a generaliza¸˜o do m´todo do ponto fixo num contexto mais ca ca e geral, que constitui o cerne do cap´ ıtulo seguinte. Conv´m fazer uma referˆncia ` importˆncia de alguns m´todos simples no contexto da e e a a e An´lise Num´rica actual. O m´todo mais utilizado para determinar ra´ de equa¸˜es ´ o a e e ızes co e m´todo de Newton, devido ` sua simplicidade e rapidez de convergˆncia, no entanto n˜o e a e a s˜o raros os casos em que a aplica¸˜o deste m´todo se afigura impratic´vel. Com efeito, a ca e a nem todas as equa¸˜es que pretendemos resolver envolvem fun¸˜es elementares, cujo c´lculo co co a ´ quase instantˆneo. Nalgumas aplica¸˜es os valores para a fun¸˜o f s˜o obtidos ap´s a e a co ca a o resolu¸˜o de problemas complicados, e obter cada um dos valores pode significar v´rias horas ca a de c´lculo, mesmo no computador mais moderno. Para que fa¸a uma ideia, basta pensar a c que f (x) pode ser o valor de um determinante de uma matriz 1000 × 1000 cujos elementos dependem de x e podem eles pr´prios ser determinantes de matrizes semelhantes... Para o al´m do esfor¸o de c´lculo para cada um dos valores, explicitar o c´lculo da derivada e c a a pode ser completamente impratic´vel. Nestas situa¸˜es, outros m´todos podem ser mais a co e vantajosos... como o m´todo da secante ou o m´todo de Steffensen. e e Frequentemente, o pr´prio esbo¸o do gr´fico ´ irrealiz´vel! O interesse de m´todos como o c a e a e o m´todo da bissec¸˜o, ou da falsa-posi¸˜o pode residir na vantagem de se assegurar sempre e ca ca ca a um intervalo onde se encontra a raiz controlando melhor a sua localiza¸˜o, j´ que usando outros m´todos (se n˜o for assegurada a convergˆncia) podemos ser levados a situa¸˜es de e a e co divergˆncia ou a uma convergˆncia para solu¸˜es n˜o pretendidas. e e co a Numa linguagem sofisticada como o Mathematica encontramos trˆs tipos de rotinas para e a determina¸˜o de ra´ ca ızes de equa¸˜es, as rotinas Solve, NSolve e FindRoot. O utilizador co deve ter em mente as limita¸˜es e potencialidades destas rotinas, n˜o se devendo influenco a 25 ciar pela tradu¸˜o literal do nome. As rotinas Solve e NSolve, bastante sofisticadas, tˆm ca e aplica¸˜o restrita a equa¸˜es alg´bricas, e a sua diferen¸a reside no facto da primeira perca co e c mitir explicitar a resolu¸˜o alg´brica (quando ´ poss´ a redu¸˜o a radicais) e a segunda ca e e ıvel ca apresentar imediatamente uma aproxima¸˜o num´rica (usando um algoritmo espec´ ca e ıfico para equa¸˜es alg´bricas). Quando a fun¸˜o n˜o ´ polinomial, a unica rotina que permite uma co e ca a e ´ aproxima¸˜o das ra´ de equa¸˜es ´ a rotina FindRoot, que consiste numa simples impleca ızes co e menta¸˜o num´rica do m´todo de Newton e n˜o dispensa a introdu¸˜o da iterada inicial2 . ca e e a ca 2.1 Convergˆncia de sucess˜es e o Um m´todo iterativo consiste, de um modo geral, numa aproxima¸˜o inicial x0 , tamb´m e ca e designada iterada inicial, e num processo de obter sucessivamente novas iteradas xn+1 a partir das anteriores xn , xn−1 , ... Ao executar este procedimento criamos uma sucess˜o (xn ) que converge para o valor a pretendido z. Ser´ crucial estabelecer de que forma um elemento da sucess˜o est´ mais ou menos a a a pr´ximo de z, e para isso definimos em cada iterada o erro o en = z − xn . Dessa forma, neste cap´ ıtulo iremos construir sucess˜es que convergem para z, solu¸˜o o ca da equa¸˜o f(x) = 0. ca ´ E claro que, havendo convergˆncia, o erro cometido em cada iterada en = z − xn vai e tender para zero, permitindo assim considerar os valores xn como aproxima¸˜es da raiz z a co menos de um valor ε > 0 suficientemente pequeno, majorante do erro absoluto, |en | < ε. Devemos distinguir conceptualmente entre dois tipos de estimativas de erros que podemos estabelecer, as estimativas a priori e as estimativas a posteriori. Numa estimativa a priori n˜o ´ necess´rio calcular a iterada xn para podermos apresentar uma majora¸˜o do erro a e a ca |en |, ou seja, a partir da fun¸˜o conseguimos prever (sem efectuar itera¸˜es) que xn ´ um ca co e valor suficientemente pr´ximo do resultado. Ao contr´rio, numa estimativa a posteriori o a apenas podemos estabelecer qual a majora¸˜o do erro |en | se calcularmos o valor de xn , ca atrav´s do c´lculo efectivo das itera¸˜es. e a co Como ´ suposto o erro en convergir para zero, come¸amos por relembrar as nota¸˜es, e c co que permitem comparar a convergˆncia de sucess˜es.que tendem para zero, e o en en = O(an ), se ∃C > 0 : | | < C an en en = o(an ), se | | −→ 0. an 1 Assim, quando escrevermos en = O( n2 ), significa que a sucess˜o en converge para zero de a 1 forma semelhante a n2 . Iremos abordar m´todos iterativos para os quais a convergˆncia do e e Conv´m ainda estar atento a poss´ e ıveis erros, como quando se introduz FindRoot[x==Sin[x],{x,0.2}] e nos aparece como resultado x -> 0.0116915, que n˜o tem qualquer significado (a unica raiz de sin(x) = x a ´ ´ x = 0), n˜o aparecendo qualquer mensagem de aviso. e a 2 26 1 erro para zero ´ muito superior a np . Na realidade, poderemos garantir convergˆncias do e e −n −2n erro para zero do tipo O(2 ) ou mesmo O(2 ). Um descuido frequente3 ´ supor que se verificarmos que xn+1 − xn converge para zero, e isso significa que h´ convergˆncia. S˜o bem conhecidos exemplos em que isso n˜o se verifica, a e a a n 1 1 4 basta relembrar a s´rie sn = k=1 k ,que n˜o ´ convergente e no entanto sn+1 − sn = n+1 e a e tende para zero. Por´m, uma an´lise mais atenta permite concluir o seguinte lema. e a Lema 2.1 Seja dn = xn+1 − xn . A sucess˜o (xn ) ´ convergente se e s´ se a s´rie a e o e n sn = k=0 dk for convergente. Em particular, se existir p : |xn+1 − xn |np → c, ent˜o (xn ) converge se p > 1, c < +∞, e diverge se p ≤ 1, c > 0. a Dem: Basta reparar que n−1 n−1 xn − xm = k=m xn+1 − xn = k=m dn = sn−1 − sm . Assim (sn ) ´ sucess˜o de Cauchy se e s´ se (xn ) tamb´m for. O resultado particular surge e a o e 1 de aplicar o crit´rio de compara¸˜o com a s´rie e ca e , que ´ convergente para p > 1 e e np divergente para p ≤ 1. 1 Aplicando o lema, basta que xn+1 − xn convirja mais rapidamente para zero que np , com p > 1, para podermos concluir a convergˆncia. Quando xn+1 − xn converge para zero t˜o ou e a 1 mais lentamente que n , conclu´ ımos a divergˆncia. Este facto permite extrair informa¸˜es e co importantes em circunstˆncias em que n˜o se sabe se uma sucess˜o converge ou n˜o. a a a a Exemplo 2.1 Consideremos a sucess˜o yn = a xn , 10 em que xn ´ definida recursivamente por e x2 n . xn + 1 x1 = 1, xn+1 = 1 + 3 Especialmente porque o crit´rio |xn+1 − xn | < ε ´ muitas vezes utilizado como crit´rio de paragem de e e e um m´todo. e 4 Pode obter-se mesmo a f´rmula, o n k=1 1 1 = log(n) + γ + O( ), k n em que γ = 0.57721... ´ a denominada constante de Euler. Esta f´rmula explicita bem a divergˆncia da e o e s´rie. e 27 Calculando os termos da sucess˜o, obtemos por exemplo a y998 = 4.37122, y999 = 4.37345, y1000 = 4.37569, y1001 = 4.37792, e reparamos que os termos se est˜o a aproximar, embora muito lentamente. Uma observa¸ao a c˜ descuidada poderia levar-nos a atribuir uma aproxima¸ao 4.37... para o limite da sucess˜o. c˜ a Ora, a sucess˜o (xn ) n˜o converge e consequentemente (yn ) tamb´m n˜o! Com efeito, a a e a fa¸amos uma an´lise pouco rigorosa, mas instrutiva. Com base na compara¸ao da sucess˜o c a c˜ a 1 |xn+1 − xn | com √n obtemos o gr´fico seguinte (ver figura em baixo, a esquerda) em que se a ` √ torna evidente que |xn+1 − xn | n ∼ 0.706..., e portanto segundo o crit´rio apresentado (xn ) e n˜o dever´ convergir. Iremos ver que de facto tal sucess˜o n˜o poderia convergir, reparando a a a a que se trata de uma sucess˜o definida pelo m´todo do ponto fixo, que n˜o converge neste a e a caso. Ainda com base nestes valores e reparando que xn+1 − xn = xn1 , podemos escrever +1 1 xn +1 √ n √ ≈ 0.706 , o que nos d´ xn ≈ 0.706 − 1. Assim, podemos efectuar uma estimativa para a n o valor y5000 com o simples c´lculo da raiz e sem fazer as 4000 itera¸oes restantes. O a c˜ valor obtido pela estimativa ´ 9.912, o que n˜o difere muito do valor correcto 9.902 (erro e a relativo de 0.1%). Se o mesmo fosse efectuado para y10 000 obtinhamos pela estimativa 14.06 ao inv´s de 14.04, com erro relativo de 0.14%, mas poupando 9000 itera¸oes. Este e c˜ exemplo ilustra a utilidade da previs˜o do comportamento assimpt´tico. Poder´ pensara o a se que ´√ e bem conhecida uma justifica¸ao te´rica global que permite concluir a estimativa c˜ o xn = O( n), mas n˜o... Isso n˜o invalida os resultados num´ricos, lan¸ando a motiva¸ao a a e c c˜ 5 para os provar . 1 0.8 0.6 1 -2 -1 -2 2 4 6 8 10 0.4 -3 0.2 -4 -5 200 400 600 800 1000 √ ` Figura: A esquerda, gr´fico com os valores da sucess˜o |xn+1 − xn | n, onde se constata a a ` que, para n grande, o valor ´ quase constante, pr´ximo de 0.706... A direita, gr´fico onde e o a s˜o colocados os pontos (log(n), log |xn+1 − xn |). Sendo claro que definem uma recta (que a ´ colocada a tracejado), ela ´ determinada por regress˜o linear (m´ e e a ınimos quadrados) como sendo y = −0.353−0.4993x. O valor da inclina¸˜o foi o que nos permitiu especular a rela¸˜o ca ca −0.5 −0.353 com O(n ), e a exponencial da constante ´ e e = 0.703... pr´ximo de 0.706. Isto resulta o ´ de obter, a partir de |xn+1 − xn | ∼ c np , a rela¸˜o log |xn+1 − xn | ∼ p log(n) + log(c). E este ca o processo adequado para determinar p, que a priori n˜o ser´ conhecido. a a Neste caso, o problema ‘mais simples’ consiste em mostrar que para sucess˜es definidas recursivamente o 1 1 p+1 ). Repare-se que isto ´ consistente o e e por xn+1 = xn + xp +1 o comportamento assimpt´tico de (xn ) ´ um O(n n nos casos limite, p = 0, quando se reduz ao somat´rio, e quando p = ∞, em que se reduz a constante inicial. o ` 5 28 2.1.1 Ordem de convergˆncia e Consideremos diversos tipos de sucess˜es que convergem para 1, o 1 1 1 1 1 , , vn = 1 + n , , xn = 1 + 2n , yn = 1 + 3n , , zn = 1 + n2 . 3 3 n 3 3 3 3 Qualquer uma destas sucess˜es ´ um representante do n´mero 1, enquanto sucess˜es de o e u o Cauchy de racionais que convergem para 1. No entanto, reparamos que podem ser distinguidas pela rapidez de convergˆncia, verificando que a mais lenta ´ a primeira, un , e a mais e e r´pida ´ a ultima, zn . a e ´ Assim, come¸amos por estabelecer essa diferen¸a definindo ordem de convergˆncia. c c e un = 1 + Defini¸˜o 2.1 (ordem de convergˆncia linear6 ). Seja (xn ) uma sucess˜o convergente para ca e a z, e seja en = z − xn = 0. Consideramos a sucess˜o a Kn = |en+1 | . |en | (2.1) Se Kn ≤ K + < 1, para n suficientemente grande, dizemos que a sucess˜o tem pelo menos a ordem de convergˆncia 1 ou linear. e Se, para al´m disso, Kn ≥ K − > 0 dizemos que a sucess˜o tem ordem de convergˆncia e a e linear. • Quando existe o limite finito K∞ = lim Kn = lim |en+1 | , |en | este valor ´ designado designado coeficiente assimpt´tico de convergˆncia. e o e • Se K∞ < 1, ´ f´cil verificar que estamos numa situa¸˜o em que h´ pelo menos cone a ca a vergˆncia linear. e • Se 0 < K∞ < 1, ent˜o podemos mesmo concluir que estamos numa situa¸˜o em que a ca a convergˆncia ´ linear. e e • Se K∞ = 0 dizemos que a sucess˜o tem ordem de convergˆncia supralinear. a e • Falta analisar se a situa¸˜o K∞ ≥ 1 ocorre. Suponhamos que K∞ > 1, ent˜o, a partir ca a de certa ordem, ter´ ıamos Kn > 1, ou seja |en+1 | > |en |, e isto contradiria o facto da sucess˜o convergir. Portanto, apenas podemos ter K∞ = 1. a Quando a sucess˜o converge e K∞ = 1, ent˜o dizemos que a ordem de convergˆncia ´ a a e e logar´tmica (ou infralinear). ı Iremos no cap´ ıtulo seguinte generalizar esta no¸ao para espa¸os de Banach. c˜ c Notamos ainda que a restri¸˜o K + < 1 ´ demasiado forte, e h´ algumas sucess˜es cuja convergˆncia ´ ca e a o e e claramente linear e que n˜o se enquadram nesta defini¸ao. No entanto, caso esta restri¸ao seja suprimida a c˜ c˜ qualquer sucess˜o convergente apresentaria pelo menos convergˆncia linear, o que tamb´m n˜o nos parece a e e a apropriado (por´m, na generalidade da bibliografia ´ esta a op¸ao). e e c˜ 6 29 Exemplo 2.2 Vejamos os exemplos apresentados de sucess˜es que convergem para 1. o A sucess˜o (un ) tem convergˆncia logar´tmica, j´ que avaliando a e ı a |1 − un+1 | 1/(n + 1)3 |en+1 | n3 = = = → 1, |en | |1 − un | 1/n3 (n + 1)3 conclu´mos que K∞ = 1. ı A sucess˜o (vn ) tem convergˆncia linear, porque a e |en+1 | |1 − vn+1 | 3−(n+1) 1 = , = = |en | |1 − vn | 3−n 3 e assim K∞ = 1 ∈]0, 1[. 3 A sucess˜o (xn ) tem convergˆncia supralinear, porque a e |en+1 | |1 − xn+1 | 3−2 = = −2n |en | |1 − xn | 3 (n+1) 3−2 n n = −2n 3−2 = 3−2 → 0, 3 n e assim K∞ → 0. Seria igualmente f´cil verificar que as sucess˜es (yn ) e (zn ) tˆm ordem de convergˆncia a o e e supralinear Observa¸˜o: A defini¸˜o n˜o ´ enunciada directamente no caso em que o limite K∞ ca ca a e existe, porque pode haver situa¸˜es em que tal limite n˜o exista, e at´ se verifique em co a e algumas iteradas |en+1 | > |en |. Por exemplo, consideramos a sucess˜o a wn = 1 + 2 + (−1)n 4n que converge para 1, com rapidez semelhante ` de (vn ). Neste caso a |1 − wn+1 | 2 + (−1)n+1 4n 2 + (−1)n+1 1 Kn = =| || |= = |1 − wn | 4n+1 2 + (−1)n 2 + (−1)n 4 e portanto n˜o h´ limite. No entanto, como enquadramos a a 0< 3 1 ≤ Kn ≤ < 1, 12 4 1 , n par 12 3 , n´ ımpar 4 podemos concluir que se trata de convergˆncia linear, de acordo com a defini¸˜o7 . e ca Por vezes, n˜o ´ poss´ enquadrar Kn convenientemente, ainda que as sucess˜es tenham convergˆncia a e ıvel o e semelhante a linear. Por exemplo, tomando ` wn = 1 + 2 + (−1)n , 2n 7 a sucess˜o Kn teria como sublimites 1 e 3 . Como 3 ≥ 1, este caso n˜o est´ inclu´ na defini¸ao. a a a ıdo c˜ 6 2 2 A inclus˜o destes casos teria que ser alvo de an´lise mais detalhada. Por exemplo, se tivermos em conta a a a sucess˜o a 2 + (−1)n wn = 1 + n2 que converge para 1, com rapidez semelhante a de (un ), verificamos que neste caso h´ tamb´m dois sublimites ` a e 1 e 3, um deles inferior a 1 e o outro superior. 3 30 Iremos ainda classificar mais detalhadamente algumas sucess˜es que tˆm ordem de cono e vergˆncia supralinear. e Defini¸˜o 2.2 (ordem de convergˆncia superior). Seja (xn ) uma sucess˜o convergente para ca e a z. Para p > 1 consideremos a sucess˜o a [p] Kn = [p] |en+1 | . |en |p (2.2) Se Kn ≤ K + < +∞, para n suficientemente grande, dizemos que a sucess˜o tem pelo a menos ordem de convergˆncia p. e [p] Se, para al´m disso, Kn ≥ K − > 0 dizemos que a sucess˜o tem ordem de convergˆncia p. e a e • Mais uma vez, quando existe o limite finito, [p] [p] K∞ = lim Kn = lim |en+1 | , |en |p designamos este valor coeficiente assimpt´tico de convergˆncia de ordem p (quando for clara o e qual ´ a ordem, n˜o colocaremos o ´ e a ındice p). [p] a e • Se 0 < K∞ < +∞, ent˜o podemos concluir a convergˆncia tem ordem p. • Se p = 2 a convergˆncia diz-se quadr´tica e se p = 3, c´bica. Se K∞ = 0 para qualquer e a u p, ent˜o diremos que se trata de uma convergˆncia exponencial. a e Observa¸˜o: Note-se que se a sucess˜o tiver ordem de convergˆncia p, ent˜o ter´ pelo ca a e a a menos ordem de convergˆncia q < p, o que torna a designa¸˜o consistente. Com efeito, e ca p−q como lim |en | = 0, |en+1 | |en+1 | [p] = |en |p−q → K∞ lim |en |p−q = 0. q |en | |en |p Se, por outro lado, considerarmos q > p, temos lim |en |p−q = +∞, e como Kp,∞ = 0, |en+1 | |en+1 | [p] = |en |p−q → K∞ lim |en |p−q = +∞, q p |en | |en | donde se conclui que n˜o poderia ter ordem de convergˆncia superior. a e Exemplo 2.3 Analisamos agora os exemplos das sucess˜es (xn ), (yn ), (zn ) que tinhamos o verificado terem convergˆncia supralinear. No caso da sucess˜o (xn ), e a [p] Kn [p] |en+1 | 3−2 (n+1) +2n p n = = −2n p = 3−2 = 3−2 (2−p) , p |en| (3 ) [p] [p] (n+1) e reparamos que se p > 2, temos K∞ = ∞, e se p < 2 temos K∞ = 0. Portanto apenas no [2] caso p = 2, obtemos K∞ = 3, e conclu´mos que se trata de uma convergˆncia quadr´tica. ı e a [3] No caso da sucess˜o (yn ) ´ f´cil ver que a sua convergˆncia ´ c´bica e que temos K∞ = 3. a e a e e u 31 Finalmente, no caso da sucess˜o (zn ) a convergˆncia ´ considerada exponencial, pois Kn = a e e 0, qualquer que seja p, j´ que a [p] Kn [p] |en+1 | 33 p n2 2n+1 = = n2 +2n+1 = 33 (p−3 ) → 0, ∀p. p |en | 33 n2 Observa¸˜o: ca Um dos processos muito utilizados para o c´lculo de valores de fun¸˜es baseia-se no a co desenvolvimento em s´rie de Taylor. Reparamos que se tivermos um desenvolvimento em e s´rie de potˆncias em torno de z0 , e e f (z) = ∞ k=0 ak (z − z0 )k , o c´lculo dos termos da s´rie pode ser considerado num processo iterativo da forma a e s0 = a0 , sn+1 = sn + an+1 (z − z0 )n+1 . n e portanto, sn = k=0 (n) ak (z − z0 )k . (z No caso da s´rie de Taylor ´ bem conhecido que an = f n! 0 ) . O caso mais simples ocorre e e quando os termos an s˜o constantes. Por exemplo, se an = 1, z0 = 0, obtemos para |z| < 1, a f(z) = ∞ k=0 zn = 1 , 1−z ou seja, a bem conhecida f´rmula da soma geom´trica. o e Para avaliarmos a rapidez de convergˆncia da s´rie de Taylor, reparamos que e e en+1 f(z) − sn + sn − sn+1 sn+1 − sn = =1− . en f(z) − sn f (z) − sn Como sn+1 − sn = f (z) − sn f (n+1) (z0 ) (z − z0 )n+1 , (n + 1)! f (n+1) (ξn+1 ) = (z − z0 )n+1 (n + 1)! onde ξn+1 ∈]z0 ; z[, pelo resto de Lagrange da s´rie de Taylor. e Efectuando a raz˜o entre os termos, ficamos com a en+1 f (n+1) (z0 ) = 1 − (n+1) , en f (ξn+1 ) e como admitimos a continuidade de todas as derivadas, para valores de z pr´ximos de o f (n+1) (z0 ) z0 temos f (n+1) (ξn+1 ) pr´ximo de 1, o que significa que ser´ poss´ majorar o valor en+1 o a ıvel en 32 por uma constante inferior a 1, concluindo-se a convergˆncia linear (apenas poderia ser e supralinear se ξn → z0 ). Quando falarmos do m´todo de Newton, veremos que tem convergˆncia quadr´tica, e e a e que permite obter excelentes aproxima¸˜es de ra´ co ızes de n´ meros a partir de simples u opera¸˜es aritm´ticas elementares. A sua convergˆncia supralinear permite concluir que se co e e trata de um melhor m´todo para aproximar ra´ e ızes do que utilizar a expans˜o em s´rie de a e Taylor. Pode-se ent˜o levantar a quest˜o, ser´ que ´ poss´ obter a aproxima¸˜o de senos, a a a e ıvel ca exponenciais ou logaritmos utilizando esse m´todo com opera¸˜es elementares? A resposta e co ´ negativa, quer utilizando o m´todo de Newton, quer utilizando qualquer outro m´todo de e e e ponto fixo, e est´ relacionada com o facto desses n´ meros poderem ser transcendentes! a u 2.1.2 Tempo de c´lculo a Notamos que nem sempre uma maior ‘rapidez’ de convergˆncia ´ prof´ e e ıcua. Assim, suponhamos que (xn ) ´ uma sucess˜o que converge para z mais rapidamente do e a que (yn ). A priori, podemos pensar que ´ melhor utilizar a sucess˜o (xn ), mas se o c´lculo e a a e a e de cada yn envolver um tempo m´dio ty menor que tx (o tempo de c´lculo m´dio de cada xn ), isso poder´ n˜o acontecer. Poder´ acontecer que os tempos de c´lculo aumentem com a a a a n, mas n˜o iremos considerar aqui essa situa¸˜o. a ca No caso de m´todos iterativos, em que o c´lculo da iterada necessita do valor de uma e a ou mais iteradas anteriores. Com efeito, podemos assumir que os tempos totais Tx e Ty , necess´rios para o c´lculo de xn e yn (respectivamente), ser˜o Tx = n tx , Ty = n ty . a a a Suponhamos que pretendemos obter um erro absoluto inferior a ε. Examinemos o n´mero de iteradas necess´rio para garantir essa estimativa, considerando v´rias majora¸˜es u a a co de erro, de acordo com a ordem de convergˆncia. e • Caso de convergˆncia logar´ e ıtmica. Suponhamos que |en | ≤ an−s , com s > 0. Para que |en | ≤ ε, obtemos de an−s ≤ ε, a rela¸˜o, ca 1 a log n ≥ log( ). s ε • Caso de convergˆncia linear. e Suponhamos agora que |en | ≤ ar−n , com r > 1. Da mesma forma, de arn ≤ ε, obtemos, log( a ) ε n≥ . log(r) • Caso de convergˆncia supralinear, de ordem p > 1. e n n Considerando |en | ≤ ar−p , com r > 1. De ar−p ≤ ε, obtemos, pn ≥ log( a ) ε . log(r) Estabelecendo a rela¸˜o a = M ε, em que M ser´ um valor elevado (pois ε pretende-se ca a pequeno) e assumindo que escrevemos s = log r, obtemos: 33 • n ≥ M 1/s , no caso de convergˆncia logar´ e ıtmica. log(M) 1/s • n ≥ log(M ) = log(r) , no caso de convergˆncia linear. e p). • n ≥ logp (log(M 1/s )) = logp ( log(M) ), no caso de convergˆncia supralinear (de ordem e log(r) Desta forma, ´ bem vis´ a diferen¸a no n´mero de itera¸˜es a calcular para obter uma e ıvel c u co certa precis˜o. Nestas trˆs classes o n´mero de itera¸oes cresce de forma bem diferenciada a e u c˜ e podemos ver que: (i) Se (xn ) converge linearmente e (yn) logaritmicamente, para atingir um erro absoluto inferior a ε, a rela¸˜o entre os tempos totais ser´ ca a Tx log(M )tx = −→ 0, Ty log(r)M 1/s ty M→∞ ou seja, como a ´ fixo, assumirmos M → ∞ corresponde a considerar ε → 0. Nesse caso, e qualquer que seja a rela¸˜o entre tx e ty (considerados constantes), o tempo total de c´lculo ca a a a Tx ser´ inferior a Ty , quando se pretendem erros cada vez mais pequenos. Isto n˜o invalida, como ´ ´bvio, que para alcan¸ar um certo erro, n˜o possa ser inferior Ty . Por exemplo, e o c a −N sendo a = 1,para alcan¸ar ε = 10 , teremos Tx = Ty se c N ty log10 (10N ) N = = 10− s . N/s tx log10 (r)10 log10 (r) Num caso concreto, r = 10, s = 4, N = 8 (precis˜o simples), obtemos a log10 (108 ) 8 ty = = 2 = 0.08, 8 )1/4 tx log10 (10)(10 10 e portanto se ty < 0.08tx , o c´lculo de 100 itera¸˜es para obter y100 com a estimativa a co |en | ≤ n−4 (portanto |e100 | ≤ (102 )−4 = 10−8 ), ir´ demorar menos tempo que o c´lculo de 8 a a −n ´ itera¸˜es para obter x8 com a estimativa |en | ≤ 10 . E tamb´m claro que se mantivessemos co e esta rela¸˜o entre ty e tx, ao considerar um erro mais pequeno ε = 10−16 (precis˜o dupla), ca a o tempo total para calcular y10000 seria maior que x16 (a menos que ty < 0.0016 tx ). (ii) De forma semelhante existe uma grande diferen¸a entre considerar (xn ) a convergir c supralinearmente e (yn ) linearmente. C´lculos semelhantes levariam ao mesmo tipo de a conclus˜es. o (iii) Ser´ que existe tamb´m uma grande diferen¸a entre as v´rias ordens de convergˆncia a e c a e supralinear? A resposta ´ n˜o! Vejamos porquˆ. e a e Suponhamos que (xn ) converge com ordem p e (yn ) com ordem q, com p > q. Obtemos (para coeficientes iguais, para coeficientes diferentes podemos obter a mesma rela¸˜o no ca limite), logp (log(M 1/s ))tx Tx log q tx = = , 1/s ))t Ty logq (log(M log p ty y (2.3) ou seja, neste caso obt´m-se uma raz˜o constante. Podemos concluir que se tx = ty , aumene a tar a ordem do m´todo de q > 1 para p, apenas se traduz na redu¸˜o de tempo de c´lculo e ca a 34 log q no factor log p . No caso de passarmos de ordem convergˆncia quadr´tica para c´ bica o salto e a u n˜o ´ significativo e traduz-se num simples decr´scimo de log 2 , ou seja, aproximadamente a e e log 3 63%. Isto significa que a priori pode n˜o compensar executar um algoritmo que nos dˆ a e ordem de convergˆncia c´ bica ao inv´s de quadr´tica se ele demorar o dobro do tempo. e u e a Para que houvesse uma grande diferen¸a entre estes valores, o p teria que ser t˜o grande c a quanto poss´ ıvel, ou seja entrar´ ıamos no caso de convergˆncia exponencial. e ca e e (iv) Compara¸˜o entre m´todos com a mesma ordem de convergˆncia, mas com coeficientes diferentes. J´ mencion´mos que no caso de convergˆncia supralinear, para os a a e exemplos considerados, a diferen¸a esbate-se no limite. No caso de convergˆncia linear, c e essa diferen¸a assume um car´cter de proporcionalidade tal como acontecia anteriormente, c a no caso supralinear, ao considerar diferentes ordens p. Com efeito, se considerarmos Mx = cMy e rx = ry , obtemos Tx log(ry ) tx log(Mx) log(ry ) tx log(ry ) log(My ) + log(c) tx = = −→ , Ty log(rx ) log(My ) ty log(rx ) log(My ) ty My →∞ log(rx ) ty ou seja, verifica-se uma rela¸˜o semelhante ` anterior, mas agora para os coeficientes asca a 1 1 simpt´ticos que s˜o Kx,∞ = rx e Ky,∞ = ry . o a 2.2 Teoremas elementares e a localiza¸˜o de ra´ ca ızes Tra¸ando o gr´fico da fun¸˜o, podemos ter uma ideia aproximada da localiza¸˜o das ra´ c a ca ca ızes, mas para assegurarmos rigorosamente que num intervalo existe uma e uma s´ raiz recoro damos dois teoremas elementares da An´lise Matem´tica. a a Teorema 2.1 (do Valor Interm´dio de Bolzano): e Seja f uma fun¸ao cont´nua no intervalo [a, b]. Se f (a)f(b) ≤ 0 ent˜o existe pelo menos c˜ ı a uma raiz da equa¸ao f (x) = 0 no intervalo [a, b]. c˜ Teorema 2.2 (do Valor M´dio de Lagrange) e 1 Se f ∈ C ([a, b]), ent˜o ∃ξ ∈]a, b[: f (ξ) = f (b)−f (a) . a b−a Corol´rio 2.1 (Rolle) Seja f ∈ C 1 ([a, b]). Se f(a) = f(b) ent˜o ∃ξ ∈]a, b[: f (ξ) = 0. a a O contra-rec´ ıproco deste corol´rio ´ util para a unicidade: a e´ • Se f (x) = 0 para todo o x ∈ [a, b], ent˜o existe no m´ximo um z ∈ [a, b] tal que a a f (z) = 0. Repare-se que ∀x∈I f (x) = 0, implica que ∀x∈I f (x) > 0 (f estritamente crescente) ou ∀x∈I f (x) < 0 (f estritamente decrescente). 35 ´ a E f´cil ver que podemos garantir a unicidade desde que a fun¸˜o f seja estritamente ca mon´tona, n˜o sendo necess´rio exigir que seja diferenci´vel. o a a a O teorema do valor m´dio de Lagrange permite ainda obter um resultado muito impore tante nas estimativas a posteriori de erros de uma raiz de uma fun¸˜o f diferenci´vel. ca a Teorema 2.3 (estimativa elementar de erros de ra´zes). Seja x uma aproxima¸ao da raiz ı ˜ c˜ z da fun¸ao f ∈ C 1 ([˜; z]), ent˜o8 c˜ x a |ex | = |z − x| ≤ ˜ ˜ |f (˜)| x . minξ∈[˜;z] |f (ξ)| x Demonstra¸˜o: Exerc´ (aplica¸˜o imediata do teorema do valor m´dio). ca ıcio ca e Observa¸˜o 1: ca (i) A simplicidade deste resultado torna por vezes esquecida a sua utilidade. Assim, quando aplicarmos qualquer dos m´todos que iremos desenvolver nas sec¸˜es seguintes (ou e co outros m´todos), ao obter uma iterada xn que aproxima a solu¸˜o z, podemos apresentar e ca uma estimativa a posteriori baseada neste resultado. ca (ii) Nem sempre poder´ ser f´cil calcular o m´ a a ınimo de f . No entanto, caso a fun¸˜o seja diferenci´vel e n˜o seja nula pr´ximo da raiz, tendo obtido uma aproxima¸˜o x e uma a a o ca ˜ outra y , tais que f (˜)f (˜) < 0, podemos arriscar a estimativa ˜ x y |ex| ∼ ˜ |f(˜)| |˜ − y | x x ˜ , |f(˜) − f (˜)| x y que ser´ tanto melhor quanto x estiver pr´ximo de y (Exerc´ a ˜ o ˜ ıcio!). A utiliza¸˜o deste tipo de ca aproxima¸˜es ´ sistematizada no m´todo da falsa posi¸˜o e da secante, que iremos expor. co e e ca Observa¸˜o 2: ca Quando se tenta estabelecer majora¸˜es para os erros em intervalos somos confrontados co com a necessidade de minimizar ou maximizar o valor absoluto de uma fun¸˜o num intervalo. ca Conv´m por isso relembrar que os extremos de uma fun¸˜o real num intervalo s˜o atingidos e ca a nas extremidades do intervalo ou ent˜o em pontos interiores que sejam extremos relativos. a O crit´rio f (x) = 0 para encontrar extremos relativos s´ ´ aplic´vel se a fun¸˜o for e o e a ca diferenci´vel, no entanto isso n˜o acontece com o m´dulo de uma fun¸˜o (a menos que ela a a o ca seja sempre positiva ou negativa). Por isso, o melhor processo ao analisar os extremos de |f(x)| ´ analisar os extremos de f (x). Se uma fun¸˜o cont´ e ca ınua f tiver x− como m´ ınimo e + x como m´ximo nesse intervalo ent˜o |f (x)| ter´ como m´ximo max{|x− |, |x+ |}, e como a a a a a m´ ınimo min{|x− |, |x+ |} (a menos que x− seja negativo e x+ positivo, j´ que nesse caso o m´ ınimo ser´ zero). a Para evitar o inc´modo de calcular deriva¸˜es para determinar se h´ extremos relativos, o co a 9 podemos usar propriedades acerca da monotonia de fun¸˜es : se f, g s˜o crescentes f + g co a Usaremos a nota¸˜o [a; b] para designar um intervalo que ´ [a, b] se b > a, e [b, a] caso contr´rio. ca e a Para deduzir estas e outras propriedades, ´ c´modo usar o facto que uma fun¸ao diferenci´vel f ´ e o c˜ a e crescente se f ≥ 0. 9 8 36 tamb´m ´, e se ambas forem positivas f g tamb´m o ser´... se f ´ crescente −f, e e e a e decrescentes, etc... 1 f ser˜o a Estes teoremas de an´lise elementar n˜o explicitam um m´todo para aproximar a solu¸˜o a a e ca do problema. No entanto, podemos basear-nos neles para desenvolver alguns m´todos e iterativos muito simples. 2.3 M´todo da Bissec¸˜o e ca Vamos supor que no intervalo [a, b] a equa¸˜o f (x) = 0 tem uma s´ raiz z. A partir do ca o intervalo [a0 , b0 ] = [a, b], vamos construir intervalos [an , bn ] com metade do comprimento dos anteriores, atrav´s do ponto m´dio e e 1 xn+1 = (an + bn ). 2 Assegurando a existˆncia da raiz nesses intervalos atrav´s do teorema do valor interm´dio, e e e isso permite obter uma sucess˜o (xn ) que converge para essa raiz. a bn+1 || bn xn+1 || | an+1 (bn-an)/2 an O m´todo da bissec¸ao pode ser esquematizado num algoritmo (ver observa¸˜o 3): e c˜ ca Intervalo Inicial : [a0 , b0 ] = [a, b] Repetir: 1) xn+1 = (an + bn )/2 2) Se f (xn+1 )f (an ) < 0 Ent˜o an+1 = an ; bn+1 = xn+1 a Sen˜o an+1 = xn+1 ; bn+1 = bn a At´ que: e Assim, f ≥ 0, g ≥ 0 ⇒ (f + g) = f + g ≥ 0, mas para obter f ≥ 0, g ≥ 0 ⇒ (fg) = f g + f g ≥ 0, devemos exigir que f e g sejam positivas. A composi¸˜o de fun¸˜es crescentes ´ crescente, pois (f ◦ g) = f (g)g , mas ´ preciso ter em aten¸ao o ca co e e c˜ dom´ ınio. f (xn+1 ) = 0 ou |xn+1 − xn | < ε 37 Usamos o crit´rio de paragem |xn+1 − xn | < ε, onde o valor ε > 0 ´ um valor suficiene e temente pequeno, j´ que se poder´ garantir que o erro absoluto verifica |en+1 | < ε. Com a a efeito, como temos 1 |xn+1 − xn | = |an − bn |, 2 basta mostrar que 1 |z − xn+1 | ≤ |an − bn |. 2 Isto verifica-se se z ∈ [an , bn ] porque |z − xn+1 | = |z − 1 an + bn 1 | = |z − an + z − bn | ≤ ( |z − an | + |z − bn | ), 2 2 2 e de reparar que an ≤ z ≤ bn , logo |z − an | + |z − bn | = z − an + bn − z = bn − an . Resta saber se z ∈ [an , bn ], o que ´ a priori garantido por constru¸˜o. No entanto, e ca apresentamos o resultado na demonstra¸˜o do seguinte teorema. ca Teorema 2.4 Se f(a)f (b) < 0 e f for cont´nua com apenas uma raiz em [a, b], ent˜o o ı a m´todo da bissec¸ao converge e verifica-se a estimativa a priori (independente da fun¸ao), e c˜ c˜ |en | ≤ 1 |a − b|. 2n (2.4) Demonstra¸˜o: ca Pelo teorema do valor interm´dio h´ uma raiz em [a, b], que por hip´tese ser´ unica. e a o a ´ Iremos agora mostrar por indu¸˜o que essa raiz est´ sempre em [an , bn]. O caso n = 0 j´ ca a a foi justificado. Supondo que a raiz est´ em [an , bn ], e que temos f (an ) e f (bn ) com sinais a diferentes, ent˜o qualquer que seja o sinal de f(xn+1 ), ser´ diferente de um deles (a menos a a que seja nulo e a´ o m´todo atinge a raiz). Os valores an+1 e bn+1 s˜o escolhidos de forma ı e a a serem iguais aos anteriores ou a xn+1 , verificando-se f (an+1 )f (bn+1 ) < 0, o que garante a existˆncia de raiz em [an+1 , bn+1 ]. e A partir daqui podemos determinar facilmente um majorante do erro para uma iterada xn a partir do comprimento do intervalo inicial: 1 1 1 1 |en | ≤ |an−1 − bn−1 | ≤ ( |an−2 − bn−2 |) ≤ ... ≤ n |a0 − b0 |, 2 2 2 2 e isto prova a convergˆncia, j´ que o erro tende para zero. e a • A partir da estimativa a priori, deduzimos imediatamente que basta um n´ mero de u iteradas n > log2 ( 1 |a − b|) para obter |en | < ε. ε • Um crit´rio para mostrar que h´ apenas uma raiz em [a, b] consiste em garantir que a e a fun¸˜o ´ estritamente mon´tona (o que acontece caso a derivada n˜o se anule em ]a, b[), no ca e o a entanto poder´ haver outros processos. Note-se que f (a) e f(b) terem sinais diferentes n˜o a a garante, como ´ ´bvio, que haja apenas uma raiz, e exigir que haja apenas uma raiz n˜o eo a garante que f (a) e f (b) tenham sinais diferentes (basta ver o caso de ra´ duplas, em que ızes a derivada tamb´m ´ nula na raiz, e que aqui ´ exclu´ e e e ıdo). 38 Observa¸˜o 1 (representa¸ao em bin´rio). ca c˜ a (a) Consideremos [a, b] = [0, 1]. Ent˜o ´ f´cil concluir que os poss´ a e a ıveis valores para xn s˜o dados de forma exacta usando a representa¸˜o em bin´rio (que ´ a utilizada pelos a ca a e computadores). Numa iterada m os poss´ ıveis valores que xm pode tomar s˜o todas as 2m a combina¸˜es de (0.c1 c2 ...cm )2 (o ´ co ındice 2 significa base bin´ria) com ci ∈ {0, 1}. Ao aumentar a o valor de m estamos a acrescentar algarismos na representa¸˜o correcta de z na nota¸˜o ca ca bin´ria. Conclui-se assim que o m´todo atinge a raiz num n´mero finito de itera¸˜es quando a e u co ela ´ representada de forma exacta (i.e. com um n´mero finito de algarismos) na nota¸˜o e u ca bin´ria. a Com efeito, podemos descrever o algoritmo da bissec¸˜o (neste intervalo) da seguinte ca forma: Sendo an = (0.c1 ...cn−1 0)2 , teremos bn = (0.c1 ...cn−1 1)2 e xn+1 = (0.c1 ...cn−1 01)2 . O valor do algarismo cn ser´ 0 se a raiz estiver em [an , xn+1 ] e ser´ 1 se a raiz estiver em a a ]xn+1 , bn ]. a Repare-se que o valor an corresponde a efectuar, na base bin´ria, um arredondamento por corte, e bn corresponde a um arredondamento por excesso. (b) Note-se que podemos sempre reduzir o problema ao intervalo [0, 1] com uma mudan¸a de vari´vel elementar, que n˜o altera significativamente a fun¸˜o. No entanto isso c a a ca n˜o reduz os c´lculos, que s˜o transportados para a mudan¸a de vari´vel. Sempre que a a a c a come¸armos com um intervalo em que os extremos s˜o exactos na base bin´ria, as iteradas c a a xn ainda s˜o exactas nessa base. a (c) Poder-se-ia pensar num m´todo da ‘deca-sec¸˜o’, dividindo o intervalo em 10 partes, e ca com o intuito de obter o valor exacto na nota¸˜o decimal, mas isso implicaria ter que calcular ca 9 vezes a fun¸˜o em cada iterada, o que seria contraproducente, j´ que ao fim de 4 c´lculos ca a a efectuados pelo m´todo da bissec¸˜o temos a raiz enquadrada em intervalos mais pequenos, e ca −4 −1 porque 2 < 10 . Para qualquer outra base b > 2, a quest˜o coloca-se da mesma maneira a pois 2−b−1 < b−1 . Conclui-se assim que a escolha de dividir em dois ´ a melhor escolha. e Observa¸˜o 2 (ordem de convergˆncia do m´todo da bissec¸ao). ca e e c˜ O caso do m´todo da bissec¸˜o ´ um dos casos em que a aproxima¸˜o de z pode ser e ca e ca melhor na iterada xn do que na iterada xn+1 , ou seja podemos ter |en+1 | > |en |, num n´mero u infinito de iteradas. Percebemos isto facilmente se interpretarmos as aproxima¸˜es como co arredondamentos por corte ou por excesso, conforme explicado na observa¸˜o anterior. ca ´ E claro que, conforme o valor z, que ´ desconhecido, tanto podemos obter uma melhor e aproxima¸˜o por defeito como por excesso, e isso pode repetir-se um n´mero infinito de ca u vezes (ser´ o caso em mantissas com per´ a ıodo p, que representam racionais, j´ que o problema a se repetir´ de p em p itera¸˜es). a co Consequentemente, de acordo com a defini¸˜o cl´ssica apresentada, n˜o se poder´ conca a a a cluir a convergˆncia linear do m´todo. No entanto, conv´m real¸ar que se trata de um e e e c problema da defini¸˜o, j´ que a estimativa |en | ≤ 21 |a − b| permite concluir que se trata ca a n de um m´todo cuja convergˆncia ´ semelhante ` linear. Por isso, ´ assumido normalmente e e e a e que a convergˆncia do m´todo da bissec¸ao ´ linear. e e c˜ e Observa¸˜o 3 (tempo de c´lculo do m´todo da bissec¸ao). ca a e c˜ Em cada itera¸˜o a fun¸˜o ´ calculada apenas uma vez (no ponto xn+1 ), j´ que os ca ca e a valores f(an ) e f(bn ) devem estar guardados, n˜o devem ser recalculados! Portanto, sendo a 39 tf o tempo de c´lculo m´dio da fun¸˜o f, o tempo de c´lculo total para obter xn ser´ a e ca a a aproximadamente T = n tf , desprezando o tempo necess´rio para verificar se tem o mesmo sinal (a multiplica¸˜o ´ mais a ca e lenta e n˜o deve ser efectuada). a Observa¸˜o 4 (m´todo da bissec¸ao com v´rias ra´zes). ca e c˜ a ı Com uma pequena modifica¸˜o o m´todo da bissec¸˜o poder´ ser implementado em ca e ca a situa¸˜es em que se exija apenas que a fun¸˜o seja cont´ co ca ınua, desde que a fun¸˜o mude de ca sinal no intervalo (o que pode n˜o acontecer, p.ex. ra´ a ızes duplas, ou pares). Com efeito, se f (a)f (b) > 0 e se a fun¸˜o mudar de sinal haver´ duas ou mais ra´ ca a ızes, que podem ser enquadradas fazendo a divis˜o sucessiva do intervalo at´ que se encontre um ponto xn tal a e que f(xn ) tenha sinal diferente de f (a) e de f(b). 2.4 M´todo da Falsa Posi¸˜o e ca Este m´todo, tamb´m conhecido pela designa¸˜o Regula Falsi (do latim), ´ um m´todo e e ca e e semelhante ao m´todo da bissec¸˜o, e em que tamb´m supomos que no intervalo [a, b] a e ca e equa¸˜o f (x) = 0 tem uma e uma s´ raiz. A unica diferen¸a reside no c´lculo de xn+1 , ca o ´ c a xn+1 = an − f (an ) bn − an , f (bn ) − f(an ) (2.5) onde intervˆm os valores de f. Este valor corresponde ` raiz do polin´mio do primeiro grau e a o representado pela recta que une os pontos (an , f (an )) e (bn , f (bn )). bn+1 xn+2 an xn+1 || an+1 || bn Observa¸˜o 1. O denominador nunca pode ser nulo, porque f (an ) e f (bn ) tˆm sinais ca e opostos, e que tamb´m podemos escrever e xn+1 = f (bn )an − f (an )bn bn − an = bn − f (bn ) . f(bn ) − f(an ) f (bn ) − f (an ) f (b) − f (a) , b−a Sendo tamb´m usada a nota¸˜o, e ca f[a, b] = a recta que une os pontos ´ obtida pelo polin´mio e o P1 (x) = f (an ) + f [an , bn ](x − an ), 40 n ficando claro que o ponto em que anula ´ justamente xn+1 = an − f f (a,b) ] , o que confirma a e [an n f´rmula (2.5). o Tamb´m nos ser´ util o valor e a´ f[a, b, c] = que permite obter o polin´mio de 2o grau (...par´bola) que passa pelas imagens dos pontos o a an , bn e c, atrav´s de e P2 (x) = P1 (x) + f [an , bn , c](x − an )(x − bn ). Estes valores est˜o directamente relacionados com derivadas, quando a fun¸˜o ´ regular, a ca e 10 pois pelo teorema de Lagrange obtemos f[a, b] = f (ξ), onde ξ ∈]a; b[, η ∈]a; b; c[. ´ Observa¸˜o 2. E intuitivo que xn+1 ∈]an , bn [, mas devemos justificar. ca Suponhamos que f (an ) < 0 e que f (bn ) > 0. Verificar an < xn+1 = ´ equivalente a (porque f (bn ) > f (an )) e f (bn )an − f (an )an < f (bn )an − f (an )bn < f(bn )bn − f (an )bn , ou seja, Como bn > an , ent˜o por hip´tese estas condi¸˜es s˜o verificadas. a o co a Na outra hip´tese poss´ f (an ) > 0, f(bn ) < 0, a justifica¸˜o ´ semelhante. o ıvel ca e Quando as fun¸˜es s˜o regulares e os intervalos suficientemente pequenos, a aproxima¸˜o co a ca linear ´ razo´vel e este processo justifica-se, especialmente se a inclina¸˜o |f | for superior e a ca ao ‘valor’ da concavidade |f |. No entanto, aparece persistentemente um problema, quando a concavidade ´ acentuada e h´ zonas em que a derivada ´ pequena, que apenas ´ poss´ e a e e ıvel contornar com uma modifica¸˜o do m´todo (que veremos no pr´ximo par´grafo). ca e o a Iremos agora verificar que sob as mesmas condi¸˜es do m´todo da bissec¸˜o, o m´todo co e ca e da falsa posi¸˜o converge. ca Basta ver que g(x) = f(x) − P2 (x) tem trˆs zeros, os pontos a, b, c onde a fun¸ao f coincide com o e c˜ polin´mio. Pelo teorema de Rolle, a sua derivada ter´ dois (um em ]a; b[ e outro em ]b; c[. Da mesma forma, o a a segunda derivada ter´ um, que designamos η e que est´ em ]a; b; c[. a a Como g (x) = f (x) − 2f[a, b, c], conclu´ ımos que 0 = f (η) − 2f [a, b, c]. 10 f [c, b] − f[c, a] , b−a 1 f [a, b, c] = f (η), 2 f (bn )an − f (an )bn < bn f (bn ) − f (an ) f (an )(bn − an ) < 0, 0 < f (bn )(bn − an ). 41 Teorema 2.5 Se f(a)f (b) > 0 e f for cont´nua com apenas uma raiz em [a, b], ent˜o o ı a 2 m´todo da falsa posi¸ao converge. Quando f ∈ C [an, bn ] verifica-se e c˜ en+1 = − em que ξn , ηn ∈]an , bn [. Demonstra¸˜o: ca (i) A demonstra¸˜o de que haver´ sempre uma raiz no intervalo [an , bn ] ´ semelhante ca a e ` efectuada para o m´todo da bissec¸˜o, bastando reparar que, de acordo com a f´rmula a e ca o (2.5), xn+1 ∈]an , bn [ (s´ seria igual a an ou bn se fossem ra´ o ızes). Portanto ou an < an+1 ou bn+1 > bn , pelo que temos [an+1 , bn+1 ] ⊂ [an , bn ]. Como (an ) e (bn ) s˜o ambas sucess˜es a o mon´tonas num intervalo limitado, tˆm limite, que designaremos α = lim an , β = lim bn , e o e por constru¸˜o z ∈ [α, β]. ca Se α = β, ´ ´bvio que z = α = β. eo Se α = β, ent˜o, como assumimos que f ´ cont´ a e ınua, existe o limite lim xn+1 = f (β)α − f (α)β f (β) − f (α) f (ηn ) (z − an )(z − bn ) 2f (ξn ) (2.6) e como xn = an ou xn = bn , existindo limite, ele ser´ α ou β. a Se lim xn = α, retiramos α= f(β)α − f (α)β ⇔ f (α) = 0, f (β) − f (α) ou seja, α = z, porque h´ uma unica raiz. Se lim xn = β, ´ semelhante. a ´ e (ii) Com a finalidade de estabelecermos uma f´rmula de erro para o m´todo da falsao e posi¸˜o, consideramos a f´rmula (ver observa¸˜o 1) ca o ca f(x) = P1 (x) + f[an , bn , x](x − an )(x − bn ) , Como f (z) = 0, Basta reparar agora que P1 (xn+1 ) = 0, e assim 0 = P1 (z) + f[an , bn , z](z − an )(z − bn ). P1 (z) = P1 (z) − P1 (xn+1 ) = f [an , bn ](z − xn+1 ), Juntando as duas igualdades temos 0 = f [an , bn ](z − xn+1 ) + f [an , bn , z](z − an )(z − bn ), e assim en+1 = − f [an , bn , z] (z − an )(z − bn ) , f [an , bn ] (2.7) Usando a rela¸˜o com as derivadas (ver observa¸˜o 1) obtemos o resultado. ca ca 42 Proposi¸˜o 2.1 Consideremos f nas condi¸oes do teorema anterior, com f ∈ C 2 (Vz ), em ca c˜ que Vz ´ uma vizinhan¸a da raiz. Se f (z) = 0, ent˜o, a partir de certa ordem, um dos e c a e c˜ extremos do intervalo [an , bn ], definido pelo m´todo da falsa posi¸ao, fica fixo. Demonstra¸˜o: ca Seja α = lim an , β = lim βn , tal como na demonstra¸˜o anterior, onde vimos que z = α ca ou z = β. Quando β = α = z, isso implica que a sucess˜o (bn ) seja constante a partir a de certa ordem, porque sen˜o tomaria valores xn que convergem para z e ter´ a ıamos β = z. Situa¸˜o semelhante ocorre quando α = β = z, sendo nesse caso (an ) constante a partir de ca certa ordem. Resta ver que a situa¸˜o α = β = z n˜o pode ocorrer sob as hip´teses da proposi¸˜o. ca a o ca Como f (a)f (b) < 0 e h´ apenas uma raiz s´ podemos ter f (z) = 0 se f (z) = 0, caso a o exclu´ ıdo. Portanto f (z) = 0 e ent˜o numa vizinhan¸a Vε (z) a fun¸˜o f (que ´ cont´ a c ca e ınua) tem o mesmo sinal que f (z). Da mesma forma, numa vizinhan¸a Vε (z), a fun¸˜o f ter´ o c ca a f mesmo sinal que f (z). Assim considerando Vz = Vε (z) ∩ Vε (z), o sinal de 2f ´ fixo em e Vz . f Por outro lado, pela f´rmula (2.6), o sinal de en+1 = z − xn+1 ´ igual ao sinal de 2f (ηn ) , o e (ξn ) porque o valor (z − an )(z − bn ) ´ sempre negativo. e Se, por absurdo, α = β = z, temos an , bn → z. Notando que ξn , ηn ∈]an , bn [, temos ξn , ηn ∈ Vz , para n suficientemente grande. Isto significa que o sinal de en+1 ´ fixo, ou seja, e ou xn+1 ´ sempre maior que z, ou ser´ sempre menor. Isto significa que um dos extremos e a fica fixo, n˜o podendo convergir para z, o que contradiz α = β = z. a A condi¸˜o de f se anular na raiz raramente acontecer´, e assim no m´todo da falsa ca a e posi¸˜o, a partir de certa ordem q, um dos extremos de [an , bn ] ir´ ficar imobilizado. Temos ca a assim duas hip´teses: o e e — Se f (z)f (z) > 0, ou o que ´ equivalente, f (z)f (bq ) > 0 (pois o sinal de f (bq ) ´ igual ao de f ), .ent˜o as iteradas xq+1 , xq+2 , ... v˜o ficar ` esquerda da raiz significando isso que a a a temos bq = bq+1 = bq+2 = ... — Se f (z)f (z) < 0, ou seja se f (z)f(aq ) > 0 (porque o sinal de f (aq ) ´ oposto ao de e f ), ent˜o aq = aq+1 = aq+2 = ... a Resumindo, se f tiver sinal constante num intervalo [aq , bq ] ent˜o o extremo do intervalo a para o qual f possui esse sinal, permanece fixo. Por exemplo, se f (z) > 0, ent˜o ou temos f(aq ) > 0, e fica constante an = aq , ou temos a f (bq ) > 0, e fica constante bn = bq . Assim, se f (z)f(aq ) > 0, o m´todo reduz-se a efectuar (para n ≥ q) : e xn+1 = xn − f (xn ) xn − aq . f (xn ) − f(aq ) (2.8) sem haver necessidade de fazer compara¸oes. c˜ Usando (2.6), se f ∈ C 2 [aq , bq ], a f´rmula para o erro fica (para n ≥ q) o en+1 = − f (ηn ) (z − aq )en , 2f (ξn ) 43 (2.9) com ξn , ηn ∈]aq ; xn [. Reparamos que neste caso, podemos explicitar Kn = |f (ηn )| |en+1 | = |z − aq | |en | 2|f (ξn )| e existe o coeficiente assimpt´tico de convergˆncia K∞ = lim Kn , porque f e f s˜o o e a cont´ ınuas. Podemos mostrar que o coeficiente K∞ < 1, concluindo que se trata de um m´todo com convergˆncia linear (quando f (z) = 0). No entanto, para provar isso, n˜o e e a usamos directamente a f´rmula (2.9), porque os limites dos valores ξn , ηn s˜o desconhecidos o a (ver observa¸˜o 3). ca No caso f (z)f (bq ) > 0, as f´rmulas seriam semelhantes, trocando simplesmente aq por o bq . Observa¸˜o 3 (convergˆncia do m´todo da falsa posi¸ao). ca e e c˜ Consideramos ainda f (z) = 0 e an = ... = aq . Como temos z < xn+1 < xn , ´ ´bvio que eo 0< en+1 < 1, en passando ao limite (que existe) podemos concluir K∞ ≤ 1, mas o essencial ´ ver que e K∞ = 1. Como, xn+1 − xn −f (xn )/f[an , xn ] f [z, xn ] = , = z − xn −f (xn )/f [z, xn ] f[aq , xn ] temos en+1 xn+1 − xn f[z, xn ] f (z) =1− =1− →1− , en z − xn f [aq , xn ] f (ξz ) onde ξz ∈]aq , z[. O caso K∞ = 1, apenas poderia ocorrer se f (z) = 0, situa¸˜o exclu´ ca ıda. Conclui-se assim que o m´todo tem convergˆncia linear e coeficiente assimpt´tico e e o 0 < K∞ = 1 − f (z) < 1, f (ξz ) com ξz ∈]aq , z[. A situa¸˜o limite em que o m´todo exibiria convergˆncia supralinear seria ca e e ξz = z, o que aconteceria se an → z, i.e. se f (z) = 0, como ali´s tamb´m se pode verificar a e na f´rmula (2.9). o Exemplo 2.4 Consideremos a fun¸ao f (x) = 4 − x sin( x )2 , representada na figura em c˜ 5 4 baixo. Come¸ando com o intervalo [−4, 8] obtiveram-se as seguintes iteradas, x1 = −1.498, x2 = c 2.058, x3 = 4.231, x4 = 4.845, ..., x7 = 4.79879. As trˆs primeiras iteradas d˜o valores que e a se situam a esquerda da raiz, mas como h´ um ponto w = 5.63... no qual f (w) = 0, na ` a quarta iterada ´ o extremo a direita que se desloca, e a partir da´ o m´todo converge fixando e ` ı e o extremo b4 = x4 e apenas variando an. No entanto, como temos f (z) = −2.44, f (z) = 44 2 −0.572, o m´todo converge de forma razoavelmente r´pida para z, de forma que em x7 os e a d´gitos apresentados s˜o j´ os correctos. ı a a 6 4 2 -4 -2 -2 2 4 6 8 a0 -4 -6 b0 Observa¸˜o 4 (estimativa a priori) ca Podemos ainda estabelecer a estimativa a priori |en+1 | ≤ K n |b − a| se encontrarmos um intervalo [a, b] (que poder´ n˜o ser o inicial) em que a a K= maxx∈[a,b] |f (x)| (b − a) < 1. 2 minx∈[a,b] |f (x)| (2.10) Para que a estimativa de erro seja mais eficaz que a do m´todo da bissec¸˜o torna-se e ca importante que K seja inferior a 1 ,isso pode ser conseguido se o comprimento do intervalo 2 for suficientemente pequeno e, ´ claro, apenas quando K∞ < 1 . e 2 Observa¸˜o 5 (tempo de c´lculo). ca a Tal como no m´todo da bissec¸˜o, em cada itera¸˜o a fun¸˜o ´ apenas calculada uma e ca ca ca e vez, no ponto xn+1 , a partir dos valores f (an ), f (bn ) guardados. Normalmente, o tempo de c´lculo da fun¸˜o ´ muito maior que o tempo de c´lculo das opera¸˜es elementares (3 suba ca e a co trac¸˜es, 1 divis˜o e uma multiplica¸˜o), que ser´ designado ε. Sendo tf o tempo de c´lculo co a ca a a m´dio da fun¸˜o f, o tempo de c´lculo total, ao fim de n itera¸˜es, ser´ aproximadamente e ca a co a T = n (tf + ε) ≈ ntf . desprezando o tempo de c´lculo para as opera¸˜es elementares. a co Observa¸˜o 6 (erros de arredondamento). ca Reparando nas f´rmulas (2.5) e (2.8) verificamos que h´ subtrac¸˜es que podem indiciar o a co o aparecimento de erros de cancelamento subtractivo, j´ que, por exemplo em (2.5), a a diferen¸a entre os valores an e bn ser´ extremamente pequena, visto que ambos ir˜o convergir c a a para o mesmo valor, a raiz. 45 2.4.1 M´todo da falsa posi¸˜o modificado e ca Trata-se de uma pequena modifica¸˜o no m´todo anterior de forma a evitar que um dos ca e extremos se imobilize permanentemente. A ideia essencial ´ dividir o valor da fun¸˜o por 2 e ca no extremo que se imobiliza. Suponhamos que se imobilizava o extremo ap , tendo-se ap+1 = ap , neste caso consideramos Fa = f (ap )/2 mantendo Fb = f(bp ) e calculamos xp+1 = bp − Fb ˜ bp − ap , Fb − Fa (2.11) o valor xp+1 ainda pertence ao intervalo [ap , bp ] mas ´ menor que o valor xp+1 calculado ˜ e usando (2.5) que neste caso seria maior que a raiz, ou seja z < xp+1 . Portanto, como xp+1 < ˜ xp+1 ´ prov´vel que xp+1 < z, passando nesse caso a ter-se ap+1 = xp+1 . e a ˜ ˜ ˜ ˜ Se isso n˜o acontecer, podemos ainda considerar um Fa = Fa /2 que levaria a um xp+1 a ainda mais pequeno... e assim sucessivamente at´ que obtivessemos um valor xp+1 < z. e ˜ Desta forma consegue-se normalmente uma maior rapidez de convergˆncia. e bn+2 bn+1 || || xn+2 bn an xn+1 || an+1 || an+2 Fb/8 F /4 b Fb/2 Fb Apresentamos o algoritmo para o m´todo da falsa posi¸ao modificado: e c˜ Inicializa¸˜o : [a0 , b0 ] = [a, b]; Fa = f (a0 ), Fb = f(b0 ) ca b Repetir : 1) xn+1 = bn − Fb Fn −an b −Fa 2) Se f (xn+1 )f (an ) < 0 Ent˜o an+1 = an ; bn+1 = xn+1 ; a Fb = f (xn+1 ); Se f(xn+1 )f (xn ) > 0 Ent˜o Fa = Fa /2 a Sen˜o an+1 = xn+1 ; bn+1 = bn ; a Fa = f (xn+1 ); Se f (xn+1 )f (xn ) > 0 Ent˜o Fb = Fb /2 a At´ que : e f (xn+1 ) = 0 ou |xn+1 − xn | < ε Observa¸˜o: ca N˜o iremos apresentar estimativas de erro espec´ a ıficas para este m´todo, mas poderemos e sempre recorrer ao teorema que apresent´mos inicialmente e que nos d´ estimativas de erro a a a posteriori elementares, baseadas no teorema do valor m´dio. e Quanto ao tempo de c´lculo, ser´ semelhante ao tempo do m´todo da falsa posi¸˜o, j´ a a e ca a que a divis˜o por 2 n˜o ´ significativa, compensando em termos de efic´cia, j´ que ir´ evitar a a e a a a que um dos extremos fique constante, acelerando a convergˆncia. e 46 2.5 M´todo do ponto fixo num intervalo limitado e Vamos introduzir um m´todo fundamental, que surpreende pela sua simplicidade. Iremos e ver, no cap´ ıtulo seguinte, que esta simplicidade permite que o m´todo seja aplicado em e contextos muito mais gerais, revelando-se como um precioso resultado de existˆncia (e que e ´ construtivo) na matem´tica. e a A ideia base consiste na no¸˜o de ponto fixo. Dizemos que z ´ ponto fixo de uma fun¸˜o ca e ca g se g(z) = z. O nome est´ associado ao facto de que o ponto z n˜o ´ alterado pela fun¸˜o g. a a e ca Podemos transformar qualquer equa¸˜o f (x) = 0 numa equa¸˜o x = g(x), estabelecendo ca ca a equivalˆncia e f(x) = 0 ⇔ x = g(x), (2.12) ´ num certo dom´ ınio D. E claro que se z ∈ D for zero da fun¸˜o f, ent˜o ser´ ponto fixo de ca a a g e vice-versa! H´ infinitas possibilidades para escolher g (que ´ denominada fun¸ao iteradora) de forma a e c˜ a que a equivalˆncia se verifique... por exemplo, basta pensar que se ω = 0 temos f(x) = e 0 ⇔ x = x + ωf (x). Como iremos ver, algumas escolhas de g ser˜o menos apropriadas que a outras, para o objectivo em vista. Assim, o m´todo do ponto fixo consiste simplesmente em11 e Escolher uma iterada inicial : x0 Iterar xn+1 = g(xn ). Considerando g uma fun¸˜o cont´ ca ınua, se o m´todo convergir, converge para um ponto e fixo z que, pela equivalˆncia estabelecida, ser´ uma raiz da equa¸˜o, ou seja f (z) = 0. e a ca Geometricamente, um ponto fixo corresponde a um ponto de intersec¸˜o do gr´fico de ca a g com a recta bissectriz, e a itera¸˜o do ponto fixo pode ser vista como uma traject´ria ca o (´rbita). V´rias situa¸˜es podem ocorrer (ver figura em baixo). Quando a derivada da o a co fun¸˜o g (numa vizinhan¸a do ponto fixo) ´ em m´dulo inferior a 1 reparamos que h´ ca c e o a convergˆncia (mon´tona se 0 < g < 1, alternada se −1 < g < 0) e caso a derivada seja em e o m´dulo superior a 1 n˜o se observa convergˆncia para o ponto fixo. o a e 4 3 2 1 4 3 2 1 -1 -1 x0 1 2 3 4 -1 -1 x0 1 2 3 4 Tamb´m ´ designado m´todo das aproxima¸oes sucessivas. Noutras situa¸oes, esta itera¸ao ´ designada e e e c˜ c˜ c˜ e itera¸ao de Picard. c˜ 11 47 M´todo do ponto fixo aplicado a fun¸oes g(x) = 2 + β cos(x). Nestes dois gr´ficos a unica e c˜ a ´ varia¸ao ´ feita no parˆmetro β, em ambos os casos x0 = 0.3. No primeiro gr´fico considerc˜ e a a amos β = −1 e no segundo β = 0.8. Podemos observar facilmente que h´ convergˆncia para a e o ponto fixo12 nas duas situa¸oes, com uma unica diferen¸a. No primeiro caso, as iteradas c˜ ´ c aproximam-se do ponto fixo sempre pelo mesmo lado (convergˆncia mon´tona, 0 < g < 1) e o e no segundo caso as iteradas aparecem alternadamente a esquerda e a direita do ponto fixo ` ` (convergˆncia alternada, −1 < g < 0). e 12 10 8 6 1 4 2 -2 -1 -1 4 6 8 -2 1 4 3 2 x0 2 3 4 x0 2 -2 M´todo do ponto fixo aplicado as fun¸oes g1 (x) = 1 (−1 + 3x − 3 sin(x)), representada no e ` c˜ 2 3 primeiro gr´fico, e g2 (x) = 2 + 2 cos(x), representada no segundo. Para ambas as fun¸oes a c˜ come¸amos com x0 = 1.6, que ´ um valor pr´ximo do ponto fixo de cada uma delas. No c e o entanto, as iteradas v˜o afastar-se rapidamente (no segundo caso alternando a esquerda e a ` a direita do ponto fixo), o que reflecte a situa¸ao de n˜o convergˆncia. Temos g1 (z) > 1, no ` c˜ a e primeiro caso, e g2 (z) < −1, no segundo, o que s˜o situa¸oes em que n˜o h´ convergˆncia a c˜ a a e do m´todo do ponto fixo para esse z. Como curiosidade, notamos que a fun¸ao g1 n˜o ´ e c˜ a e limitada, e a sucess˜o das iteradas ir´ tender para +∞, no entanto, a fun¸ao g2 fica limitada a a c˜ no intervalo [ 1 , 7 ], e a sucess˜o de iteradas ir´ tomar sempre valores nesse intervalo. Sendo a a 2 2 uma sucess˜o limitada, poder´ ter sublimites (o que corresponde a situa¸oes de ‘´rbitas a a c˜ o peri´dicas’) ou n˜o (o que corresponde a uma situa¸ao de ‘caos’). o a c˜ Nos casos em que a derivada ´ em m´dulo inferior a 1, temos (pelo teorema do valor e o m´dio) |g(x) − g(y)| < |x − y|, o que significa que a distˆncia entre dois pontos x e y e a ´ ´ ‘encurtada’ pela transforma¸˜o g, levando ` no¸˜o de contractividade. E intuitivo que, e ca a ca neste caso de contractividade, a aplica¸˜o sucessiva de g, ao ‘encurtar’ as distˆncias, origina ca a a convergˆncia para um ponto — o ponto fixo. No caso oposto, em que a derivada ´ em e e m´dulo superior a 1, verifica-se |g(x) − g(y)| > |x − y|, ou seja, as distˆncias aumentam, o o a que provoca a divergˆncia. De seguida provaremos estes resultados. e Defini¸˜o 2.3 Uma fun¸ao g diz-se Lipschitziana em [a, b] se existir L ≥ 0 : ca c˜ |g(y) − g(x)| ≤ L|x − y|, ∀x, y ∈ [a, b] Se L < 1 a fun¸˜o g diz-se contractiva em [a, b]. ca Exerc´ ıcio 2.1 Mostre que uma fun¸ao Lipschitziana num intervalo, ´ cont´nua nesse inc˜ e ı tervalo. 12 Que ´ designado um atractor, segundo a terminologia de sistemas dinˆmicos. e a 48 Proposi¸˜o 2.2 Se g ∈ C 1 ([a, b]) e temos |g (x)| ≤ L < 1, para qualquer x em [a, b], ent˜o ca a a fun¸ao g ´ contractiva nesse intervalo. c˜ e Demonstra¸˜o: ca Usando o teorema do valor m´dio de Lagrange, sabemos que, para quaisquer x, y em e [a, b] |g(y) − g(x)| ≤ |g (ξ)||x − y|, para um certo ξ ∈]x; y[⊂ [a, b] e podemos concluir, aplicando a hip´tese. o Teorema 2.6 (Teorema do ponto fixo - caso de um intervalo fechado e limitado). Se g ´ uma fun¸ao contractiva em [a, b], e g([a, b]) ⊂ [a, b], ent˜o: e c˜ a i) g tem um e um s´ ponto fixo z em [a, b]. o ii) A sucess˜o xn+1 = g(xn ) converge para esse ponto fixo z, dado qualquer x0 em [a, b]. a iii) Verificam-se as estimativas de erro a priori |z − xn | ≤ Ln |z − x0 | |z − xn | ≤ Ln /(1 − L)|x1 − x0 | e a estimativa de erro a posteriori |z − xn | ≤ 1/(1 − L)|xn+1 − xn |. (2.15) (2.13) (2.14) Demonstra¸˜o: ca Existˆncia (de ponto fixo). Consideramos uma fun¸˜o auxiliar h(x) = g(x)−x , cont´ e ca ınua. Como g([a, b]) ⊂ [a, b] temos g(a) ≥ a, g(b) ≤ b, e assim h(a)h(b) ≤ 0, logo pelo Teorema do valor interm´dio, existe um z ∈ [a, b] : h(z) = 0, logo g(z) = z. e Unicidade (do ponto fixo). Supondo que g ´ contractiva e z e w s˜o pontos fixos de g e a em [a, b] , temos: |z − w| = |g(z) − g(w)| ≤ L|z − w|, logo (1 − L)|z − w| ≤ 0 e como L < 1 podemos concluir que |z − w| = 0, ou seja z = w. Convergˆncia do m´todo. e e ´ f´cil ver (por indu¸˜o) que se x0 pertence a [a, b], qualquer xn tamb´m pertence. E a ca e Basta reparar que xn+1 = g(xn ) e que g([a, b]) ⊂ [a, b]. Por outro lado, temos |z − xn+1 | = |g(z) − g(xn )| ≤ L|z − xn |, logo |z − xn+1 | ≤ Ln+1 |z − x0 | → 0, pois L < 1. 49 Estimativas. A obten¸˜o da estimativa a posteriori (2.15) resulta de considerar a deca sigualdade triangular (somando e subtraindo xn+1 ) |z − xn | ≤ |z − xn+1 | + |xn+1 − xn | ≤ L|z − xn | + |xn+1 − xn | ⇔ (1 − L)|z − xn | ≤ |xn+1 − xn |. Finalmente, a estimativa (2.14) resulta de aplicar (2.15) com n = 0 e considerar (2.13). Observa¸˜o: Veremos, no cap´ ca ıtulo seguinte, uma demonstra¸˜o ligeiramente diferente ca deste teorema, num contexto mais geral, e que permite estabelecer este resultado mesmo para intervalos ilimitados. Corol´rio 2.2 Seja g uma fun¸ao C 1 ([a, b]), tal que g([a, b]) ⊆ [a, b] e a c˜ L = max |g (x)| < 1 x∈[a,b] ent˜o as condi¸oes do teorema do ponto fixo anterior s˜o verificadas e portanto temos: a c˜ a i) g tem um e um s´ ponto fixo z em [a, b]. o ii) A sucess˜o xn+1 = g(xn ) converge para esse ponto fixo z, dado qualquer x0 em [a, b]. a iii) Verificam-se as majora¸oes de erro apresentadas no Teorema. c˜ Demonstra¸˜o: ca ´ E uma consequˆncia imediata dos resultados anteriores. Reparamos apenas que, como e se trata de um intervalo compacto, a derivada atinge um m´ximo, inferior a 1, o que poderia a n˜o acontecer se o intervalo fosse ilimitado. a Podemos dividir as condi¸˜es do corol´rio anterior em dois casos. co a Proposi¸˜o 2.3 Seja g ∈ C 1 [a, b] tal que g([a, b]) ⊆ [a, b]. ca • Seja 0 < g (x) < 1, ∀x ∈ [a, b]. Se x0 ∈ [a, b] h´ convergˆncia mon´tona do m´todo do a e o e ponto fixo (ou seja, as iteradas ficam todas a esquerda [respect. a direita] da raiz, se a ` ` iterada inicial estiver a esquerda [respect. a direita] da raiz). ` ` • Seja −1 < g (x) < 0, ∀x ∈ [a, b]. Se x0 ∈ [a, b] h´ convergˆncia alternada do m´todo do a e e ponto fixo (ou seja, as iteradas v˜o ficar alternadamente a esquerda e a direita da raiz). a ` ` Demonstra¸˜o: ca As condi¸˜es do corol´rio s˜o imediatamente verificadas em ambos os casos, logo podemos co a a concluir a convergˆncia para um unico ponto fixo z ∈ [a, b]. e ´ No primeiro caso, se 0 < g (x) < 1, basta reparar que, se xn < z obtemos xn+1 < z, porque z − xn+1 = g(z) − g(xn ) = g (ξ)(z − xn ) > 0. Portanto, se x0 < z, por indu¸˜o, vemos que temos sempre xn < z e conclu´ ca ımos que a convergˆncia ´ mon´tona. e e o Usando o mesmo argumento, se −1 < g (x) < 0, partindo de xn < z obtemos xn+1 > z, ou mais geralmente, sinal(z − xn+1 ) = sinal (g (ξ)(z − xn )) = − sinal(z − xn ), 50 pelo que se pode concluir que a convergˆncia ´ alternada. e e Observa¸˜o: No caso em que a convergˆncia ´ alternada, duas iteradas sucessivas ca e e definem um intervalo onde se encontra a raiz. Exemplo 2.5 Vejamos que, para a > b ≥ 1, a sucess˜o a x0 = 1; xn+1 = a + b xn converge alternadamente para a solu¸ao da equa¸ao x2 − ax − b = 0 que se encontra no c˜ c˜ intervalo [a, a + b]. Repare-se que esta sucess˜o define aquilo que se designa por ‘frac¸˜o cont´ a ca ınua’13 , ou seja, x = a0 + b0 a1 + b1 b a2 + 2 ; neste caso an = a, bn = b, ou seja, x = a + b a+ b a+ ... ... b Podemos aplicar a proposi¸ao anterior. Basta ver que g(x) = a + b/x verifica as condi¸oes c˜ c˜ requeridas no intervalo I = [a, a + b]. Com efeito, −1 < g (x) < 0, ∀x ∈ I, porque g (x) = −b/x2 ´ crescente em I e temos e g (a) = −b/a2 , g (a + b) = −b/(a + b)2 onde ambos os valores pertencem a ] − 1, 0[ pois a > b ≥ 1. Por outro lado, como g ´ decrescente em I e temos g(a) = a + b/a, g(a + b) = e b a + a+b , ambos os valores pertencendo a [a, a + b], ´ claro que g(I) ⊆ I. Para terminar e reparamos que, apesar de x0 = 1 ∈ I, temos x1 = a + b ∈ I, pelo que podemos considerar / x1 como sendo a ‘nova iterada inicial’. As condi¸oes est˜o verificadas. c˜ a Acabamos de mostrar que, quando a > b ≥ 1, a frac¸ao cont´nua indicada converge para c˜ ı √ a 1 2 + 4b ∈ [a, a + b]. Por exemplo, considerando a = 2, b = 1, podemos obter +2 a 2 1+ √ 2=2+ 1 2+ 1 2+ . 1 ... Verificar as condi¸˜es do teorema do ponto fixo num intervalo [a, b] permite garantir a co convergˆncia para qualquer iterada inicial nesse intervalo. No entanto, podemos ver que e se houver um conhecimento aproximado do ponto fixo z, a ponto de come¸armos com c uma iterada inicial ‘suficientemente pr´xima’, basta saber que |g (z)| < 1, para ficarem o asseguradas as condi¸˜es de convergˆncia. co e Tal como as s´ries, as frac¸˜es cont´ e co ınuas foram objecto de estudo, especialmente no s´c. XIX. Uma e propriedade curiosa das frac¸˜es cont´ co ınuas ´ que podem originar uma sucess˜o que pode ser encarada como e a a ‘melhor’ aproxima¸˜o racional para o irracional que seja o seu limite (deve considerar-se nesse caso um ca desenvolvimento com bn ≡ 1). 13 51 Teorema 2.7 (convergˆncia local). Seja g ∈ C 1 (Vz ), em que Vz ´ uma vizinhan¸a de z e e c ponto fixo de g, tal que |g (z)| < 1. A sucess˜o xn+1 = g(xn ) converge para z, desde que a o seja considerado um x0 suficientemente pr´ximo de z. Demonstra¸˜o: ca Podemos sempre considerar um intervalo I = [z − ε, z + ε] suficientemente pequeno, tal que |g (x)| < 1, ∀x ∈ I. Falta apenas ver que g(I) ⊆ I para aplicar o teorema do ponto fixo. Ora, se x ∈ I, temos |z − x| ≤ ε, e portanto |z − g(x)| = |g(z) − g(x)| = |g (ξ)| |z − x| ≤ ε. Logo g(x) ∈ I, e a convergˆncia ´ assegurada pelo teorema do ponto fixo, considerando um e e x0 ∈ I. Proposi¸˜o 2.4 Se 0 < |g (z)| < 1, a convergˆncia do m´todo do ponto fixo ´ linear e o ca e e e coeficiente assimpt´tico de convergˆncia ´ |g (z)|. o e e Demonstra¸˜o: ca Usando o teorema do valor m´dio de Lagrange, sabemos que e z − xm+1 = g(z) − g(xm ) = g (ξm )(z − xm ) com ξm ∈]xm ; z[. Logo, dividindo e passando ao limite, temos: em+1 z − xm+1 = lim = g (z) ⇒ K∞ = |g (z)| m→∞ em m→∞ z − xm lim pois ξm tende para z, porque havendo convergˆncia xm → z. Como por hip´tese g (z) = 0, e o o teorema est´ provado. a Acab´mos de ver que na situa¸˜o em que a derivada ´ menor que 1 (em m´dulo) h´ a ca e o a pelo menos convergˆncia linear. A condi¸˜o g (z) = 0, apenas foi usada para afirmar a e ca convergˆncia linear. Com efeito, se g (z) = 0, conclui-se que a convergˆncia ´ supralinear. e e e Podemos ver mais especificamente qual a ordem p para essa convergˆncia, admitindo alguma e regularidade na fun¸˜o g, de forma a poder usar um resto de Lagrange conveniente para o ca desenvolvimento em s´rie de Taylor. e Teorema 2.8 (convergˆncia supralinear). Seja g uma fun¸ao C p (Vz ), com p ≥ 2, onde Vz e c˜ ´ uma vizinhan¸a de z ponto fixo de g. e c Se g (z) = ... = g (p−1) (z) = 0, com g (p) (z) = 0 ent˜o a em+1 (−1)p (p) =− g (z) p m→∞ em p! lim 52 (2.17) (2.16) ou seja, o m´todo do ponto fixo tem convergˆncia de ordem p, e o coeficiente assimpt´tico e e o ´ e 1 [p] K∞ = |g (p) (z)|. p! Demonstra¸˜o: ca Fazendo o desenvolvimento em s´rie de Taylor, para um xm ∈ I e g(xm ) = g(z) + g (z)(xm − z) + . . . + g (p−1) (z) g (p) (ξm ) (xm − z)p−1 + (xm − z)p , (p − 1)! p! com ξm ∈]xm ; z[. Usando as hip´teses, temos o xm+1 = g(xm ) = z + ou seja, em+1 = −(−1)p g (p) (ξm ) (em )p . p! g (p) (ξm ) (xm − z)p , p! m+1 Conclu´ ımos, reparando (como fizemos na proposi¸˜o anterior) que ξm → z, logo lim |e|ep | | = ca m 1 (p) |g (z)| = K∞ > 0. p! J´ vimos casos em que podemos assegurar convergˆncia do m´todo do ponto fixo, vamos a e e agora estabelecer um crit´rio em que se conclui que n˜o pode haver convergˆncia para um e a e determinado ponto fixo z em que se verifique |g (z)| > 1. Note-se que, no entanto, poder´ a haver convergˆncia para um outro ponto fixo. e Teorema 2.9 (n˜o convergˆncia para um ponto fixo). Seja Vz vizinhan¸a de um ponto fixo a e c 1 z de g ∈ C (Vz ), tal que |g (z)| > 1. Neste caso, a sucess˜o xn+1 = g(xn ) n˜o pode convergir a a para esse ponto fixo z (excepto se ‘excepcionalmente’ xm = z para algum m). Demonstra¸˜o: ca Supondo, por absurdo, que (xn ) converge para o ponto fixo z ∈ Vz , ent˜o: a ∀ε > 0 ∃p : n ≥ p : |z − xn | < ε. Como |g (z)| > 1, podemos sempre considerar um ε > 0 suficientemente pequeno tal que I = [z − ε, z + ε] ⊂ Vz em que |g (x)| > 1, ∀x ∈ I. Aplicando o teorema do valor m´dio e |z − xn+1 | = |g (ξn )| |z − xn |, como xn , z ∈ I tamb´m ξn ∈ I, logo |g (ξn )| > 1 e temos |z − xn+1 | > |z − xn | para n ≥ p, e pois z = xn . Isto significa que a sucess˜o |z − xn | ´ crescente e consequentemente n˜o a e a converge para zero, o que provoca a contradi¸˜o. ca 53 Exerc´ ıcio 2.2 Suponha que z e w s˜o pontos fixos consecutivos de g ∈ C 1 . Mostre que se a |g (z)| < 1 ent˜o |g (w)| ≥ 1. a Resolu¸˜o: Suponhamos que z < w, e portanto n˜o h´ mais nenhum ponto fixo em ]z, w[. ca a a Consideramos f (x) = x − g(x), e temos f ∈ C 1 e f (z) = f (w) = 0. Como n˜o existe mais nenhuma raiz de f entre z e w, concluimos que, ou f(x) > 0 ou a f (x) < 0, em ]z, w[. Como, f (z) = 1 − g (z) > 0, e como f (z) = limx→z+ f (x) (porque x−z f tem derivada cont´nua e f (z) = 0), conclu´mos que f (x) > 0 num intervalo ]z, z + ε[. ı ı Portanto f (x) > 0 em ]z, w[, logo f (w) = lim− x→w f (x) ≤0 x−w pois h(x) x−w < 0 quando x < w. Assim, g (w) = 1 −f (w) ≥ 1. O caso w < z seria semelhante. O resultado deste exerc´ pode ser melhorado para concluir que — se encontrarmos um ıcio ponto fixo usando uma fun¸˜o iteradora g, cont´ ca ınua, ser´ imposs´ encontrar os pontos a ıvel fixos que lhe s˜o adjacentes com a mesma fun¸˜o!! a ca Isto poder´ parecer que ´ uma grande limita¸˜o para o m´todo do ponto fixo, j´ que a e ca e a ` partida poder´ a ıamos ficar circunscritos a encontrar menos de metade das solu¸˜es... no co entanto, h´ solu¸˜es que foram encontradas sem que o pr´prio problema tivesse ocorrido a a co o quem as encontrou! Uma que iremos ver de seguida, ´ o m´todo de Newton. A fun¸˜o itere e ca a ca adora do m´todo de Newton resolve este problema de forma dr´stica... a fun¸˜o iteradora e ir´ explodir num ponto entre as ra´ a ızes, quebrando a continuidade de g. Observa¸˜o 1 (tempo de c´lculo). ca a O m´todo do ponto fixo envolve apenas o c´lculo de g em cada iterada, pelo que podemos e a escrever T = n tg . ´ E claro que como podemos estabelecer v´rias fun¸˜es iteradoras, o tempo de c´lculo tg ir´ a co a a variar com a maior ou menor complexidade de g. Observa¸˜o 2 (erros de arredondamento). ca Ao garantir a convergˆncia do m´todo do ponto fixo num intervalo, ´ ´bvio que a e e e o influˆncia dos erros de arredondamento no processo de c´lculo ´ m´ e a e ınima. Basta reparar que se numa determinada iterada n utilizarmos xn ao inv´s de xn , esse valor ser´ pr´ximo ˜ e a o e continua dentro do intervalo de convergˆncia, n˜o havendo qualquer problema. O limite e a deste processo ´ o limite imposto pela precis˜o do sistema F P utilizado (ver observa¸ao 2, e a c˜ no final do primeiro cap´tulo). ı Um crit´rio normalmente utilizado para avaliar o final da itera¸˜o ´ aquele em que e ca e os d´ ıgitos apresentados n˜o se alteram, ou seja xn+1 = xn . Este crit´rio n˜o ´ exacto e a ˜ ˜ e a e pode prestar-se a confus˜es. Ao atingir a precis˜o da m´quina, os ultimos d´ o a a ´ ıgitos n˜o s˜o a a significativos e podem mesmo ocorrer pequenas varia¸˜es, peri´dicas. Visualizar xn+1 = xn co o ˜ ˜ n˜o significa, de modo algum, que xn+1 = xn , o que significaria erro nulo! Normalmente, a nesses casos, o erro ´ da ordem de grandeza da precis˜o do sistema F P, por exemplo, ser´ e a a da ordem 10−8 no caso de precis˜o simples e 10−16 no caso de precis˜o dupla. a a Observa¸˜o 3 (´rbitas peri´dicas). ca o o 54 Ao aplicar o m´todo do ponto fixo uma das situa¸˜es de n˜o convergˆncia que pode e co a e ocorrer ´ o caso em que se obt´m xn+2 ≈ xn , xn+1 = xn . Nesses casos a sucess˜o poder´ ter e e a a a o a dois sublimites z1 e z2 , e alterna entre valores que ir˜o ficar pr´ximo de z1 e outros que ir˜o ficar pr´ximo de z2 . Trata-se de uma situa¸˜o em que se fala de ´rbitas de per´ o ca o ıodo 2. Essa convergˆncia est´ associada a uma convergˆncia do m´todo do ponto fixo aplicado n˜o ` e a e e a a ´ claro que se z for ponto fixo de g tamb´m ser´ ponto fun¸˜o g mas sim ` fun¸˜o g ◦ g. E ca a ca e a fixo de g ◦ g, mas no mesmo dom´ ınio o m´todo do ponto fixo poder´ n˜o convergir usando e a a ´ a fun¸˜o iteradora g e convergir ao usar a fun¸˜o iteradora g ◦ g. E nestas situa¸˜es que ca ca co temos ´rbitas com per´ o ıodo 2. Este racioc´ ınio ´ facilmente estendido a ´rbitas de per´ e o ıodo p > 2. Um exemplo t´ ıpico desta situa¸˜o ocorre quando se considera a denominada fun¸˜o ca ca log´ ıstica g(x) = µx(1 − x), variando o coeficiente µ. No gr´fico seguinte mostramos o que a acontece quando come¸amos com x0 = 0.5 e variamos µ entre 0 e 4. Para cada valor de µ c s˜o colocados os v´rios pontos xn para n grande, e para estes valores de µ, ´ f´cil ver que a a e a g([0, 1]) ⊆ [0, 1] Reparamos que h´ apenas dois pontos fixos z0 = 0 e zµ = µ−1 , que s´ ´ a oe µ positivo quando µ > 1. 1 0.8 0.6 0.4 0.2 1 2 3 4 Portanto, para µ ≤ 1, as iteradas v˜o convergir para z0 = 0, e depois aproximam-se de a zµ desenhando uma parte da hip´rbole µ−1 , at´ que h´ um primeiro ponto de bifurca¸˜o. e e a ca µ Repare-se que g (zµ ) = 2 − µ e portanto para µ ∈]1, 3[, garante-se a convergˆncia local do e m´todo do ponto fixo para zµ . A partir da´ entramos na situa¸˜o em que devemos estudar e ı ca g◦g, que tem quatro pontos fixos. Dois deles s˜o 0 e µ−1 , pontos onde a derivada da fun¸˜o ´ a ca e µ − + maior que um em m´dulo, e os outros dois novos valores s˜o zµ , zµ onde a derivada verifica o a √ ± 2 (g ◦ g) (zµ ) = 4 + 2µ − µ e ser´ em m´dulo inferior a 1 para µ ∈]3, 1 + 6(= 3.4495)[. a o O extremo do intervalo ´ justamente o valor em que deixa de haver convergˆncia para e e g ◦ g e o gr´fico apresenta duas novas bifurca¸˜es. Sucessivamente precisar´ a co ıamos de estudar mais composi¸˜es de g, mas ´ conhecido, pela teoria de sistemas dinˆmicos discretos que co e a o per´ ıodo ir´ duplicar, de forma que se ir´ verificar o seguinte n´mero de bifurca¸˜es a a u co 2 3 2, 2 , 2 , ... Surpreendentemente, ap´s bifurca¸˜es que s˜o potˆncias de 2, ocorrer´ uma o co a e a bifurca¸˜o de per´ ca ıodo 3... Antes de ocorrer uma bifurca¸˜o de per´ ca ıodo 5 ir˜o ocorrer a bifurca¸˜es cujo per´ co ıodo ser´ dado por potˆncias de 3 multiplicadas por potˆncias de 2. a e e Assim, sucessivamente...ap´s 3 e 5 ser´ 7, 11, 13... percorrendo os n´meros primos. Verificao a u se uma nova ordena¸˜o para os n´ meros naturais! Quando estas hip´teses se esgotam, ca u o atinge-se uma situa¸˜o limite comumente designada por caos. ca 55 2.5.1 Acelera¸ao de convergˆncia c˜ e Uma t´cnica frequentemente utilizada para aumentar a ordem de convergˆncia de um e e m´todo consiste em prever e utilizar o comportamento assimpt´tico da sucess˜o das ite o a ´ eradas. E o caso do m´todo que veremos de seguida. e Foi estabelecido que se o m´todo do ponto fixo convergir linearmente para um ponto e a fixo z da fun¸˜o g ∈ C 1 (Vz ), ent˜o K∞ = |g (z)|, ou melhor, ca z − xn+1 = g (z). n→∞ z − xn lim ´ E igualmente f´cil estabelecer que (exerc´ a ıcio) lim xn+1 − xn = g (z). n→∞ xn − xn−1 Ora, para n suficientemente grande poderemos ent˜o escrever a xn+1 − xn z − xn+1 ≈ g (z) ≈ . xn − xn−1 z − xn Ser´ que substituir o s´ a ımbolo ≈ por = permite obter uma estimativa melhor para z do que calcular xn+2 ? Iremos ver que sim. A ideia ser´ prever o valor z que verificaria a rela¸˜o a ˜ ca xn+1 − xn z − xn+1 ˜ = , xn − xn−1 z − xn ˜ e a partir da´ utilizar esse novo valor como iterada. Vamos primeiro resolver a equa¸˜o ı ca anterior em z , e obtemos ˜ z − xn ˜ z − xn+1 ˜ xn−1 xn+1 − x2 n = ⇔z= ˜ , xn − xn−1 xn+1 − xn 2xn − xn−1 − xn+1 ou o que ´ equivalente, e z = xn−1 − ˜ (xn − xn−1 )2 (xn+1 − 2xn + xn−1 ) (2.18) que ´ a f´rmula de extrapola¸ao de Aitken14 . e o c˜ Reparando que xn = g(xn−1 ), xn+1 = g(g(xn )), a f´rmula de Aitken pode ser reescrita o de forma a constituir um m´todo iterativo, e xn = xn−1 − 14 (g(xn−1 ) − xn−1 )2 , g(g(xn−1 )) − 2g(xn−1 ) + xn−1 z = xn − ˜ ( xn )2 2x n (2.19) A f´rmula (2.18) tamb´m pode ser escrita na forma o e usando a nota¸ao de diferen¸as finitas, xn = xn+1 − xn , por essa raz˜o ´ usada a designa¸ao m´todo- 2 c˜ c a e c˜ e de Aitken. Note-se que a f´rmula ´ aplic´vel a outras sucess˜es (xn ) com convergˆncia linear, n˜o necessariamente o e a o e a resultantes do m´todo do ponto fixo. e 56 que tamb´m ´ denominado m´todo de Steffensen (mas iremos usar preferencialmente essa e e e designa¸˜o quando aplicado ao c´lculo de ra´ ca a ızes, com g(x) = f (x) + x). Observa¸˜o 1 (convergˆncia quadr´tica do m´todo de Steffensen). ca e a e Podemos supor que g ´ uma fun¸˜o iteradora qualquer, com ponto fixo z, e tal que e ca g (z) = 1. Ainda que o m´todo do ponto fixo aplicado a g n˜o convirja, consideramos a e a nova fun¸˜o iteradora obtida G pela f´rmula de extrapola¸˜o de Aitken, ca o ca G(x) = x − (g(x) − x)2 A(x)2 = x− , g(g(x)) − 2g(x) + x B(x) em que A(x) = g(x) − x, B(x) = g(g(x)) − 2g(x) + x. Esta nova fun¸˜o iteradora G tem os ca mesmos pontos fixos que g, e tem a particularidade de convergir quadraticamente para z, desde que g (z) = 1. (i) Come¸amos por ver que g(z) = z ⇔ G(z) = z. c ´ claro que se G(z) = z, ent˜o (g(z) − z)2 = 0 e portanto z = g(z). E a Supondo agora que g(z) = z, notamos que A(z) = B(z) = 0, e assim, quando x → z, temos uma indetermina¸˜o 0 . Mas podemos mostrar que limx→z G(x) = z. Com efeito, ca 0 como A (x) = g (x) − 1, e B (x) = g (x)g (g(x)) − 2g (x) + 1, podemos calcular o limite A(x) A (z) g (z) − 1 1 = = = , 2 − 2g (z) + 1 x→z B(x) B (z) g (z) g (z) − 1 lim que ´ finito, porque assumimos g (z) = 1. Portanto, e lim G(x) = z − A(z) 1 = z. g (z) − 1 x→z (ii) Resta ver que G (z) = 0. Como A(x) A(x)2 G (x) = 1 − 2A (x) + B (x) , B(x) B(x)2 obtemos g (z) − 1 lim G (x) = 1 − 2 + (g (z) − 1)2 x→z g (z) − 1 1 g (z) − 1 2 = 0. Podemos assim concluir que se g ∈ C 1 (Vz ), o m´todo aplicado ` fun¸˜o G converge pelo e a ca menos quadraticamente para z. Mesmo que o m´todo inicial com g divirja, com |g (z)| > 1, o m´todo de Steffenson ir´ e e a convergir quadraticamente (convergˆncia local). e Observa¸˜o 2: Ver exerc´ 4. ca ıcio 57 2.6 M´todo de Newton e O m´todo de Newton pode ser encarado como um caso particular do m´todo do ponto fixo, e e onde ´ poss´ obter uma convergˆncia quadr´tica. Basta reparar que se f (x) = 0 ent˜o e ıvel e a a f(x) = 0 ⇔ x = x − f(x)/f (x) definindo a fun¸˜o iteradora g(x) = x − f (x)/f (x), os pontos fixos de g ser˜o os zeros de ca a f. Para al´m disso, podemos ver que e g (x) = f (x)f (x) , (f (x))2 (2.20) ora como f (z) = 0 ent˜o g (z) = 0. Pelo teorema relativo ` convergˆncia supralinear, usando a a e esta fun¸˜o iteradora g ´ poss´ arranjar uma vizinhan¸a da raiz onde asseguramos, pelo ca e ıvel c menos, uma convergˆncia quadr´tica (desde que f (z) = 0). e a O m´todo de Newton pode assim resumir-se no esquema e Iterada inicial : x0 Iterar xn+1 = xn − (2.21) f (xn ) . f (xn ) Historicamente, a origem do m´todo de Newton n˜o ´ esta, ´ geom´trica, e consiste em e a e e e definir a nova iterada a partir da intersec¸˜o do eixo das abcissas com a tangente ` fun¸˜o ca a ca f (calculada na iterada anterior). Basta reparar que a equa¸˜o da tangente num ponto xn ca ´ e y = f (xn ) + f (xn )(x − xn ) e a iterada xn+1 ´ a “raiz da tangente”... basta fazer y = 0 para verificarmos que o valor e de x coincide com o valor obtido para xn+1 . ´ E tamb´m claro, mesmo geometricamente, que n˜o podemos ter iteradas em que f (xn ) = e a 0, pois ficar´ ıamos com tangentes paralelas ao eixo das abcissas, que nunca o intersectariam (... na geometria euclidiana!) Exemplo 2.6 Apresentamos na figura seguinte um esquema que representa a evolu¸ao das c˜ iteradas numa situa¸ao em que h´ convergˆncia do m´todo de Newton. A fun¸ao escolhida c˜ a e e c˜ c foi f (x) = 1 x4 − 1 , come¸ando com a iterada inicial x0 = 2.8. Este exemplo foi escolhido de 6 2 forma a que a derivada da fun¸ao fosse quase nula pr´xima da raiz, para poder visualizar c˜ o algumas iteradas do m´todo, j´ que noutros casos a convergˆncia ´ t˜o r´pida que n˜o e a e e a a a 58 permite uma visualiza¸ao adequada. c˜ 10 8 6 4 2 0.5 1 1.5 2 2.5 x0 3 Observa¸˜o (g ´ descont´nua entre ra´zes) ca e ı ı A aparente limita¸˜o para o m´todo do ponto fixo, ao considerar fun¸˜es iteradoras g ca e co cont´ ınuas, referida na sec¸˜o anterior, ´ resolvida de forma curiosa pelo m´todo de Newton. ca e e f (x) Como g(x) = x − f (x) , a fun¸˜o ‘explode’ sempre que f (x) = 0, e isso acontece sempre ca entre duas ra´ ızes, devido ao teorema de Rolle. Esta caracter´ ıstica permite ao m´todo de e Newton aproximar ra´ ızes consecutivas, o que n˜o seria poss´ se g fosse cont´ a ıvel ınua (pelo menos desta maneira... mais ` frente, quando analisarmos um m´todo de ordem 3 veremos a e outra solu¸˜o engenhosa). ca Para assegurar a convergˆncia, poder´ e ıamos tentar aplicar as condi¸˜es do teorema do co ponto fixo ` fun¸˜o g(x) = x − f (x)/f (x), mas na maioria dos casos isso levaria a longos a ca c´lculos, podendo ser estabelecido um crit´rio mais simples. a e 2.6.1 Convergˆncia do m´todo de Newton e e Teorema 2.10 (condi¸ao suficiente de convergˆncia para o m´todo de Newton). c˜ e e 2 Seja f uma fun¸ao C [a, b] que verifique : c˜ 1) f (a)f (b) ≤ 0 a 2) f n˜o se anula em [a, b], e portanto a equa¸ao f (x) = 0 tem uma solu¸ao unica z pertencente ao intervalo [a, b]. c˜ c˜ ´ Consideramos ainda duas outras condi¸oes c˜ 3) f ≥ 0 ou f ≤ 0 em [a, b], 4) f (x0 )f ≥ 0 para x0 ∈ [a, b]. ent˜o o m´todo de Newton converge monotonamente para z. a e Para al´m disso, se |f (a)/f (a)| ≤ |a − b| e |f (b)/f (b)| ≤ |a − b|, e ent˜o, qualquer que seja x0 ∈ [a, b], a iterada x1 verifica a condi¸ao 4). a c˜ Demonstra¸˜o: ca Consideremos o caso em que f(a) < 0, f (b) > 0, f (x) > 0, f (x) ≥ 0, j´ que os restantes a casos s˜o semelhantes. a Se tivermos f (x0 ) > 0 ent˜o as condi¸˜es 1), 2), 3) e 4a) s˜o verificadas e podemos a co a provar que xn ≥ z para todo n, porque i) x0 > z, pois f (x0 ) > 0. 59 ii) fazendo o desenvolvimento em s´rie de Taylor em torno de xn , temos e 1 0 = f (z) = f (xn ) + f (xn )(z − xn ) + f (ξn )(z − xn )2 . 2 e Como f (x) ≥ 0, vem f (xn) + f (xn )(z − xn ) ≤ 0 e dividindo por f (xn ) > 0, obt´m-se z − xn+1 = f (xn ) + z − xn ≤ 0, ou seja xn+1 ≥ z. f (xn ) f (xn ) f (xn ) f portanto xn+1 = xn − f (xn )) < xn . (xn Mostramos assim que se trata de uma sucess˜o estritamente descrescente e limitada a (porque z ≤ xn ≤ x0 ), logo tem limite. f Esse limite ´ obrigatoriamente a solu¸˜o unica de f(z) = 0 ⇔ z = g(z) = z − f (z) nesse e ca ´ (z) intervalo, pois g ´ cont´ e ınua. — Resta ver que se a ultima condi¸˜o for verificada temos convergˆncia em todo o ´ ca e f (x)f (x) intervalo. Reparamos que g (x) = f (x)2 ≤ 0 se x ∈ [a, z], logo g ´ decrescente e se e f (x0 ) < 0 (que ´ o caso que resta verificar) ent˜o x0 < z ⇒ x1 = g(x0 ) > g(z) = z. Portanto e a f x1 verifica f(x1 ) > 0 e aplica-se 4) desde que x1 ∈ [a, b]. Como x1 = x0 − f (x00)) ≥ a, basta (x f notar que x0 ≥ a ⇒ x1 = g(x0 ) ≤ g(a) e que g(a) ≤ b porque g(a) = a− f (a) ≤ a+b−a = b, (a) por hip´tese. o Por outro lado, tendo xn ≥ z, como f ´ crescente f(xn ) ≥ f (z) = 0, logo e > 0 e Note-se que este crit´rio apenas fornece condi¸˜es suficientes de convergˆncia. Para al´m e co e e ca disso, se tivermos informa¸˜es acerca da localiza¸˜o da raiz, a proposi¸˜o seguinte garante co ca que se f ∈ C 2 numa vizinhan¸a da raiz e se f (z) = 0, ent˜o escolhendo a iterada inicial c a suficientemente pr´xima de z, o m´todo de Newton converge com, pelo menos, ordem 2. o e Proposi¸˜o 2.5 (convergˆncia local). Seja f uma fun¸ao C 2 (I), onde I ´ um intervalo ca e c˜ e que ´ vizinhan¸a da raiz z. e c Se f (z) = 0 ent˜o a sucess˜o definida pelo m´todo de Newton converge para z (desde que a a e x0 seja suficientemente pr´ximo de z) com pelo menos ordem de convergˆncia quadr´tica, o e a 1 f (z) em+1 =− . 2 m→∞ em 2 f (z) lim Se f (z) = 0 a convergˆncia ser´ quadr´tica e o coeficiente assimpt´tico de convergˆncia e a a o e [2] 1 |f (z)| ser´ K∞ = 2 |f (z)| . Se f (z) = 0, o m´todo ter´ convergˆncia superior a quadr´tica. a e a e ` a (z)f (z) Demonstra¸˜o: J´ vimos que g (z) = f(f (z))2 = 0, e portanto as condi¸˜es do teoca a co rema de convergˆncia local para o m´todo do ponto fixo est˜o estabelecidas (apenas exigiam e e a |g (z)| < 1). O teorema acerca da convergˆncia supralinear do m´todo do ponto fixo, mostra e e que a convergˆncia ser´ pelo menos quadr´tica e d´-nos o coeficiente assimpt´tico de cone a a a o [2] vergˆncia. No caso f (z) = 0, temos K∞ = 0, o que indicia a convergˆncia de ordem e e superior, que ´ assegurada se f ∈ C 3 (I). e 60 (z)f (z) • Como g (z) = f(f (z))2 e f(z) = 0, a situa¸˜o de n˜o convergˆncia prevista no m´todo ca a e e do ponto fixo, |g (z)| > 1, apenas se poderia verificar se f (z) = 0. Mas como iremos ver, nem nesse caso isso acontece, podendo garantir-se convergˆncia (linear). e — Localmente, o m´todo de Newton ir´ sempre convergir! e a No entanto, o facto de convergir quando estamos pr´ximo da raiz, n˜o significa que n˜o o a a haja situa¸˜es de divergˆncia, dependentes da iterada inicial. co e Observa¸˜o 1 (n˜o convergˆncia, orbitas peri´dicas). ca a e ´ o Sendo a itera¸˜o do m´todo de Newton um caso particular da itera¸˜o do ponto fixo ca e ca ocorrem tamb´m situa¸˜es semelhantes `s vistas anteriormente, em que o m´todo n˜o e co a e a converge.. nomeadamente, o caso de ´rbitas peri´dicas. Procurar situa¸˜es de ´rbitas de o o co o per´ ıodo 2 em que x2 = x0 = x1 pode aparentemente n˜o ser f´cil se encararmos x2 = a a g(g(x0 )), j´ que a express˜o g ◦ g complica-se. a a Reparamos, entretanto, que o m´todo de Newton efectua uma soma que pode ser escrita e da seguinte forma: n xn+1 = x0 − k=0 f (xk ) , e no limite.z = x0 − f (xk ) ∞ k=0 f (xk ) . f (xk ) Esta f´rmula n˜o tem qualquer interesse pr´tico, j´ que necessita do c´lculo pr´vio dos o a a a a e valores x0 , ..., xn . Por´m, do ponto de vista te´rico tem uma utilidade evidente. Avaliar e o se situa¸˜es do tipo x2 = x0 podem ocorrer corresponde a verificar se podem existir x0 , x1 co diferentes e tais que: 1 x2 = x0 − k=0 f (xk ) f (x0 ) f (x1 ) ⇔ + =0 f (xk ) f (x0 ) f (x1 ) Se uma tal situa¸˜o puder ocorrer existe a possibilidade do m´todo cair numa ´rbita de ca e o per´ ıodo 2. Da mesma forma, para avaliar se pode ocorrer uma orbita de per´ ´ ıodo p, bastar´ a encontrar x0 , x1 , ..., xp−1 , diferentes, tais que p−1 k=0 f(xk ) = 0. f (xk ) (2.22) Exemplo 2.7 Consideremos a fun¸ao (que foi obtida de forma a verificar a condi¸ao (2.22) c˜ c˜ para x0 = 0, x1 = 3) 1 f (x) = (81 − 27x + 6x3 − x4 ). 20 Esta fun¸ao tem duas ra´zes reais z1 = −2.6003, z2 = 5.6003. Vejamos o que se passa c˜ ı quando variamos ligeiramente a iterada inicial x0 . Consideramos trˆs valores diferentes e x0 = 3.3, x0 = 3.4 e x0 = 3.6. No primeiro gr´fico (em baixo, a esquerda) ´ visualizada a a ` e situa¸ao em que x0 = 3.3. Nesse caso, as iteradas v˜o aproximar-se alternadamente de dois c˜ a valores, originando uma situa¸ao de orbita de per´odo 2. No entanto, verificamos que os c˜ ´ ı valores n˜o est˜o muito longe dos extremos relativos da fun¸ao (pontos cr´ticos). Assim, a a c˜ ı ´ natural que uma pequena varia¸ao da iterada inicial provoque grandes altera¸oes, como e c˜ c˜ 61 iremos ver. No segundo gr´fico (em baixo, ao centro), consideramos x0 = 3.4, e ap´s algumas itera¸oes a o c˜ e e e e o valor xn ´ enviado para uma zona em que ´ garantida a convergˆncia do m´todo de Newton para z2 . Da mesma forma, ao considerar x0 = 3.6, na figura em baixo, a direita, ao fim de ` duas itera¸oes, o valor x2 est´ numa zona em que ´ garantida a convergˆncia do m´todo de c˜ a e e e Newton para z1 . 75 . 5 25 . 7.5 5 2.5 75 . 5 25 . 4 2 -2 5 . 5 -7 5 . 2 x0 4 6 -4 -2 -2.5 -5 -7.5 2 x0 4 6 -0 1 -. 75 -5 -. 25 -. 25 5 -. 75 2 5x 5 . 0 7. 5 Observa¸˜o 2 (n˜o convergˆncia, ass´mptotas horizontais). ca a e ı A situa¸˜o de ´rbitas peri´dicas n˜o ´ a unica situa¸˜o em que n˜o h´ convergˆncia ca o o a e ´ ca a a e para nenhuma raiz. Um outro caso que isso ocorre ´ aquele em que podemos ter sucess˜es e o que tendem para infinito devido ao facto da fun¸˜o possuir uma ass´ ca ımptota horizontal. Com efeito, consideremos o caso em que f (x) → 0− quando x → +∞, e f ´ positiva. Se e tivermos um xn suficientemente grande, como f /f ´ um valor negativo e xn+1 = xn − f (xn ) > xn , f (xn ) e a sucess˜o tender´ para infinito. Note-se que como podemos encarar f (+∞) = 0, o m´todo a a e mant´m a sua coerˆncia ao tentar aproximar a raiz z = +∞, s´ que isso ´ entendido como e e o e uma divergˆncia. e Um exemplo, apresentado na figura que se segue, ´ f(x) = 5x+cos(x) , come¸ando com e c x2 +1 x0 = 2. 3 2 1 -5 -1 -2 -3 x0 5 10 15 20 25 ´ E claro que, neste exemplo, usar a fun¸˜o f ´ despropositado, j´ que para resolver ca e a f (x) = 0, bastaria aplicar o m´todo de Newton a f (x) = 5x + cos(x). e • Quando poss´ ıvel, ´ importante escolher fun¸˜es f equivalentes, mais simples, ou mais e co adequadas... Refira-se que se esta fun¸˜o fosse utilizada, sem uma an´lise do gr´fico de f, dificilmente ca a a encontrar´ ıamos a raiz, j´ que o m´todo de Newton n˜o converge fora do intervalo ] − 1, 0.5[. a e a . 62 Observa¸˜o 3 (supress˜o de zeros). ca a Tendo obtido uma das ra´ da equa¸˜o, podemos sempre procurar outras, atrav´s de ızes ca e 15 um processo muito simples, designado supress˜o de zeros . Suponhamos que usando f a obtemos a aproxima¸˜o de uma primeira raiz z1 , a ideia consiste em usar de seguida ca ˜ f1 (x) = f(x) . x − z1 ˜ Note-se que se fosse poss´ considerar o valor correcto, z1 , a fun¸˜o f1 seria ainda cont´ ıvel ca ınua f (x) em z1 , porque limx→z1 x−z1 = f (z1 ). Tendo uma aproxima¸˜o z1 , a fun¸˜o mant´m o zero ca ˜ ca e em z1 e ter´ uma ass´ a ımptota vertical em z1 . No entanto, quando z1 ´ uma aproxima¸˜o ˜ ˜ e ca pr´xima da precis˜o m´xima F P, e como iremos procurar o outro zero noutra regi˜o, o a a a este comportamento da fun¸˜o f1 pr´ximo de z1 ser´ quase negligenci´vel. O que ser´ ca o a a a menos negligenci´vel, ´ o comportamento quando x → ±∞, j´ que podem ser introduzidas a e a ass´ ımptotas horizontais, podendo introduzir situa¸˜es de n˜o convergˆncia, como referidas co a e na observa¸˜o anterior. ca ca a Consoante z1 seja uma aproxima¸˜o por excesso ou defeito de z1 , dever´ colocar-se o ˜ novo x0 do lado em que n˜o esteja z1 , para evitar que encontre a mesma raiz. Este processo a poder´ ser de novo aplicado para encontrar novas ra´ a ızes. Vejamos um exemplo. Consideramos a fun¸˜o f (x) = x3 − 3 sin(x) + 1, que tem 3 ca ra´ ızes, situadas em [−2, 2]. Come¸ando com x0 = −3, obtemos z1 = −1.19603. Mesmo c ˜ x3 −3 sin(x)+1 usando a aproxima¸˜o inicial anterior e f1 (x) = ca , obtemos imediatamente z2 = ˜ x−˜1 z 0.355809. Fazendo o mesmo para f2 (x) = x −31sin(x)+1 , obtemos z3 = 1.22042. Todas estas ˜ (x−˜ )(x−˜2 ) z z aproxima¸˜es tˆm os d´ co e ıgitos correctos. • A defla¸˜o ´ uma t´cnica semelhante, aplicada a polin´mios, mas a divis˜o ´ efectuada ca e e o a e de forma alg´brica (como iremos ver, pela regra de Ruffini) o que pode levar a um aumento e ımptotas horizontais n˜o a significativo da imprecis˜o. No caso polinomial, o efeito das ass´ a transparece, porque o n´ mero de ra´ ´ igual ao grau do polin´mio, consequentemente ao u ızes e o efectuar a divis˜o o grau do numerador ser´ sempre superior ao grau do denominador. a a • Como j´ referimos, o problema com as ass´ a ımptotas horizontais pode ser facilmente contornado atrav´s de uma mudan¸a apropriada da fun¸˜o f. Bastar´ multiplicar f por e c ca a uma fun¸˜o sem zeros cujo comportamento assimpt´tico anule a existˆncia de ass´ ca o e ımptota 2 horizontal. Uma sugest˜o ser´ utilizar f (x)(x2p + 1), ou mesmo f(x)ex . De acordo com a a a observa¸˜o anterior isto pode ainda ser encarado como uma supress˜o do zero, j´ que ca a a estamos a tentar fazer desaparecer a ‘raiz infinita’. Observa¸˜o 4 (o m´todo mais utilizado). ca e O m´todo de Newton ´ o m´todo mais difundido para encontrar solu¸˜es de equa¸˜es n˜o e e e co co a lineares. Para al´m de ser simples e apresentar convergˆncia quadr´tica, o que permite em e e a poucas itera¸˜es encontrar uma boa aproxima¸˜o, tem outra particularidade atractiva... co ca encontra ‘quase sempre’ uma das ra´ ızes da equa¸˜o. Vejamos uma poss´ ca ıvel explica¸˜o. ca 2 ca a Consideremos a fun¸˜o f(x) = x + 1. Esta fun¸˜o n˜o tem qualquer raiz real, e portanto ca o m´todo de Newton n˜o ir´ convergir se come¸armos com iteradas reais. Apesar de se e a a c O termo ´ usado em [29], a prop´sito de polin´mios, referindo apenas a possibilidade de ser utilizado e o o para outras fun¸˜es. co 15 3 63 tratar de um caso de divergˆncia, ´ instrutivo ver o que se passa. A fun¸˜o tem um m´ e e ca ınimo em zero que servir´ de atractor-repulsor para as sucessivas iteradas (ver figura em baixo, ` a a esquerda). As iteradas aproximam-se do m´ ınimo, mas o facto de a derivada se anular nesse ponto funciona como um repulsor. De tal forma, que se fizermos uma an´lise estat´ a ıstica do n´mero de vezes que a fun¸˜o se encontra num determinado intervalo, obtemos o gr´fico u ca a que se apresenta em baixo, ` direita (e que poder´ ser encarado como uma medida de a a probabilidade, cf. teoria erg´dica). Reparamos que se trata de um gr´fico semelhante ao de o a uma gaussiana, em que se torna evidente que as iteradas ir˜o passar ‘mais tempo’ pr´ximo a o do m´ ınimo da fun¸˜o do que nos restantes pontos. ca 2000 5 4 3 2 500 1 1500 1000 -6 -4 -2 2x 0 4 -20 -10 10 20 Este facto permite explicar a caracter´ ıstica do m´todo de Newton convergir habitualmente e para uma das ra´ ızes. Com efeito, mesmo estando longe da raiz, sendo atra´ por um exıdo tremo relativo (m´ ınimo positivo ou m´ximo negativo) ir´ ser repelido para pontos distantes, a a onde poder´ encontrar uma zona pr´ximo de uma raiz, onde ´ v´lida a convergˆncia local. a o e a e Assim, ´ a pr´pria caracter´ e o ıstica, aparentemente nefasta, de a derivada se poder anular, que permite ao m´todo encontrar ra´ e ızes em pontos remotos. Como as iteradas nunca ser˜o verdadeiramente atra´ a ıdas para os valores exactos em que h´ um extremo relativo e a a derivada se anula, o problema com a derivada nula coloca-se mais ao n´ de pretender ıvel restringir as itera¸˜es a um certo intervalo. co ´ E claro que h´ dois contrapontos nesta quest˜o: a a (i) ´ tamb´m pr´ximo dos extremos relativos que ocorrem situa¸˜es de ´rbitas peri´dicas. e e o co o o Basta ver que, de acordo com a observa¸˜o 1, se f (x0 ) e f (x1 ) tˆm o mesmo sinal, ent˜o ca e a f (x0 ) e f (x1 ) ter˜o sinal diferente, o que significa que entre x0 e x1 h´ um ponto em que a a a derivada ser´ nula. a (ii) quando a fun¸˜o tem ass´ ca ımptotas horizontais, repelir ‘para longe’ pode significar enviar para uma zona em que h´ uma ‘raiz infinita’, verificando-se a divergˆncia. a e 2.6.2 F´rmula de erro do m´todo de Newton o e 1 f(z) = f (xn ) + f (xn )(z − xn ) + f (ξm )(z − xn )2 2 Supondo que f ∈ C 2 [xn ; z], pela f´rmula de Taylor (em torno de xn ) o para um certo ξm ∈]z; xn [. Dividindo por f (xn ), n˜o nulo, ficamos com: a 0= 1 f (ξn ) f (xn ) + z − xn + (z − xn )2 f (xn ) 2 f (xn ) 64 portanto como −xn+1 = f (xn ) f (xn ) − xn , temos en+1 = − 1 f (ξn ) 2 e , 2 f (xn ) n (2.23) f´rmula que, no limite, confirma o coeficiente assimpt´tico, o o K∞ = 1 f (z) , 2 f (z) que j´ havia sido deduzido atrav´s do m´todo do ponto fixo. a e e Tendo assegurado as condi¸˜es de convergˆncia exigidas no teorema 2.10, vemos que o co e e e a co sinal de en+1 ´ constante porque os sinais de f e f tamb´m o s˜o. Nessas condi¸˜es a convergˆncia ´ sempre mon´tona (o que tamb´m tinha sido j´ provado na demonstra¸˜o e e o e a ca desse teorema). A partir de (2.23) obt´m-se imediatamente a estimativa a posteriori e |en+1 | ≤ maxx∈[a,b] |f (x)| |en |2 , 2|f (xn )| (2.24) que pode ser transformada numa estimativa a priori calculando K= obtendo-se |en | ≤ 1 n (K|e0 |)2 , K (2.25) 1 maxx∈[a,b] |f (x)| , 2 minx∈[a,b] |f (x)| j´ que de |en+1 | ≤ K|en |2 obtemos K|en+1 | ≤ (K|en |)2 , ou seja an+1 ≤ a2 , com an = K|en |. a n n Recursivamente temos an ≤ (a0 )2 , o que implica (2.25). • Observamos que esta estimativa ´ apenas util se tivermos garantido que K|e0 | ´ e ´ e suficientemente pequeno (pelo menos menor que 1), majorando o erro inicial |e0 | pelo comprimento de um intervalo suficientemente pequeno onde se garanta a existˆncia da raiz. e Observa¸˜o 1 (crit´rio de paragem) ca e Se utilizarmos o habitual crit´rio de paragem, |xn+1 −xn | < ε, quando xn j´ est´ pr´ximo e a a o da raiz, podemos garantir que um majorante do erro absoluto ser´ aproximadamente ε. Com a efeito, de |en | = |z − xn | ≤ |z − xn+1 | + |xn+1 − xn | ≤ K|en |2 + |xn+1 − xn |, conclu´ ımos que se K|en | for inferior a um certo valor c < 1, podemos obter |en | ≤ 1 |xn+1 − xn |. 1−c 65 Como o erro ir´ diminuir, o valor de c tamb´m poder´ diminuir, pelo que na pr´tica, a e a a pr´ximo da raiz, temos o |en | ≤ 1.000...|xn+1 − xn| ≈ |xn+1 − xn |, o que constitui uma f´cil estimativa a posteriori (e que, no fundo, corresponde a substituir a z por xn+1 ). Se quisermos ser mais rigorosos, reparando que se K|en | ≤ c < 1 c |en+1 | ≤ |xn+1 − xn |. 1−c bastar´ ter K|en | ≤ 1 ,para garantirmos que a 2 |en+1 | ≤ |xn+1 − xn |. Exemplo 2.8 Aplicando o m´todo de Newton a fun¸ao f (x) = x3 − cos(x) − 1, podemos e ` c˜ ver que as condi¸oes para o teorema 2.10 s˜o verificadas em [1, 2],j´ que f ∈ C 2 [1, 2], e c˜ a a 1) f(1)f (2) < 0, pois f (1) = − cos(1) = −0.54, f (2) = 7 − cos(2) = 7.416. 2) f (x) = 0, ∀x ∈ [1, 2], pois f (x) = 3x2 + sin(x) ≥ 3x2 − 1 ≥ 2 > 0. 3) f (x) ≥ 0, ∀x ∈ [1, 2], pois f (x) = 6x + cos(x) ≥ 6x − 1 ≥ 5. 4) Como |f (1)/f (1)| = 0.14 e |f (2)/f (2)| = 0.574 s˜o ambos menores que |2 − 1| = 1, fica a provada a convergˆncia para qualquer iterada. e Escolhemos x0 = 1, e obtemos x1 = 1.14065, x2 = 1.126711. Qual a confian¸a que podemos depositar neste ultimo valor? Podemos obter max |f (x)| = c ´ f (2) = 11.58 (note-se que f ´ crescente em [1, 2], pois f = 6−sin(x) > 0), e min |f (x)| = e 11.58 f (1) = 3.84. Assim, K = 2·3.84 = 1.51, e sabemos tamb´m que |e2 | ≤ 0.127, porque como a e convergˆncia ´ mon´tona a partir de x1 , teremos neste caso e e o ´ E claro que K|e2 | < 0.2, e portanto 1 ≤ z < ... < xn < ... < x2 < x1 . 0.2 0.014 = 0.0035. 1 − 0.2 Efectuando uma nova iterada, x3 = 1.126562, como |e3 | < |e2 | = 0.0035, temos K|e3 | < 0.0053, e obtemos 0.0053 |e3 | ≤ |x3 − x2 | = 0.00015 = 0.8 × 10−6 . 1 − 0.0053 Na realidade todos os d´gitos apresentados s˜o correctos (arredondamento sim´trico). Para ı a e obter novas estimativas, haveria que considerar um maior n´mero de d´gitos... caso contr´rio, u ı a esgotada a precis˜o, obter´amos valores sem significado... por exemplo, mantendo-nos com a ı 7 ou 8 d´gitos, ter´amos x4 − x3 = 0, o que n˜o faria qualquer sentido. ı ı a Preferiu-se utilizar a f´rmula com a diferen¸a entre as iteradas, j´ que normalmente conduz o c a a melhores estimativas. No entanto, poder´amos aplicar qualquer uma das outras f´rmulas, ı o e at´ a f´rmula elementar e o |e2 | ≤ |x2 − x1 | = |e3 | ≤ |f (x3 )| 0.8 × 10−7 = = 0.53 × 10−7 minx∈[1,2] |f (x)| 1.51 66 se pode revelar como a mais vantajosa... sendo este um caso em que isso acontece! Observa¸˜o 2 (tempo de c´lculo) ca a O m´todo de Newton, sendo um m´todo de ponto fixo, tamb´m envolve apenas o tempo e e e de c´lculo T = n tg . No entanto, como g assume aqui uma forma particular em que ´ a e necess´rio o c´lculo da derivada da fun¸˜o f, devemos considerar (desprezando o tempo da a a ca subtrac¸˜o e da divis˜o) ca a T = n (tf + tf ). Note-se que para fun¸˜es polinomiais o c´lculo da derivada envolve at´ menor tempo que co a e o tempo para calculara f, mas de um modo geral passa-se a situa¸˜o inversa, sendo freca quentemente utilizado o subterf´gio de considerar um ponto adicional, pr´ximo da iterada u o para aproximar f , e nesse caso podemos considerar que T = 2 n tf . Observa¸˜o 3 (m´todo de optimiza¸ao) ca e c˜ Apesar de considerarmos o problema de optimiza¸˜o no ultimo cap´ ca ´ ıtulo, referimos j´ a que o m´todo de Newton pode ser utilizado para encontrar m´ e ınimos de fun¸˜es regulares. co Querendo encontrar um m´ ınimo para uma fun¸˜o regular φ, isso corresponde a encontrar ca um z : φ (z) = 0, pelo que o m´todo de Newton pode ser aplicado desde que φ ∈ C 2 . e Conv´m apenas referir que neste caso, ao definir e xn+1 = xn − φ (xn ) , φ (xn ) o ponto xn+1 ´ o ponto de m´ e ınimo para a par´bola definida por a 1 y = φ(xn ) + φ (xn )(x − xn ) + φ (xn )(x − xn )2 , 2 que corresponde a uma aproxima¸˜o de φ pelo seu desenvolvimento em s´rie de Taylor (de ca e segunda ordem). 2.6.3 M´todo de Newton no caso de zeros m´ltiplos e u Defini¸˜o 2.4 Dizemos que uma fun¸ao f tem um zero z de multiplicidade p > 1 se ca c˜ existir uma fun¸ao h cont´nua em z tal que h(z) = 0 e que c˜ ı f (x) = (x − z)p h(x). Se h ∈ C p (Vz ) ent˜o isto significa que a f (z) = f (z) = . . . = f (p−1) (z) = 0, f (p) (z) = 0. O facto de, para zeros m´ ltiplos, se ter f (z) = 0 coloca algumas quest˜es relativamente u o ` aplicabilidade do m´todo de Newton. No entanto, podemos ver que mesmo nesse caso o a e m´todo apresenta convergˆncia local, embora j´ n˜o seja de ordem quadr´tica. e e a a a Com efeito, calculando f (x) = (x − z)p h (x) + p(x − z)p−1 h(x), 67 e considerando g(x) = x − C f (x) (x − z)p h(x) (x − z)h(x) = x−C = x−C , p h (x) + p(x − z)p−1 h(x) f (x) (x − z) (x − z)h (x) + ph(x) temos a fun¸˜o iteradora do m´todo de Newton apenas quando C = 1. ca e Calculando a derivada, obtemos facilmente g (z) = 1 − C . Ou seja, de acordo com p os teoremas que vimos, acerca da convergˆncia do m´todo do ponto fixo, quando p > 1, e e podemos ainda assegurar convergˆncia local para o m´todo de Newton usual (C = 1), e e 1 porque 0 < g (z) = 1 − p < 1, mas a ordem de convergˆncia ser´ linear e n˜o quadr´tica. e a a a Uma pequena modifica¸˜o no m´todo de Newton, usando C = p, ou seja, ca e xn+1 = xn − p f (xn ) f (xn ) (2.26) permite reobter a convergˆncia quadr´tica, pois neste caso g (z) = 0. No entanto, h´ que e a a salientar que isto pressup˜e que saibamos ` partida p, a multiplicidade do zero que preo a tendemos aproximar (esse conhecimento pode ser obtido atrav´s de resultados te´ricos). e o Exerc´ ıcio 2.3 Mostre que, caso haja ra´zes m´ltiplas, se aplicar o m´todo de Newton a ı u e ` f (x) e e fun¸ao F (x) = f (x) obt´m um m´todo de ordem 2. c˜ Resolu¸˜o: Nesse caso temos ca F (x) = f (x) h(x) = (x − z) = (x − z)H(x) f (x) (x − z)h (x) + p h(x) 1 que tem um zero simples, pois H(z) = p = 0. Isto significa que o m´todo de Newton aplicado e a F (x) converge quadraticamente. Por outro lado, como F (x) = 1 − f (x)f (x) , o m´todo de Newton aplicado a F pode escrevere f (x)2 se na forma: xn+1 = xn − f (xn ) f (xn )2 f(xn )f (xn ) = xn − . 2 − f (x )f (x ) f (xn ) f (xn ) f (xn )f (xn ) − f (xn )f (xn ) n n (2.27) Iremos apresentar uma f´rmula semelhante (n˜o igual... aparecem coeficientes 2), em (2.30) o a para um m´todo de ordem 3, que pode ser usado em conjun¸ao com este, no caso de ser e c˜ desconhecida a natureza das ra´zes. ı 2.6.4 M´todo da Secante e Sendo muito semelhante ao m´todo de Newton, o m´todo da secante (tamb´m designado e e e falsa posi¸˜o, por alguns autores, que atribuem o nome falsa posi¸˜o cl´ssico ao que vimos ca ca a anteriormente) substitui o c´lculo das derivadas pelo c´lculo de uma raz˜o incremental. a a a Geometricamente, corresponde a substituir o papel da recta tangente, no m´todo de Newe ton, por uma recta secante (de onde vem o nome). ´ E claro que isto significa que vamos precisar sempre de dois pontos para determinar essa recta secante, o que implica que tenhamos que considerar duas iteradas iniciais, que 68 designaremos por x−1 e x0 . Mas notamos que a partir da´ em cada itera¸˜o, o c´lculo da ı, ca a fun¸˜o ´ efectuado apenas uma vez. ca e De forma semelhante ` que fizemos no m´todo de Newton, calculando agora o ponto de a e intersec¸˜o da secante com o eixo das abcissas, obtemos a f´rmula para xn+1 , e o m´todo ca o e da secante resume-se no esquema Iteradas iniciais : x−1 , x0 Iterar xn+1 = xn − f(xn ) f (xxn −xn−1 ) . n )−f (xn−1 (2.28) ca garantindo que f (xn ) = f (xn−1 ), o que pode ser assegurado imediatamente se a fun¸˜o for injectiva16 . Exemplo 2.9 Consideramos a fun¸ao f (x) = |3 cos(2x)| − x3 + 2, que n˜o ´ diferenci´vel, c˜ a e a e come¸amos com x−1 = −2, x0 = −1.5. Na figura seguinte podemos ver graficamente a c evolu¸ao das itera¸oes, x1 = −0.346, x2 = 0.910, x3 = 1.97, e quando atingimos x10 = c˜ c˜ 1.69876, j´ todos os d´gitos apresentados s˜o correctos. a ı a 10 5 -4 x-2 x0 -1 -5 -10 2 4 Neste exemplo, a fun¸ao considerada apresentava descontinuidades na derivada, mas podec˜ ria ser calculada seccionalmente, pelo que a n˜o diferenciabilidade da fun¸ao n˜o ´ a raz˜o a c˜ a e a de utilizar o m´todo da secante ao inv´s do m´todo de Newton. O principal problema na e e e ´ maioria das vezes ´ a dificuldade de calcular a derivada. E claro que se poder´ sempre e a pensar em aproxim´-la usando uma raz˜o incremental, mas esse artif´cio ser´ mais moroso a a ı a do que aplicar directamente o m´todo da secante. e ´ e Proposi¸˜o 2.6 (condi¸˜o suficiente de convergˆncia) E idˆntica a enunciada para o m´todo ca ca e ` e de Newton, apenas a hip´tese 4a) dever´ ser substitu´da por o a ı 4a’ ) f (x0 )f (x) ≥ 0 e f(x−1 )f (x) ≥ 0 para qualquer x ∈ [a, b]. • F´rmula de Erro o Usando os mesmos argumentos que levaram ` determina¸˜o da f´rmula de erro (2.6) a ca o para o m´todo da falsa-posi¸˜o, ou reparando que no caso do m´todo da secante podemos e ca e substituir os valores an e bn por xn e xn−1 , obtemos en+1 = − 16 1 f (ξn ) en en−1 2 f (ηn ) (2.29) Conv´m referir que s´ poderemos ter xn+1 = xn se f(xn ) = 0 ou se xn = xn−1 . Se f (xn ) = 0 e o isso significa que encontr´mos uma raiz, e a condi¸ao xn = xn−1 nunca se verifica porque como ´ obvio a c˜ e´ escolhemos inicialmente x−1 = x0 . 69 com ξn , ηn ∈]xn−1 ; z; xn [. A f´rmula (2.29) permite obter a estimativa o |en+1 | ≤ K |en | |en−1 | em que o K ´ o mesmo que o do m´todo de Newton, ou seja, K = 1 minx∈[a,b] |f (x)| . Esta e e 2 x∈[a,b] estimativa pode ser convertida numa estimativa a priori por recursividade. Para esse efeito, devemos considerar a equa¸˜o `s diferen¸as un+1 = un + un−1 + k, chamada sucess˜o de ca a c a Fibonacci, em que un = log |en |, k = log(K). (Devemos ter em mente que ao escrever a equa¸˜o estamos a evitar a desigualdade, j´ que tratamos com a majora¸˜o un+1 ≤ ca a ca un + un−1 + k). Esta equa¸˜o `s diferen¸as17 tem como solu¸˜o geral ca a c ca 1 un = −C1 ( )n − C2 ρn − k, ρ em que ρ ´ o ‘n´ mero de ouro’ 1+2 5 = 1.61803... (raiz dominante da equa¸˜o x2 = x + 1) e e u ca em que as constantes C1 , C2 podem ser obtidas a partir de u0 = log |e0 | e de u−1 = log |e−1 |, resolvendo um sistema, cuja solu¸˜o ´ ca e C1 = 1 log(|e0 |K) − log(|e−1 |K), C2 = log(|e−1 |K) − ρ log(|e0 |K). ρ √ max |f (x)| Daqui podemos obter a estimativa a priori 1 1 −C2 ρn |en | ≤ exp(−C1 ( )n + −C2 ρn − k) ≈ e , ρ K ou ainda, aproximadamente 1 |en | ≤ K (|e0 |K)ρ |e−1 |K ρn . Observa¸˜o 1 (ordem de convergˆncia). ca e Atrav´s da express˜o de un podemos mesmo concluir que a ordem de convergˆncia ´ e a e e supralinear, igual ao n´ mero de ouro ρ = 1.61803.... u Com efeito, reparamos que log( |en+1 | ) = log |en+1 | − ρ log |en | = un+1 − ρun , |en |ρ e que un+1 − ρun = C1 ( 1 )n+1 (1 − ρ2 ) + (ρ − 1)k → (ρ − 1)k. Como o valor de k = log(K) ρ resulta de uma majora¸˜o, n˜o podemos concluir que K∞ = exp((ρ − 1)k) = K ρ−1 , mas ca a pode verificar-se (cf.[1]) que ρ−1 |f (z)| K∞ = . 2|f (z)| 17 Ver Anexo sobre Equa¸˜es `s Diferen¸as. co a c 70 Observa¸˜o 2 (tempo de c´lculo). ca a Como j´ referimos, o m´todo da secante envolve apenas o c´lculo de f uma vez, em a e a cada itera¸˜o, por isso (negligenciando as opera¸˜es elementares), ca co T = n tf . Se compararmos o tempo de c´lculo relativamente ao m´todo de Newton, para obter um a e mesmo majorante de erro ε, j´ vimos em (2.3), assumindo constantes semelhantes, que a TN = log ρ tf + tf tf TS = 0.6942(1 + )TS log 2 tf tf pelo que podemos concluir que o m´todo de Newton ser´ mais eficaz se o tempo de c´lculo e a a da derivada verificar tf tf 0.6942(1 + ) < 1 ⇔ < 0.4405, tf tf ou seja, ser´ conveniente que o c´lculo da derivada demore menos que metade do tempo do a a c´lculo de f, o que normalmente nem acontece!... No entanto, a melhor precis˜o do m´todo a a e 18 de Newton num menor n´mero de itera¸˜es ´ considerada preferencialmente . u co e Observa¸˜o 3 (outras modifica¸oes do m´todo de Newton). ca c˜ e Como j´ foi referido, uma outra possibilidade para evitar o c´lculo da derivada no a a m´todo de Newton consiste em considerar um ε suficientemente pequeno e efectuar e f (xn ) ≈ f (xn + ε) − f(xn ) f (xn )ε , e portanto xn+1 = xn − , ε f(xn + ε) − f (xn ) o que ´ muitas vezes designado por m´todo de Newton modificado. No entanto, isto implica e e o c´lculo adicional de f (xn + ε), o que implica T = 2n tf , e facilmente ´ vis´ uma maior a e ıvel morosidade face ao m´todo da secante. Para al´m disso, quando a diferen¸a entre as e e c itera¸˜es for menor que ε, j´ deixa de fazer sentido esta aproxima¸˜o da derivada. co a ca Um m´todo que tem convergˆncia quadr´tica, e que pode ser visto como uma variante e e a do m´todo de Newton, ´ o m´todo de Steffenson, quando aplicado a g(x) = f (x) + x. Nesse e e e caso a f´rmula (2.19) fica o xn+1 = xn − f (xn)2 , f (xn + f (xn )) − f (xn ) reparando que isso consiste em considerar ε igual ao valor f (xn ), que ser´ cada vez mais a pequeno, quando nos aproximamos da raiz. O m´todo de Steffenson implica tamb´m o e e c´lculo adicional de f em xn +f (xn ). A condi¸˜o para a convergˆncia quadr´tica do m´todo a ca e a e de Steffenson, sendo 1 = g (z) = f (z) + 1, ´ equivalente a f (z) = 0, ou seja a condi¸˜o do e ca m´todo de Newton. e Refira-se que o Mathematica aplica o m´todo de Newton na rotina FindRoot se for apenas dado e um valor inicial. Caso sejam dados dois valores iniciais, aplicar´ o m´todo da secante (sintaxe a e FindRoot[f[x]==0,{x,{x−1 ,x0 }}]). 18 71 Esta classe de variantes do m´todo de Newton ´ muitas vezes designada por m´todos e e e quasi-Newton. • Tal como no caso do m´todo de Newton, estes m´todos podem ser aplicados ` pesquisa e e a de m´ ınimos de fun¸˜es, quando aplicados ` derivada da fun¸˜o, tendo a vantagem de n˜o co a ca a necessitar do c´lculo da segunda derivada. a 2.6.5 M´todos de ordem superior e Podemos obter facilmente m´todos com convergˆncia de ordem superior (usando intere e pola¸˜o de Hermite), tal como se mostra no lema seguinte. O processo consiste em generca alizar a ideia do m´todo de Newton de aproximar a fun¸˜o em xn pela recta tangente. A e ca generaliza¸˜o passa por aproximar a fun¸˜o por uma par´bola tangente, por um polin´mio ca ca a o de 3o grau tangente, etc... N˜o ´ necess´rio restringirmo-nos a polin´mios. Por exemplo, um m´todo de ordem a e a o e c´ bica ´ u e xn+1 = xn − 2f (xn )f (xn ) , 2f (xn )2 − f (xn )f (xn ) (2.30) onde a fun¸˜o f ´ aproximada por uma hip´rbole da forma r(x) = ax+b . ca e e cx+1 A aproxima¸˜o por par´bolas pode trazer o inconveniente de que essa par´bola n˜o ca a a a tenha zeros reais. O m´todo poder´ ser adequado se nos dispusermos a trabalhar com e a n´meros complexos. Uma maneira de evitar esse problema, ´ considerar a aproxima¸˜o u e ca local por uma par´bola invertida, o que nos leva ao m´todo, a e xn+1 = xn − f (xn ) f (xn )2 f (xn ) − f (xn ) 2f (xn )3 (2.31) que tamb´m tem convergˆncia local c´ bica. e e u Como curiosidade, apresentamos um outro m´todo usando uma aproxima¸˜o com fun¸˜es e ca co racionais do tipo cx2ax+b , que apresenta convergˆncia local de ordem 4, e +dx+1 xn+1 = xn − 6f (xn )f (xn )2 − 3f(xn )2 f (xn ) . 6f (xn )3 − 6f (xn )f (xn )f (xn ) + f (xn )2 f (xn ) (2.32) Estes m´todos raramente s˜o considerados. Como j´ se referiu, os m´todos de ordem e a a e superior raramente compensam o n´ mero de opera¸˜es envolvidas. Se o c´lculo de uma u co a derivada j´ pode ser restritivo, o c´lculo de um maior n´mero de derivadas ainda piora a a u a situa¸˜o! No entanto, poder´ haver algum interesse quando aplicados a fun¸˜es cuja ca a co express˜o da derivada seja extremamente simples, como a soma de polin´mios com expoa o nenciais. Em termos de tempo de c´lculo, basta ver que uma itera¸˜o de um m´todo de a ca e ordem 4 pode ser compensada atrav´s de duas itera¸˜es de um m´todo com convergˆncia e co e e quadr´tica mais simples (como o m´todo de Newton)... basta reparar que log(4)/ log(2) = 2. a e Ou seja, considerar a fun¸˜o iteradora do m´todo de Newton composta com ela pr´pria, ca e o o que corresponde a efectuar duas itera¸˜es, fornece-nos um m´todo de ordem 4. Como co e j´ referimos, esta caracter´ a ıstica ´ particular dos m´todos supralineares, e n˜o se aplica aos e e a 72 m´todos lineares, j´ que aplicar duas vezes um m´todo linear apenas permite diminuir o e a e seu coeficiente assimpt´tico, n˜o passamos para uma ordem superior. o a De qualquer forma, podemos enunciar um resultado razoavelmente geral, que permitir´ a obter m´todos de ordem superior, em termos de um lema. e Lema 2.2 Seja r uma fun¸ao de interpola¸ao para f tal que c˜ c˜ r(xn ) = f (xn ), r (xn ) = f (xn ), ..., r(p−1) (xn ) = f (p−1) (xn ) ent˜o o m´todo, que consiste em atribuir xn+1 ao valor tal que r(xn+1 ) = 0, tem pelo menos a e ordem de convergˆncia p. e Demonstra¸˜o: ca Basta reparar que da expans˜o de Taylor, a (f − r)(p−1) (xn ) (f − r)(p) (ξn ) p−1 (en ) + (en )p , (f − r)(z) = (f − r)(xn ) + (f − r) (xn )en + ... + (p − 1)! p! com en = z − xn , e resulta (por hip´tese) o −r(z) = (f − r)(p) (ξn ) (en )p . p! Como r(xn+1 ) = 0, aplicando o teorema de Lagrange obtemos −r (ηn)en+1 = r(xn+1 ) − r(z) = (f − r)(p) (ξn ) p en+1 (f − r)(p) (ξn ) en ⇒ p = − . p! en p! r (ηn ) • Este lema foi aplicado para obter os m´todos apresentados anteriormente. e ax+b ax+b Consider´mos r(x) = cx+1 , r(x) = cx2 +dx+1 (para (2.30), (2.32) ), e ainda r−1 (y) = a 2 ay + by + c... usando interpola¸˜o inversa (para (2.31) ). ca Observa¸˜o 1 (extens˜es do m´todo da secante). ca o e Da mesma maneira que ´ poss´ efectuar extens˜es para o m´todo de Newton, tamb´m e ıvel o e e ´ poss´ pensar de forma semelhante para o m´todo da secante. Uma poss´ generale ıvel e ıvel iza¸˜o do m´todo da secante ´ o m´todo de M¨ller, que consiste em considerar 3 valores ca e e e u iniciais, x−2 , x−1 , x0 e fazer uma interpola¸˜o atrav´s de uma par´bola (ao inv´s de uma ca e a e recta). A aproxima¸˜o x1 ´ dada encontrando a raiz da par´bola que estiver mais pr´xima ca e a o de x0 e assim sucessivamente. Neste caso pode surgir o problema de n˜o existirem ra´ a ızes reais, mas o m´todo pode ser adequado para encontrar ra´ complexas. e ızes Como curiosidade, a ordem de convergˆncia do m´todo de M¨ller ´ p = 1.83929... que e e u e 3 2 ´ a raiz dominante da equa¸˜o x = x + x + 1. Outras poss´ e ca ıveis generaliza¸˜es, usando co uma interpola¸˜o com curvas de grau m superior a 2 levariam a ordens de convergˆncia pm ca e m+1 m superiores, iguais ao valor da raiz dominante das equa¸˜es x co = x + ... + x + 1. 73 No entanto, ´ f´cil verificar que seriam sempre inferiores ` convergˆncia quadr´tica (com e a a e a efeito obtemos p1 = 1.61803, p2 = 1.83929, p3 = 1.92756, p4 = 1.96595, etc... mas sempre pm < 2, como podemos concluir facilmente pelo teorema 2.12). Observa¸˜o 2 ca O m´todo apresentado em (2.30) apresenta uma solu¸˜o diferente para contornar a e ca dificuldade com fun¸˜es iteradoras g cont´ co ınuas. Se repararmos na express˜o de g(xn ) dada a por xn+1 em (2.30), verificamos que quando f (xn ) = 0 a fun¸˜o g n˜o explode (a menos ca a que tamb´m tenhamos f (xn ) = 0), pelo contr´rio, quando isso acontece temos um ponto e a fixo! Vejamos a diferen¸a para a fun¸˜o f(x) = x3 − 5 cos(x) + 4, representado no gr´fico c ca a em baixo, ` esquerda, e onde est˜o assinalados os trˆs zeros da fun¸˜o. Na figura central, a a e ca representamos a fun¸˜o iteradora g obtida pelo m´todo de Newton, e os respectivos trˆs ca e e pontos fixos (onde ´ v´ e ısivel que g se anula). Repare-se que as ass´ ımptotas verticais separam os pontos fixos (como j´ foi referido, ´ uma consequˆncia do teorema de Rolle), quebrando a e e a continuidade de g e permitindo encontrar todas os pontos fixos. Na figura da direita, representamos a fun¸˜o g dada por (2.30). Surpreendentemente, a fun¸˜o g ´ cont´ ca ca e ınua, e no entanto ´ poss´ encontrar tamb´m todos os pontos fixos que nos interessam, corree ıvel e spondentes, `s ra´ a ızes de f. A solu¸˜o engenhosa (e n˜o propositada) resulta de que nos ca a outros dois pontos fixos a derivada ´ maior que 1 em m´dulo, e portanto o m´todo nunca e o e ir´ convergir para esses valores, sendo atra´ apenas para os pontos fixos para os quais g e a ıdo ´ g s˜o nulas... as ra´ de f. E claro que isto necessita de justifica¸˜o, que pode ficar como a ızes ca exerc´ ıcio, mas ilustra bem uma outra possibilidade para encontrar ra´ consecutivas. ızes 2 2 1 4 1 2 2 1 1 2 1 2 2 1 2 1 2 2 1 1 2 1 4 2 3 Como curiosidade adicional, come¸ando com x0 = 1, obtemos x4 = 0.576574... pelo m´todo c e de Newton, com todos os d´ ıgitos correctos e o mesmo valor em x3 , usando o m´todo e (2.30), que tem convergˆncia c´bica. O mesmo se ir´ passar para encontrar as restantes e u a ra´ ızes, verificando-se que a diferen¸a entre os dois m´todos se cifra em apenas uma ou c e duas itera¸˜es... com um menor n´ mero de opera¸˜es efectuado pelo m´todo de Newton. co u co e Relembre-se que o m´todo (2.27), para zeros m´ ltiplos, ´ bastante semelhante a (2.30)... e u e apenas difere em factores multiplicados por 2, e resultava de aplicar Newton a uma nova fun¸˜o f , o que basicamente equivale em termos de c´lculo a efectuar duas vezes Newton. ca f a 74 2.7 M´todos para Equa¸oes Alg´bricas e c˜ e pm (x) = a0 + a1 x + . . . + am xm = 0. Vamos agora ver em particular as equa¸˜es alg´bricas, isto ´, equa¸˜es da forma: co e e co Se os coeficientes do polin´mio forem n´meros inteiros, `s ra´ dessas equa¸˜es chamamos o u a ızes co 4 n´meros alg´bricos. Por exemplo, u e 3/2 ´ um n´ mero alg´brico, porque ´ solu¸˜o de e u e e ca 2x4 − 3 = 0. Nem todos os n´meros reais s˜o alg´bricos (aos n´meros n˜o-alg´bricos, u a e u a e chamamos transcendentes)! Isto n˜o ´ uma quest˜o trivial, e s´ foi esclarecida no final a e a o do s´c. XIX. O facto de Hermite ter demonstrado que e n˜o era alg´brico, permitiu a e a e Lindemann provar que π tamb´m n˜o era (gra¸as ` f´rmula de Euler, eiπ + 1 = 0, os e a c a o n´meros π e e est˜o relacionados). Resolveu-se assim um dos problemas mais antigos da u a geometria — a impossibilidade da quadratura do c´ ırculo (ou seja, ´ imposs´ e ıvel, atrav´s de e regra e compasso, encontrar um quadrado com ´rea igual ` de um c´ a a ırculo). e ı u e Exerc´ ıcio 2.4 Mostre que ´ imposs´vel aproximar um n´mero transcendente atrav´s do m´todo do ponto fixo se a fun¸ao iteradora for uma fun¸ao racional com coeficientes racionais e c˜ c˜ (ou seja, se g(x) = p(x) , em que p, q s˜o polin´mios com coeficientes racionais). a o q(x) Resolu¸˜o: Basta reparar que se z = p(z) ent˜o z verifica zq(z) − p(z) = 0, ou seja, z ´ ca a e q(z) solu¸ao de uma equa¸ao alg´brica, e portanto nunca poder´ ser um n´mero transcendente! c˜ c˜ e a u Recordamos o resultado fundamental acerca das ra´ de polin´mios, devido a Gauss19 . ızes o ´ Teorema 2.11 (Fundamental da Algebra). Uma equa¸ao alg´brica de grau m: c˜ e pm (x) = c0 + c1 x + . . . + cm xm = 0, (c0 , c1 , ..., cm ∈ C, cm = 0) admite exactamente m ra´zes complexas (contando com a ordem de multiplicidade). ı Demonstra¸˜o: ca Usando o Teorema de Liouville: ‘uma fun¸ao anal´tica em C que seja limitada ´ conc˜ ı e o a stante’, provamos que um polin´mio n˜o constante tem um zero em C. Se, por absurdo, pm (x) = 0, ∀x ∈ C, ent˜o f (x) = pm1(x) seria uma fun¸˜o inteira limitada (porque f (x) seria a ca cont´ ınua num compacto, portanto limitada, e fora desse compacto lim|x|→∞ f (x) = 0), logo a e pelo Teorema de Liouville seria constante. Ora, como pm n˜o ´ constante, chegamos a uma contradi¸˜o. ca Portanto, seja zm uma raiz de pm . Pela regra de Ruffini, pm (x) = pm−1 (x)(x − zm ), e assim sucessivamente, at´ que p1 (x) = p0 (x)(x − z1 ) e p0 ´ um polin´mio de grau 0, ou seja, e e o uma constante. Logo, z1 , . . . , zm s˜o as m ra´ de pm . a ızes Repare-se que nada h´ de trivial neste resultado! No s´c. XVIII n˜o seria claro que fosse sempre a e a poss´ escrever ıvel p(x) = an (x − z1 )...(x − zn ) em que z1 , ..., zn eram n´meros complexos. Ali´s, se n˜o era poss´ u a a ıvel com os reais, n˜o havia garantias a de o ser com os complexos... e ainda havia a suspeita (depois confirmada) da inexistˆncia de f´rmulas e o resolventes para equa¸˜es polinomiais em geral. co 19 75 Observa¸oes: c˜ (i) Se o polin´mio tiver coeficientes reais, ent˜o se z for uma raiz complexa, o conjugado o a z tamb´m ser´ raiz, com a mesma multiplicidade. ¯ e a (ii) Se os coeficientes forem reais e m for impar, o polin´mio tem pelo menos um raiz o real. Vamos agora ver um crit´rio bastante simples que, atrav´s de um c´lculo imediato nos e e a coeficientes, permite determinar uma bola no plano complexo que cont´m todas as ra´ e ızes do polin´mio. o Teorema 2.12 Se zk ´ raiz de pm (x) = c0 + c1 x + ... + cm xm = 0, com ci ∈ C, cm = 0, e temos |zk | < 1 + com M = max{|c0 |, . . . , |cm−1 |} Demonstra¸˜o: ca Seja |x| ≥ 1 + M/|cm |, temos: |pm (x)| ≥ |cm | |x|m − (|c0 | + |c1 | |x| + . . . + |cm | |x|m−1 ) ≥ ≥ |cm | |x|m − M (1 + |x| + . . . + |x|m−1 ) = |cm | |x|m − M ( |x|m − 1 M ) > (|cm | − )|x|m |x| − 1 |x| − 1 M |cm | (2.33) M M como |cm | ≥ |x|−1 ⇔ |x| ≥ 1 + |cm | , temos |pm (x)| > 0, o que significa que pm (x) = 0 M s´ no caso de |x| ≥ 1 + |cm | n˜o se verificar. Portanto as ra´ o a ızes est˜o localizadas para a M |x| < 1 + |cm | . ˜ Exerc´ ıcio 2.5 Seja a = 0 e M = max{|a1 |, . . . , |am |}. Mostre que toda a raiz zk da equa¸ao c˜ p(x) = a0 + a1 x + . . . + am xm = 0 verifica |zk | > (1 + ˜ M −1 ) |a0 | Consideremos agora polin´mios de coeficientes reais. Analisando o sinal desses coefio cientes ´ poss´ retirar alguma informa¸˜o acerca da localiza¸˜o das ra´ e ıvel ca ca ızes. Defini¸˜o 2.5 Chamamos n´mero m´ ca u ınimo de varia¸˜es de sinal de uma lista de n´meros, co u La = (a0 , a1 , . . . , am ), ao n´mero de varia¸oes de sinal que ocorre nessa ordem, excluindo os zeros. Esse n´mero u c˜ u − ´ designado por va . Chamamos n´ mero m´ximo de varia¸˜es de sinal dessa lista quando e u a co os zeros s˜o substitu´dos por valores positivos ou negativos, por forma a obter um n´mero a ı u + m´ximo de varia¸oes de sinal. Esse n´mero ´ designado por va . a c˜ u e 76 Exemplo 2.10 Consideremos a lista (−2, 3, 0, 0, 1, 0, 0, 0). O n´mero m´nimo de varia¸oes u ı c˜ − de sinal ser´ dado pelas varia¸oes em −2, 3, 1, isto ´, apenas ocorre uma varia¸ao (v = 1). a c˜ e c˜ Um n´mero m´ximo de varia¸oes de sinal ocorre, por exemplo, se escolhermos −2, 3, −, +, 1, −, +, −, u a c˜ com 6 varia¸oes (v + = 6). c˜ Teorema 2.13 (Budan-Fourier). Seja [a, b] ⊆ R e p(x) um polin´mio de coeficientes reais, o onde consideramos as listas La = p(a), p (a), . . . , p(m) (a) Lb = p(b), p (b), . . . , p(m) (b) . + − O n´mero de zeros em [a, b] ´ igual a va − vb − 2k, para um certo k ∈ N0 . u e Demonstra¸˜o: Est´ fora do ˆmbito do curso (consultar por exemplo [19]). ca a a Exerc´ ıcio 2.6 Baseado no teorema de Budan-Fourier, mostre a regra de Descartes: ”A diferen¸a entre o n´ mero m´ c u ınimo de varia¸˜es de sinal e o n´ mero de zeros positivos de um co u polin´mio ´ um n´ mero maior ou igual a zero e que ´ par ”. o e u e ı Exemplo 2.11 Consideremos p(x) = x5 − 3x + 1 = 0. Pela regra de Descartes conclu´mos imediatamente que ou n˜o h´ ra´zes reais positivas ou h´ apenas duas, e da mesma maneira, a a ı a considerando p(−x) = −x5 + 3x + 1 conclu´mos que h´ uma unica raiz negativa. ı a ´ Como as ra´zes pertencem a bola {|x| < 1 + 3/1 = 4}, vamos analisar onde se situam ı ` as ra´zes, considerando como extremos dos intervalos −4, −1, 0, 1, 4 : ı -4 -1 0 1 4 5 x − 3x + 1 = p(x) - + + - + 5x4 − 6 = p (x) + - - - + 20x3 = p (x) - - 0 + + 60x2 = p (x) + + 0 + + 120x = p(4) (x) - - 0 + + 120 = p(5) (x) + + + + + − va 5 4 2 1 0 + va 5 4 4 1 0 + − va − vb — 0 1 2 0 − + Como v−4 − v−1 = 1 conclu´mos que em [−4, −1] h´ uma e uma s´ raiz, que ´ a raiz ı a o e − + − + ı negativa. Por outro lado, de v0 − v1 = 1, e de v1 − v4 = 1, conclu´mos que em [0, 1] existe uma unica raiz e em [1, 4] uma outra. Podemos usar a pr´pria tabela para inspeccionar ´ o se as condi¸oes suficientes que estabelecemos para a convergˆncia do m´todo de Newton c˜ e e s˜o verificadas. Por exemplo, ´ f´cil verificar que isso acontece no intervalo [0, 1], nos a e a outros intervalos [−4, −1] e [1, 4] h´ uma varia¸ao de sinal da derivada que requeria uma a c˜ subdivis˜o. a Aplicando os m´todos estudados anteriormente, n˜o ´ dificil aproximar as ra´zes reais e a e ı −1.38879..., 0.334734..., 1.21465... (Veremos num pr´ximo par´grafo generaliza¸oes de m´todos do ponto fixo (p. ex: o a c˜ e Newton) que permitem aproximar as duas ra´zes complexas conjugadas −0.0802951... ± ı 1.32836...i.) 77 Observa¸˜o: (Esquema de H¨rner) ca o Ao efectuar o c´lculo do polin´mio, se o fizermos seguindo a forma can´nica reparamos a o o que isso corresponde a efectuar pelo menos 2m − 1 multiplica¸˜es e m adi¸˜es. O n´mero co co u de multiplica¸˜es pode ser reduzido a m se efectuarmos o c´lculo segundo o esquema de co a H¨rner: o pm (x) = (...((am x + am−1 )x + am−2 )x + ... + a1 )x + a0 que corresponde a considerar bm (x) = am e fazer bk (x) = ak + x bk+1 (x), para k = m − 1, ..., 0, tendo-se b0 (x) = pm (x). Definindo pm−1 (x) = b1 (y) + b2 (y)x + ... + bm (y)xm−1 , reparamos que b0 (y) + (x − y)pm−1 (y) = b0 (y) + (x − y)(b1 (y) + b2 (y)x + ... + bm (y)xm−1 ) = = b0 (y) − yb1 (y) + (b1 (y) − yb2 (y))x + ... + (bm−1 (y) − ybm (y))xm−1 + bm (y)xm = pm (x) porque temos bk (y)−y bk+1 (y) = ak . Ou seja, mostr´mos que pm (x) = b0 (y)+(x−y)pm−1 (x). a O esquema de H¨rner permite ainda obter a derivada de pm pois pm (x) = pm−1 (x) + o (x − y)pm−1 (x) ⇒ pm (y) = pm−1 (y). Isto pode ser util ao efectuar o m´todo de Newton, ´ e considerando y = xn (pode ser assim evitada a deriva¸˜o alg´brica). ca e Se y = z for um zero de pm ent˜o b0 (z) = 0 e pm−1 (x) ´ o polin´mio que resulta da a e o divis˜o por x − z e pode ser usado para calcular as restantes ra´ a ızes. Ou seja, neste caso, o processo de supress˜o de zeros (que aqui ´ designado por defla¸ao) para encontrar novas a e c˜ ra´ ´ efectuado algebricamente, de forma imediata. Esta defla¸˜o, sendo efectuada com ızes e ca os erros inerentes ` aproxima¸˜o da raiz, pode acumular alguns erros que podem ser menores a ca se for iniciada na raiz dominante. • M´todos mais eficazes para encontrar ra´ de polin´mios foram base de investiga¸˜o e ızes o ca intensa num passado recente, e escapam a um curso introdut´rio. O Mathematica usa na o rotina NSolve um m´todo em v´rias etapas devido a Jenkins e Traub (1970). e a 2.7.1 M´todo de Bernoulli e Apresentamos de seguida um m´todo espec´ e ıfico para aproximar ra´ reais de polin´mios ızes o — o denominado m´todo de Bernoulli. O interesse deste m´todo ´ essencialmente te´rico, e e e o e pode visto como um caso particular do m´todo das potˆncias, de que falaremos num e e cap´ ıtulo posterior, a prop´sito da determina¸˜o de valores pr´prios de matrizes. Refira-se o ca o que um dos m´todos para encontrar ra´ de polin´mios ´ encontrar os valores pr´prios da e ızes o e o matriz companheira, como veremos nesse cap´ ıtulo. A n´ de implementa¸˜o, o m´todo de Bernoulli caracteriza-se por reduzir o c´lculo de ıvel ca e a itera¸˜es a somas, subtrac¸˜es ou multiplica¸˜es, evitando o c´lculo de divis˜es ao m´ximo co co co a o a — s´ uma divis˜o final ´ necess´ria. O m´todo converge quando h´ uma raiz real dominante o a e a e a ca a z1 . Tendo determinado z1 e efectuando um processo de defla¸˜o ou supress˜o de zeros, poderemos tentar obter as restantes, desde que sejam sucessivamente reais e dominantes, ou seja bastar´ que |z1 | > |z2 | > ... > |zm |. a 78 A convergˆncia do m´todo ´ linear, mas como o coeficiente assimpt´tico ser´ z2 , se a e e e o a z1 segunda maior raiz z2 for em m´dulo pr´xima do m´dulo da dominante z1 , a convergˆncia o o o e poder´ ser muito lenta. a Consideremos a equa¸˜o alg´brica ca e P (x) = a0 + a1 x + . . . + am−1 xm−1 − xm = 0, e supomos que existe uma raiz dominante z1 , ou seja, |z1 | > |z2 | ≥ . . . ≥ |zm |. ` A equa¸˜o alg´brica associamos a equa¸ao as diferen¸as20 : ca e c˜ ` c a0 xn + a1 xn+1 . . . + am−1 xn+m−1 − xn+m = 0, definindo um processo iterativo, designado por m´todo de Bernoulli, e Iteradas iniciais: x0 = . . . = xm−2 = 0; xm−1 = 1, Iterar: xn+m = a0 xn + a1 xn+1 . . . + am−1 xn+m−1 . que permite obter a raiz dominante z1 atrav´s do limite21 e xn+1 lim = z1 . n→∞ xn A sucess˜o (xn ) ´ definida recursivamente, atrav´s da equa¸˜o `s diferen¸as, e sabe-se a e e ca a c que no caso em que o polin´mio tem ra´ distintas z1 , . . . , zm , os valores da sucess˜o s˜o o ızes a a dados por n n xn = C1 z1 + . . . + Cm zm para certas constantes C1 , . . . , Cp n˜o todas nulas (determinadas a partir dos valores das a iteradas iniciais). Devemos escolher os valores iniciais de forma a que C1 = 0. Como |z1 | > |z2 | ≥ . . . ≥ |zm |, temos: n+1 n+1 C1 + C2 ( z2 )n+1 + . . . + Cm ( zm )n+1 C1 z1 + . . . + Cm zm xn+1 z1 z1 = = z1 → z1 . n n xn C1 z1 + . . . + Cm zm C1 + C2 ( z2 )n + . . . + Cm ( zm )n z1 z1 (2.34) (2.35) Verifica-se que xn+1 xn = z1 + O( z2 z1 n ), ou seja n xn+1 z2 |en | = |z1 − |≤C xn z1 , o que indicia a convergˆncia linear do m´todo. A rapidez de convergˆncia ser´ maior se e e e a |z2 | a raz˜o |z1 | for pequena (raz˜o que corresponde ao factor assimpt´tico de convergˆncia). a a o e Uma an´lise mais rigorosa da convergˆncia deste m´todo pode ser vista quando falarmos a e e no m´todo das potˆncias para a determina¸˜o de valores pr´prios, do qual este ser´ um e e ca o a caso particular. Ver Anexo acerca das Equa¸˜es `s Diferen¸as. co a c Podem ser escolhidas outras iteradas iniciais. A unica condi¸ao a verificar ´ que o coeficiente C1 (que ´ c˜ e iremos considerar de seguida, obtido pela resolu¸ao da equa¸ao as diferen¸as) n˜o seja nulo! c˜ c˜ ` c a 21 20 79 Exemplo 2.12 Encontrar a raiz dominante de x5 − 3x + 1 = 0. Come¸ando com x0 = . . . = x3 = 0, x4 = 1, iteramos c xn+5 = 3xn+1 − xn e ao fim de algumas itera¸oes, calculando yn = c˜ y100 = − xn , xn−1 obtemos: 44971518385729 = −1.41198..., y150 = −1.3908..., y200 = −1.3889... 31849964584089 Apesar de precisarmos de 200 itera¸oes para obter um valor razoavelmente pr´ximo da raiz c˜ o −1.38879..., notamos que o c´lculo das iteradas ´ extremamente simples! Apenas precisamos a e de efectuar multiplica¸oes e subtrac¸oes com n´meros inteiros, que s˜o opera¸oes que um c˜ c˜ u a c˜ computador efectua com grande rapidez. Fazemos somente uma divis˜o quando paramos a a itera¸ao. Neste caso a convergˆncia ´ lenta porque | z2 | = 0.874... ∼ 1. c˜ e e z1 Se aplic´ssemos o mesmo m´todo a equa¸ao a e ` c˜ x5 − 10x4 − 2x3 − 4x2 + 2x + 12 = 0 obter´amos ao fim de apenas 10 itera¸oes y10 = 1531095181 = 10.23074222427... valor que j´ ı c˜ a 149656315 est´ muito pr´ximo da raiz dominante 10.23074222431... a o 2.7.2 Condicionamento no c´lculo de ra´ a ızes O c´lculo de ra´ de uma fun¸˜o pode ser um problema mal condicionado. Basta reparar a ızes ca que pelo teorema de Lagrange temos ˜ f (z) − f (˜) = f (ξ)(z − z ) ⇒ δz = z ˜ ez −f (˜) z ˜ = , com ξ ∈]z; z [ ˜ z zf (ξ) se a derivada for nula na raiz (zeros m´ltiplos) ou mesmo pr´ximo da raiz, o erro relativo u o pode ser bastante elevado. Outro problema idˆntico surge quando modificamos ligeiramente e ˜ a fun¸˜o. Por exemplo, ao inv´s de calcularmos o zero z de f, calculamos o zero z de f , a ca e ˜ f´rmula anterior aplica-se de maneira semelhante. o Mas podemos ser mais espec´ ıficos no caso polinomial. Seguimos22 [18], onde ´ provado e que se tivermos um polin´mio p com um zero simples z, e se considerarmos uma pequena o perturba¸˜o pε = p+εq, em que q ´ um outro polin´mio, ent˜o para um pequeno ε obtemos ca e o a um zero zε de pε que verifica, q(z) ε z − zε ≈ . p (z) Esta estimativa resulta de considerar ζ(ε) = zε , que ´ uma fun¸˜o anal´ e ca ıtica na vizinhan¸a c do zero, portanto d p(ζ(ε), ε) = 0 ⇔ (p (ζ(ε)) + εq (ζ(ε))) ζ (ε) + q(ζ(ε)) = 0, dε 22 Um exemplo idˆntico foi pela primeira vez mencionado por Wilkinson (1959). e 80 q(z) e para ε = 0 ficamos com a igualdade ζ (0) = − p (z) . ´ E ainda dado um exemplo ilustrativo, considerando os polin´mios o p(x) = (x − 1)(x − 2)...(x − 10) = x10 − 55x9 + ... + 10!, q(x) = 55x9 . Considera-se z = 10, e para ε pequeno, pela f´rmula anterior obt´m-se o e z − zε ≈ q(10) 55 × 109 ε= ε ≈ 1.5 × 105 ε, p (10) 9! ou seja, basta uma pequena perturba¸˜o no coeficiente da nona potˆncia para haver enormes ca e altera¸˜es na raiz. co N˜o entrando em maiores detalhes, em [18], conclui-se que o problema do c´lculo de a a zeros de p ´ mal condicionado, e que uma aproxima¸ao fi´vel dos zeros ´ imposs´vel. e c˜ a e ı Mas, vejamos com maior detalhe, de acordo com as defini¸˜es dadas anteriormente, em co que sentido isto ´ verdade. e Repare-se que, neste caso, o erro relativo dos resultados ´: e δzε = z − zε ≈ 1.5 × 104 ε, z mas para concluirmos que se trata de um problema mal condicionado, ´ preciso comparar e com o erro relativo dos dados. E aqui conv´m esclarecer o que se considera dado, o polin´mio e o ou os seus coeficientes? Para analisarmos a quest˜o do condicionamento em termos do polin´mio dever´ a o ıamos estabelecer uma defini¸˜o de erro relativo baseada numa norma para a fun¸˜o (ver apˆndice). ca ca e N˜o querendo entrar nesse detalhe neste momento apenas notamos que, por exemplo, se cona sider´ssemos o valor do erro relativo, respeitante ao valor da fun¸˜o num ponto x pr´ximo a ca o da raiz, ir´ ıamos obter p(x) − pε (x) −εq(x) = , δpε (x) = p(x) p(x) e a o que dar´ um valor extremamente elevado para δpε (x) , porque q(x) ´ elevado e p(x) ser´ a pr´ximo de zero. Neste sentido, como o valor do erro relativo dos dados seria elevado, e o o problema n˜o seria a priori mal condicionado. a O problema ´ mal condicionado se considerarmos que os dados s˜o os coeficientes dos e a polin´mios (na sua forma can´nica). Atendendo a que o unico coeficiente que varia neste o o ´ caso ´ o coeficiente a9 , da nona potˆncia, vemos que e e δa9 = ˜ ou seja, podemos estabelecer o que nos indica um n´mero de condi¸˜o maior que um milh˜o por cento. u ca a Isto ilustra bem como o problema pode ser mal condicionado, considerando a varia¸ao c˜ nos coeficientes. 81 |δzε | ≈ 1.5 × 104 |δa9 |, ˜ a9 − a9 ˜ −55 − (−55 + ε55) = = −ε, a9 55 • Como curiosidade, test´mos os resultados apresentados pela rotina NSolve. Para a −3 ε = 10 , em a estimativa apontaria para um valor |zε − 10| ≈ 150, o valor mais pr´ximo o −5 apresentado ´ 12.1±3.7i. Para ε = 10 , a estimativa apontaria para |zε −10| ≈ 1.5, e o valor e apresentado ´ 9.99 ± 0.92i. O ultimo teste, para ε = 10−7 dever´ e ´ ıamos obter |zε − 10| ≈ 0.015 e o valor apresentado ´ 9.98438... finalmente um valor pr´ximo! e o Contrariamente ao que se poderia supor numa primeira an´lise, o problema neste caso a ıgitos correctos... n˜o ´ da rotina NSolve (que apresenta os valores com pelo menos 12 d´ a e ainda que aponte 16 para Precision), mas sim do uso da estimativa. A estimativa admite que a fun¸˜o ζ ´ anal´ ca e ıtica na vizinhan¸a do zero simples, e isso pressup˜e que na varia¸˜o de c o ca ζ(0) para ζ(ε) n˜o ocorram zeros duplos e o subsequente aparecimento de ra´ complexas a ızes −6 conjugadas. No exemplo considerado, isso ocorre quando ε > 10 , portanto os valores apresentados pela estimativa para ε = 10−3 , 10−5 n˜o est˜o a priori correctos. Apenas nos a a −7 devemos fiar na estimativa quando ε = 10 , que d´ um valor razoavelmente semelhante ao a apresentado pela rotina NSolve, ora neste caso δzε = 1.5 × 10−3 , o que at´ parece um erro e relativo pequeno, mas n˜o ´, se comparado com o erro relativo δpε efectuado na perturba¸˜o a e ca −7 do coeficiente, |δa9 | = ε = 10 , o que nos d´ o n´mero de condi¸˜o enorme j´ mencionado. a u ca a ˜ • A este prop´sito, um exemplo bem mais elucidativo, ´ aquele que foi apresentado no o e final do primeiro cap´ ıtulo, acerca da determina¸˜o de valores pr´prios de uma matriz. Ao ca o calcular o polin´mio caracter´ o ıstico, o erro que aparecer nos coeficientes do polin´mio pode o gerar erros subsequentes no c´lculo da ra´ e consequentemente nos valores pr´prios. a ızes o 2.8 Generaliza¸˜o a ra´ ca ızes complexas A generaliza¸˜o de alguns m´todos iterativos para a determina¸˜o de ra´ ca e ca ızes complexas ´ e poss´ ıvel, especialmente no caso de m´todos derivados do m´todo do ponto fixo, como o e e m´todo de Newton ou os m´todos quasi-Newton (...secante, Steffenson). Iremos abordar e e superficialmente o problema da determina¸˜o de zeros de fun¸˜es complexas anal´ ca co ıticas, j´ que uma outra abordagem requer um conhecimento da teoria de fun¸˜es de vari´vel a co a complexa (por exemplo, a utiliza¸˜o do pr´ ca ıncipio da varia¸˜o do argumento para determinar ca o n´ mero de zeros existentes numa determinada regi˜o do plano complexo). u a Consideremos ainda o exemplo do par´grafo anterior, em que aproxim´mos as ra´ a a ızes reais de x5 − 3x + 1 = 0, se aplicarmos o m´todo de Newton, mas tomando agora uma iterada inicial complexa, e z0 = 3 i, obtemos a sucess˜o a 2 z0 = 1.5 i ; zn+1 = zn − cujos termos, z1 = −0.0448179... − 1.36134... i, z2 = −0.0762498... − 1.32792 ...i, z3 = −0.0803047.. − 1.32833... i, etc... 82 5 1 − 3zn + zn 4 5zn − 3 convergem para a solu¸˜o complexa −0.080295100117... − 1.3283551098... i (tamb´m com ca e ordem de convergˆncia quadr´tica!...) e a No entanto, se come¸armos com z0 = 1 (1 + i), os termos c 2 z1 = 0.352941... + 0.117647... i, z2 = 0.336678... + 0.00083115...i, z3 = 0.334734... − 0.41976 × 10−6 ... i, etc... convergem agora para a solu¸˜o real 0.334734141943... ca Podemos interrogar-nos se, sob condi¸˜es semelhantes `s do caso real, podemos assegurar co a a convergˆncia de m´todos de ponto fixo. e e Isto pode ser conseguido, come¸ando por definir que g ´ uma fun¸˜o contractiva num c e ca conjunto D ⊆ C, se existir L < 1: |g(a) − g(b)| ≤ L|a − b|, ∀a, b ∈ D, em que o |.| ´ o m´dulo nos complexos (que corresponde ` norma euclidiana em R2 ). e o a Teorema 2.14 (do Ponto Fixo em C). Seja g : D ⊆ C → C, onde D ´ um conjunto e fechado em C tal que g(D) ⊆ D. Se g ´ contractiva em D, ent˜o: e a i) Existe um e um s´ z ∈ D : g(z) = z o ii) A sucess˜o zn+1 = g(zn ) converge para z desde que z0 ∈ D. a iii) As estimativas apresentadas no teorema do ponto fixo em R s˜o ainda v´lidas (cona a siderando o m´dulo definido nos complexos). o Demonstra¸˜o: Iremos ver a demonstra¸˜o deste resultado num contexto muito mais ca ca geral (em espa¸os de Banach), pelo que se trata de um exerc´ a posteriori. c ıcio Como a contractividade nem sempre ´ f´cil de verificar, vamos apresentar um resultado e a semelhante ao que estabelecemos no caso real, em que exigiamos apenas que a derivada fosse inferior a um certo L < 1. Para demonstrarmos esse resultado us´mos o teorema do a a e valor m´dio de Lagrange, cuja generaliza¸˜o a fun¸˜es complexas n˜o ´ semelhante, com e ca co efeito apenas podemos estabelecer: g(a) − g(b) = Re(g (ξ)(b − a)) + Im(g (η)(b − a))i para certos ξ, η pertencentes ao segmento no plano complexo que une a e b. Como os valores ξ e η n˜o s˜o necessariamente iguais, o resultado n˜o ´ igual. a a a e No entanto, podemos estabelecer, para fun¸˜es complexas diferenci´veis (anal´ co a ıticas): Proposi¸˜o 2.7 Seja g anal´tica num conjunto D, convexo de C. Se |g (x)| ≤ L ∀x ∈ D, ca ı ent˜o verifica-se a |g(a) − g(b)| ≤ L|a − b|, ∀a, b ∈ D 83 Demonstra¸˜o: ca Consideremos a, b ∈ D e uma fun¸˜o ca que parametriza o segmento que une a e b. Se considerarmos um w ∈ C\{0} constante e h : [0, 1] → C t → a + (b − a)t f : [0, 1] → C t → wg(h(t)) obtemos f (t) = wg (h(t))(b − a) pela regra de deriva¸˜o da composi¸˜o em C. ca ca A componente real da fun¸˜o f, que designamos f1 ´ uma fun¸˜o real de vari´vel real ca e ca a e aplicando o teorema de Lagrange, obtemos f1 (1) − f1 (0) = f1 (tw ) = Re(wg (ξw )(b − a)) em que tw ∈]0, 1[ e ξw = h(tw ) ´ um ponto no segmento que une a e b. Como supomos que e D ´ convexo, ξw ∈ D. e Por outro lado, como f1 (1) − f1 (0) = Re(w(g(b) − g(a)), temos Re(w(g(b) − g(a)) = Re(wg (ξw )(b − a)). Para um qualquer z ∈ C n˜o ´ dificil ver que a e ¯ |z| = sup |Re(wz)| |w|=1 aplicando Cauchy-Schwarz (pois usamos a topologia de R2 e Re(wz) corresponde a efectuar ¯ 2 o produto interno em R dos vectores w e z) para demonstrar ≥, e considerando w = z/|z| para demonstrar ≤. Assim, aplicando as igualdades anteriores, temos |w|=1 |g(b) − g(a)| = sup |Re(w(g(b) − g(a))| = sup |Re(wg (ξw )(b − a))|, ¯ ¯ |w|=1 e pela desigualdade de Cauchy-Schwarz, ≤ sup |g (ξw )| |b − a|. |w|=1 Como |g (ξw )| ≤ L por hip´tese, porque ξw ∈ D, obtemos o resultado. o Atrav´s deste resultado conclu´ e ımos que se tivermos uma fun¸˜o anal´ ca ıtica, cuja derivada23 ´ em m´dulo inferior a um L < 1 num conjunto convexo D, a fun¸˜o ´ contractiva em D. e o ca e Corol´rio 2.3 Seja g anal´tica num conjunto D, convexo e fechado de C, tal que g(D) ⊆ a ı D. Se |g (x)| ≤ L < 1 ∀x ∈ D, ent˜o as condi¸oes do teorema do ponto fixo verificam-se. a c˜ Para verificar que a derivada de uma fun¸ao anal´ c˜ ıtica ´ em m´dulo menor que 1, pode ser util usar a e o ´ estimativa de Cauchy, max|x−w|=r |g(x)| |g (w)| ≤ . r (Note-se que a fun¸˜o g tem que ser anal´ ca ıtica em B(w, r)) 23 84 2.8.1 M´todo de Newton nos complexos e O m´todo de Newton pode ser considerado em C, como um caso particular do m´todo do e e ponto fixo. Com efeito, se a fun¸˜o for anal´ ca ıtica numa vizinhan¸a da raiz z e se f (z) = 0, c estabelecemos a equivalˆncia e f (z) = 0 ⇔ z = z − f (z) . f (z) e podemos aplicar a itera¸˜o do ponto fixo, pelo que o m´todo de Newton pode esquematizarca e se novamente Iterada inicial : z0 ∈ C f Iterar zn+1 = zn − f (zn )) , (zn assegurando que f (zn ) = 0, o que pode ser conseguido se tomarmos z0 suficientemente pr´ximo de z e se f (z) = 0. Ou seja, pode ser provado um teorema de convergˆncia local, o e que deixamos como exerc´ ıcio. Exerc´ ıcio 2.7 Seja f anal´tica numa vizinhan¸a Vz duma raiz z ∈ C, tal que f (x) = ı c 0, ∀x ∈ Vz , mostre que o m´todo de Newton converge para essa raiz se considerarmos z0 e suficientemente pr´ximo de z. Observe ainda que a convergˆncia do m´todo de Newton, o e e nestas condi¸oes, ´ quadr´tica. c˜ e a Tamb´m ´ poss´ estabelecer condi¸˜es para assegurar a convergˆncia num certo cone e ıvel co e junto (numa bola que contenha a raiz), mas s˜o substancialmente mais complicadas de a provar (cf. [10]): ¯ Proposi¸˜o 2.8 Se f ´ uma fun¸ao anal´tica na bola B(z0 , R) = {z ∈ C : |z − z0 | ≤ R} ca e c˜ ı tal que maxz∈B(z0 ,R) |f (z)| ≤ M, ¯ C = 2M |f(z0 )| ≤1 |f (z0 )|2 |f ¯ com |f (z00)| ≤ R , ent˜o existe um e um s´ zero de f em B(z0 , R) e o m´todo de Newton a o e (z )| 2 R 2n −1 converge, tendo-se |en | ≤ 2n C . Observa¸˜o (dom´nio de convergˆncia). ca ı e Para mostrarmos como pode ser complicado determinar o dom´ em que o m´todo do ınio e ponto fixo converge, recorremos a exemplos sobejamente conhecidos (visualmente). 2 (i) Conjunto de Mandelbrot. Consideremos a itera¸˜o z0 = 0, zn+1 = zn + c. ca A fun¸˜o g ´ neste caso g(x) = x2 + c. ca e ¯ Vejamos que g est´ nas condi¸˜es do teorema do ponto fixo em D = B(0, r), com r < 1 , a co 2 1 desde que |c| ≤ 4 . D ´ fechado e convexo e dado |x| ≤ r, temos |g(x)| = |x2 + c| ≤ |x|2 + |c| ≤ r2 + 1 < 1 . e 4 2 85 Portanto conclu´ ımos que x ∈ D ⇒ g(x) ∈ D, ou seja g(D) ⊆ D. Falta ver que g ´ contractiva em D. Ora, |g (x)| = |2x| ≤ 2r < 1, e portanto podemos e concluir pelo teorema do ponto fixo que a itera¸˜o apresentada ´ convergente desde que ca e |c| ≤ 0.25. ´ E claro que este resultado ´ apenas uma condi¸˜o suficiente, n˜o nos d´ todos os vale ca a a ores para os quais h´ convergˆncia, e podemos ver qu˜o longe estamos desse objectivo se a e a visualizarmos a figura em baixo, ` esquerda. Trata-se do conjunto de Mandelbrot, onde a se representam a negro os pontos c ∈ C para os quais a sucess˜o zn n˜o tende para ina a finito. A complexidade do conjunto ´ evidente (ainda que se trate de um fractal, ie. a e estrutura macrosc´pica ´ repetida em por¸˜es mais pequenas da fronteira, caracter´ o e co ıstica de transforma¸˜es nos complexos). co O dom´ ınio D obtido ´ apenas uma pequena bola dentro desse conjunto. e Este tipo de fen´meno, repete-se para a itera¸˜o de outras fun¸˜es. Como exemplo, o ca co na figura central representamos o que foi obtido considerando zn+1 = − cos(zn ) + c, e na figura da direita aumentamos uma zona da fronteira. O assunto foi muito publicitado durante a ultima d´cada e encheram-se livros com retratos da fronteira do conjunto de ´ e Mandelbrot (com g(x) = x2 + c), como se se tratasse de uma autˆntica explora¸˜o de e ca paisagens desconhecidas. Uma maior compreens˜o do assunto, nomeadamente no que diz a respeito ` fractalidade e ` possibilidade de determinar a dimens˜o da fronteira, s˜o assunto a a a a da teoria de sistemas dinˆmicos discretos. a 2.4 1 2 2.3 0.5 1 2.2 0 0 2.1 -0.5 -1 2 1.9 -2 -1 1.8 -2 -1.5 -1 -0.5 0 0.5 -4 -2 0 2 4 -2 -1.8 -1.6 -1.4 -1.2 -1 (ii) Conjunto de Julia. Uma outra possibilidade ´ manter o valor de c constante e fazer e variar o valor da iterada inicial z0 . Na figura em baixo, ` esquerda, representamos o conjunto a i obtido com c = 4 . O conjunto poderia ser mais interessante visualmente se tiv´ssemos e escolhido outros valores para c, mas interessou-nos considerar aquele valor porque podemos comparar com o dom´ ınio D obtido teoricamente (que ´ a bola inclu´ no conjunto). e ıda Na figura em baixo, ` direita, representamos ent˜o um conjunto mais interessante, que a a se obteve para g(x) = − cos(x) + c, escolhendo c = i − 1. 2 3 2 1 1 0 0 -1 -1 -2 -2 -2 -1 0 1 2 -3 -6 -4 -2 0 2 4 6 86 2.9 Exerc´ ıcios x3 + 1. Considere a equa¸˜o ca 1 1 = x + m. m 2 8 a) Mostre que para qualquer m ≥ 0 h´ apenas uma raiz em [0, 1 ]. a 2 b) Mostre que se m ∈ N o m´todo da bissec¸˜o atinge essa raiz num n´ mero finito de e ca u iteradas. Quantas? c) O mesmo que em b) para a equa¸˜o x3 +2x+2−m = 3x2 +8−m , aplicando ao intervalo ca 3 [1, 2 ]. 2. Considere a fun¸˜o f dada por ca M f (s) = 1 − k=1 1 π(k)s em que π(k) d´ o k-´simo primo (2, 3, 5, 7, 11, etc...). a e Sabe-se que f(1) diverge quando M → ∞, e ´ ´bvio que converge quando s > 1, pois o eo valor da soma ´ majorado pela fun¸˜o zeta de Riemann e ca ζ(s) = ∞ n=1 1 . ns Para M = 5000, foram obtidos os valores f(1.3) = −0.18, f (1.5) = 0.15. As fun¸˜es co a o f, f , f s˜o estritamente mon´tonas, tendo-se, f (1.3) = 2.19, f (1.5) = 1.26, f (1.3) = −6.85, f (1.5) = −3.05. Pretendendo aplicar o m´todo da falsa posi¸˜o para determinar o zero de f, determine: e ca a) Qual o extremo que se iria manter constante. b) Calcule uma estimativa do n´mero de iteradas necess´rio para garantir um erro u a −4 absoluto inferior a 10 . c) Qual m´todo seria a priori mais r´pido, o da bissec¸˜o ou o da falsa posi¸˜o? O que e a ca ca seria necess´rio efectuar para aumentar a rapidez do m´todo da falsa posi¸˜o? a e ca 3. Seja g uma fun¸˜o cont´ ca ınua tal que g(a) = b e g(b) = a. a) Mostre que existe pelo menos um ponto fixo de g em [a, b]. b) Mostre que se g ∈ C 1 [a, b] ent˜o a derivada de g toma o valor −1 em algum ponto a desse intervalo. 4. Pretendendo determinar z = g(z), estabeleceu-se a equivalˆncia, para θ = 0, e x = g(x) ⇔ x = (1 − θ)x + θg(x), considerando a nova fun¸˜o G(x) = (1 − θ)x + θg(x) como fun¸˜o iteradora (m´todo de ca ca e relaxa¸ao), que ´ uma combina¸˜o convexa da fun¸˜o identidade com g, quando θ ∈]0, 1[. c˜ e ca ca a) Verifique que quando g (z) = 1 ´ conhecido, se escolher e θ= 1 1 − g (z) 87 ent˜o o m´todo do ponto fixo aplicado a G ter´ ordem de convergˆncia quadr´tica, local. a e a e a (Note que o objectivo ´ encontrar z, e portanto a priori n˜o pode ser conhecido g (z)). e a b) Suponha que o m´todo do ponto fixo aplicado ` fun¸˜o iteradora g gera uma sucess˜o e a ca a (xn ) que converge lentamente, com K∞ < 1, mas longe de zero. Considere trˆs valores e xm+1 , xm , xm−1 , para m razoavelmente grande. Mostre que se tomar θ= a itera¸˜o ca convergir´ mais rapidamente. a c) Aplique este m´todo para acelerar a convergˆncia de xn+1 = sin( 4 xn ) + 1 . Considere e e 5 5 x0 = 0, e calcule at´ m = 10. Partindo desses valores calcule 5 iteradas com yn . e compare e com o que teria obtido se tivesse calculado novas 5 iteradas com xn . d) Reparando que podemos aplicar o mesmo processo a G, vemos que estamos perante um m´todo conhecido. Mostre que se considerar yn = xm , o valor obtido em b) para yn+1 e corresponde ao valor obtido na extrapola¸˜o de Aitken. ca 5. Considere um intervalo I = [a, b] que tem um unico ponto fixo z de uma fun¸˜o ´ ca 1 g ∈ C (I). Seja g (z) = 1. a) Mostre que se 0 < g (x) < 1, ∀x ∈ I\{z}, ent˜o o m´todo do ponto fixo converge a e qualquer que seja x0 ∈ I. Sugest˜o: Verifique que a sucess˜o definida pelo m´todo do ponto fixo ´ estritamente a a e e mon´tona e limitada. o b) Aplique este resultado para mostrar que xn+1 = sin(xn ) converge para 0, qualquer que seja x0 ∈ R. 6. Pretende-se resolver a equa¸˜o f (x) = 0 em que f ∈ C 1 (R). ca a) Mostre que se a fun¸˜o verificar ca yn+1 = (1 − θ)yn + θg(yn ) xm−1 − xm xm+1 − 2xm + xm−1 −b ≤ f (x) ≤ −a < 0 ou 0 < a ≤ f (x) ≤ b tem um unico zero em R, e que podemos encontrar ω tal que o m´todo iterativo ´ e xn+1 = xn + ωf (xn ) converge para esse zero, qualquer que seja x0 ∈ R. b) Aplique o m´todo anterior a f (x) = 3x − cos(2x)/2 + sin(4x)/4 e 7. Seja f uma fun¸˜o diferenci´vel em R. Pretende-se estabelecer uma equivalˆncia em ca a e todo R, f (x) = 0 ⇔ x = g(x), em que g ´ diferenci´vel em R e g (x) < 0, ∀x ∈ R. e a Mostre que existem fun¸˜es f para as quais ´ imposs´ estabelecer essa equivalˆncia. co e ıvel e Sugest˜o: Verifique nessas condi¸˜es g tem um unico ponto fixo. a co ´ (Isto significa que ´ escusado procurar um procedimento geral que encontre fun¸˜es e co iteradoras cuja derivada ´ sempre negativa — em particular, fun¸˜es iteradoras que levem e co 88 a uma convergˆncia alternada. Esta procura teria sentido j´ que isso permitiria encontrar e a intervalos que contivessem a raiz!) 8. O processo iterativo x0 = 1, xn+1 = (p − 1) a xn + p−1 p pxn permite obter em poucas iteradas uma boa aproxima¸˜o de ca √ p a em que p, a > 1. Escolha um intervalo adequado em que estejam satisfeitas as condi¸˜es co suficientes para a convergˆncia do m´todo de Newton. e e √ Calcule uma aproxima¸˜o de 3 231 garantindo um erro absoluto inferior a 10−3 . ca a e Observa¸ao: Claro que a aproxima¸˜o inicial x0 = 1 n˜o ´ boa e pode ser melhorada... c˜ ca por exemplo, considerando x0 = 1 + a , ou simplesmente encontrando um x0 tal que xp < 0 p √ 3 p 3 3 a < (x0 + 1) ... (para 231 bastaria reparar que 6 = 216 < 231 < 343 = 7 e considerar x0 = 6). Uma utilidade deste resultado ´ a de permitir calcular aproxima¸˜es de ra´ de ordem e co ızes p utilizando apenas opera¸˜es elementares (... por exemplo, quando estamos na posse de co uma calculadora rudimentar que n˜o calcula ra´ a ızes!). Acontece, por vezes, que as ra´ ızes calculadas pela m´quina aparecem s´ em precis˜o a o a simples, podendo servir esse valor como aproxima¸˜o inicial para este processo iterativo, ca que ao fim de muito poucas itera¸˜es (normalmente 1 ou 2) garante todos os d´ co ıgitos em precis˜o dupla, ou mesmo superior! a (p−2)/p Com efeito, como nesse caso a aproxima¸˜o j´ ´ bastante boa, |en+1 | ∼ p(p−1)a ca a e |en |2 , 2pa(p−1)/p p−1 p−1 ou seja |en+1 | ∼ 2 √a |en |2 ´ poss´ duplicar a precis˜o numa unica itera¸˜o, desde que 2 √a e ıvel a ´ ca p p n˜o seja muito maior que 1, o que acontece normalmente para valores n˜o muito elevados a a de p. 9. Mostre que se tivermos uma equa¸˜o alg´brica ca e p(x) = a0 + a1 x + . . . + an xn = 0, onde os coeficientes ai ∈ R, n˜o ´ poss´ verificar as condi¸˜es do teorema do ponto fixo a e ıvel co usando um conjunto D = {z ∈ C : 0 ≤ α ≤ |z| ≤ β} para determinar uma raiz n˜o real de a p(x) = 0. ´ 10. E evidente que se x = 0 ´ solu¸˜o da equa¸˜o alg´brica e ca ca e P (x) = a0 + a1 x + ... + an xn = 0, ent˜o y = 1/x ´ solu¸˜o da equa¸˜o a e ca ca Q(y) = a0 y n + ... + an−1 y + an = 0. 89 a) Supondo que a0 , an = 0, mostre que o n´mero de zeros reais (respect. complexos) de u P ´ igual ao de Q. e b) Conclua que basta analisar P e Q no circulo {z ∈ C : |z| ≤ 1} para localizarmos todos os zeros desses polin´mios em C. o c) Quantas ra´ complexas tem a equa¸˜o x6 + ax4 + ax2 + 1 = 0, no caso de possuir ızes ca uma unica raiz real em [−1, 1]? ´ d) Mostre que a equa¸˜o 4 − (1 + 2i)x − 64x2 + (16 + 32i)x3 = 0 tem uma e uma s´ raiz ca o em {z ∈ C : |z| > 1}. 11. Considere a sucess˜o em C, a p zn+1 = (i zn + 1)/(p + 1) em que z0 = 0 e p ´ um n´ mero natural. e u a) Mostre que esta sucess˜o converge para um valor em {z ∈ C : |z| ≤ 1}. a b) Se quisermos calcular uma aproxima¸˜o do limite da sucess˜o, ao fim de quantas ca a itera¸˜es podemos garantir um erro |en | ≤ 0.01? co Considere p = 7 e determine uma aproxima¸˜o que satisfa¸a essa majora¸˜o. ca c ca c) Usando o exerc´ anterior, e as al´ ıcio ıneas anteriores, mostre que i − (p + 1)z p−1 + z p = 0 tem uma unica raiz tal que |z| > 1 e indique um valor aproximado da raiz para p = 7. ´ 12. Mostre que a equa¸˜o z − sin(zX) − sin(Y ) = 0 tem um unico ponto fixo para os ca ´ parˆmetros X ∈] − 1, 1[, ∀Y ∈ R, e que a sucess˜o a a zn+1 = sin(zn X) + sin(Y ) converge se z0 = 0.1 b) Considere X = 2.5 e Y = 0. Experimentalmente verifique que a sucess˜o (zn ) vai ter a dois sublimites: α = 0.997934... e β = 0.602602... Justifique a inexistˆncia de limite atrav´s do comportamento da fun¸˜o iteradora e e e ca mostre que existe uma raiz da equa¸˜o em [α, β]. ca 13. Considere f (x) = 0 ⇔ x = g(x) uma equa¸˜o em R que tem pelo menos duas ra´ ca ızes a z1 e z2 consecutivas (ou seja, n˜o existe nenhuma outra raiz entre elas). 1 a) Mostre que se g ∈ C (R) e |g (z1 )| < 1 ent˜o g (z2 ) ≥ 1. a b) Suponha que z2 ∈ I = [a, b], que |g (x)| > 1, ∀x ∈ I e que I ⊆ g(I). Mostre que o m´todo xn+1 = g −1 (xn ) converge para z2 qualquer que seja x0 ∈ I. e c) Seja f ∈ C p (R), tal que a raiz z2 tem multiplicidade p ≥ 1, e seja g tal que g (z2 ) > 1. Indique uma fun¸˜o iteradora que assegure uma convergˆncia local linear para z2 , e uma ca e outra que assegure convergˆncia quadr´tica, para cada caso de p. e a 14. Considere o intervalo I = [a, b] ⊂ R, e as fun¸˜es g, h ∈ C 1 (I) tais que g ◦ h = h ◦ g. co Sabemos que g(I) ⊆ I, h(I) ⊆ I, e que |g (x)| ≤ L1 , |h (x)| ≤ L2 , ∀x ∈ I, 90 com L1 L2 < 1. a) Se estabelecermos em I: x = g(x) ⇔ x = h(x) ⇔ f (x) = 0, mostre que existe uma unica raiz z ∈ I de f (x) = 0 e indique (justificando) trˆs fun¸˜es ´ e co iteradoras distintas que assegurem uma convergˆncia para essa raiz, qualquer que seja e x0 ∈ I. b) Supondo que a < 0 e b ≥ 0, mostre que o zero z da fun¸˜o f em I verifica: ca |z| ≤ min{|h(g(0))|, |g(h(0))|} 1 − L1 L2 c) Suponha agora que os pontos fixos de g e h em I s˜o diferentes. A equa¸˜o x = g(h(x)) a ca tem uma solu¸˜o unica em I? Justifique. ca ´ d) Mostre que as equa¸˜es: co 2x − cos( x= x2 0.5 1 ) = sin( 2 ) +1 x +1 4 (cos(x/2) + sin(x))2 + 4 tˆm uma unica solu¸˜o no intervalo [0, 1] e indique fun¸˜es iteradoras convergentes para a e ´ ca co solu¸˜o. ca Sugest˜o: Usar fun¸oes g e h apropriadas e aplicar o anterior. a c˜ 15. Considere uma fun¸˜o g cont´ ca ınua no intervalo [0, 1], diferenci´vel, que verifica: a 1 g(0) = , 2 1 g (x) = x cos2 (g(x)) 2 Mostre que a fun¸˜o g tem um unico ponto fixo no intervalo [0, 1]. ca ´ 16. Sabendo que h(x), h (x) ∈ C 1 ([−1, 1]) s˜o crescentes, e que h tem uma raiz em a [−1, 1], pretende-se determinar a raiz da equa¸˜o ca F (x) = x + h(x) = 0 usando o m´todo e x0 = a, x1 = b )F (xn xn+1 = xn − (xn −xn−1(xn−1 )) F (xn )−F Mostre que F tem uma unica raiz em I e que existem a, b ∈ I para os quais h´ convergˆncia. ´ a e Qual a ordem de convergˆncia? e 17. Considere a equa¸˜o ca 4z 3 − (1 + 2i)z 2 − 64z + 16 + 32i = 0 Escreva-a na forma z = g(z) por forma a que se verifiquem as condi¸˜es do teorema do co ponto fixo no conjunto D = {z ∈ C : |z| ≤ 1}. 91 Determine z1 e z2 a partir de z0 = 0 e calcule a raiz da equ¸˜o com menor m´dulo. ca o 18. Considere a equa¸˜o ca e−iz cos(z) − 2z − =0 2 Aplique o Teorema do Ponto Fixo, a uma fun¸˜o iteradora conveniente que convirja para ca a solu¸˜o situada no subconjunto D = {z ∈ C : Im(z) ≥ −1}. ca 19. Considere a equa¸˜o ca a + sin(x) + x2 = 0 a) Seja a = −1. Verifique que as condi¸˜es suficientes para a convergˆncia do M´todo co e e de Newton est˜o asseguradas no intervalo [−2, −1]. a b) Indique um intervalo para valores de a em que essas condi¸˜es estejam asseguradas. co c) Seja c a solu¸˜o da equa¸˜o cos(x) = −2x. Mostre que se considerarmos a = − sin(c)− ca ca c2 , o m´todo de Newton converge linearmente para a raiz da solu¸˜o, se considerarmos uma e ca iterada inicial suficientemente pr´xima. Indique uma modifica¸˜o do m´todo, por forma a o ca e obter convergˆncia quadr´tica. e a 20. Ao utilizar o m´todo do ponto fixo para determinar uma raiz de uma equa¸˜o, e ca foram obtidos os seguintes valores x3 = −0.914260304; x4 = −0.825329540; x5 = −0.884002249; x6 = −0.847330076 a) Sabendo que a fun¸˜o iteradora era um polin´mio do quarto grau, da forma p(x) = ca o ızes c˜ αx4 + βx2 + γ determine aproximadamente as duas ra´ reais da equa¸ao. b) Determine os valores poss´ ıveis para x2 . c) Determine uma estimativa para a majora¸˜o do erro absoluto em x20 . ca 21. Considere a equa¸˜o polinomial ca p(x) = x5 − 6x4 + 4x3 + 12x2 − 5x − 5 = 0 a) Indique a coroa no plano complexo que contem todas as raizes. b) Usando a regra de Budan-Fourier, determine intervalos onde se encontrem as raizes reais, e conclua que existe uma raiz dominante. c) Determine aproximadamente o valor da raiz dominante, usando o m´todo de Bernoulli. e 22. Admitindo que o corte topogr´fico da costa ´ dado pela fun¸˜o p(x) = (x5 + x3 − a e ca 2 8x + 3)/4, pretende-se determinar se um veleiro com a vigia a uma altura h = 0.1 consegue observar sempre o farol com altura= 0.25, situado no topo da ilha. Para isso comece por determinar: a) A primeira raiz positiva de p com um erro relativo inferior a 0.005. e b) Determine um ponto x ∈ [0, 1] tal que a recta tangente a p nesse ponto passe tamb´m pelo ponto (0, 1) (com um erro inferior a 0.001). c) Determine a intersec¸˜o da recta tangente da al´ ca ınea b) com a recta y = h e conclua a ı acerca da quest˜o colocada no in´ a ıcio do enunciado. (Caso n˜o tenha resolvido a al´nea anterior, considere x ∼ 0.37). d) Sabendo que z1 ∼ −0.58, z2 ∼ 0.65, z3 ∼ 1.74 s˜o ra´ a ızes de p, determine aproximadamente as suas ra´ complexas. Sugest˜o: Lembre que p(x) = an (x − z1 ) . . . (x − zn ). ızes a 92 23. Considere g ∈ C 1 (R) uma fun¸˜o limitada e estritamente decrescente. Mostre que ca existe um unico ponto fixo de g em R. Conclua que tamb´m existe um unico ponto fixo ´ e ´ ´ necess´rio exigir que a fun¸˜o seja de −g quando g ´ limitada e estritamente crescente. E e a ca estritamente mon´tona em R ou bastar´ exigir apenas num intervalo? Qual? o a 93 Cap´ ıtulo 3 Teorema do Ponto Fixo de Banach O objectivo deste cap´ ıtulo ´ generalizar a aplica¸˜o do m´todo do ponto fixo ` resolu¸˜o e ca e a ca de equa¸˜es num contexto muito mais geral do que aquele visto nas situa¸˜es precedentes, co co em que as inc´gnitas eram apenas n´ meros reais ou complexos. o u Por exemplo, sendo a inc´gnita uma fun¸˜o f cont´ o ca ınua tal que x f (x) = 1 − f (t)dt 0 podemos pensar em aplicar o m´todo do ponto fixo come¸ando com f0 = 0, fazendo e c x fn+1 (x) = 1 − fn (t)dt, 0 2 o que d´ f1 (x) = 1, f2 (x) = 1 − x, f3 (x) = 1 − x + x , etc... Neste caso, curiosamente, a a 2 sucess˜o de fun¸˜es fn vai reproduzir a expans˜o em s´rie de Taylor da fun¸˜o e−x , ou seja, a co a e ca n −x a sucess˜o de fun¸˜es fn vai convergir para a solu¸˜o f (x) = e = 1 − x + ... + (−x) + ... a co ca n! Vemos na figura seguinte o resultado das 5 primeiras itera¸oes, onde ´ v´ c˜ e ısivel a aproxima¸˜o das fun¸˜es f1 , f2 , f3 , ... (representadas a tracejado) ` fun¸˜o limite, que neste caso ca co a ca ´ f (x) = e−x (representada a cheio). e 7 6 5 4 3 2 1 2 -1 .5 1 -0 .5 0 .5 1 Por outro lado, sendo ex ponto fixo da deriva¸˜o, pois ex = (ex ) , e come¸ando com ca c e a f0 = 0, ao efectuarmos fn+1 = (fn ) vamos obter sempre 0, que ´ um outro ponto fixo. N˜o ´ dificil ver que fun¸˜es do tipo Cex ser˜o os pontos fixos operador deriva¸˜o. Portanto, e co a ca podemos ter sucess˜es que convergem para os diferentes pontos fixos se fizermos f0 = o 94 pk (x) + Cex , onde pk (x) ´ um polin´mio de grau k, j´ que ao fim de k + 1 itera¸˜es as e o a co deriva¸˜es sucessivas anulam o polin´mio. No entanto, se come¸armos com f0 = sin(x) co o c vamos ‘orbitar’ entre co-senos e senos, n˜o havendo convergˆncia! a e Interessa pois saber sob que condi¸˜es poderemos garantir convergˆncia, considerando co e equa¸˜es mais gerais, em que as inc´gnitas podem ser n´meros, vectores, sucess˜es, fun¸˜es, co o u o co etc... A liberdade para as inc´gnitas n˜o ´ total! Para garantirmos a existˆncia de um o a e e teorema do ponto fixo, num contexto t˜o geral, precisamos de ter uma estrutura (...um a espa¸o) com propriedades m´ c ınimas que permitam um resultado de existˆncia construtivo, e como ser´ o teorema do ponto fixo de Banach que iremos apresentar. a Uma estrutura suficientemente geral que permite obter esse resultado ´ a no¸˜o de e ca Espa¸o de Banach (que s˜o espa¸os vectoriais normados e completos), no¸ao que iremos c a c c˜ definir neste cap´ ıtulo. Tamb´m poder´ e ıamos obter o teorema do ponto fixo de Banach para espa¸os m´tricos completos (como foi originalmente apresentado), mas preferimos considc e erar apenas espa¸os de Banach, j´ que a dedu¸˜o ´ semelhante e mais simples, permitindo c a ca e ainda apresentar resultados relativos ` deriva¸˜o de Fr´chet. a ca e 3.1 Espa¸os Normados c Come¸amos por recordar a no¸˜o de espa¸o normado. Um espa¸o vectorial normado ´, como c ca c c e o nome indica, um espa¸o vectorial a que associamos uma norma. A norma, sendo uma c aplica¸˜o que toma valores reais, vai permitir introduzir no espa¸o vectorial uma topologia ca c que resulta indirectamente da topologia de R. Assim, a no¸˜o de norma, que ´ crucial neste ca e contexto, vai generalizar o papel desempenhado pelo m´dulo nos reais (ou nos complexos). o c e Defini¸˜o 3.1 Seja E um espa¸o vectorial, em que o corpo dos escalares ´ R ou C. Uma ca aplica¸ao ||.|| : E → [0, +∞[ designa-se norma se verificar: c˜ i) ||αx|| = |α| ||x|| , ∀x ∈ E, ∀α ∈ R (ou C), ii) ||x + y|| ≤ ||x|| + ||y||, ∀x, y ∈ E (desigualdade triangular), iii) ||x|| = 0 ⇔ x = 0. A um espa¸o vectorial E munido de uma norma ||.||, chamamos espa¸o vectorial normado c c e indicamos (E, ||.||) apenas em caso de ambiguidade. Normalmente apenas indicamos E, subentendendo qual a norma em quest˜o. Quando indicarmos ||.||E referimo-nos ` norma a a no espa¸o (E, ||.||). c Observa¸oes: c˜ (i) A partir de uma norma, podemos definir imediatamente uma distˆncia d(x, y) = a ||x − y||, que nos permite quantificar uma certa proximidade entre dois elementos do espa¸o c vectorial (beneficiando da rela¸˜o de ordem existente nos reais). Consequentemente, fica ca estabelecida uma no¸˜o de vizinhan¸a, que definir´ a topologia. ca c a ´ importante notar que estando definidas v´rias normas sobre um mesmo espa¸o (ii) E a c vectorial, elas podem estabelecer um crit´rio de proximidade diferente ... ou seja, ´ impore e tante estar subjacente qual a “norma” usada! Quando, ao longo do cap´tulo, escrevemos ı 95 xn → x, ´ fulcral termos presente segundo que norma isso acontece. Iremos ver que se o e espa¸o vectorial tiver dimens˜o finita, todas as normas a´ definidas s˜o equivalentes, mas c a ı a isso n˜o ´ v´lido para espa¸os com dimens˜o infinita... poder´ acontecer que uma sucess˜o a e a c a a a convirja segundo uma norma, mas n˜o segundo outra! a (iii) Se no espa¸o vectorial estiver definido um √ c produto interno x · y, ent˜o a norma a natural associada a esse produto interno ´ ||x|| = x · x , e podemos usar a importante e desigualdade de Cauchy-Schwarz: |x · y| ≤ ||x|| ||y|| (iv) Reparamos que a generaliza¸˜o da no¸˜o de m´dulo ´ expl´ ca ca o e ıcita na propriedade ||αx|| = |α| ||x||, pois precisamos da no¸˜o de m´dulo no corpo, para que esta propriedade ca o se verifique. Exerc´ ıcio 3.1 . a c˜ a) Mostre que em RN ou CN s˜o normas as aplica¸oes ||x||p = (|x1 |p + ... + |xN |)1/p ||x||∞ = max{|x1 |, ..., |xN |} ´ uma norma no subespa¸o das sucess˜es e c o b) Verifique que se considerarmos u = (un )n∈N uma sucess˜o de reais (ou complexos), a a aplica¸ao c˜ ||u||p = (|u1 |p + ... + |un |p + ...)1/p lp = {(un )n∈N : ||u||p < +∞}, e que a aplica¸ao c˜ ||u||∞ = sup{|u1 |, ..., |un |, ...} ´ uma norma no sub-espa¸o das sucess˜es e c o l∞ = {(un )n∈N : ||u||∞ < +∞}. c) Da mesma forma, considerando o espa¸o das fun¸oes f definidas num intervalo I, a c c˜ menos de um conjunto com medida de Lebesgue nula (i.e: conjunto numer´vel), mostre que a a aplica¸ao c˜ 1/p ||f ||p = ´ uma norma no subespa¸o e c I |f (x)| dx p Lp = {f (x) : ||f ||p < +∞}, e que a aplica¸ao c˜ ||f ||∞ = sup |f(x)| x∈I ´ uma norma no espa¸o das fun¸oes cont´nuas C(I) quando I ´ compacto. (No contexto e c c˜ ı e p das fun¸oes L , a norma ´ definida usando o supremo essencial). c˜ e Nota: Admita a desigualdade triangular para as normas ||x||p (conhecida como desigualdade de Minkowski). 96 3.1.1 No¸oes Topol´gicas em Espa¸os Normados c˜ o c A norma define uma certa topologia num espa¸o normado. Devemos ter presente que num c mesmo espa¸o vectorial podemos trabalhar com v´rias normas, e consequentemente com c a no¸˜es de proximidade diferentes, ou seja com topologias diferentes! A no¸˜o fundamental co ca que define a topologia do espa¸o ´ a no¸˜o de vizinhan¸a. c e ca c Defini¸˜o 3.2 . Designamos por ε-vizinhan¸a de x ao conjunto Vε (x) = {y ∈ E : ||x − ca c y|| < ε}. — Um conjunto A ´ aberto em E se ∀x ∈ A ∃ε > 0 : Vε (x) ⊆ A e — Um conjunto A ´ fechado se E\A for aberto. e Exerc´ ıcio 3.2 Mostre que os conjuntos B(a, r) = {x ∈ E : ||x − a|| < r} s˜o conjuntos a ¯ r) = {x ∈ E : abertos, designados por bolas abertas, e que s˜o conjuntos fechados B(a, a ||x − a|| ≤ r}, chamados bolas fechadas. Para al´m disso, reuni˜es de abertos s˜o abertos e intersec¸˜es de fechados s˜o fechae o a co a dos, mas s´ podemos garantir que intersec¸˜es de abertos s˜o abertos, ou que reuni˜es de o co a o fechados s˜o fechados se forem em n´ mero finito. a u Nota importante: os conjuntos E e ∅ s˜o abertos e fechados! a — Um conjunto A diz-se limitado se ∃R ≥ 0 : ∀x ∈ A, ||x|| ≤ R. — Um conjunto A ´ compacto se toda a sucess˜o em A tem uma subsucess˜o convergente, e a a com limite pertencente a A. Num espa¸o de dimens˜o finita, se um conjunto for fechado e limitado ´ um compacto, c a e 1 mas em espa¸os de dimens˜o infinita isso nem sempre acontece . c a Defini¸˜o 3.3 Uma sucess˜o (xn ) num espa¸o normado E converge para x ∈ E, e esca a c crevemos xn → x, se n→∞ ||xn − x|| −→ 0 ´ E claro que o limite, a existir, ´ unico. Basta reparar que se x e y fossem limites da e ´ sucess˜o (xn ), ent˜o para qualquer δ > 0 existe um n suficientemente grande tal que a a ||x − xn || < δ, ||xn − y|| < δ, logo ||x − y|| ≤ ||x − xn || + ||xn − y|| < 2δ. Ou seja, ∀δ > 0, ||x − y|| < 2δ, o que implica x = y. (k) (k) 1 se n=k ¯ Basta pensar na bola B(0, 1) no espa¸o l∞ . As sucess˜es u(k) ≡ (un ) tais que un = δkn = 0 se n=k c o ¯ pertencem a B(0, 1) mas n˜o ´ poss´ extra´ nenhuma subsucess˜o convergente da sucess˜o u(k) porque a e ıvel ır a a os elementos constituem uma base do espa¸o l∞ . c 1 97 3.1.2 Normas equivalentes Duas normas distintas d˜o geralmente valores diferentes para um mesmo elemento do a espa¸o, no entanto, esta diferen¸a quantitativa pode n˜o reflectir uma diferen¸a qualic c a c ´ tativa, j´ que as propriedades topol´gicas podem revelar-se equivalentes. E neste quadro a o que iremos introduzir a no¸˜o de normas equivalentes e verificar que as normas em espa¸os ca c de dimens˜o finita (p. ex. RN ou CN ) s˜o equivalentes. a a Defini¸˜o 3.4 . Duas normas ||.|| e |||.|||, num mesmo espa¸o vectorial E, dizem-se equivca c alentes se existirem C1 , C2 > 0 tais que: C1 ||x|| ≤ |||x||| ≤ C2 ||x|| , ∀x ∈ E (3.1) • Como ´ claro, esta no¸˜o de equivalˆncia entre normas significa que as topologias e ca e tamb´m ser˜o equivalentes, ou seja, que os abertos e fechados ser˜o os mesmos, que um e a a conjunto sendo limitado para uma norma tamb´m o ser´ para outra, que a continuidade e a numa norma implica continuidade na outra, etc. (exerc´ ıcio). Lema 3.1 Seja E um espa¸o normado de dimens˜o finita. Ent˜o, qualquer que seja a c a a norma |||.||| em E, existe R > 0: |||x||| ≤ R, ∀x ∈ {||x||∞ ≤ 1} Demonstra¸˜o: ca (1) Seja e , ..., e(N ) uma base do espa¸o vectorial E, sabemos que sendo x = x1 e(1) + ... + c xn e(n) ent˜o a |||x||| = |||x1 e(1) + ... + xN e(N) ||| ≤ (|||e(1) ||| + ... + |||e(N) |||) max |xi |. i=1,...,N Como ||x||∞ = maxi=1,...,N |xi | ≤ 1 basta tomar R = |||e(1) ||| + ... + ||e(N) ||| > 0. Teorema 3.1 As normas em espa¸os de dimens˜o finita s˜o equivalentes. c a a Demonstra¸˜o: ca Basta ver que qualquer norma |||.||| ´ equivalente ` norma ||.||∞ , devido ` transitividade e a a da rela¸˜o de equivalˆncia. ca e Consideremos o conjunto S = {x ∈ E : ||x||∞ = 1}. S ´ um compacto na topologia de e |||.|||, porque no lema anterior vimos que era limitado e, sendo fechado, isto ´ suficiente, e num espa¸o de dimens˜o finita! c a Como a norma ´ um operador cont´ e ınuo, e S ´ compacto, vai existir um m´ximo e um e a m´ ınimo (generaliza¸˜o do T. Weierstrass): ca C1 ≤ |||x||| ≤ C2 , ∀x ∈ S 98 e C1 > 0 pois |||x||| = 0 sse x = 0 ∈ S. y Ora, qualquer que seja y ∈ E, y = 0 podemos escrever y = ||y||∞ ||y||∞ , onde x = S. Portanto: y C1 ≤ ||| ||| ≤ C2 , ∀y ∈ E\{0} ||y||∞ e obtemos, como pretendiamos, C1 ||y||∞ ≤ |||y||| ≤ C2 ||y||∞ , ∀y ∈ E, incluindo trivialmente o caso y = 0. y ||y||∞ ∈ 1 n Exemplo 3.1 Consideremos a sucess˜o xn = (1 − n2 , n2 +4 ) cujos pontos representamos a ´ ´ nas trˆs figuras em baixo. E obvio que esta sucess˜o tende para o ponto x = (1, 1), o que e a se pretende pˆr em evidˆncia ´ que isso acontece segundo qualquer uma norma em R2 , j´ o e e a que foi isso que acabou de ser demonstrado. Consider´mos trˆs normas diferentes (a que a e correspondem as trˆs figuras), a norma euclidiana ||.||2 , a norma do m´ximo ||.||∞ e a e a norma da soma ||.||1 , que s˜o as mais usuais, e em torno do ponto limite x = (1, 1) foram a consideradas bolas (o nome n˜o se aplica apenas a primeira... B(a, r) = {x : ||x − a|| ≤ r}) a ` ´ a com raios entre 0.5 e 0.1. E f´cil perceber que qualquer que seja a norma, por mais pequeno que seja o raio, ´ sempre poss´vel encontrar um dos elementos da sucess˜o dentro dessa bola e ı a (vizinhan¸a). Isto significa que a sucess˜o converge segundo qualquer uma das normas. c a 1.5 1.25 1 0.75 0.5 0.25 1.5 1.25 1 0.75 0.5 0.25 1.5 1.25 1 0.75 0.5 0.25 2 0.25 0.5 0.75 1 1.25 1.5 0.25 0.5 0.75 1 1.25 1.5 0.25 0.5 0.75 1 1.25 1.5 Por outro lado, tamb´m ´ claro que estabelecer a equivalˆncia entre as normas ||.||2 e ||.||∞, e e e ´ f´cil, podemos mesmo explicitar as constantes. Com efeito, como (dimens˜o=N) e a a ||x||2 = x2 + ... + x2 ≥ max{|x1 |2 , ..., |xN |2 } = ||x||2 , 2 1 N ∞ 2 2 2 2 2 ||x||2 = x1 + ... + xN ≤ N max{|x1 | , ..., |xN | } = N ||x||2 , ∞ conclu´mos que ı ||x||∞ ≤ ||x||2 ≤ √ N||x||∞ . Isto corresponde a dizer, em√dimens˜o 2, que se um quadrado cont´m o c´rculo com o a e ı mesmo raio, um c´rculo com 2 vezes esse raio j´ ir´ conter o quadrado. A equivalˆncia ´ ı a a e e simplesmente isto, e permite concluir que bolas numa certa norma v˜o estar inclu´das em a ı bolas noutra norma e vice-versa2 . Para terminar, referimos que explicitar as constantes Refira-se a este prop´sito que quando a dimens˜o do espa¸o aumenta, seria necess´rio uma hiperesfera o a c a √ com N vezes o hipercubo para que ele estivesse contido nela. Isto indicia que em espa¸os de dimens˜o c a infinita as coisas ir˜o passar-se de forma diferente. Com efeito, quando a dimens˜o tende para infinito os a a hipercubos unit´rios ser˜o infinitamente maiores que as hiperesferas unit´rias. a a a 2 99 para a equivalˆncia entre ||.||1 e ||.||∞ ´ igualmente f´cil. Como, e e a ||x||1 = |x1 | + ... + |xN | ≥ max{|x1 |, ..., |xN |} = ||x||∞ , ||x||1 = |x1 | + ... + |xN | ≤ N max{|x1 |, ..., |xN |} = N ||x||∞ , conclu´mos que ı (o que significa que o losango ir´ estar inclu´do num quadrado com o mesmo raio e que a ı esse quadrado estar´ inclu´do num losango com o dobro do raio). a ı Exemplo 3.2 No caso em que trabalhamos em espa¸os de fun¸oes, as bolas tomam um c c˜ aspecto menos trivial, porque o espa¸o deixa de ter dimens˜o finita. c a Na figura seguinte, a esquerda, representamos a fun¸ao f (x) = 2 cos(x) (curva a cheio) no ` c˜ intervalo [0, 2]. A bola centrada em f e de raio 1, segundo a norma das fun¸oes cont´nuas c˜ ı ||.||∞ , ser´ o conjunto das fun¸oes g tais que ||f − g||∞ = max[0,2] |f (x) − g(x)| < 1, ou seja a c˜ ser´ definida pelas fun¸oes g que verifiquem 2 cos(x) − 1 < g(x) < 2 cos(x) + 1, limites que a c˜ est˜o representados por curvas cont´nuas mais finas e que formam uma banda em redor de a ı c˜ f. Um exemplo de fun¸ao g que pertence a essa bola ´ g(x) = 2 cos(x) + 1 sin(3x), fun¸ao c˜ e 2 representada a tracejado. No gr´fico da direita, voltamos a considerar as mesmas fun¸oes a c˜ 2 1 f e g e uma outra, h(x) = 2 cos(x) + m sin(3x) +2e−200m(x−1) , com m = 5 (em que a ultima ´ parcela, uma gaussiana pronunciada, ´ respons´vel pelo pico v´sivel no gr´fico). Mesmo n˜o e a ı a a estando representada a banda, ´ percept´vel que o pico estar´ fora dos limites, e portanto e ı a fora da bola de raio 1 definida pela norma do m´ximo. a No entanto, este exemplo foi escolhido por outra raz˜o. Se virmos a diferen¸a entre f e h a c 1 c e em termos de area, ou seja em termos da norma L , ||.||1 ,essa diferen¸a ´ menor do que ´ a diferen¸a entre f e g. Mais, podemos mesmo considerar uma sucess˜o de fun¸oes h que, c a c˜ quando o parˆmetro m tende para infinito, ir´ aproximar-se da fun¸ao f. Bom... excepto a a c˜ no ponto x = 1, j´ que o pico ir´ persistir. O limite pontual ser´ uma fun¸ao f , idˆntica a a a a c˜ ˜ e f, mas que no ponto x = 1 ir´ valer 2cos(1) + 2 ∼ 3.08. Do ponto de vista da norma ||.||∞, a a sucess˜o n˜o converge, porque o pico ir´ sempre ficar fora de qualquer bola de raio menor a a a que 1. Do ponto de vista da norma ||.||1 (definida pelo integral do m´dulo) a diferen¸a entre o c as areas ir´ tender para zero, pelo que a sucess˜o ir´ convergir. Isto ´ bem conhecido da ´ a a a e ˜ teoria do integral de Lebesgue, que identifica f e f a menos de conjunto de medida nula (neste caso, o ponto x = 1). 3 3 ||x||∞ ≤ ||x||1 ≤ N ||x||∞. 2 2 1 1 -. 05 1 05 . 1 15 . 2 -. 05 1 05 . 1 15 . 2 Este exemplo torna tamb´m claro que n˜o h´ equivalˆncia entre as normas ||.||∞ e ||.||1 , o e a a e 1 que tamb´m poder´ ser compreendido se pensarmos que a fun¸ao f (x) = √x que est´ na e a c˜ a 100 ¯ bola B(0, 2) definida pela norma em L1 (]0, 1[), j´ que o integral existe, tendo-se ||f ||1 = 2. a No entanto, sendo uma fun¸ao ilimitada n˜o h´ qualquer bola definida pela norma ||.||∞ c˜ a a que contenha essa fun¸ao. c˜ Tamb´m fica claro que, para desenhar os limites duma bola para a norma ||.||∞ basta cone siderar uma banda circundante, mas para desenhar os limites duma bola para a norma ||.||1 ´-nos simplesmente imposs´vel... e ı 3.2 Espa¸os de Banach c O facto de introduzirmos uma topologia num espa¸o normado n˜o significa que exista c a um elemento (pertencente a esse espa¸o) que seja limite de sucess˜es de Cauchy (... como c o ´ no exemplo anterior). E nesse sentido que iremos introduzir a no¸˜o de espa¸o completo, e ca c consequentemente a no¸˜o de espa¸o de Banach (espa¸o normado completo). Come¸amos ca c c c por ver que as sucess˜es convergentes s˜o sucess˜es de Cauchy, mas que o rec´ o a o ıproco pode n˜o ser v´lido. a a Defini¸˜o 3.5 Uma sucess˜o (xn ) num espa¸o normado E diz-se sucess˜o de Cauchy em ca a c a E se m,n→∞ ||xm − xn || −→ 0. Proposi¸˜o 3.1 Se xn → x em E, ent˜o (xn ) ´ sucess˜o de Cauchy em E. ca a e a Demonstra¸˜o: ||xm − xn|| ≤ ||xm − x|| + ||x − xn || −→ 0, quando m, n → ∞. ca Observa¸˜o: O rec´proco desta proposi¸ao nem sempre ser´ v´lido. Ou seja, podemos ca ı c˜ a a ter sucess˜es cujos termos se aproximam indefinidamente, mas que n˜o tˆm limite em E. o a e Isto ´ an´logo ao que se passa com os racionais... uma sucess˜o de Cauchy de racionais pode e a a n˜o ter limite nos racionais, basta pensar na sucess˜o x0 = 1, xn+1 = x2n + x1n cujos termos s˜o a a a √ 3 a sempre racionais, mas que converge para 2, ou na sucess˜o definida por yn = (1 + n )n ∈ Q 3 e cujo limite ´ e . e A solu¸˜o foi considerar essa sucess˜es como sendo n´ meros, constituindo os n´ meros ca o u u reais, completando assim o espa¸o dos racionais, como vimos no in´ do texto. A partir c ıcio da´ o nosso espa¸o comum de trabalho ´ o dos n´ meros reais. No caso das fun¸˜es ir´ ı c e u co a passar-se algo semelhante, mas com a grande diferen¸a de podermos num mesmo espa¸o c c considerar v´rias normas. Assim, se sucess˜es de Cauchy de fun¸˜es cont´ a o co ınuas segundo a norma do m´ximo s˜o ainda fun¸˜es cont´ a a co ınuas, devido ` continuidade uniforme, o mesmo a n˜o ir´ acontecer se considerarmos outra norma, por exemplo a norma L1 . a a Isto poderia significar que tendo obtido uma sucess˜o de Cauchy com o m´todo do ponto a e fixo, esta n˜o teria ponto fixo num simples espa¸o normado. Torna-se por isso conveniente a c trabalhar num espa¸o em que isso n˜o aconte¸a — num espa¸o de Banach: c a c c Defini¸˜o 3.6 Um espa¸o vectorial normado E diz-se espa¸o de Banach se for completo, ca c c ou seja, se toda a sucess˜o de Cauchy em E for uma sucess˜o convergente para um certo a a x ∈ E. 101 Exemplo 3.3 Os exemplos mais simples de espa¸os de Banach, s˜o os pr´prios corpos R c a o N N ou C. ou ainda R ou C. . Um espa¸o vectorial com produto interno que seja completo ´ normalmente designado espa¸o c e c de Hilbert. Como ´ obvio, usando a norma ||x|| = (x.x)1/2 , um espa¸o de Hilbert ser´ e ´ c a sempre um caso particular de um espa¸o de Banach, sendo v´lidas todas as propriedades c a que iremos deduzir de seguida. Num espa¸o normado, um conjunto fechado tem a importante propriedade de conter o c limite de qualquer sucess˜o convergente, cujos termos lhe perten¸am. a c Proposi¸˜o 3.2 Se o conjunto A ´ fechado em E ent˜o ca e a ∀(xn ) ⊆ A : xn → x ⇒ x∈A Demonstra¸˜o: ca Se, por absurdo, x ∈ A, ter´ / ıamos x ∈ E\A que ´ um aberto, existindo assim uma e vizinhan¸a Vε (x) ⊆ E\A e portanto ||x − xn || > ε para qualquer n, contrariando a hip´tese c o de convergˆncia. e Portanto um subespa¸o vectorial fechado de um espa¸o de Banach, ´ ainda um espa¸o c c e c de Banach para a mesma norma. Exerc´ ıcio 3.3 Mostre que o espa¸o de fun¸oes C m [a, b], munido da norma c c˜ ||f||∞,m = sup |f (x)| + sup |f (x)| + ... + sup |f (m) (x)| x∈[a,b] x∈[a,b] x∈[a,b] ´ um espa¸o de Banach. Se m = 0, temos a norma j´ apresentada para as fun¸oes e c a c˜ cont´nuas, e a completude resulta do facto da convergˆncia uniforme de fun¸oes cont´nuas ı e c˜ ı ser uma fun¸ao cont´nua. c˜ ı Exerc´ ıcio 3.4 Verifique que qualquer um dos espa¸os normados apresentados no exerc´cio3.1 c ı ´ um espa¸o de Banach. e c Observa¸˜o: (incompletude das fun¸oes cont´nuas em Lp ). ca c˜ ı Retomamos a ideia enunciada no ultimo exemplo da sec¸˜o anterior, que iremos agora ´ ca analisar mais detalhadamente, num exemplo cl´ssico. Consideremos a sucess˜o de fun¸˜es a a co cont´ ınuas em [0, 2] 1 08 . 06 . 04 . fn (x) = x 1 n se x ∈ [0, 1[ se x ∈ [1, 2], 102 02 . 05 . 1 15 . 2 Vemos que fn ∈ C([0, 2]) ´ uma sucess˜o de Cauchy para a norma L1 , porque e a 1 ||fm − fn ||1 = 0 |xm − xn |dx = | 1 1 m,n→∞ − | −→ 0. m+1 n+1 No entanto verificamos que, pontualmente, a sucess˜o (fn ) converge para uma fun¸˜o a ca que ´ nula em [0, 1[ e ´ igual a 1 em [1, 2], ou seja, uma fun¸˜o que ´ descont´ e e ca e ınua! Conclu´ ımos que C([0, 2]) n˜o ´ completo para a norma L1 . Vejamos que para a norma habitual de C[a, b] a e que ´ ||.||∞ , a sucess˜o em causa n˜o ´ de Cauchy. Com efeito, e a a e ||fm − fn ||∞ = sup |xm − xn | x∈[0,1] e se considerarmos m = 2n, temos (x2n − xn ) = 0 ⇔ x = 0 ou xn = 1 . O m´ximo ´ assim a e 2 1 1/n atingido no ponto ( 2 ) , logo 1 1 1 sup |x2n − xn | = | − | = → 0 4 2 4 x∈[0,1] portanto, como se previa, a sucess˜o n˜o ´ de Cauchy para a norma ||.||∞ . a a e Conclu´ ımos assim que o espa¸o das fun¸˜es cont´ c co ınuas n˜o ´ completo para a norma L1 a e p (nem o ser´, para nenhuma das outras normas L ). a 3.2.1 Operadores Cont´ ınuos Como um espa¸o normado ´ uma estrutura muito geral, que pode ter como elementos c e fun¸˜es, ´ costume designar as fun¸˜es definidas em espa¸os normados por operadores. co e co c Como abreviatura, ´ tamb´m habitual designar a imagem de x pelo operador A por Ax, e e ao inv´s de A(x). Na realidade, este tipo de nota¸˜o ser´ tamb´m coerente com a nota¸˜o e ca a e ca 3 matricial , quando os operadores a considerar forem operadores lineares em espa¸os de c dimens˜o finita. a Defini¸˜o 3.7 Sejam E, F espa¸os normados. Dizemos que um operador A : X ⊆ E → F ca c ´ cont´nuo em X, se para qualquer x ∈ X tivermos e ı ∀(xn ) ⊆ X, xn → x ⇒ Axn → Ax. Com a precau¸˜o devida, encarar os operadores como matrizes pode tamb´m ser uma boa maneira ca e de olhar para esta teoria pela primeira vez. De facto os resultados obtidos para operadores em espa¸os c de Banach ser˜o em particular v´lidos para matrizes (que s˜o operadores lineares e cont´ a a a ınuos em espa¸os c de dimens˜o finita)... o contr´rio nem sempre ser´ v´lido — essa ´ a principal precau¸ao que se deve ter a a a a e c˜ sempre! 3 103 Exemplo 3.4 A pr´pria norma ´ um operador cont´nuo de E em R. Com efeito, se xn → x o e ı em E, ent˜o a | ||xn || − ||x|| | ≤ ||xn − x|| → 0, porque se ||xn|| ≥ ||x|| temos |||xn || − ||x||| = ||xn + x − x|| − ||x|| ≤ ||xn − x|| + ||x|| − ||x||. Da mesma maneira, se ||xn || ≤ ||x||, temos |||xn || − ||x||| = ||x − xn + xn || − ||xn || ≤ ||x − xn || + ||xn || − ||xn ||. Exerc´ ıcio 3.5 Sejam E, F, G espa¸os normados. c a) Mostre que se A, B : X ⊆ E → F forem operadores cont´nuos, A + B ´ um operador ı e cont´nuo, e que para qualquer α ∈ R (ou C) o operador αA ´ cont´nuo. ı e ı b) Mostre que se A : X ⊆ E → Y ⊆ F, B : Y ⊆ F → G s˜o operadores cont´nuos, ent˜o a ı a B ◦ A tamb´m ´ cont´nuo (em X). e e ı (Quando n˜o h´ perigo de confus˜o, ´ normalmente adoptada a nota¸˜o multiplicativa a a a e ca para designar a composi¸˜o, ou seja BA = B ◦ A, tal como nas matrizes) ca 3.2.2 Operadores Lineares De entre os operadores cont´ ınuos, s˜o especialmente importantes aqueles que sejam lineares, a ou seja, que verifiquem as propriedades A(x + y) = Ax + Ay, ∀x, y ∈ E A(αx) = αAx, ∀α ∈ R, ∀x ∈ E. Os operadores lineares4 s˜o cont´ a ınuos se e s´ se forem limitados, ou seja, se verificarem o ||x||E ≤1 sup ||Ax||F < +∞. Como se tratam de operadores lineares, isto significa que transformam qualquer conjunto limitado num conjunto limitado5 . • Sejam E, F espa¸os de Banach. Podemos considerar um espa¸o associado aos operc c adores, o espa¸o dos operadores lineares cont´ c ınuos, L(E, F ), que com a norma ||A||L(E,F ) = sup ||Ax||F = sup ||x||E ≤1 x=0 ||Ax||F ||x||E (3.2) ´ ´ um espa¸o de Banach. E claro que, para qualquer x ∈ E, e c ||Ax||F ≤ ||A||L(E,F ) ||x||E . Esta propriedade ´ v´lida apenas para operadores lineares! e a Reparamos que se A for linear e cont´ ınuo em 0, ent˜o A ´ cont´ a e ınuo em qualquer x, pois xn → x ⇒ Axn − Ax = A(xn − x) → 0. Logo, quando o operador ´ linear e limitado, se considerarmos ||x||E ≤ ε temos ||Ax||F ≤ Cε, logo se e xn → 0 temos Axn → 0, o que significa que A ´ cont´ e ınuo em 0. 5 4 104 Exerc´ ıcio 3.6 Mostre que se A, B ∈ L(E, E), temos ||AB||L(E,E) ≤ ||A||L(E,E) ||B||L(E,E) A introdu¸˜o de operadores lineares ´ importante j´ que, em muitos casos tenta linearizarca e a se o operador para simplificar o seu estudo. Em certos exemplos esta t´cnica pode ser vista e como uma generaliza¸ao da aproxima¸ao local de uma fun¸ao atrav´s da tangente, que c˜ c˜ c˜ e utilizaremos quando falarmos de deriva¸ao de Fr´chet. c˜ e 3.3 M´todo do Ponto Fixo e o Teorema de Banach e Iremos agora concretizar a generaliza¸˜o do m´todo e do teorema do ponto do fixo a espa¸os ca e c de Banach. Seja A um operador qualquer definido num subconjunto X (designado dom´nio) de um ı espa¸o de Banach E, c A : X ⊆ E → E. Pretendemos encontrar os pontos fixos de A, ou seja z ∈ X : z = Az e para esse efeito vamos usar o m´todo do ponto fixo (tamb´m designado m´todo de Picard), e e e x0 ∈ X . xn+1 = Axn Como o m´todo implica repeti¸˜es sucessivas do operador A, ´ natural exigir que imagem e co e ainda esteja no dom´ ınio, ou seja A(X) ⊆ X. Como vimos em R e em C, para assegurar a convergˆncia do m´todo foi usada a no¸˜o e e ca de contractividade, que neste contexto se define da seguinte forma: Defini¸˜o 3.8 Um operador A : X ⊆ E → E, num espa¸o de Banach E diz-se contractivo ca c em X, se existir 0 ≤ L < 1 (chamada constante de contractividade): ||Ax − Ay|| ≤ L||x − y|| , ∀x, y ∈ X. Proposi¸˜o 3.3 Se A ´ contractivo em X, conjunto fechado, ent˜o A ´ cont´nuo em X. ca e a e ı Demonstra¸˜o: ca Com efeito, basta considerar (xn ) ∈ X tal que xn → x ||Axn − Ax|| ≤ L||xn − x|| → 0 ⇒ Axn → Ax. Estamos agora nas condi¸˜es de demonstrar o teorema do ponto fixo de Banach. co 105 Teorema 3.2 (Teorema do ponto fixo de Banach). Seja X um conjunto fechado n˜o vazio6 num espa¸o de Banach E, e seja A um operador a c contractivo em X tal que A(X) ⊆ X. Ent˜o a i) Existe um e um s´ ponto fixo z ∈ X : Az = z o ii) A sucess˜o xn+1 = Axn converge para o ponto fixo z, qualquer que seja x0 ∈ X. a iii) Verificam-se as desigualdades: ||z − xn || ≤ L||z − xn−1 || ≤ Ln ||z − x0 ||, 1 ||z − xn || ≤ 1−L ||xn+1 − xn ||, Ln ||z − xn || ≤ 1−L ||x1 − x0 ||, onde L < 1 ´ a constante de contractividade. e Demonstra¸˜o: ca o 1 ) Prova-se por indu¸˜o que qualquer xn ∈ X, porque assumimos x0 ∈ X, e se xn ∈ X, ca temos xn+1 = Axn ∈ X, pois A(X) ⊆ X. 2o ) (xn ) ´ sucess˜o de Cauchy. e a Como A ´ contractivo em X e xn ∈ X, ∀n ∈ N temos e ||xn+1 − xn || = ||Axn − Axn−1 || ≤ L||xn − xn−1 ||, portanto ||xn+1 −xn || ≤ Ln ||x1 −x0 ||, e introduzindo somas e subtra¸˜es sucessivas, obtemos co assim: ||xn+m −xn || ≤ ||xn+m −xn+m−1 ||+...+||xn+1 −xn || ≤ Ln+m−1 ||x1 −x0 ||+...+Ln ||x1 −x0 || = = Ln (Lm−1 + ... + 1)||x1 − x0 || = Ln que converge para zero quando n, m → ∞. 1 − Lm Ln ||x1 − x0 || ≤ ||x1 − x0 || 1−L 1−L 3o ) Existˆncia e convergˆncia. e e Como E ´ completo e (xn ) ´ sucess˜o de Cauchy, existe z ∈ E tal que xn → z. Por e e a outro lado, como X ´ fechado, conclu´ e ımos que z ∈ X. Como xn → z e A cont´ ınuo (porque ´ contractivo), ent˜o xn+1 = Axn → Az. Pela e a unicidade do limite, temos z = Az, o que prova a existˆncia de um ponto fixo em X. e 4o ) Unicidade: Supondo que existiam z, w ∈ X tais que z = Az e que w = Aw, ent˜o a ||z − w|| = ||Az − Aw|| ≤ L||z − w|| ⇒ (1 − L)||z − w|| ≤ 0 ora como L < 1 temos ||z − w|| ≤ 0, ou seja, ||z − w|| = 0 ⇔ z = w. 5o ) Estimativas: ||z − xn || ≤ ||Az − Axn−1 || ≤ L||z − xn−1 || ≤ ... ≤ Ln ||z − x0 || Uma precau¸˜o... por vezes podem demonstrar-se todas as hip´teses e esquecermo-nos de mostrar que ca o o conjunto X tem elementos. Isso acontece quando X n˜o ´ um conjunto concreto, e ´ definido de forma a e e a verificar certas propriedades... que por vezes nenhum elemento verifica. 6 106 ||z − xn || ≤ ||z − xn+1 || + ||xn+1 − xn || ≤ L||z − xn || + ||xn+1 − xn|| e daqui saiem facilmente as restantes. Observa¸˜o: ca (i) Nesta demonstra¸˜o, ao provarmos que a sucess˜o ´ de Cauchy, asseguramos imeca a e diatamente a existˆncia de ponto fixo o que difere da demonstra¸˜o apresentada para o e ca caso de intervalos limitados em que assegur´mos existˆncia atrav´s do teorema do valor a e e 7 interm´dio . e (ii) Note-se que ainda que esteja estabelecida a equivalˆncia entre normas (como entre e todas as normas no caso de dimens˜o finita), provar a contractividade para uma norma a n˜o significa que ela seja v´lida para as normas equivalentes. A contractividade ´ uma a a e propriedade quantitativa e n˜o qualitativa, e poder´ haver diferen¸as. Por exemplo, em a a c dimens˜o finita, ´ muitas vezes poss´ demonstrar a contractividade, num certo conjunto, a e ıvel ´ para a norma ||.||∞ e n˜o para a norma ||.||1 ou vice-versa. E claro que isso n˜o invalida a a que haja convergˆncia nas duas normas, e se considerarmos um conjunto mais pequeno ser´ e a mesmo poss´ mostrar a contractividade em qualquer das normas equivalentes. ıvel Exemplo 3.5 Consideremos o operador x Af (x) = 1 − f (t)dt 0 1 no espa¸o de Banach E = C[0, R ] com a norma ||f||∞ = max |f(x)|, em que R ≥ 2. O c 1 subconjunto fechado que consideramos ´ X = {f ∈ C[0, R ] : ||f ||∞ ≤ R}, constatando que, e 1 sendo f cont´nua em I = [0, R ], Af ´ ainda uma fun¸ao em cont´nua em I. Vejamos que ı e c˜ ı A(X) ⊆ X. Ora, supondo ||f ||∞ ≤ R, x ||Af||∞ = max |1 − x∈I 0 f (t)dt| ≤ 1 + 1 max |f(x)| ≤ 2. R x∈I Para assegurarmos a convergˆncia, falta apenas verificar a contractividade: e x ||Af − Ag||∞ = max |1 − 1 − x∈I 0 f(t) − g(t)dt| ≤ 1 1 max max |f(t) − g(t)| ≤ ||f − g||∞ . R x∈I t∈[0,x] R Est˜o assim asseguradas as hip´teses do teorema do ponto fixo de Banach, e a convergˆncia a o e −x para o ponto fixo est´ provada. Como j´ tinhamos mencionado, trata-se da fun¸ao e . a a c˜ Em espa¸os de dimens˜o finita podemos usar o teorema do ponto fixo de Brouwer para garantir exc a istˆncia em conjuntos convexos e limitados. Em espa¸os de dimens˜o infinita ´ utilizado um teorema de e c a e Schauder que exige que o operador seja ‘compacto’. 7 107 Exemplo 3.6 Consideremos o sistema em R3   3x1 + x2 = 1  x1 = 1/3 − x2 /3  2x1 + 4x2 + x3 = 0 ⇔ x = −x1 /2 − x3 /4  2  x2 + 2x3 = 2 x3 = 1 − x2 /2 Podemos pois considerar A : R3 → R3 definido por A(x1 , x2 , x3 ) = (1/3 − x2 /3, −x1 /2 − x3 /4, 1 − x2 /2) Vejamos que A ´ contractivo em R3 para a norma ||.||∞ : e   1 (x2 − y2 ) 3 ||Ax − Ay||∞ = ||  1 (x1 − y1 ) + 1 (x3 − y3 )  ||∞ 2 4 1 (x2 − y2 ) 2 1 3 1 3 ||Ax − Ay||∞ ≤ max{ M, M, M } ≤ M 3 4 2 4 e portanto uma constante de contractividade ´ 3 , e sendo contractiva em I 3 , que ´ fechado, e4 R e qualquer aproxima¸ao inicial permite, atrav´s do m´todo do ponto fixo, obter a solu¸ao unica c˜ e e c˜ ´ x ∼ (0.5294, −0.5882, 1.2941). Vemos assim que o teorema do ponto fixo ´ t˜o geral que pode ser aplicado a equa¸˜es e a co que envolvem integrais, a sistemas de equa¸˜es, ou simplesmente a equa¸˜es em R ou C. co co ´ E claro que quanto mais pequena for a constante de contractividade L, mais r´pida ser´ a a a convergˆncia. Como no caso real, podemos falar em ordem de convergˆncia. Conv´m e e e assim restabelecer a defini¸˜o ca Defini¸˜o 3.9 Dizemos que xn converge para z com pelo menos ordem de convergˆncia ca e linear na norma ||.|| se existir K < 1 : Kn = ||en+1 || ≤ K. ||en || designando M = ||x − y||∞ = max{|x1 − y1 |, |x2 − y2 |, |x3 − y3 |}, obtemos assim Quando Kn → 0, diremos que a ordem de convergˆncia ´ supralinear. e e No caso de aplica¸˜o do teorema do ponto fixo, como mostr´mos que ||en+1 || ≤ L||en ||, ca a com L < 1, podemos concluir que a convergˆncia ´ pelo menos linear. Para prosseguirmos e e com a an´lise, avaliando se o limite de Kn existe, precisamos de introduzir a no¸˜o de a ca deriva¸˜o aplicada aos espa¸os de Banach. Havendo duas possibilidades, optamos por inca c troduzir a no¸˜o de deriva¸˜o de Fr´chet e n˜o a de Gateaux, que nos parece mais adequada ca ca e a para os nossos objectivos. Essa no¸˜o de diferenciabilidade permitir´ estender muitos dos ca a crit´rios observados no caso real, e apresentar o m´todo de Newton. e e 108 3.4 Deriva¸˜o de Fr´chet ca e A deriva¸˜o em espa¸os abstractos tem aspectos n˜o triviais, que omitiremos deliberadaca c a mente (para uma compreens˜o aprofundada ver, por exemplo [6]). Iremos concentrar-nos a no objectivo principal que ´ estabelecer resultados an´logos aos que existem em R, e que e a N co a depois possam ser aplicados em R . Estas no¸˜es s˜o imediatamente reconhecidas no caso N em que o c´lculo diferencial em R foi apresentado recorrendo ` no¸˜o de forma diferencial. a a ca Defini¸˜o 3.10 Sejam E, F espa¸os normados e A um operador A : X ⊆ E → F, cujo ca c 8 dom´nio X ´ um aberto . Dizemos que A ´ Fr´chet-diferenci´vel (ou F-diferenci´vel) no ı e e e a a ponto x ∈ X se existir um operador linear T ∈ L(E, F ) tal que: ||A(x + h) − Ax − T h||F = o(||h||E ) quando ||h||E → 0 (3.3) Caso o operador T exista, ´ chamado “derivada de Fr´chet” em x e escrevemos Ax , tendo-se e e A : X −→ L(E, F ) x −→ Ax : E → F (operador linear) Se A for F-diferenci´vel em todos os pontos x ∈ X diremos que A ´ F-diferenci´vel em X. a e a Observa¸˜o: Uma fun¸˜o f : I ⊆ R → R ´ diferenci´vel em x ∈ I, se existir o limite ca ca e a f(y) − f (x) , y∈I, y→x y−x lim que designamos por derivada de f de x, ou abreviadamente f (x). Reparamos que fazendo h = y − x, isto ´ equivalente a e f (x + h) − f (x) → f (x), quando h → 0. h Ou seja, ´ equivalente a dizer que existe um n´mero f (x) : e u |f (x + h) − f(x) − f (x)h| = o(|h|), quando |h| → 0, o que corresponde ` no¸˜o de deriva¸˜o de Fr´chet. a ca ca e Proposi¸˜o 3.4 Se Ax existir ´ unico. ca e´ Demonstra¸˜o: ca ˜ Quando X ´ fechado, diremos que A ´ F-diferenci´vel em X se existir um aberto X ⊃ X onde A ´ e e a e ˜ F-diferenci´vel. Para esse efeito, ´ claro que ´ necess´rio que A esteja definido em X. a e e a 8 109 Seja Ax = T e consideremos outro operador U nas condi¸˜es da defini¸˜o. Ent˜o co ca a ter´ ıamos, para qualquer y ∈ E\{0}, ||(T − U )y||F ||y||E ||T (εy) − U(εy)||F ||εy||E ||T (εy) − A(x + εy) + Ax||F ||A(x + εy) − Ax − U (εy)||F ε→0 ≤ ( + ) −→ 0 ||εy||E ||εy||E = (somando e subtraindo A(x + εy) − Ax com ε > 0), onde εy corresponde ao h da defini¸˜o. ca Usando a defini¸˜o de norma em L(E, F ), concluimos que ||T − U ||L(E,F ) = 0, i.e: ca T = U. Exerc´ ıcio 3.7 Verifique que se A ´ Fr´chet-diferenci´vel, ent˜o A ´ cont´nuo. e e a a e ı que ´ uma aplica¸ao linear RN → RN . Isto ´ uma consequˆncia da f´rmula de Taylor em e c˜ e e o RN , f (y) = f(x) + f (x)(y − x) + o(||y − x||) — Por exemplo, se A(x1 , x2 ) = (x2 + x2 , x1 ex2 ) temos 1 A(x1 ,x2 ) = 2x1 1 x2 e x1 ex2 Exemplo 3.7 O exemplo mais simples, para al´m da deriva¸ao vulgar em R ou C, aparece e c˜ em RN . Com efeito, se considerarmos uma fun¸ao f : RN → RN , a derivada de Fr´chet c˜ e 9 corresponde a considerar a matriz jacobiana ,   ∂f1 ∂f1 (x) . . . ∂xN (x) ∂x1   . . .. . . f (x) =  , . . . ∂fN (x) ∂x1 ... ∂fN (x) ∂xN Observa¸oes: c˜ (i) — A derivada de Fr´chet de qualquer operador constante ´ o operador nulo. e e (ii) — Seja A um operador linear, a sua derivada de Fr´chet em qualquer ponto x ´ e e sempre o pr´prio operador linear (sendo assim constante em x)! o ´ E bom interpretar correctamente esta afirma¸˜o... Como A(x + h) − A(x) − Ah = 0, ca para qualquer ponto x, a derivada ´ sempre Ax = A, ou seja ´ constante relativamente a x. e e Assim a ‘segunda derivada’ seria o operador nulo, j´ que Ax+h − Ax = A − A = 0. Vemos a assim que tudo se mant´m coerente com as propriedades habituais. e Por vezes tamb´m ´ designada matriz jacobiana a transposta desta. Essa escolha implicaria escrever e e [ f] v, quando quisessemos efectuar o produto por v, o que tornaria as nota¸oes mais pesadas. c˜ 9 110 (iii) — A deriva¸˜o, assim definida, possui algumas das propriedades habituais, como a ca linearidade: (A + B) = A + B e (αA) = αA ; ou a propriedade para a composi¸˜o: ca Sendo E, F, G espa¸os de Banach, e A : X ⊆ E → Y ⊆ F, B : Y ⊆ F → G, c diferenci´veis, a aplica¸˜o B ◦ A : X ⊆ E → G ´ diferenci´vel e temos a ca e a (B ◦ A)x = BAx ◦ Ax onde (B ◦ A)x ∈ L(E, G). Para al´m disso, ´ claro que e e ||(BA)x ||L(E,G) ≤ ||BAx ||L(F,G) ||Ax ||L(E,F ) . (3.4) 3.4.1 Corol´rio do Teorema do Ponto Fixo a Com o intuito de aplicar o Teorema do Ponto Fixo de Banach, reparamos que se exigirmos que o conjunto seja convexo10 podemos obter um resultado, semelhante ao do caso real (ou complexo), que relaciona a norma da derivada inferior a L < 1 ` contractividade. a Defini¸˜o 3.11 Um conjunto n˜o vazio X ⊆ E diz-se convexo se verificar ca a x, y ∈ X ⇒ ∀t ∈ [0, 1], x + t(y − x) ∈ X. (3.5) Observa¸˜o: ca Usando a defini¸˜o, ´ f´cil ver que as bolas s˜o conjuntos convexos: porque se x, y ∈ ca e a a B(a, r) = {w ∈ E : ||w − a|| < r}, ent˜o a ||x+t(y −x) −a|| = ||(1−t)(x−a)+t(y −a)|| ≤ (1−t)||x−a||+t||y −a|| ≤ (1−t)r +tr = r. Teorema 3.3 Sejam E, F espa¸os de Banach e seja A um operador Fr´chet-diferenci´vel c e a num convexo X A:X ⊆E→F Se tivermos ||Ax ||L(E,F ) ≤ L < 1, ∀x ∈ X ent˜o a ||Ax − Ay||F ≤ L||x − y||E , ∀x, y ∈ X. Mesmo no caso de I n˜o basta que o m´dulo da derivada seja inferior a 1. A convexidade ´ garanR a o e tida nesse caso porque trabalhamos com intervalos (contendo eles pr´prios os segmentos que definem a o convexidade). Refor¸amos assim a observa¸˜o de que a passagem de contractividade para norma da derivada menor c ca que 1 ´ aqui obtido usando a hip´tese de que o conjunto ´ convexo. e o e 10 111 Demonstra¸˜o: ca Consideramos B(t) = A(x + t(y − x)), com t ∈ [0, 1]. Se x, y ∈ X, como ´ convexo, e temos x + t(y − x) ∈ X. Usando a regra de deriva¸˜o da fun¸˜o composta (3.4), obtemos: ca ca Bt = Ax+t(y−x) (y − x) e vamos usar a seguinte generaliza¸˜o da f´rmula dos acr´scimos finitos (ver p.ex: [6]): ca o e Lema: Seja F um espa¸o de Banach e f : [a, b] → F tal que ||ft ||L(R,F ) ≤ K, ∀t ∈ [a, b]. c Ent˜o ||f (b) − f (a)||F ≤ K(b − a). a Aplicando este resultado a B : [0, 1] → F, como ||Bt ||L(R,F ) = ||Ax+t(y−x) (y − x)||L(R,F ) ≤ ||Ax+t(y−x) ||L(E,F ) ||y − x||L(R,E) e sendo X convexo temos x + t(y − x) ∈ X, logo ||Ax+t(y−x) ||L(E,F ) ≤ L. Portanto, ||Bt ||L(R,F ) ≤ L||y − x||E (reparando que ||y − x||L(R,E) = ||y − x||E ). Isto implica ||B(1) − B(0)||F ≤ L||y − x||E e como B(1) = Ay, B(0) = Ax, o resultado fica provado. Corol´rio 3.1 (do Teorema do Ponto Fixo de Banach). Seja A um operador Fr´cheta e diferenci´vel em X, um conjunto n˜o vazio, convexo e fechado num espa¸o de Banach E. a a c Se A(X) ⊆ X e tivermos ||Ax ||L(E,F ) ≤ L < 1, ∀x ∈ X as condi¸oes do Teorema do Ponto Fixo de Banach est˜o verificadas. c˜ a Observa¸oes: c˜ (i) Se considerarmos os espa¸os RN ou CN e se o conjunto X for limitado ent˜o, sendo c a fechado, ´ um compacto (porque s˜o espa¸os de dimens˜o finita) e basta exigir ||Ax || < 1. e a c a Com efeito ||Ax || ´ uma fun¸˜o cont´ e ca ınua de RN em R e pelo teorema de Weierstrass atinge um m´ximo L < 1. a No caso de se tratar de um conjunto ilimitado, exigir ||Ax || < 1 n˜o basta! Podemos a 2 pensar como contra-exemplo a fun¸˜o A(x) = 1 + x /(x + 1) que verifica |A (x)| < 1 no ca intervalo X = [0, +∞[ e A(X) ⊆ X, no entanto, esta fun¸˜o n˜o tem qualquer ponto fixo ca a em X. Se tra¸armos o gr´fico, c a 3 2.5 2 1.5 1 0.5 0.5 1 1.5 2 2.5 3 112 reparamos que a bissectriz ´ uma ass´ e ımptota do gr´fico de g, e portanto, apesar de se a aproximar da bissectriz, nunca a intersecta. Isto j´ n˜o acontece para uma fun¸˜o que a a ca verifique |A (x)| ≤ L < 1, pois esta condi¸˜o obriga a que haja intersec¸˜o! (Este foi um ca ca exemplo que encontr´mos no in´ a ıcio do cap´ ıtulo 2, ficando agora claro que o m´todo do e ponto fixo nunca poderia convergir). (ii) Mesmo ao aplicarmos este resultado em R vemos como a convexidade ´ importante. e No caso de R a convexidade traduz-se em conexidade e significa podermos aplicar o resultado a um unico intervalo fechado (que pode ser ilimitado), j´ que se considerassemos X como ´ a sendo a reuni˜o de dois intervalos fechados, em que o m´dulo da derivada era inferior a 1, a o poder´ ıamos ter um ponto fixo em cada um deles, contrariando a unicidade. (iii) Se considerarmos uma fun¸˜o g(x) definida em R tal que |g (x)| ≤ L < 1 ent˜o ca a existe um e um s´ ponto fixo em R. Um exemplo ´ considerar g(x) = a cos(x) com |a| < 1. o e 3.4.2 Comportamento assimpt´tico da convergˆncia. o e Estamos agora em condi¸˜es de estudar o comportamento do erro obtido pela itera¸˜o do co ca ponto fixo. Proposi¸˜o 3.5 Seja A um operador F-diferenci´vel numa vizinhan¸a do ponto fixo z. Se ca a c (xn ) ´ a sucess˜o obtida pela aplica¸ao do m´todo do ponto fixo convergente para z, ent˜o e a c˜ e a o erro en = z − xn verifica en+1 en − Az −→ 0. ||en || ||en || Demonstra¸˜o: Sendo z = Az, xn+1 = Axn , temos ca ||xn+1 − z − Az (xn − z)|| = ||Axn − Az − Az (xn − z)|| = o(||xn − z||), portanto ||en+1 − Az en || = o(||en ||), o que significa que ||en+1 − Az en || −→ 0. ||en || e • Este resultado significa que a raz˜o ||en || se aproxima de Az ( ||en || ). Se no caso real, a en+1 n foi imediato estabelecer que o coeficiente assimpt´tico de convergˆncia era |g (z)|, aqui n˜o o e a poderemos dizer que ´ ||Az ||. e Com efeito, o limite de ||en+1 || pode n˜o existir. Isto compreende-se pois pode acontecer a ||en || en que a sucess˜o ||en || n˜o convirja. Qual a diferen¸a com o caso real? No caso real, quando a a c en temos convergˆncia alternada, o valor |en | tamb´m n˜o converge, pode ser ±1, mas ao e e a en calcular o m´dulo, o valor |g (z) |en | | seria sempre |g (z)|. o No entanto, podemos retirar algumas informa¸˜es acerca do comportamento de co 113 ||en+1 || . ||en || Corol´rio 3.2 Nas condi¸oes da proposi¸ao anterior, temos a c˜ c˜ lim sup ||en+1 || ≤ ||Az ||. ||en || Se Az = 0, ent˜o o m´todo do ponto fixo tem convergˆncia supralinear. a e e Demonstra¸˜o: ca Usando a proposi¸˜o anterior, ´ imediato que se Az = 0, ent˜o a convergˆncia ´ supraca e a e e linear. Para obter a estimativa, designamos εn = ||en+1 − Az en || , ||en || que tende para zero, de acordo com a proposi¸˜o anterior, e obtemos ca ||en+1 || ||en+1 − Az en || + ||Az en || en ≤ = εn + ||Az ( )|| ≤ εn + ||Az ||. ||en || ||en|| ||en || • Conclu´ ımos assim que a raz˜o Kn = ||en+1 || pode oscilar, mas no limite os seus valores a ||en || n˜o devem ser superiores a ||Az ||. a A no¸˜o de coeficiente assimpt´tico de convergˆncia pode ser generalizada considerando ca o e ˜ K∞ = lim sup Kn e assim podemos concluir que no m´todo do ponto fixo, quando h´ e a ˜ ∞ ≤ ||Az ||. convergˆncia linear, K e Exemplo 3.8 Consideremos a fun¸ao g(x1 , x2 ) = 0.9(cos(x2 ), sin(x1 )), que tem apenas um c˜ ponto fixo z = (0.7395, 0.6065). Come¸ando com x(0) = (0, 0), colocamos no gr´fico seguinte c a ||en+1 ||∞ os valores de Kn = ||en ||∞ e verificamos que eles oscilam entre os valores 0.513 e 0.665. 0.8 0.6 0.4 0.2 5 10 15 20 25 30 Este exemplo ilustra o facto de n˜o se poder falar no coeficiente assimpt´tico de convergˆncia a o e como o limite, mas apenas como o limite superior. Reparando que || g(z)||∞ = max{0.9 |sin 0.6065| , 0.9 |cos 0.7395|} = max{0.513, 0.665} = 0.665... conclu´mos que a estimativa para K∞ coincide com o valor da norma. ı • Num outro exemplo consideramos g(x1 , x2 , x3 ) = 1 (cos(x1 x3 ), sin(x3 ), sin(x1 + x3 )), com 2 ponto fixo z = (0.4911, 0.1872, 0.3837). Come¸amos com x(0) = (1, 0, 0) e reparamos que a c 114 raz˜o Kn fica constante, pr´ximo de 0.27 at´ n < 12, depois sofre um incremento s´bito e a o e u para n > 18 vai ficar pr´ximo de 1 (ver figura em baixo, curva cont´nua). Quando temos o ı convergˆncia linear e o valor Kn fica muito pr´ximo ou maior que 1, significa que o m´todo e o e deixou de convergir, normalmente porque foi esgotada a precis˜o nos c´lculos. Aumentando a a a precis˜o, verificamos que o salto desaparece (curva a tracejado), tendo sido corrigida a a imprecis˜o num´rica. a e 1.2 1 0.8 0.6 0.4 0.2 5 10 15 20 25 Neste exemplo Kn → 0.2727, valor que ´ mais baixo que || g(z)||∞ = 0.641, como previsto e pela teoria. 3.4.3 Convergˆncia de ordem superior e Pelo que vimos no par´grafo precedente, a ||en+1 − Az en || = o(||en ||), e assim, quando a F-derivada A ´ nula no ponto fixo z, obtiv´mos ||en+1 || = o(1),o que e e ||en || significa que a convergˆncia ´ supralinear. Resta saber se podemos especificar essa cone e vergˆncia em termos de ordem p, definindo: e Defini¸˜o 3.12 Dizemos que xn converge para z com pelo menos ordem de convergˆncia ca e p se ||en+1 || [p] Kn = ≤ K. ||en ||p a e e Quando Kn n˜o tende para zero, podemos dizer que a ordem de convergˆncia ´ exactamente p. No entanto, o que nos interessa neste momento saber ´ se o facto de Az = 0 e implica uma convergˆncia pelo menos quadr´tica, como acontecia no caso real, quando a e a fun¸˜o era regular. ca Aqui tamb´m ser´ necess´rio considerar uma maior regularidade para A, de forma a e a a que possa ser estabelecido um desenvolvimento de segunda ordem, 1 A(x + h) = Ax + Ax h + Ax (h, h) + o(||h||2 ), 2 em que Ax ´ uma fun¸˜o bilinear cont´ e ca ınua correspondente ` segunda derivada (no caso de a N R corresponde a considerar as matrizes hessianas). 115 [p] Desta forma, obtemos 1 xn+1 − z = Axn − Az = Az (xn − z) + Az (xn − z, xn − z) + o(||xn − z||2 ), 2 e portanto, como supˆmos Az = 0, o en 1 en+1 1 en , )|| = εn = o(1), ||en+1 + Az (en , en )|| = o(||en ||2 ) ⇔ || + Az ( 2 2 ||en || 2 ||en || ||en || ||en+1 || 1 ≤ ||Az || + εn ≤ K, 2 ||en || 2 ˜ ou seja, a convergˆncia ´ pelo menos quadr´tica e temos K∞ ≤ 1 ||Az ||. e e a 2 o que significa que11 3.4.4 M´todo de Newton e Neste contexto geral dos espa¸os de Banach, apenas fazemos uma breve referˆncia ao m´todo c e e de Newton, j´ que iremos ver no pr´ximo cap´ a o ıtulo a aplica¸˜o a sistemas n˜o-lineares, que ca a nos ir´ interessar particularmente. a Tal como vimos, no estudo em R ou em C, o m´todo de Newton aparece como um caso e particular do m´todo do ponto fixo, tendo uma convergˆncia quadr´tica desde que a fun¸˜o e e a ca seja diferenci´vel e que a derivada n˜o se anule. a a No caso dos espa¸os de Banach, fazemos aparecer de forma semelhante o m´todo de c e Newton, exigindo que o operador seja F-diferenci´vel, e que a derivada de Fr´chet seja ina e vert´ numa vizinhan¸a da solu¸˜o. Nessas condi¸˜es, podemos estabelecer a equivalˆncia: ıvel c ca co e Ax = 0 ⇔ (Ax )−1 (Ax) = 0, porque o inverso do operador linear cont´ ınuo Ax ser´ um operador linear cont´ a ınuo, e portanto s´ ser´ nulo quando o seu argumento for nulo (neste caso o argumento ´ Ax). o a e Assim, Ax = 0 ´ equivalente a e x = x − (Ax )−1 (Ax) e, dado x0 , obtemos o m´todo de Newton e xn+1 = xn − (Axn )−1 (Axn ), que nesta generaliza¸˜o tamb´m ´ designado como m´todo de Newton-Kantorovich. ca e e e Observa¸˜o: ca 11 (3.6) A norma ||Az || ´ a norma das aplica¸oes bilineares cont´ e c˜ ınuas, definida por ||B|| = sup ||B(v, w)|| . v,w=0 ||v|| ||w|| 116 Podemos verificar que o m´todo de Newton-Kantorovich tem convergˆncia supralinear. e e −1 Sendo Gx = x − (Ax ) (Ax), e como z = Gz, podemos ver que Gz = 0. Com efeito, G(z + h) − G(z) = z + h − (Az+h )−1 (A(z + h)) − z, e reparando que A(z + h) = A(z) + Az+h h + o(||h||) = Az+h h + o(||h||), temos G(z + h) − G(z) = h − (Az+h )−1 (A(z + h)) = h − (Az+h )−1 (Az+h h + o(||h||)). Usando a linearidade de (Az+h )−1 , G(z + h) − G(z) = h − h − (Az+h )−1 (o(||h||)) = o(||h||), a porque ||(Az+h )−1 (o(||h||))|| ≤ ||(Az+h )−1 || o(||h||) = o(||h||), admitindo que (Az+h )−1 s˜o limitados. Podemos mesmo ver que se trata de convergˆncia quadr´tica, se admitirmos que o(||h||) = e a O(||h||2 ), o que poderia ser obtido considerando um desenvolvimento de segunda ordem em A, como referido antes. 3.5 Exerc´ ıcios 1. Seja E um espa¸o de Banach, e A um operador linear cont´ c ınuo em E, isto ´ A ∈ L(E, E). e a) Mostre que se ||A||L(E,E) < 1, ent˜o o operador (I −A)−1 existe e pertence a L(E, E). a Para al´m disso, mostre que se verifica a igualdade com a s´rie de Neumann (que ´ uma e e e generaliza¸˜o da s´rie geom´trica), ca e e (I − A) −1 = ∞ k=0 Ak , e que ||(I − A)−1 ||L(E,E) ≤ 1 1 − ||A||L(E,E) Sugest˜o: A partir da equivalˆncia (I − A)X = I ⇔ X = I + AX, escolha G(X) = a e I + AX como fun¸˜o iteradora e aplique o teorema do ponto fixo de Banach. ca b) Mostre que se A ∈ L(E, E) for invert´ e se tivermos ıvel ||B − A|| < ent˜o B ´ invertivel e temos: a e ||B −1 || ≤ ||A−1 || 1 − ||A−1 || ||B − A|| 1 ||A−1 || Sugest˜o: Prove que B −1 ´ a solu¸˜o unica de X = A−1 + (I − A−1 B)X, e aplique o a e ca ´ teorema do ponto fixo de Banach. Nota: Deve distinguir-se invertibilidade de invertibilidade a direita ou a esquerda! Dize` ` mos que T ´ invert´vel a direita se ∃X : T X = I, e que T ´ invert´vel a esquerda se e ı ` e ı ` 117 ∃X : XT = I. Por exemplo, se D ´ o operador deriva¸˜o e P o operador de primitiva¸˜o, e ca ca sabemos que DP = I, mas P D = I (a igualdade s´ ´ v´lida a menos da constante de o e a primitiva¸˜o). ca Apenas quando se verifica invertibilidade a esquerda e a direita dizemos que T ´ in` ` e vert´vel. ı Neste exerc´ ıcio, nas sugest˜es, apenas s˜o dadas indica¸˜es para mostrar a invertibilio a co dade ` direita. a 2. Considere a equa¸˜o de Fredholm ca b f (x) = λ a K(x, y)f(y)dy + φ(x) em que K ∈ C([a, b] × [a, b]), e φ ∈ C[a, b]. a) Mostre que se |λ|(b − a) max |K(x, y)| < 1 x,y∈[a,b] ent˜o existe uma e uma s´ solu¸˜o f cont´ a o ca ınua em [a, b] e que o m´todo do Ponto Fixo define e uma sucess˜o de fun¸˜es que converge uniformemente para f. a co b) Usando a al´ ınea anterior, indique um intervalo para λ tal que 1 λ −1 (x2 + y 2 )f (y)dy + x = f(x) tenha solu¸˜o unica em C[−1, 1]. ca ´ c) Considere λ = 1/5 em b). Usando como iterada inicial f0 (x) = 0, determine as duas primeiras iteradas e conclua acerca da solu¸˜o. ca Se utilizar f0 (x) = 1, determine um majorante do erro para f10 na norma ||.||∞, calculando apenas a primeira iterada. 3. Considere I = [d − ε, d + ε], e o espa¸o das fun¸˜es cont´ c co ınuas C(I) munido da norma ||f ||e = max |f (x)e−M|x−d| | x∈I com M ≥ 0 fixo. Mostre que esta norma ´ equivalente ´ norma ||f ||∞ . e a 4. (Teorema de Picard-Lindel¨f ) o a) Consideremos o problema de Cauchy y = f (x, y) y(x0 ) = y0 e o conjunto Q = [x0 − a, x0 + a] × [y0 − b, y0 + b], onde f ´ uma fun¸˜o Lipschitziana: e ca |f (x, y) − f (x, w)| ≤ M|y − w|, ∀(x, y), (x, w) ∈ Q verificando |f (x, y)| ≤ K, ∀(x, y) ∈ Q. 118 b 1 Se 0 < c < min{a, K , M }, ent˜o existe uma e uma s´ solu¸˜o cont´ a o ca ınua no intervalo I = [x0 − c, x0 + c] e a itera¸ao de Picard definida por y0 (x) = y0 , c˜ x yn+1 (x) = y0 + x0 f (t, yn (t))dt converge uniformemente para a solu¸˜o, no intervalo I. ca Sugest˜o: Utilizar o conjunto fechado S = {φ ∈ C(I) : ||φ − y0 ||∞ ≤ b}. a b b) Mostre que pode exigir apenas 0 < c < min{a, K } se considerar em a) a norma ||f ||e utilizada no exerc´ anterior. ıcio c) Considere a equa¸˜o diferencial ca y − y 2 /2 = x2 /2 com y(0) = 0. Aplique o resultado de a) usando a = 1, b = 1. Calcule 2 iteradas e determine um majorante do erro na norma ||.||∞ . 5. Considere os operadores Am : C[0, 1] → C[0, 1], com m ∈ N x Am f(x) = 0 (f (t))m dt x de a) Mostre que a derivada de Fr´chet de Am ´ Am,f (h) = m 0 f (t)m−1 h(t)dt. e e o ca b) Mostre que no espa¸o X = {f ∈ C[0, 1] : ||f ||∞ ≤ 3 } existe uma e uma s´ solu¸˜o f c 4 x x (f (t)) dt + 0 0 5 (f(t))2 dt + 4f(x) = φ(x), (3.7) onde ||φ||∞ < 1. Indique um m´todo iterativo que convirja, qualquer que seja a iterada e inicial em X. c) Determine um n´ mero de iteradas suficiente pelo m´todo do ponto fixo come¸ando u e c com f0 = 0, para que fn , uma aproxima¸˜o da solu¸˜o da equa¸˜o (3.7) verifique ||en ||∞ < ca ca ca 10−2 . 6. a) Seja E um espa¸o de Banach e X um conjunto n˜o vazio, fechado. Mostre que um c a operador cont´ ınuo A : E → E que verifica X ⊆ A(X) (pode assumir que A(X) ´ fechado) e e ||Ax − Ay|| ≥ L||x − y||, ∀x, y ∈ X para um certo L > 1, tem um e um s´ ponto fixo z ∈ X, e que o m´todo xn = Axn+1 o e converge para esse ponto fixo, qualquer que seja x0 ∈ X. b) Seja A uma contrac¸˜o num aberto n˜o vazio X, onde se sabe que existe um ponto ca a fixo z de A. Mostre que existe um subconjunto de X onde s˜o verificadas as condi¸˜es do Teorema a co do Ponto Fixo de Banach, e conclua que pode assegurar convergˆncia local do m´todo do e e ponto fixo. 119 7. Considere E = RN . Mostre que uma matriz A com a diagonal estritamente dominante por linhas ´ invert´ e ıvel, escrevendo A = DC em que D ´ a matriz diagonal e, verifie cando que ||I − C||∞ < 1. Conclua que o processo iterativo X0 = I; Xn+1 = I + Xn − C Xn permite obter uma matriz X tal que A−1 = D−1 X. 8. Considere a sucess˜o de fun¸˜es em C([a, b]), a co fn+1 (x) = g(fn (x)) para um qualquer f0 ∈ X = {f ∈ C([a, b]) : f([a, b]) ⊆ [a, b]}. a) Mostre que X ´ fechado em C([a, b]) para a norma ||.||∞ . e b) Mostre que se g([a, b]) ⊆ [a, b] e g for contractiva em [a, b], ent˜o a sucess˜o (fn ) a a converge uniformemente para f (x) = z, em que z ´ o ponto fixo de g em [a, b]. e c) Aplique o resultado anterior para determinar a fun¸˜o que ´ o limite da sucess˜o de ca e a fun¸˜es em C([0, 1]), co fn+1 (x) = cos(fn (x)) para um qualquer f0 que verifique f0 ([0, 1]) ⊆ [0, 1]. 1 9. a) Verifique que a sucess˜o wk = k(k+1) est´ em l1 , ou seja, a a ||w||1 = ∞ k=1 |wk | < +∞ e determine ||w||1 . b) Mostre que se a iterada inicial x(0) ∈ l1 , a sucess˜o de sucess˜es definida por a o x(n+1) = (x(n) )/2 + w converge para a sucess˜o 2w na norma ||.||1 . a 10. Considere a equa¸˜o integral ca x f(x) = x + 0 (f(t))2 dt que pretendemos resolver em Y = C([0, a]), para a < 1/2, usando o operador iterativo x Af (x) = x + 0 (f (t))2 dt a) Mostre que a derivada de Fr´chet de A ´ o operador dado por e e x (A (f)h)(x) = 0 2h(t)f (t)dt b) Mostre que ||A (f)||L(Y,Y ) ≤ 2a||f ||∞ . c) Conclua que, se considerarmos o subconjunto X = {f ∈ C([0, a]) : ||f ||∞ ≤ M } com 1 1 ≤ M < 2a , existe uma e uma s´ fun¸˜o f ∈ X que verifica a equa¸˜o integral. o ca ca 120 d) Considere a = 1/3, M = 1 e fn+1 = Afn , com f0 (x) = 0. Determine f3 e um majorante para o erro absoluto ||e3 ||∞ . 11. Seja A um operador linear cont´ ınuo e invert´ num espa¸o de Banach E. Considere ıvel c o seguinte m´todo iterativo para determinar A−1 : e Xn+1 = 2Xn − Xn AXn a) Mostre que se considerarmos um X0 inicial, tal que ||I − AX0 ||L(E,E) < 1 , e que 2 ||I − X0 A||L(E,E) < 1 , ent˜o o m´todo converge para A−1 . a e 2 Sugest˜o: Para verificar uma das condi¸oes do teorema do ponto fixo, num conjunto a c˜ fechado apropriado, utilize, por exemplo, a igualdade I − A(2X − XAX) = (I − AX)2 . b) Mostre que a convergˆncia do m´todo ´ quadr´tica, ou seja, verifica-se: e e e a ||A−1 − Xn+1 ||L(E,E) ≤ K||A−1 − Xn ||2 L(E,E) onde K = ||A||L(E,E) . e c) Seja L = ||I − ωA||L(E,E) < 1, para um certo ω. Mostre que A−1 pode tamb´m ser aproximado pelo m´todo de relaxa¸˜o Yn+1 = Yn + ω(I − AYn ), e verifique que e ca ||A−1 − Yn || ≤ ω Ln . 1−L Conclua que se ||A|| < 1 e n > log( 1−L )/ log(L), ent˜o podemos considerar Yn como iterada a 2ω inicial X0 , no m´todo da al´ e ınea a), e assim obter uma rapidez de convergˆncia quadr´tica. e a 121 Cap´ ıtulo 4 Resolu¸˜o de Sistemas de Equa¸oes ca c˜ Vamos agora nos concentrar na resolu¸˜o de sistemas de equa¸˜es em RN , aplicando os ca co resultados obtidos no cap´ ıtulo anterior. Come¸aremos por ver o caso dos sistemas de c equa¸˜es n˜o lineares, e depois iremos ver mais especificamente o caso dos sistemas lineares. co a Iniciamos este cap´ ıtulo estudando as normas de operadores lineares em RN , ou seja, normas de matrizes. 4.1 Normas de Matrizes Como estaremos interessados em trabalhar em RN , vamos come¸ar por relembrar algumas c N normas vectoriais, notando que todas as normas em R s˜o equivalentes, pois trata-se a de um espa¸o de dimens˜o finita. A partir dessas normas iremos introduzir normas mac a triciais, j´ que os operadores lineares em L(RN , RN ) s˜o representados por matrizes, e a a podemos caracterizar de forma f´cil essas normas, a partir das normas vectoriais definidas a em RN . Estaremos apenas interessados no caso de matrizes quadradas, mas com as devidas adapta¸˜es estas normas e as suas express˜es podem ser generalizadas a qualquer tipo de co o matrizes. Consideremos uma norma qualquer em RN e seja A : RN → RN um operador linear (que ser´ uma matriz quadrada). a Observa¸˜o: (uma matriz define um operador cont´nuo para qualquer norma). ca ı Basta ver que ´ cont´ e ınuo em zero para uma norma, porque as outras s˜o equivalentes — a escolhemos a euclidiana ||.||2 . Com efeito, designando por ai as linhas de A, e por ei a base, se ||x(k) ||2 → 0 temos N N ||Ax ||2 = || (k) i=1 a .x e ||2 ≤ i (k) i i=1 |ai .x(k) | ||ei ||2 ≤ e aplicando a desigualdade de Cauchy-Schwarz temos N ≤ ||x(k) ||2 i=1 ||ai ||2 ||ei ||2 → 0. 122 Conclu´ ımos que as matrizes definem operadores lineares cont´ ınuos em RN , e podemos definir a norma de uma matriz induzida pela norma ||.|| aplicando a defini¸˜o geral, usada ca 1 para operadores lineares cont´ ınuos , ||A|| = sup ||Ax|| = max ||Ax|| = sup ||x||≤1 ||x||=1 ||Ax|| ||x||=0 ||x|| (4.1) Proposi¸˜o 4.1 Sejam A, B matrizes quadradas, x um vector e ||A|| uma norma matricial ca de A induzida por ||.||, em RN . Temos: a) ||Ax|| ≤ ||A|| ||x|| (o que significa que a norma matricial ´ compat´ e ıvel com a norma vectorial) b) ||AB|| ≤ ||A|| ||B|| (o que significa que a norma matricial ´ regular) e Demonstra¸˜o: ca a) Para um qualquer vector x = 0, ||A|| = sup ||Ay|| ||Ax|| ≥ ||x|| ||y||=0 ||y|| logo ||Ax|| ≤ ||A|| ||x|| e para x = 0 ´ trivial. e b) Como ||AB|| = sup||x||≤1 ||ABx|| usando a) temos: ||AB|| ≤ sup ||A|| ||Bx|| = ||A|| sup ||Bx|| = ||A|| ||B||. ||x||≤1 ||x||≤1 Exemplo 4.1 Consideremos a norma (“da soma”) ||x||1 = express˜o para a norma induzida. Ora, a N N N N N N i=1 |xi |. Queremos obter uma N ||Ax||1 = i=1 | j=1 aij xj | ≤ N i=1 j=1 |aij | |xj | ≤ N j=1 |xj | i=1 |aij | ≤ ≤ j=1 |xj | max j=1,...,N j=1 |aij | ≤ α||x||1 1 As normas induzidas n˜o s˜o as unicas normas matriciais que se podem definir em L(RN , RN ). Por a a ´ exemplo, a norma de Fr¨benius o N ||A||F r = i,j=1 |aij |2 n˜o ´ induzida por nenhuma norma de RN . a e Esta norma corresponde a considerar matriz como um vector e aplicar a norma euclidiana. No entanto, como iremos ver, a express˜o da norma matricial induzida pela norma euclidiana ´ diferente. Pode mostrara e se que ||A||2 ≤ ||A||F r 123 e portanto ||A||1 ≤ α, definindo α = maxj=1,...,N N |aij |. i=1 Com efeito, tamb´m temos α ≤ ||A||1 , pois escolhendo v = ek (vector da base can´nica), e o N onde k ´ o ´ndice que d´ o j m´ximo na defini¸ao de α, isto ´ α = i=1 |aik |, e como e ı a a c˜ e ||v||1 = 1, obtemos: N N N ||Av||1 = | i=1 j=1 aij δjk | = i=1 |aik | = α, em que δij ´ o delta de Kronecker (δij = 0 se i = j, e δij = 1 se i = j). e Assim, ||A||1 ≥ ||Av||1 = α e conclu´mos a igualdade, ou seja: ı n ||A||1 = max j=1,...,N i=1 |aij |. (4.2) — Para calcular esta norma matricial basta, portanto, somar em cada coluna os m´dulos o dos elementos, e encontrar o m´ximo desses valores. Este processo leva a que esta norma a tamb´m seja conhecida como “norma das colunas”. e Exemplo 4.2 Analogamente, considerando a norma (“do m´ximo”) a ||x||∞ = max{|x1 |, . . . , |xN |} obtemos a norma matricial N ||A||∞ = max i=1,...,N j=1 |aij |, (4.3) ou seja, para calcular esta norma somamos em cada linha os m´dulos dos elementos e o encontramos o m´ximo. Neste caso, ´ costume designar esta norma, como “norma das a e linhas”. Podemos justificar a express˜o dada para a norma induzida. Com efeito sendo α = ||A||∞, a obtemos N N ||Ax||∞ = max | i=1,...,N j=1 aij xj | ≤ max i=1,...,N j=1 |aij | max |xj | = α||x||∞ , j=1,...,N e isto justifica ||Ax||∞ ≤ α. Para obtermos a igualdade basta considerar um valor particular. ||x||∞ No caso em que a matriz tem elementos positivos esse valor ser´ v = (1, ..., 1), porque como a ||v||∞ = 1, obtemos: N N ||Av||∞ = max | i=1,...,N aij 1| = max j=1 i=1,...,N aij = α. j=1 Para uma matriz qualquer, poder´amos considerar v = (±1, ..., ±1), em que os sinais seriam ı escolhidos de forma a que na linha m, em que se atingisse o m´ximo, o produto amj vj fosse a positivo... para isso basta escolher sinais iguais aos sinais de amj . No caso complexo, o mesmo efeito seria obtido considerando o conjugado do argumento de amj . 124 Outra norma importante em RN ´ a norma euclidiana e ||x||2 = x2 + . . . + x2 , 1 N mas j´ n˜o ´ t˜o f´cil de calcular a norma que induz nas matrizes. Para obter ||A||2 a a e a a necessitamos de calcular um raio espectral. Defini¸˜o 4.1 Dada uma matriz C, com valores pr´prios λ1 , . . . , λN , definimos raio esca o pectral de C como sendo o valor ρ(C) = max |λi | i=1,... ,N (4.4) Exemplo 4.3 A norma euclidiana induz a norma matricial ||A||2 = ρ(A∗ A) (4.5) ¯ onde A∗ = AT e onde ρ ´ o raio espectral. e ´ claro que no caso de matrizes hermitianas, ou seja A∗ = A, temos: E ||A||2 = ρ(A) pois os valores pr´prios de A2 ser˜o os valores pr´prios de A ao quadrado, reparando que o a o 2 2 det(λ I − A ) = det(λI − A) det(λI + A). • No caso de matrizes hermitianas, podemos deduzir este resultado usando a decomposi¸ao c˜ ∗ e a e espectral A = U DU, em que U ´ uma matriz unit´ria e D ´ uma matriz diagonal (forma de Schur). Notando que ||x||2 = x∗ x, e que ||U ||2 = ||U ∗ ||2 = 1, obtemos 2 ||Ax||2 = (Ax)∗ Ax = x∗ A∗ Ax = x∗ UD∗ U ∗ U ∗ DU x ≤ ||x∗ ||2 ||D||2 ||x||2 = ||D||2 ||x||2 . 2 2 2 2 Como para matrizes diagonais ´ f´cil ver que ||D||2 = maxi=1,...,N |dii |, e como neste caso e a a decomposi¸ao espectral diz-nos que a matriz D tem os valores pr´prios de A, conclu´mos c˜ o ı que ||D||2 = maxi=1,...,N |λi | = ρ(A). Fica assim demonstrado que ||A||2 ≤ ρ(A). Para obter a igualdade, basta considerar v como sendo um vector pr´prio unit´rio associado ao valores o a pr´prio dominante, |λm |. Nesse caso o ||Av||2 = ||λm v||2 = |λm |2 ||v||2 = ρ(A)2 . 2 2 2 • No caso de uma matriz qualquer o racioc´nio ´ semelhante. Basta reparar que ||Ax||2 = ı e 2 ∗ ∗ ∗ x A Ax, e que A A ´ uma matriz hermitiana com valores pr´prios µ1 , ..., µN n˜o negativos. e o a ˜ ˜˜ ˜ Portanto, obtemos A∗ A = U ∗ DU, em que D ter´ na diagonal os valores pr´prios de A∗ A. a o Assim, ˜ ˜˜ ˜ ˜ ||Ax||2 = x∗ U ∗ DUx ≤ ||x∗ ||2 ||D||2 ||x||2 = ||D||2 ||x||2 2 2 ˜ e como ||D||2 = maxi=1,...,N µi = ρ(A∗ A), conclu´mos que ||A||2 ≤ ρ(A∗ A). Para verificar ı 2 a igualdade tamb´m ´ semelhante, reparando que ||Av||2 = v ∗ (A∗ Av) = v∗ (µm v) = µm = e e 2 ρ(A∗ A). 125 O raio espectral est´ relacionado com as normas induzidas, podendo ser encarado como a o ´nfimo de todas as normas induzidas, como podemos concluir pelo seguinte resultado. ı Teorema 4.1 (i) Qualquer que seja a norma matricial ||.|| (induzida por uma norma vectorial) temos, para qualquer matriz A, ρ(A) ≤ ||A||. (4.6) (ii) Dada uma qualquer matriz A, para todo o ε > 0, existe2 uma norma induzida ||.|| tal que: ||A|| ≤ ρ(A) + ε (4.7) Demonstra¸˜o: ca i) Como ρ(A) = |λ|, para um certo λ valor pr´prio de A, temos Av = λv para certo o v = 0, e portanto |λ| ||v|| ||Ax|| ||A|| = sup ≥ ≥ |λ|. ||v|| x=0 ||x|| ii) Seguimos a demonstra¸˜o de [25]. Consideramos a decomposi¸˜o na forma can´nica ca ca o de Jordan A = P JP −1 em que J = JD + JE , sendo JD uma matriz diagonal e JE a matriz contendo os 1’s na subdiagonal superior, respeitantes aos blocos de Jordan. Tomando a matriz diagonal Dε = [εi−1 δij ] em que δij ´ o delta de Kronecker, obtemos e −1 Dε JDε = JD + ε JE , e portanto −1 ||Dε JDε ||∞ ≤ ||JD ||∞ + ε = ρ(A) + ε . −1 Resta ver que existe uma norma induzida ||.|| tal que ||A|| = ||Dε JDε ||∞ . Para isso −1 consideramos como norma vectorial ||x|| = ||Dε P −1 x||∞ . Basta verificar que −1 −1 −1 −1 x|| P Ax|| ||Ax|| = supx=0 ||Dε−1 P −1 x|| ∞ = supx=0 ||Dε−1JP−1 x|| ∞ = ||x|| ||Dε ||Dε P ∞ ∞ −1 −1 −1 ||(Dε JDε )P −1 Dε x||∞ ||Dε JDε y||∞ −1 −1 supx=0 = supy=P −1 Dε x = ||Dε JDε ||∞ . −1 ||y||∞ ||P −1 Dε x||∞ y=0 = ||A|| = supx=0 4.2 M´todos Iterativos para Sistemas de Equa¸oes N˜o e c˜ a Lineares Iremos agora apresentar m´todos iterativos que permitem aproximara a solu¸˜o de sistemas e ca de equa¸˜es. Come¸amos por apresentar o caso geral, em que se sup˜e que o sistema pode ou co c o A norma obtida em (ii) depende a priori da matriz A. Note-se que ∀A, ∀ε > 0 ∃||.|| : ||A|| ≤ ρ(A) + ε, n˜o ´ equivalente a ∀ε > 0 ∃||.|| : ∀A, ||A|| ≤ ρ(A) + ε. a e Por outro lado, conv´m referir que o facto de se garantir que se trata de uma norma induzida permite e saber que se trata de uma norma compat´ e regular. ıvel 2 126 n˜o ser linear. No caso de se tratar de um sistema linear, os m´todos iterativos constituem a e ´ apenas um complemento aos m´todos directos conhecidos da Algebra Linear (p.ex: m´todo e e de elimina¸˜o de Gauss, de que falaremos mais ` frente). ca a Tendo discutido as normas matriciais em RN , estamos nas condi¸˜es de aplicar o corol´rio co a do teorema do ponto fixo usando a matriz jacobiana, que corresponde ` derivada de Fr´chet a e em RN . Sendo assim, dado um sistema de equa¸˜es em RN co   f1 (x1 , . . . , xN ) = 0,  . . .   f (x , . . . , x ) = 0, N 1 N Sendo G(x) a matriz jacobiana de G calculada no ponto x,obtemos como consequˆncia e N imediata do que vimos no cap´ ıtulo anterior, o seguinte teorema do ponto fixo em R : que podemos escrever abreviadamente F (x) = 0, estabelecemos uma equivalˆncia com o e sistema na forma x = G(x), ou seja,   x1 = g1 (x1 , . . . , xN ),  . . .   x = g (x , . . . , x ), N N 1 N Corol´rio 4.1 (do Teorema de Ponto Fixo de Banach). Seja D um conjunto n˜o vazio, a a N fechado e convexo de R . Se G ∈ C 1 (D) e ||.|| ´ uma norma qualquer em RN , tal que: e i) || G(x)|| ≤ L < 1, ∀x ∈ D ii) G(D) ⊆ D ent˜o estamos nas condi¸oes do Teorema do Ponto Fixo de Banach, logo: a c˜ i) Existe um e um s´ ponto fixo z ∈ D : z = G(z) (⇔ F (z) = 0) o ii) O m´todo do ponto fixo x(n+1) = G(x(n) ) converge para z, qualquer que seja x0 ∈ D. e iii) S˜o v´lidas as estimativas a a ||z − x(n) || ≤ L||z − x(n−1) || ≤ Ln ||z − x(0) || 1 ||z − x(n) || ≤ 1−L ||x(n+1) − x(n) || Ln ||z − x(n) || ≤ 1−L ||x(1) − x(0) || Exemplo 4.4 Se retomarmos o sistema que j´ vimos num exemplo anterior: a   3x1 + x2 = 1   x1 = 1/3 − x2 /3 2x1 + 4x2 + x3 = 0 ⇔ x2 = −x1 /2 − x3 /4   x2 + 2x3 = 2 x3 = 1 − x2 /2 127 em que consider´mos G : R3 → R3 definido por a      1/3 0 −1/3 0 x1 0 −1/4   x2  = b + Ax G(x) =  0  +  −1/2 1 0 −1/2 0 x3 temos || G(x)||∞ = ||A||∞ = 5/6 < 1, e garantimos a existˆncia e unicidade de solu¸ao e c˜ 3 em R , bem como a convergˆncia do m´todo. Alternativamente, com a norma ||.||1 , tamb´m e e e obteriamos a contractividade, pois ||A||1 = 3/4 < 1. Mas como j´ foi referido, pode haver a casos em que seja poss´vel obter contractividade com uma das normas e n˜o com a outra, ı a o que n˜o impede haver convergˆncia em ambas. a e Exemplo 4.5 Consideremos agora o sistema n˜o-linear: a 2x − cos(x + y) = 2 3y − sin(x + y) = 6 a Vamos ver que existe uma e uma s´ solu¸ao em R2 e que ela est´ em X = [1/2, 3/2] × o c˜ [5/3, 7/3]. Com efeito, se considerarmos G(x, y) = (cos(x + y)/2 + 1, sin(x + y)/3 + 2), a matriz jacobiana de G vem G(x, y) = − sin(x + y)/2 − sin(x + y)/2 cos(x + y)/3 cos(x + y)/3 Aplicando o corol´rio do T. Ponto Fixo, vemos que || G(x, y)||1 ≤ 5/6 < 1 e conclu´mos a ı 2 que existe uma e uma s´ solu¸ao em R (repare-se que se escolhessemos a norma ||.||∞ o c˜ ter´amos apenas || G(x, y)||∞ ≤ 1, o que revela bem que as condi¸oes s˜o apenas suficientes ı c˜ a 2 e n˜o necess´rias). Por outro lado, reparando que G(R ) ⊆ X porque a a 1/2 ≤ cos(x + y)/2 + 1 ≤ 3/2, e 5/3 ≤ sin(x + y)/3 + 2 ≤ 7/3 conclu´mos que a solu¸ao est´ em X. Com efeito, poderiamos aplicar directamente o ı c˜ a corol´rio usando este X, que ´ fechado e convexo, mas nesse caso apenas conclu´amos a e ı 2 a existˆncia e unicidade em X e n˜o em R . Ao fim de algumas itera¸oes (∼ 40) obtemos e a c˜ como solu¸ao aproximada (0.549322733, 2.144360661). c˜ 4.2.1 M´todo de Newton para Sistemas de Equa¸oes e c˜ Como j´ referimos, uma poss´ escolha de fun¸˜o iteradora do m´todo do ponto fixo em R a ıvel ca e (ou em C) ´ a do m´todo de Newton, que tem de um modo geral convergˆncia mais r´pida, e e e a sendo necess´rio que a fun¸˜o fosse diferenci´vel e que a derivada n˜o se anulasse. a ca a a No caso de RN , vamos estabelecer um m´todo semelhante, exigindo que a fun¸˜o seja e ca C e que a matriz jacobiana tenha inversa, numa vizinhan¸a da solu¸˜o. Assim, podemos c ca estabelecer as equivalˆncias e 1 F (x) = 0 ⇔ [ F (x)]−1 F (x) = 0 ⇔ x = x − [ F (x)]−1 F (x) 128 e a fun¸˜o iteradora ser´, portanto, G(x) = x − [ F (x)]−1 F (x). ca a (0) N Dado x ∈ R , o m´todo consistiria na itera¸˜o e ca x(n+1) = x(n) − [ F (x(n) )]−1 F (x(n) ). (4.8) No entanto, como iremos ver, o c´lculo de uma matriz inversa ´ mais moroso que a a e resolu¸˜o de um sistema, pelo que o m´todo de Newton para sistemas n˜o lineares consiste ca e a (0) N em, dada uma iterada inicial x ∈ R , resolver, em cada iterada n, o sistema linear: [ F (xn )]v = −F (x(n) ) (4.9) e definir a pr´xima iterada x(n+1) = x(n) + v. o Desta forma, a resolu¸˜o de um sistema n˜o-linear pode ser conseguida (... se o m´todo ca a e convergir!) atrav´s da resolu¸˜o sucessiva de sistemas lineares. e ca Exemplo 4.6 Consideremos o sistema do exemplo anterior. A matriz jacobiana de F vem F (x, y) = 2 + sin(x + y)/2 sin(x + y)/2 − cos(x + y)/3 3 − cos(x + y)/3 c˜ inicializando com x(0) = (1, 1) ao fim de 10 itera¸oes obtemos um resultado com uma precis˜o semelhante ao obtido no exemplo para o m´todo do ponto fixo. a e Proposi¸˜o 4.2 (convergˆncia local). Seja F ∈ C 1 (Vz ), em que Vz ´ uma vizinhan¸a de ca e c e uma solu¸ao z, onde det( F (x)) = 0, ∀x ∈ Vz . Ent˜o o m´todo de Newton converge para c˜ a e z, desde que a vizinhan¸a seja suficientemente pequena e x0 ∈ Vz . c Demonstra¸˜o: Exerc´ ca ıcio. Teorema 4.2 Seja F ∈ C 2 (Vz ), em que a solu¸ao z n˜o ´ um ponto cr´tico3 . O m´todo c˜ a e ı e de Newton quando converge para z tem convergˆncia pelo menos quadr´tica, ou seja, existe e a um K > 0 tal que ||z − x(n+1) || ≤ K||z − x(n) ||2 . Demonstra¸˜o: ca Relembramos a f´rmula de Taylor para uma fun¸˜o f : RN → R : o ca f (x + h) = f (x) + 2 1 f(x) · h + h · 2 2 f(x + ξh) h, para um certo ξ ∈]0, 1[ ∂ f e onde 2 f (y) = [ ∂xi ∂xj ] ´ a matriz Hessiana de f calculada no ponto y. No caso de uma fun¸˜o F : RN → RN , F = (f1 , ..., fN ) obtemos ca F (x + h) = F (x) + 3 1 F (x) · h + h · 2 2 fi (x + ξi h) h, para certos ξi ∈]0, 1[, Ou seja, det( F (z)) = 0. 129 onde o termo 1 h · 2 fi (x + ξi h) · h ´ um vector, que est´ apresentado na componente i. e a 2 Aplicando este resultado ao m´todo de Newton, obtemos e 0 = F (z) = F (x(n) ) + 1 F (x(n) ) · e(n) + e(n) · 2 2 fi (x(n) + ξi e(n) ) e(n) em que e(n) = z − x(n) ´ o erro na iterada n. Reparando que, no m´todo de Newton, e e F (x(n) ) · (x(n+1) − x(n) ) = −F (x(n) ), ao somar e subtrair z, ficamos com −F (x(n) ) = obtendo-se F (x(n) ) · (x(n+1) − z + z − x(n) ) = − F (x(n) ) · e(n+1) + F (x(n) ) · e(n) , 1 F (x(n) ).e(n+1) = − e(n) · 2 fi (x(n) + ξi e(n) ) e(n) . 2 2 Como f ∈ C (Vz ), supomos agora que || 2 fi (x)|| ≤ M2 , e que || [ F (xn )]−1 || ≤ vizinhan¸a da solu¸˜o4 . Obtemos a estimativa pretendida, c ca ||e(n+1) || ≤ M2 (n) 2 ||e || . 2M1 1 , M1 numa Observa¸˜o 1: (estimativa de erro) ca M No resultado do teorema n˜o explicitamos que a constante K seria 2M21 , como foi dea duzido na demonstra¸˜o, porque na pr´tica n˜o ´ um valor facilmente c´lcul´vel. No ca a a e a a entanto, quando se executa o m´todo de Newton procedendo ao c´lculo de [ F (xn )]−1 , a e a sua norma pode ser facilmente calculada, e nesse caso podemos escrever a estimativa ||e(n+1) || ≤ 1 max || 2 x∈V 2 F (x)|| || [ F (xn )]−1 || ||e(n) ||2 , (4.10) tendo em aten¸˜o que a estimativa faz apenas sentido quando estamos muito pr´ximo da ca o solu¸˜o, e portanto a vizinhan¸a V dever´ ser uma bola B(z, ε) com ε pequeno. Por outro ca c a 2 lado o valor da norma || F (x)|| deve ser entendido como o m´ximo das normas matriciais a maxi || 2 fi (x)||. • H´ ainda a possibilidade de apresentar uma condi¸˜o suficiente para a convergˆncia, a ca e semelhante ` que foi obtida no caso escalar, e que tamb´m poder´ servir de crit´rio em R. a e a e Enunciamos apenas o resultado, cuja demonstra¸˜o pode ser encontrada em [18]: ca Teorema 4.3 (Kantorovich). Seja D ⊂ RN um conjunto aberto e convexo e F ∈ C 1 (D). Se 1 (i) ∃M1 > 0 : || [ F (x)]−1 || ≤ M1 , ∀x ∈ D, (ii) ∃M2 > 0 : || F (x) − F (y)|| ≤ M2 ||x − y||, ∀x, y ∈ D, (iii) existe x0 ∈ D, tal que ε0 = 2 || [ F (x0 )]−1 F (x0 ) || verifica M2 ε0 < 1, M1 ¯ (iv) B(x0 , ε0 ) ⊂ D, Como assumimos F ∈ C 2 (Vz ), e como F ´ invert´ e ıvel em z (que n˜o ´ ponto cr´ a e ıtico), ent˜o, por a continuidade, o determinante de F tamb´m n˜o ´ nulo numa vizinhan¸a suficientemente pequena de z. e a e c 4 130 ¯ ent˜o h´ uma unica solu¸ao z ∈ B(x0 , ε0 ), para a qual o m´todo de Newton converge a a ´ c˜ e (come¸ando com a iterada inicial x0 ), e verifica-se a estimativa de erro a priori, c ||e(n) || ≤ em que escrevemos K = M2 2M1 1 n (Kε0 )2 , K (para pˆr em evidˆncia a semelhan¸a com o caso real). o e c Notamos que a condi¸˜o (i) implica a existˆncia de inversa para a matriz jacobiana ca e (equivalente no caso real a f (x) = 0), e serve ao mesmo tempo para definir M1 (que corresponde no caso real a min |f (x)|). A condi¸˜o (ii) implica a limita¸˜o dos valores da ca ca 2 matriz Hessiana (caso f ∈ C ) e define M2 (que corresponde no caso real a max |f (x)|). A ¯ terceira condi¸˜o permite garantir que as iteradas v˜o ficar na bola B(x0 , ε0 ), note-se que, ca a por exemplo, ||x1 − x0 || = 1 ε0 ≤ ε0 (e corresponde ` condi¸˜o no caso real |f(x0 )/f (x0 )| ≤ a ca 2 ¯ ¯ |b − a|). A quarta condi¸˜o ´ ´bvia, e podemos mesmo considerar D = B(x0 , ε0 ). ca e o Observa¸˜o 2: (m´todos quasi-Newton) ca e No caso de sistemas, h´ ainda um maior n´mero de variantes do m´todo de Newton a u e que podem ser utilizadas. Um dos objectivos destes m´todos ´ evitar a repetida resolu¸˜o e e ca de sistemas (ver observa¸˜o seguinte), outro ´ evitar o c´lculo da matriz jacobiana. Uma ca e a maneira de evitar esse c´lculo ´ considerar uma aproxima¸˜o das derivadas parciais usando a e ca um c´lculo suplementar a uma distˆncia ε (para cada derivada) tal como foi feito no caso a a ´ unidimensional. E ainda poss´ generalizar o m´todo da secante (cf. [26]). ıvel e Observa¸˜o 3: (tempo de c´lculo) ca a Enquanto que no m´todo do ponto fixo, o tempo de c´lculo ser´ apenas T = n tG , em e a a que tG ´ o tempo m´dio necess´rio para avaliar a fun¸˜o G, no caso do m´todo de Newton, e e a ca e devido ` forma particular de G, h´ que considerar n˜o apenas o tempo de c´lculo de F, ou a a a a o tempo de c´lculo de F, como se passava no caso real, mas tamb´m devemos considerar a e um novo tempo de c´lculo em cada itera¸˜o, tS , o tempo m´dio para a resolu¸˜o de um a ca e ca sistema linear. Assim teremos T = n (tF + t F + tS ). • Pode acontecer que o tempo de resolu¸˜o do sistema seja muito maior que o tempo do ca c´lculo da fun¸˜o e das suas derivadas, pelo que ´ habitual implementar t´cnicas alternativas a ca e e que podem consistir em manter a matriz F (x(n) ) durante algumas iteradas subsequentes, actualizando-a espa¸adamente. Isso permite reduzir consideravelmente o tempo de c´lculo, c a j´ que sendo a matriz a mesma, podemos guardar a sua factoriza¸˜o para resolver mais a ca rapidamente o sistema, como veremos na sec¸˜o seguinte. ca Observa¸˜o 4: O Mathematica implementa o m´todo de Newton na rotina FindRoot, ca e desde que se inclua uma lista com as equa¸˜es e se prescreva o valor inicial para cada co componente. Como acabamos de ver, para implementarmos o m´todo de Newton necessitamos ` pare a tida de saber resolver sistemas lineares, pelo que vamos agora concentrar-nos na resolu¸˜o ca desse tipo de sistemas, mais simples. 131 4.3 M´todos Iterativos para Sistemas Lineares e Vamos come¸ar por aplicar, mais uma vez, o m´todo do ponto fixo ` resolu¸˜o deste tipo c e a ca de problemas. Consideremos uma matriz quadrada A ∈ RN × RN e um vector b ∈ RN , quaisquer5 . Pretendemos resolver o sistema Ax = b. Para aplicar o m´todo do ponto fixo, eficazmente, precisamos de estabelecer uma equivalˆncia e e Ax = b ⇔ x = G(x) em que a fun¸˜o iteradora G seja muito mais simples de calcular do ca que a solu¸˜o... por exemplo, n˜o adiantaria nada escrever x = A−1 b, porque o c´lculo da ca a a inversa seria at´ mais complicado do que resolver o pr´prio sistema! e o Apenas nos iremos interessar por fun¸˜es G do tipo co G(x) = w + Cx, (4.11) em que w ´ um vector e C uma matriz. Iremos ver algumas possibilidades distintas para e w e C. 4.3.1 M´todos de Jacobi e Gauss-Seidel e Come¸amos por escrever a matriz como soma de duas outras, mais simples, A = M + N, c e ficamos com: Ax = Mx + Nx = b ⇔ x = M−1 b − M−1 Nx, ou seja, G(x) = M−1 b − M−1 Nx As escolhas de M e N que d˜o origem aos M´todos de Jacobi e de Gauss-Seidel baseiama e se em escrever a matriz A na forma A = L + D + U : L A U desde que a matriz M seja invert´ ıvel. Neste caso w = M−1 b e C = −M−1 N.    a11 . . . aN1 ... ... a1N .  = .  . . . . aNN       0 a21 . . . aN1 ... ... . . . aN,N −1   0 0 a12 . . . 0 a11 . . .   . .   . . ... . + . . + . .. .   . . . .   0 . . . aNN 0 0 ...  D  a1N . . . aN −1,N 0      M´todo de Jacobi e Corresponde a considerar M = D, N = L + U, garantindo que a diagonal de D n˜o a tenha elementos nulos. Desta forma obtemos o m´todo e x(0) ∈ RN x(n+1) = D−1 b − D−1 (L + U)x(n) que ´ o chamado m´todo de Jacobi. e e Nesta sec¸˜o iremos usar a nota¸˜o em negrito para vectores e matrizes com o intuito de n˜o causar ca ca a confus˜o, especialmente entre o N da dimens˜o do espa¸o e o N que ir´ ser uma matriz. Essa nota¸ao ser´ a a c a c˜ a posteriormente abandonada, quando for claro a qual nos referimos. 5 (4.12) 132 Exemplo 4.7 Com efeito, j´ us´mos o M´todo de Jacobi num exemplo anterior. Consida a e eremos o sistema linear   10x1 + 3x2 + x3 = 14 2x1 − 10x2 + 3x3 = −5  x1 + 3x2 + 10x3 = 14 A aplica¸ao do m´todo de Jacobi fica c˜ e  1  x(k+1) = 10 (14 − 3x(k) − x(k) )  1 2 3 (k+1) (k) (k) −1 x = (−5 − 2x1 − 3x3 )  2 (k+1) 101 (k) (k)  = 10 (14 − x1 − 3x2 ) x3 ou seja, basta escrever na primeira equa¸ao a componente x1 em fun¸ao das outras. Na c˜ c˜ segunda equa¸ao, escrevemos x2 em fun¸ao das outras, etc... Neste exemplo, come¸ando c˜ c˜ c com x(0) = (0, 0, 0) obtemos sucessivamente x(1) = (1.4, 0.5, 1.4), ..., x(6) = (1.000251, 1.005795, 1.000251) c˜ que j´ est´ bastante pr´ximo6 da solu¸ao x = (1, 1, 1). a a o • Podemos reparar que o c´lculo da segunda componente x2 a ao inv´s de utilizar o e (k) (k+1) valor x1 poderia utilizar o valor, entretanto j´ calculado, x1 a . E, da mesma forma, no (k+1) (k+1) (k+1) c´lculo de x3 a , podiamos j´ utilizar os valores x1 a e x2 . Se fizermos isso estamos a considerar um outro m´todo: e M´todo de Gauss-Seidel e Neste caso consideramos M = L + D e N = U, assumindo de novo que a diagonal de D n˜o possui elementos nulos (e consequentemente, M, matriz triangular inferior, ser´ a a invert´ ıvel). No entanto, n˜o vamos inverter a matriz M. A partir de a obtemos Mx(k+1) = b − Nx(k) e escrevemos e daqui surge ent˜o o m´todo a e x(0) ∈ RN x(k+1) = D−1 b − D−1 Ux(k) −D−1 Lx(k+1) que ´ designado m´todo de Gauss-Seidel. e e 6 (k+1) x(k+1) = M−1 b − M−1 Nx(k) , (L + D)x(k+1) = b − Ux(k) ⇔ Dx(k+1) = b − Ux(k) −Lx(k+1) (4.13) Neste caso, usando (4.14),  0 −3 −1 1  −2 0 −3  , temos ||C||∞ = 0.5 C = −D−1 (L + U ) = 10 −1 −3 0 n  0.5 e podemos obter a estimativa a priori ||e(n) ||∞ ≤ 1−0.5 ||x1 − x0 ||∞ = 1.4 × 0.5n−1 , prevendo-se que (6) ||e ||∞ ≤ 0.04375, o que acontece, pois vimos que o erro absoluto ´ ||e(6) ||∞ = 0.005795. e 133 Exemplo 4.8 Considerando o mesmo sistema obtemos agora  1  x(k+1) = 10 (14 − 3x(k) − x(k) )  1 2 3 (k+1) (k+1) (k) −1 x = 10 (−5 − 2x1 − 3x3 )  2 (k+1) (k+1)  (k+1) 1 x3 = 10 (14 − x1 − 3x2 ) come¸ando com x(0) = (0, 0, 0) iremos obter sucessivamente c x(1) = (1.4, 0.78, 1.026), ..., x(6) = (1.000039, 1.000028, 0.999988) que j´ ao fim das mesmas 6 itera¸oes est´ mais pr´ximo7 da solu¸ao x = (1, 1, 1). a c˜ a o c˜ 4.3.2 Convergˆncia dos M´todos de Jacobi e Gauss-Seidel e e Como j´ foi dito, podemos encarar estes m´todos como m´todos de ponto fixo, em que a a e e fun¸˜o iteradora ´ ca e G(x) = M−1 b − M−1 Nx (admitindo que M ´ invert´ e ıvel). Como o espa¸o RN ´ fechado, convexo e a derivada de c e Fr´chet ´ a matriz jacobiana, temos para qualquer norma matricial induzida ||.||, e e || G(x)|| = ||−M−1 N||, ∀x ∈ RN escrevendo C = −M−1 N, bastar´ exigir que a ||C|| < 1, para uma certa norma induzida, para garantirmos a convergˆncia dos m´todos de Jacobi e Gauss-Seidel. e e Proposi¸˜o 4.3 Se existir uma norma matricial induzida para a qual a matriz C definida ca em (4.11) verifique ||C|| < 1, ent˜o a matriz A ´ invert´vel e o m´todo iterativo (p.ex: Jacobi ou Gauss-Seidel) converge a e ı e linearmente para a solu¸ao z do sistema Ax = b, qualquer que seja x(0) ∈ RN . Temos c˜ ainda as estimativas apresentadas no teorema do ponto fixo com L = ||C||, por exemplo: ||z − x(k) || ≤ 7 ||C||k ||x(1) −x(0) || 1 − ||C|| (4.14) Neste caso, usando (4.14),  o que d´ um valor da norma de C inferior ao do m´todo de Jacobi, confirmando a maior rapidez de a e 1 convergˆncia. A estimativa a priori daria, neste caso, ||e(6) || ≤ 1−0.4 (0.4)6 1.4 = 0.009557... e −1     10 0 0 0 3 1 0 −0.3 −0.1 C = −(L + D)−1 U = −  2 10 0   0 0 3  =  0 0.06 −0.28  , e temos ||C||∞ = 0.4 1 3 10 0 0 0 0 0.012 0.094 134 Demonstra¸˜o: ca Como j´ dissemos, nestas condi¸˜es podemos aplicar o T. Ponto Fixo a G em RN , o que a co nos d´ existˆncia e unicidade de solu¸˜o, o que implica a invertibilidade de A. Repare-se a e ca que podemos construir a inversa de A resolvendo sistemas Axi = ei em que os vectores ei s˜o as colunas da matriz identidade, j´ que as solu¸˜es destes sistemas xi ir˜o corresponder a a co a `s colunas da matriz inversa de A. a Por outro lado, garante-se a convergˆncia com qualquer x(0) ∈ RN , bem como as estie mativas de erro apresentadas no teorema do ponto fixo. Tal como no caso do m´todo do ponto fixo, para uma matriz A gen´rica, a convergˆncia e e e ´ linear. Iremos ver que no caso de matrizes e m´todos em ρ(C) = 0 h´ uma convergˆncia e e a e num n´ mero finito de iteradas. u Corol´rio 4.2 O m´todo iterativo x(n+1) = G(x(n) ) em que G ´ dado por (4.11) converge a e e linearmente para a solu¸ao do sistema, dada qualquer iterada inicial x(0) ∈ RN , se e s´ se c˜ o ρ(C) < 1. Se ρ(C) = 0 ent˜o esse m´todo atinge a solu¸ao ap´s um n´mero finito de itera¸oes N (ou a e c˜ o u c˜ menor). Demonstra¸˜o: ca i) Se ρ(C) < 1, se considerarmos ε = (1 − ρ(C))/2 > 0 vimos que existe uma norma ||.|| tal que 1 ρ(C) <1 ||C|| ≤ ρ(C) + ε = + 2 2 e pela proposi¸˜o conclu´ ca ımos a convergˆncia. e ii) Falta provar que ρ(C) < 1 ´ condi¸˜o necess´ria. e ca a a Supondo que ρ(C) ≥ 1 vamos concluir que existiria pelo menos um x(0) para o qual n˜o haveria convergˆncia. e Seja λ um valor pr´prio cujo m´dulo ´ o m´ximo, i.e: |λ| = ρ(C) ≥ 1, e consideremos o o e a v um vector pr´prio associado, portanto temos Cv = λv. o Sucessivamente, iremos obtendo C2 v = λCv = λ2 v, etc... Ck v = λk v, portanto: ||Ck v|| = ||λk v|| = |λ|k ||v|| Ora, escrevendo o m´todo, a partir de x = G(x) = w + Cx (no caso dos m´todos de e e −1 −1 (k) (k+1) Jacobi e Gauss-Seidel w = M b e C = −M N), temos x = w + Cx , e, subtraindo as igualdades, obtemos: x − x(k+1) = C(x − x(k) ). Aplicando sucessivamente, ficamos com x − x(k) = Ck (x − x(0) ). Assim, se escolhermos x(0) tal que v = x − x(0) , vemos que ||x − x(k) || = ||Ck (x − x(0) )|| = ||Ck v|| = |λ|k ||v|| → 0 135 (4.15) pois λ ≥ 1. iii) Quando ρ(C) = 0, a matriz C apenas pode ter o valor pr´prio nulo, com multiplicio N dade N. O seu polin´mio caracter´ o ıstico ser´ p(λ) = λ . Pelo teorema de Hamilton-Cayley a N verifica-se C = 0. Assim, por (4.15) temos a seguinte f´rmula para o erro e(N) = CN e(0) = o 0, ou seja, o erro ´ nulo na iterada N, pelo menos. e Observa¸oes: c˜ (i) Da demonstra¸˜o (i) conclui-se, obviamente, que se ρ(C) < 1, a matriz A ´ invert´ ca e ıvel. ´ uma consequˆncia imediata do teorema do ponto fixo, pois ||C|| < 1, para qualquer norma E e induzida. (ii) A condi¸˜o ´ necess´ria apenas se pretendermos que haja convergˆncia para qualquer ca e a e (0) iterada inicial x . Com efeito, a demonstra¸˜o de que ρ(C) < 1 ´ condi¸˜o necess´ria, permite concluir ca e ca a tamb´m que, mesmo quando ρ(C) ≥ 1, basta existir um valor pr´prio tal que |λ| < 1 para e o que haja convergˆncia dado um certo x(0) apropriado (por exemplo, escolhendo-o igual ` e a (0) diferen¸a entre o vector solu¸˜o e vector pr´prio associado). Como esse x n˜o poder´ ter c ca o a a componentes segundo os vectores pr´prios associados aos valores pr´prios cujo m´dulo ´ o o o e (0) superior ou igual a 1, ent˜o muito dificilmente esse x poder´ ser encontrado. Com efeito, a a devido a erros de arredondamento, s´ em casos muito particulares (...em que se conhece a o solu¸˜o exactamente) seria poss´ evitar essa componente. ca ıvel (iii) O resultado permite concluir que no caso do m´todo de Jacobi aplicado a matrizes e triangulares a solu¸˜o exacta ´ atingida ao fim de N itera¸˜es, porque C ser´ uma matriz ca e co a triangular com zeros na diagonal, e consequentemente os seus valores pr´prios ser˜o nulos. o a No caso do m´todo de Gauss-Seidel, ao ser aplicado a matrizes triangulares superiores, e reparamos que M ser´ uma matriz diagonal, e portanto ser´ idˆntico a Jacobi, atingindo a a e a solu¸˜o ao fim de N itera¸˜es (no m´ximo). Ao ser aplicado a matrizes triangulares ca co a inferiores, a matriz N ser´ nula, portanto C tamb´m ser´ nula, atingindo-se a solu¸˜o a e a ca numa unica iterada... Repare-se que, neste caso, o m´todo de Gauss-Seidel corresponder´ ´ e a a efectuar as substitui¸˜es sucessivas descendentes, por isso ´ perfeitamente natural esta co e superconvergˆncia. e (iv) Repare-se que se considerarmos o valor ||C|| para avaliar a rapidez de convergˆncia, e esse valor varia com a norma considerada, e no entanto o m´todo ser´ o mesmo. O e a valor ρ(C), enquanto ´ ınfimo das normas induzidas, determina a rapidez de convergˆncia e do m´todo independentemente da norma, e portanto ´ uma medida mais fi´vel para avaliar e e a essa rapidez. Existe uma condi¸˜o mais simples de verificar para assegurar a convergˆncia dos m´todos ca e e de Jacobi e Gauss-Seidel, que envolve a compara¸˜o dos m´dulos da diagonal da matriz ca o com a soma dos m´dulos dos outros elementos, mas salientamos que ´ apenas uma condi¸˜o o e ca suficiente de convergˆncia. e Defini¸˜o 4.2 Uma matriz quadrada A diz-se que tem diagonal estritamente dominante ca 136 por linhas se verificar N |aii | > j=1,j=i |aij | ∀i ∈ {1, . . . , N }, (4.16) e diz-se que tem diagonal estritamente dominante por colunas se verificar N |ajj | > i=1,i=j |aij | ∀j ∈ {1, . . . , N }. (4.17) Proposi¸˜o 4.4 Se a matriz quadrada A tiver diagonal estritamente dominante por linhas, ca e ou por colunas, ent˜o ´ invert´vel e para qualquer x(0) ∈ RN os m´todos de Jacobi e Gaussa e ı Seidel convergem para a solu¸ao unica do sistema Ax = b. c˜ ´ Demonstra¸˜o: ca Veremos apenas o caso em que tendo diagonal estritamente por linhas, o m´todo de e Jacobi converge. No caso do m´todo de Jacobi C = −D−1 (L + U) e temos e cij = Portanto ||C||∞ = max e assim ||C||∞ < 1 ⇔ max o que ´ equivalente a e N i=1,... ,N i=1,... ,N N −aij aii 0 se i = j se i = j N j=1 |cij | = max N i=1,... ,N j=1,j=i | −aij | aii j=1,j=i | aij |<1 aii ∀i = 1, . . . , N j=1,j=i |aij | < |aii |. Portanto, a matriz ter diagonal estritamente dominante por linhas ´ equivalente a ||C||∞ < e 1, o que (como vimos) implica a invertibilidade da matriz A e a convergˆncia do m´todo e e (0) N para qualquer x ∈ R . Observa¸˜o 1: (invertibilidade de matrizes) ca Reparamos que atrav´s deste resultado, um crit´rio extremamente simples para assegue e rar a invertibilidade de uma matriz ´ observar que tem a diagonal estritamente dominante e por linhas, ou por colunas. Isto poder´ ser conseguido, em muitos casos, atrav´s de uma a e simples troca de linhas ou colunas. Considerando o sistema linear      2 −10 3 x1 −5  10 3 1   x2  =  14  1 3 10 x3 14 137 basta uma troca da primeira com a segunda linha para obtermos a matriz do exemplo anterior, que tem a diagonal estritamente dominante por linhas, assegurando tamb´m a e convergˆncia dos m´todos de Jacobi e Gauss-Seidel. e e Observa¸˜o 2: (matrizes irredut´veis) ca ı No caso em que a diagonal ´ dominante, mas n˜o estritamente (ou seja, a desigualdade e a da defini¸˜o n˜o ´ estrita), n˜o se pode concluir a invertibilidade, basta pensar no caso ca a e a 1 1 da matriz A = . No entanto, se houver dominˆncia estrita por um elemento da a 1 1 diagonal e se a matriz for irredut´vel8 , ent˜o obtemos invertibilidade e a convergˆncia do ı a e m´todo de Jacobi ou Gauss-Seidel. Um exemplo, ´ o caso em que e e   2 −1 0 A =  −1 2 1  . 0 −2 2 Reparamos que a desigualdade estrita ´ verificada para o primeiro elemento da diagonal, e |2| > | − 1|, mas n˜o ´ verificada para o segundo elemento da diagonal, |2| = | − 1| +|1|, nem a e para o terceiro |2| = | − 2|. Como a matriz ´ irredut´ (ver nota de rodap´) conclu´ e ıvel e ımos e a sua invertibilidade e a convergˆncia dos dois m´todos iterativos. Este assunto ´ tratado e e com maior detalhe, por exemplo, em [25]. Observa¸˜o 3: (Jacobi vs. Gauss-Seidel) ca ´ E poss´ mostrar que, para um certo tipo de matrizes gerais, o m´todo de Gauss-Seidel ıvel e tem convergˆncia mais r´pida que o m´todo de Jacobi, podendo ser duas vezes mais r´pido. e a e a Um exemplo instrutivo ´ o que se passa para matrizes 2 × 2. Reparamos que, no caso do e m´todo de Jacobi, se e A= a b c d ⇒ CJac = − a 0 0 d −1 0 b c 0 = b 0 −a c −d 0 bc e portanto, os valores pr´prios ser˜o λ = ± ad , e para que o m´todo convirja (dada o a e qualquer iterada inicial) ´ necess´rio que |bc| < |ad|. Situa¸˜o semelhante ocorre com o e a ca m´todo de Gauss-Seidel. Temos e CGS = − 8 a 0 c d −1 0 b 0 0 = b 0 −a bc 0 ad Uma matriz A diz-se redut´vel se existir uma matriz de permuta¸ao P tal que ı c˜ PAP−1 = B C O D , em que B e D s˜o matrizes quadradas e O ´ um bloco com zeros (C ´ um bloco qualquer). Diz-se irredut´vel a e e ı se n˜o for redut´ a ıvel. H´ v´rios crit´rios para estabelecer se uma matriz ´ ou n˜o irredut´ a a e e a ıvel, que podem ´ o ser encontrados em [25]. E ´bvio que matrizes sem zeros s˜o irredut´ a ıveis. Tamb´m ´ poss´ mostrar que e e ıvel matrizes em que as subdiagonais principais n˜o tˆm zeros (p. ex. matrizes tridiagonais completas) s˜o a e a irredut´ ıveis. 138 bc e portanto, λ = 0 ou λ = ad , sendo ainda necess´rio que |bc| < |ad| para que ρ(CGS ) < 1 a e assim haja convergˆncia. Conclui-se que no caso de quaisquer matrizes 2 × 2 os m´todos e e convergem sob as mesmas condi¸˜es, mas com uma diferen¸a apreci´vel... reparamos que co c a ρ(CJac )2 = ρ(CGS ), o que traduz a convergˆncia mais r´pida do m´todo de Gauss-Seidel. e a e Por exemplo, no caso de matrizes sim´tricas temos mesmo ||CJac ||2 = ||CGS ||2 , o que e 2 implica a estimativa de erro para o m´todo de Gauss-Seidel ||e(n) ||2 ≤ ||CGS ||n ||e(0) || = e 2 ||CJac ||2n ||e(0) ||, ou seja, s˜o necess´rias o dobro das iteradas do m´todo de Jacobi para a a e 2 obter o mesmo resultado. Apesar de numa grande quantidade de casos o m´todo de Gauss-Seidel ser mais r´pido e a que o m´todo de Jacobi, isso nem sempre acontece e h´ mesmo casos em que o m´todo de e a e Jacobi converge e o de Gauss-Seidel n˜o. a Exemplo 4.9 Um poss´vel exemplo em que o m´todo de Jacobi converge e o de Gaussı e Seidel n˜o converge, acontece para matrizes da forma a   a −b a A =  b −b −a  , b −b a em que temos, para a, b = 0,  CJac   b b −1 0 a −1 0 a  1 0 − a  , CGS =  0 b −1 − = b a b b −a a 0 0 0 −1  a b b e os valores pr´prios de CJac verificam λ(λ2 + 1 − 2 a ) = 0, enquanto os de CGS verificam o b λ(λ − a )(λ + 1) = 0. b b 2 a − 1 , e que ρ(CGS ) = max{1, a } ≥ 1. Isto significa que ρ(CJac ) = No caso em que 0 < b < a, o m´todo de Jacobi converge e o de Gauss-Seidel n˜o, porque e a ρ(CJac ) < 1 e ρ(CGS ) = 1, reparando que para a = 2b, temos mesmo ρ(CJac ) = 0. , Como curiosidade verific´mos o que se passava com 10 000 matrizes 3 × 3 dando valores a aleat´rios nas entradas. Para essa amostra obtiv´mos os seguintes valores, n˜o rigorosos, o e a completamente emp´ ıricos: 80% das matrizes n˜o apresentava convergˆncia com qualquer dos a e m´todos, e de entre as 20% convergentes, apenas um d´cimo apresentava maior velocidade e e de convergˆncia para o m´todo de Jacobi (ou seja, 2% do total). Quando o m´todo de e e e Gauss-Seidel convergia, obtinha normalmente a solu¸˜o em metade das itera¸˜es do m´todo ca co e de Jacobi (85% dos casos, i.e. aprox 15% do total). Observa¸˜o 4: (complementos para o m´todo do ponto fixo em RN ) ca e (i) Itera¸ao de Gauss-Seidel. Reparamos que em RN existe uma possibilidade, que ´ c˜ e aplicada frequentemente e que consiste em efectuar a itera¸˜o do ponto fixo (ou de Newton) ca utilizando a substitui¸˜o das novas componentes pelas calculadas mais recentemente, em ca analogia ao que se faz no m´todo de Gauss-Seidel. e (ii) Avaliar a contractividade com o raio espectral. Da mesma forma que utilizamos aqui o raio espectral ao inv´s da norma, tamb´m o poderemos fazer quando avaliamos a e e 139 condi¸˜o de contractividade || G(x)|| ≤ L < 1, no m´todo do ponto fixo em RN . Nesse caso ca e bastar´ mostrar que ρ(G(z)) < 1, para garantirmos a convergˆncia local, pois sabemos que a e haver´ uma norma induzida que verificar´ a condi¸˜o enunciada. No entanto, da condi¸˜o a a ca ca ρ(G(x)) ≤ L < 1, num dom´ ınio D n˜o se pode inferir o mesmo j´ que a matriz muda. a a 140 4.3.3 M´todos de Relaxa¸˜o e SOR e ca A ideia dos m´todos iterativos de relaxa¸˜o consiste em fazer aparecer um parˆmetro ω, e ca a n˜o nulo, na fun¸˜o iteradora G. Esse parˆmetro pode ser controlado de forma a que o a ca a m´todo convirja, e at´ de forma a que convirja mais rapidamente! e e • M´todo de Relaxa¸˜o Linear e ca Para ω = 0, escrevemos: Ax = b ⇔ x = x − ω(Ax − b), ou seja, G(x) = x − ω(Ax − b) e portanto o m´todo da relaxa¸˜o linear consiste na itera¸˜o e ca ca x(0) ∈ RN . x(n+1) = x(n) − ω(Ax(n) −b) (4.18) Neste caso, temos w = ωb e Cω = I − ωA, portanto podemos assegurar a convergˆncia e do m´todo quando ||Cω || = ||I − ωA|| < 1, ou ainda, quando ρ(Cω ) < 1. e Exerc´ ıcio 4.1 Mostre que o m´todo de relaxa¸ao linear converge, qualquer que seja x0 ∈ e c˜ N R , se e s´ se escolhermos |ω| suficientemente pequeno tal que qualquer valor pr´prio de A o o 1 1 pertence a bola B( ω , |ω| ). Em particular, mostre que se A for definida positiva, basta que ` 2 0 < ω < ρ(A) para que haja convergˆncia. e Resolu¸˜o: Trata-se de verificar que nessas condi¸oes ρ(I − ωA) < 1, ou seja que os valores ca c˜ pr´prios µ de I − ωA s˜o em m´dulo menores que 1. Se λ ´ valor pr´prio de A, temos o a o e o (I − ωA)v = v − ωλv ⇔ µ = 1 − ωλ 1 1 1 e como por hip´tese |λ − ω | ≤ | ω |, ent˜o |µ| = λ − ω |ω| < 1. No caso de ser definida o a 1 1 2 2 2 2 positiva, B( ω , |ω| ) =]0, ω [, e portanto 0 < λ < ω , o que resulta de 0 < ω < ρ(A) < λ . 1 Uma escolha razo´vel para |ω| ´ um valor pr´ximo de ρ(A) , que pode ser aproximado a e o atrav´s do teorema de Gerschgorin (que veremos no pr´ximo cap´ e o ıtulo). Exerc´ ıcio 4.2 Efectue um estudo semelhante para uma fun¸ao G(x) = (1−ω)x−ω(Ax − b), c˜ com ω = 0. • M´todo das Relaxa¸oes Sucessivas (SOR) e c˜ Trata-se de uma varia¸˜o do m´todo de Gauss-Seidel, bastante eficaz em termos de ca e acelera¸˜o de convergˆncia. Enquanto que no m´todo de Gauss-Seidel consider´vamos a ca e e a matriz M = L + D, neste caso vamos diminuir um pouco a contribui¸˜o de D em M, ca colocando 1 Mω = L + D ω 141 (normalmente ω > 1) e compensamos esse facto passando a parte restante da matriz D para N, fazendo 1 Nω = (1 − )D + U. ω −1 Assim, para ω = 0, temos Cω = −Mω Nω , ou seja Cω = −(ωL + D)−1 ((ω − 1)D + ωU), e ser´ esta quantidade que determinar´ a rapidez de convergˆncia do m´todo. a a e e Portanto, da decomposi¸˜o ca Ax = b ⇔ Lx + retiramos obtendo 1 1 Dx + (1 − )Dx + Ux = b, ω ω 1 1 ( D + L)x = ( − 1)Dx + b − Ux, ω ω 1 1 ( D + L)x(n+1) = ( − 1)Dx(n) + b − Ux(n) . ω ω 1 Ao inv´s de inverter ω D + L, a itera¸˜o processa-se de forma semelhante ao m´todo de e ca e Gauss-Seidel, ou seja, x(n+1) = (1 − ω)x(n) + ωD−1 (b − Lx(n+1) −Ux(n) ), reparando que no caso ω = 1 coincide com o m´todo de Gauss-Seidel. e Resta analisar em que situa¸˜es h´ ou n˜o convergˆncia do m´todo SOR. co a a e e Teorema 4.4 (condi¸ao necess´ria, Kahan). Mostre que ´ necess´rio que ω ∈]0, 2[ para c˜ a e a que haja convergˆncia do m´todo, qualquer que seja a iterada inicial. e e Demonstra¸˜o: Exerc´ (sugest˜o: provar primeiro que ρ(Cω )N ≥ |λ1 | · · · |λN | e que ca ıcio a N | det(Cω )| = |1 − ω| ). Este resultado d´-nos apenas condi¸˜es necess´rias. Vejamos alguns exemplos, para a co a podermos compreender o resultado seguinte. Exemplo 4.10 Consideramos uma matriz N × N, tridiagonal, da forma,   a b 0 ···  ...   c a  b A= ... ...  .  0 c    . .. .. .. . . . . . (4.19) Vamos considerar inicialmente a = 2, b = c = −1. Analisando o valor de ρ(Cω ), que determina a rapidez de convergˆncia, variando ω ∈]0, 2[, obtemos o gr´fico que apresentamos e a 142 ´ em baixo, a esquerda, para N = 5. E vis´vel que h´ um valor de ω, pr´ximo de 1.35 para ` ı a o o qual a convergˆncia ser´ mais r´pida, e reparamos tamb´m que para os outros valores de e a a e ω ∈]0, 2[ se verifica ρ(Cω ) < 1. Na figura seguinte, ao centro, coloc´mos o mesmo exemplo a alterando apenas N = 10. Verificamos o mesmo tipo de comportamento, mas o valor de ω para o qual h´ um m´nimo foi agora deslocado para pr´ximo de 1.55. Por outro lado, ala ı o terando agora para c = 1, obtemos uma situa¸ao completamente diferente, vis´vel na figura c˜ ı da direita. Continua a haver convergˆncia para valores de ω ≤ 1, mas para alguns valores e de ω superiores a 1, o m´todo n˜o converge (´ uma situa¸ao de antissimetria que n˜o se e a e c˜ a enquadra no teorema que veremos de seguida e que nos d´ uma condi¸ao suficiente para a a c˜ convergˆncia). e 1 08 . 06 . 04 . 02 . 1 08 . 06 . 04 . 02 . 1 08 . 06 . 04 . 02 . 05 . 1 15 . 2 05 . 1 15 . 2 05 . 1 15 . 2 Teorema 4.5 (condi¸ao suficiente, Ostrowski-Reich). Se a matriz A for hermitiana e c˜ definida positiva ent˜o para ω ∈]0, 2[ o m´todo SOR converge qualquer que seja a iterada a e inicial. Em particular, o caso ω = 1 corresponde a convergˆncia do m´todo de Gauss-Seidel para ` e e matrizes hermitianas definidas positivas. Demonstra¸˜o: (Ver e.g. [7], [25]). ca Observa¸˜o 1 (parˆmetro optimal ω ∗ ). ca a Embora n˜o seja poss´ a priori, para qualquer matriz definir qual o ω ∗ , parˆmetro a ıvel a optimal que ir´ permitir uma maior rapidez de convergˆncia, nalguns casos particulares ´ a e e poss´ explicit´-lo por estimativas te´ricas (ver observa¸˜o seguinte). Em muitos casos de ıvel a o ca aplica¸˜o pr´tica (sistemas resultantes da discretiza¸˜o de equa¸˜es diferenciais), esse valor ca a ca co ∗ optimal ´ obtido para ω > 1, o que deu origem ao nome de sobre-relaxa¸˜o (por oposi¸˜o a e ca ca ω ∗ < 1, que ´ designada sub-relaxa¸˜o, e que tamb´m pode oferecer um parˆmetro optimal, e ca e a veja-se a terceira figura do exemplo anterior). Mas n˜o ´ necess´rio conhecer exactamente a e a o valor optimal, para valores ω pr´ximos de ω ∗ , o m´todo SOR converge mais rapidamente o e que o m´todo de Gauss-Seidel. e Observa¸˜o 2 (equa¸oes diferenciais). ca c˜ Os m´todos iterativos, e em particular o m´todo SOR, s˜o especialmente eficazes para e e a resolver sistemas que resultam da discretiza¸˜o de equa¸˜es com derivadas parciais. Nesses ca co sistemas ´ frequente ter como inc´gnita um vector cujas componentes uij dependem de dois e o ind´ (no caso de problemas em R2 ) e que est˜o apenas relacionadas com componentes de ıces a 143 ind´ vizinhos ui±1,j±1 . Isto significa que a matriz do sistema ser´ essencialmente nula, mas ıces a os elementos n˜o nulos da matriz est˜o dispersos, devido a ordena¸˜o de dois ind´ num a a ` ca ıces unico (que permitir´ definir um vector como inc´gnita, e assim estabelecer o sistema). No ´ a o entanto, essa ordena¸˜o ´ dispens´vel se utilizarmos um m´todo iterativo, de tal forma que ca e a e nunca ser´ preciso explicitar qual a matriz do sistema. Como exemplo, apresentamos um a sistema (correspondente ` discretiza¸˜o da equa¸˜o de Laplace usando diferen¸as finitas) a ca ca c em que os valores uij est˜o relacionados por equa¸˜es a co 1 uij = (ui+1,j + ui−1,j + ui,j+1 + ui,j−1 ), 4 conhecendo-se alguns valores de uij correspondentes a valores dados na fronteira do dom´ ınio (...problema de Dirichlet). Repare-se que esta rela¸˜o define um sistema, que ´ apenas dif´ ca e ıcil de explicitar para alguns dom´ ınios, onde a ordena¸˜o dos ind´ (i, j) ´ menos trivial... no ca ıces e caso de um rectˆngulo ´ simples (basta ordenar linha a linha... ou coluna a coluna). No a e entanto, a aplica¸˜o do m´todo de Jacobi ´ neste caso muito simples, ca e e uij (n+1) 1 (n) (n) (n) (n) = (ui+1,j + ui−1,j + ui,j+1 + ui,j−1 ), 4 e esta itera¸˜o ´ efectuada para todos os ´ ca e ındices (i, j) correspondentes a pontos no interior do dom´ ınio (os pontos na fronteira n˜o s˜o alterados, pois s˜o os valores dados... e ser˜o a a a a eles que definem a solu¸˜o). O uso de m´todos iterativos ´ ainda justificado pelo facto ca e e de a matriz ser esparsa (a maior parte dos elementos ser´ nulo), e pode mostrar-se que se a trata da implementa¸˜o de um sistema em que a matriz tem a diagonal dominante (n˜o ca a estritamente em todos... repare-se que 1 = 1 + 1 + 1 + 1 ), e que ´ irredut´ e ıvel. Como 4 4 4 4 curiosidade, notamos que a aplica¸˜o do m´todo SOR se traduz nas itera¸˜es ca e co uij (n+1) = (1 − ω)uij (n+1) (n+1) 1 (n) (n+1) (n) (n+1) + ω (ui+1,j + ui−1,j + ui,j+1 + ui,j−1 ), 4 (n+1) (n+1) a admitindo que os valores ui−1,j e ui,j−1 s˜o calculados antes dos valores ui+1,j e ui,j+1 . Para o caso espec´ ıfico de um dom´ ınio que ´ um quadrado com N × N pontos interiores, ´ e e ∗ poss´ obter teoricamente o valor optimal ω para o m´todo SOR, tendo-se (cf.[1]): ıvel e ω∗ = 2 , π 1 + sin( N+1 ) (n+1) e a sua utiliza¸˜o permite aumentar substancialmente a rapidez de convergˆncia do m´todo ca e e SOR. Observa¸˜o 3 (m´todo de Jacobi modificado). ca e Tal como o SOR ´ uma modifica¸˜o de Gauss-Seidel, o m´todo de Jacobi tamb´m e ca e e pode ser modificado introduzindo um parˆmetro de relaxa¸ao. Neste caso, para ω = 0, a c˜ escrevemos x = x − ωD−1 (Ax − b), em que D se refere ` parte diagonal da matriz A,reparando que se ω = 1 obtemos o m´todo a e de Jacobi usual. Aqui Cω = I−ωD−1 A,e assim teremos convergˆncia se ||I −ωD−1 A|| < 1. e A itera¸ c 144 ˜o processa-se da mesma forma a x(n+1) = x(n) − ωD−1 (Ax(n) −b), e reparamos que neste caso as matrizes M e N tˆm a forma: e 1 Mω = ω D 1 Nω = L + (1 − ω )D + U. (4.20) A itera¸˜o atrav´s do m´todo de Jacobi modificado ´ optimal se ω = 2/(2−λ+ −λ− ), em ca e e e C C que λ+ ´ o maior e λ− o menor valor pr´prio de Cω , supostos reais e em m´dulo inferiores a e o o C C 1 (ver [18]) . Neste caso a convergˆncia ser´ sempre mais r´pida que a do m´todo cl´ssico. e a a e a De um modo geral, com escolha apropriada de ω o m´todo modificado permite acelerar a e convergˆncia quando para o m´todo cl´ssico se tem ρ(C1 ) ∼ 1. e e a 4.4 M´todos Directos para Sistemas Lineares e Tendo j´ estudado alguns m´todos iterativos para sistemas lineares, fazemos agora uma a e breve an´lise de alguns m´todos directos, especialmente no que diz respeito ao condicionaa e mento, ` estabilidade, e ` optimiza¸˜o do n´ mero de opera¸˜es envolvidas. a a ca u co Independentemente do m´todo escolhido, a resolu¸˜o de um sistema linear Ax = b em e ca cujo vector b ´ dado com erros leva a uma propaga¸˜o desses erros ` solu¸˜o do sistema, e ca a ca ou seja a um problema de condicionamento. 4.4.1 Condicionamento de um Sistema Linear Interessa-nos identificar quais as matrizes que podem trazer problemas de mau condicionamento. Supondo que nos era dado, n˜o o vector b exacto, mas apenas uma aproxima¸˜o ˜ obtea ca b, ˜ mos um valor aproximado x , solu¸˜o do sistema: A˜ = b. ˜ ca x Pretendemos ver qual a influˆncia que o erro e˜ = b − ˜ tem no erro do resultado e b b ex = x − x, e para isso recuperamos algumas no¸˜es j´ vistas no primeiro cap´ ˜ co a ıtulo. ˜ Para estabelecermos a rela¸˜o entre os erros relativos9 dos dados ||δ˜|| = ca b ||x−˜|| x ||x|| ||b−˜ b|| ||b|| e os erros relativos dos resultados ||δx|| = ˜ a norma de matrizes : 9 vai ser importante estabelecer uma no¸˜o que envolve ca No caso vectorial, usamos a nota¸˜o ca δx = ˜ ex x−x ˜ ˜ = . ||x|| ||x|| ˜ ´ E tamb´m utilizada por vezes a nota¸˜o δx para designar o valor ||ex || . Preferimos usar nesse caso ||δx ||, e ca ˜ ˜ ||x|| porque p˜e em evidˆncia qual a norma usada, e que se trata de um escalar. o e 145 Defini¸˜o 4.3 Designa-se por n´mero de condi¸˜o de uma matriz A, relativamente a ca u ca ` −1 norma ||.||, o valor : cond(A) = ||A|| ||A || Proposi¸˜o 4.5 Temos as seguintes desigualdades: ca (i) para o erro absoluto: ||e˜|| ||A||−1 ≤ ||ex || ≤ ||A−1 || ||e˜|| ˜ b b (ii) para o erro relativo : ||δ˜|| b ≤ ||δx || ≤ cond(A)||δ˜|| ˜ b cond(A) Demonstra¸˜o: ca Usando os dois sistemas, retiramos A(x − x) = b − ˜ portanto: ˜ b, b||. ||A|| ||x − x|| ≥ ||b − ˜ ˜ b||, e ||x − x|| ≤ ||A−1 || ||b − ˜ ˜ Assim, a al´ ınea a) fica provada, pois : ||A||−1 ||b − ˜ ≤ ||x − x|| ≤ ||A−1 || ||b − ˜ b|| ˜ b||. Por outro lado, de Ax = b, retiramos, de forma an´loga : a ||A||−1 ||b|| ≤ ||x|| ≤ ||A−1 || ||b|| ‘dividindo’ as desigualdades de (i), usando este resultado, obtemos (ii). Observa¸oes: c˜ i) Como ´ ´bvio, podemos concretizar estes resultados para qualquer uma das normas. eo Por exemplo, podemos retirar a majora¸˜o: ca ||δx ||1 ≤ cond1 (A)||δ˜||1 ˜ b onde cond1 (A) designa o n´mero de condi¸˜o relativamente ` norma da soma, ou seja : u ca a cond1 (A) = ||A||1 ||A−1 ||1 ii) Se a norma da matriz identidade ´ ||I|| = 1 (o que acontece sempre para as normas e −1 induzidas), e como ||I|| = ||AA || ≤ ||A|| ||A−1 || , obtemos cond(A) ≥ 1. iii) Os maiores problemas de condicionamento surgem devido ` possibilidade alg´brica a e de encontrar matrizes inversas cujos elementos n˜o s˜o pequenos face aos elementos da a a matriz original. Assim, n˜o h´ uma compensa¸˜o entre as normas de ||A|| e de ||A−1 || a a ca podendo o seu produto dar n´meros muito elevados. Uma tal situa¸˜o ´ retratada no u ca e exemplo seguinte. (4.21) 146 Se a > 1, obtemos ||A||∞ = 2a + 1, ||A−1 ||∞ = a + 3. Portanto cond∞ (A) = (2a + 1)(a + 3) ser´ um valor elevado quando a tamb´m for. Num caso concreto, em que a = 100, obtemos a e cond∞ (A) = 20703, e podemos ver o efeito deste condicionamento na resolu¸ao de um sisc˜ tema Ax = b. Consideramos b = (−100, −0.5, 1) e ˜ = (−100.1, −0.51, 1.1). A solu¸ao exacta ´ x = b c˜ e (0, −0.5, 0.5), e a solu¸ao com o valor aproximado ´ x = (9.9, 9.39, 10.49)... valores surc˜ e ˜ preendentes se n˜o tiv´ssemos encontrado um n´mero de condi¸ao elevado. Neste caso, a e u c˜ ||δ˜||∞ = b 0.1 9.99 = 0.001 e temos ||δx ||∞ = = 19.98, ˜ 100 0.5 Exemplo 4.11 Consideremos o  1 a  −1 1 A= 0 −1 caso em que    −a 1 0 a 0  , e temos A−1 =  1 1 a . 1 1 1 1+a o que significa que ||δx ||∞ = 19980||δ˜||∞ , valores que se encontram dentro das estimativas ˜ b previstas. Repare-se que este efeito pode ser apenas v´sivel para certos valores de b. Considerando ı b = (1, 1, 1) e ˜ = (1, 1, 0.99). A solu¸ao exacta ´ x = (101, 102, 103), e a solu¸ao com o b c˜ e c˜ valor aproximado ´ x = (101, 101, 101.99)... Apesar de alguma diferen¸a, neste caso, e ˜ c ||δ˜||∞ = b 0.01 1.01 = 0.01 e temos ||δx ||∞ = ≈ 0.01. ˜ 1 103 Ou seja, quando dizemos que a matriz ´ mal condicionada, isso reflecte-se mais para valores e de b particulares. • Vejamos agora o caso em que ´ a matriz que tem erros, e o sistema a resolver ser´ e a ˜x A˜ = b. Definindo o erro relativo da matriz, ||δA || = ˜ podemos obter o seguinte resultado. ˜x Proposi¸˜o 4.6 Seja Ax = b, A˜ = b. Se o erro relativo da matriz ´ suficientemente ca e 1 pequeno, verificando ||δA || < cond(A) , temos: ˜ ||δx || ≤ ˜ cond(A) ||δ ˜||. 1 − cond(A)||δA || A ˜ 147 (4.22) ˜ ||A − A|| , ||A|| Demonstra¸˜o: ca Esta estimativa cl´ssica pode tamb´m ser deduzida pelo teorema do ponto fixo. a e Por hip´tese, o ||δA || = ˜ ˜ ||A − A|| 1 ˜ < ⇔ ||A − A|| ||A−1 || < 1. ||A|| ||A|| ||A−1 || ˜ ˜ ˜ Portanto, ||I − A−1 A|| = ||A−1 (A − A)|| ≤ ||A−1 || ||A − A|| < 1. −1 ˜ Considerando a fun¸˜o iteradora G(v) = v − A Av, conclu´ ca ımos que tem um unico ´ ponto fixo z ∈ RN , que ´ obrigatoriamente zero, porque o vector nulo ´ ponto fixo, ie. e e G(0) = 0. Tomando v0 = x, temos v1 = G(v0 ), e ficamos com ˜ ˜x v1 = x − A−1 A(˜) = x − A−1 b = x − x. ˜ ˜ ˜ Agora usamos a estimativa de erro do ponto fixo, ||0 − v1 || ≤ ˜ ||I − AA−1 || ||v1 − v0 ||, ˜ 1 − ||I − AA−1 || ˜ ||I − AA−1 || ||x||, ˜ 1 − ||I − AA−1 || e como v1 = x − x,e v1 − v0 = −x, obtemos ˜ ||x − x|| ≤ ˜ ou seja, ||δx || ≤ ˜ ˜ ˜ A ultima desigualdade resulta de ||I − AA−1 || ≤ ||A−1 || ||A − A|| = cond(A)||δA || (notando ´ ˜ t tamb´m que a fun¸˜o 1−t ´ crescente, com t < 1). e ca e ˜ Note-se que na demonstra¸˜o anterior n˜o exigimos que a matriz A fosse invert´ ca a ıvel, no −1 ˜ < 1 implica isso (ver exerc´ 1.b) no final do entanto a pr´pria condi¸˜o ||A || ||A − A|| o ca ıcio cap´ ıtulo anterior). Apresentamos ainda uma estimativa para quando h´ erro na matriz e no vector. a ˜x b. Corol´rio 4.3 Seja Ax = b, A˜ = ˜ Se ||δA || < a ˜ ||δx || ≤ ˜ 1 , cond(A) ˜ ||I − AA−1 || cond(A)||δA || ˜ . ≤ ˜ −1 || 1 − cond(A)||δA || ˜ 1 − ||I − AA cond(A) (||δA || + ||δ˜||). ˜ b 1 − cond(A)||δA || ˜ (4.23) Destes resultados podemos concluir que um n´mero de condi¸˜o elevado n˜o nos peru ca a mite estabelecer boas majora¸˜es para o erro relativo (mas n˜o podemos inferir o mau co a condicionamento). Quanto maior for o n´mero de condi¸˜o, pior ser´ a majora¸˜o de erro u ca a ca relativo obtida. Consequentemente, para matrizes cujo n´mero de condi¸˜o seja elevado, u ca 148 um pequeno erro relativo no vector b, ‘pode provocar’ um grande erro relativo na solu¸˜o ca do sistema. Se o n´ mero de condi¸˜o for baixo (nunca ser´ inferior a 1...) podemos concluir u ca a acerca do bom condicionamento da resolu¸˜o do sistema. ca Observa¸˜o: Para contornar problemas com o mau condicionamento de matrizes ´ ca e −1 usual estabelecer uma equivalˆncia Ax = b ⇔ LAR(R x) = Lb, de forma a que a e matriz LAR seja melhor condicionada. Assim, resolvemos o sistema A∗ x∗ = b∗ , com A∗ = LAR, b∗ = Lb, e a solu¸˜o x ´ obtida a partir de x∗ notando que x∗ = R−1 x e ca e ∗ e e portanto x = Rx . A esta t´cnica chama-se pr´-condicionamento de um sistema. Terminamos este par´grafo observando que podemos tamb´m definir um n´ mero de a e u condi¸˜o associado ao raio espectral : ca condρ (A) = ρ(A)ρ(A−1 ) que verifica a propriedade (resultante do raio espectral ser o ´ ınfimo das normas induzidas) : condρ (A) ≤ cond||.|| (A) para qualquer norma induzida ||.||. Atendendo a que os valores pr´prios de A−1 s˜o os o a inversos de A, temos : condρ (A) = maxi=1,..,N |λi | mini=1,..,N |λi | (4.24) onde λi designam os valores pr´prios da matriz A. o 4.4.2 M´todo de Elimina¸˜o de Gauss e ca O m´todo cl´ssico de resolu¸˜o de um sistema linear ´ o m´todo de elimina¸˜o de Gauss, e a ca e e ca ´ introduzido em qualquer curso elementar de Algebra Linear, que iremos relembrar sucintamente. Notamos que este m´todo ´ ainda considerado como o m´todo mais eficaz para e e e resolver um sistema gen´rico. No entanto, para certo tipo de matrizes podemos apresentar e m´todos alternativos, mais adequados. e Consideremos o sistema Ax = b em que A ´ uma matriz quadrada N × N : e      a11 . . . aN1 x1 b1  . .  .  =  .  ... .  .   .   . . . . . aN1 . . . aNN xN bN O objectivo deste m´todo ´ eliminar os elementos aij de forma a obter um sistema equive e alente com uma matriz triangular superior. Depois bastar´ usar substitui¸˜es sucessivas a co para chegarmos ` solu¸˜o pretendida. a ca (k+1) O m´todo consiste em N − 1 passos, onde construimos elementos aij e a partir dos (k) (1) elementos aij considerando [aij ] como sendo a matriz inicial. 149 Passo k (para k = 1, ...N − 1) (k) — Se o pivot for nulo, i.e: akk = 0, h´ que efectuar troca de linhas. a (k) — Se akk = 0 calculamos mik = e atribu´ ımos aij (k+1) aik (k) (k) akk , para i = k + 1, ..., N = aij − mik akj , para i, j = k + 1, ..., N, = bi − mik bk , para i = k + 1, ..., N. obtemos o sistema triangular superior    (1) (1) (1) a12 . . . aN1 x1 b1  .   . . (2) . . . .   .  . . a22 .   . . . . . . . (N−1)   .  =  . aN −1,N   .   . . . (N) (N) xN bN ... 0 aNN equivalente:       (k) (k) (k) (k) bi (k+1) que se pode resolver facilmente por substitui¸˜o ascendente: ca  (N) N  xN = b(N )  xk = aN N (k) 1 (k) (bk akk Ao fim dos N − 1 passos  (1) a11   0   .  . . 0 − n j=k+1 aij xj ), para k = N − 1, ..., 1 (k) caso n˜o sejam efectuadas trocas de linhas. a Armazenando os coeficientes mik podemos obter uma factoriza¸˜o da matriz A na forma: ca     (1) (1) (1) a11 a12 . . . aN1 1 0 ... 0  . .  ...  . .   0 a(2) . . .  . .   m21 1 22  A = LU =  .  . . . . . . . (N−1)  , ... ...  .  . . aN−1,N  . 0 (N) mN1 . . . mN,N−1 1 0 ... 0 aNN Caso existam trocas de linhas, a factoriza¸˜o ´ da forma P A = LU em que P ´ uma ca e e T matriz de permuta¸˜o. Ao resolver o sistema obteriamos LU x = P b ca Observa¸ao: A factoriza¸˜o A = LU em que L ´ uma matriz triangular inferior com c˜ ca e diagonal principal unit´ria, e U ´ uma matriz triangular superior, ´ obtida de forma unica a e e ´ (k) se os pivots verificarem akk = 0. 150 4.4.3 N´mero de Opera¸oes u c˜ Analisemos agora qual o n´mero de opera¸˜es ( + - ou * / ) envolvido na resolu¸˜o de um u co ca sistema: ca • Factoriza¸˜o da Matriz — Em cada Passo k: C´lculo dos mik : a (N − k) divis˜es — correspondentes a um total de o C´lculo dos aij : a N−1 k=1 (N − k) opera¸˜es. co N−1 k=1 (N (N − k)2 multiplica¸˜es e subtrac¸˜es — correspondentes a um total de co co opera¸˜es. co • C´lculo dos b(k) a — Em cada Passo k : N − k multiplica¸˜es e subtrac¸˜es correspondentes a um total de co co opera¸˜es. co • Substitui¸ao: c˜ − k)2 N−1 k=1 (N − k) — No total teremos : N + 1 N (N − 1) subtrac¸˜es co 2 N−1 k=1 k = 1 N(N + 1) multiplica¸˜es e divis˜es, co o 2 N−1 k=1 (N N−1 k=1 k= Como N−1 (N − k) = 1 N (N − 1) e tamb´m e k=1 2 obtemos a seguinte tabela, Factoriza¸˜o ca C´lculo de b(k) a Subtitui¸˜o ca Total 1 N(N − 1)(2N − 6 1 N (N − 1) 2 1 N (N + 1) 2 3 ∼N 3 − k) = 1 N(N − 1)(2N − 1), 2 (×; /) (+; −) 1) 1 N (N 2 − 1) 3 1 N(N − 1) 2 1 N(N − 1) 2 3 ∼N 3 ´ f´cil ver que o n´mero total de opera¸˜es, ao considerarmos uma dimens˜o da matriz e a u co a 2 3 co elevada, ´ assimptoticamente equivalente a 3 N . Normalmente, como as opera¸˜es (∗, /) e consomem maior tempo de c´lculo que as (+, −), considera-se que o tempo de c´lculo para a a a resolu¸˜o de um sistema ser´ ca a N3 ∗ TS ≈ t, 3 em que t∗ ser´ o tempo m´dio para efectuar uma multiplica¸˜o/divis˜o. a e ca a Este valor ´ bastante reduzido se comparado com o n´mero de opera¸˜es que seria e u co necess´rio efectuar se resolvessemos o sistema pela Regra de Cramer (nesse caso ter´ a ıamos ∼ (N + 1)! opera¸˜es, o que por exemplo, para N = 10 corresponderia a efectuar aproxico madamente 40 milh˜es de opera¸˜es (∗, /) ao inv´s de aproximadamente 400 pelo m´todo o co e e de Gauss). 151 Observa¸˜o:(Pesquisa de Pivot) ca J´ vimos que ao resolver um sistema Ax = b podemos ter problemas de condicionaa mento, mas mesmo que esses problemas n˜o ocorram podemos ter problemas de instabilia dade num´rica. Para minorar esses problemas, consider´mos t´cnicas de pesquisa de pivot. e a e No entanto, se o problema for mal condicionado, essas t´cnicas de pesquisa de pivot tˆm e e uma utilidade limitada, j´ que um problema mal condicionado ser´ sempre numericamente a a inst´vel. a (k) Da mesma forma que quando o pivot ´ nulo (i.e: akk = 0) somos obrigados a efectuar e uma troca de linhas, no caso de valores pr´ximos de zero, se n˜o fˆr efectuada uma troca de o a o linhas ou colunas, os erros de arredondamento (surgidos na factoriza¸˜o da matriz) podem ca provocar grandes erros nos resultados. Isto acontece se houver um grande desiquilibrio de grandezas nos elementos da matriz — muito maiores face ao pivot (o que ´ equivalente, e dividindo, a que ele seja pr´ximo de zero). Para contornar este problema de estabilidade o num´rica, usam-se as seguintes estrat´gias: e e (i) Pesquisa parcial de pivot (normalmente por linhas) ca e Em cada Passo k da elimina¸˜o de Gauss, troca-se a linha k com a linha r , onde r ´ tal que : (k) (k) |ark | = max |aik | i=k,...,N isto, como ´ claro, s´ no caso de k = r. e o (ii) Pesquisa total de pivot Em cada Passo k da elimina¸˜o de Gauss, troca-se a linha k com a linha r e a coluna k ca com a coluna s , onde r, s s˜o tais que : a |a(k) | = rs i,j=k,...,N max |aij | (k) isto, como ´ claro, s´ no caso de k = r ou k = s. e o • Interpreta¸ao da pesquisa de pivot c˜ Vejamos o caso de um sistema 2 × 2, que ´ exemplificativo. Temos, e a11 a12 a21 a22 x1 x2 = b1 b2 e suponhamos que a11 ´ muito pequeno relativamente a a21 , ent˜o m = a21 ´ um valor e a e a11 elevado. Ao efectuar um passo da elimina¸˜o de Gauss obtemos o sistema equivalente ca a11 a12 0 a22 − m a12 x1 x2 = b1 b2 − m b1 Como m ´ muito elevado, acontece que ma12 e mb1 podem ser muito superiores aos valores e de a22 e b2 . 1 e Ent˜o iremos obter x2 = ab2 −mb1 ≈ ab12 (quando m ´ grande), devido aos erros de a 22 −ma12 arredondamento. Este valor n˜o ser´ significativamente diferente do valor correcto, no a a entanto ao calcular 1 x1 = (b1 − a12 x2 ) a11 152 1 reparamos que como x2 ≈ ab12 estamos perante um caso de cancelamento subtractivo, o que provocar´ grandes erros relativos. a Pelo contr´rio, se o valor de m for pequeno, o que corresponde a efectuar uma pesquisa a 2 de pivot trocando as linhas, ent˜o x2 ≈ ab22 e o problema de cancelamento subtractivo ficado a reduzido a casos particulares b1 a22 ≈ a12 b2 , que podem ser contornados com uma pesquisa total. Exemplo 4.12 Consideramos o sistema 1 5 500 1 e temos m = 500, portanto 1 5 0 1 − 2500 x1 x2 = 5 2 − 2500 . x1 x2 = 5 2 Obtemos x2 = 0.99959984, mas supondo que apenas podemos trabalhar num sistema F P com 3 d´gitos na mantissa, ficaria arredondado para x2 = 1. Portanto ı ˜ o que difere com erro relativo de 100% face ao valor correcto, x1 = 0.00200008... Reparamos que neste exemplo n˜o h´ qualquer problema de condicionamento na matriz, a a pois A−1 = 1 24999 −1 5 500 −1 e assim cond∞(A) = ||A||∞ ||A−1 ||∞ = 500 500 ≈ 1. 24999 x x1 = 5 − 5˜1 = 0., ˜ Se efectu´ssemos a troca de linhas, correspondente a pesquisa de pivot (parcial ou mesmo a ` total, neste caso), ent˜o a 500 1 x1 2 = x2 5 1 5 e portanto m = 1/500, logo x2 = 1(≈ 5−0.002 ), e teremos x1 = ˜ ˜ 5 com erros relativos inferiores a 0.05%. 2−1 500 = 0.002, ambos os valores Observa¸˜o: No Mathematica este problema com os erros de arredondamento n˜o ´ ca a e normalmente vis´ ıvel, porque internamente efectua as opera¸˜es com um maior n´mero de co u a ıtulo d´ ıgitos (o que leva mais tempo...) de forma a garantir a precis˜o no resultado (ver cap´ inicial). 4.4.4 M´todos de Factoriza¸˜o ou Compactos e ca Vimos que, usando o m´todo de elimina¸˜o de Gauss, no caso de n˜o haver troca de linhas, e ca a podemos obter uma factoriza¸˜o da matriz A na forma A = LU , onde U seria a matriz ca triangular superior obtida no final da factoriza¸˜o e L a matriz triangular inferior com ca diagonal unit´ria, cujos elementos seriam os multiplicadores mik . Vamos agora ver uma a maneira alternativa de obter essa mesma factoriza¸˜o atrav´s do M´todo de Doolittle. ca e e 153 M´todo de Doolittle e Pretendemos obter as matrizes L e U tais  1 0 ... ...  1  l A =  21 . ... . ..  . . lN1 . . . lN N−1 que A = LU   0 u11 .   .   0 .   . 0   . . 1 0 : ... ... ... ... ... ... ... 0 u1N . . . . . . uNN      Logo, efectuando o produto, podemos obter as f´rmulas correspondentes ao m´todo de o e Doolittle. Fixando um ´ ındice k, temos: N k−1 N aij = r=1 lir urj = r=1 lir urj + lik ukj + r=k+1 lir urj . Como lkr = 0 se k < r, o segundo somat´rio fica nulo e obtemos imediatamente (para o j ≥ k) : k−1 k−1 akj = r=1 lkr urj + ukj ⇔ ukj = akj − lkr urj . r=1 Da mesma forma, como urk = 0 se k < r, obt´m-se (para i > k) : e k−1 aik = r=1 lir urk + lik ukk ⇔ lik = 1 ukk k−1 aik − lir urk r=1 Podemos esquematizar o algoritmo: Passo 1 : u1j = a1j (j = 1, ..., N) ai1 li1 = u11 (i = 2, ..., N) Passo k : (k = 2, ..., N ) ukj = akj − lik = 1 ukk k−1 r=1 lkr urj aik − k−1 lir r=1 (j = k, ..., N ) urk (i = k + 1, ..., N) Vemos assim que a decomposi¸˜o A = LU pretendida ´ unica, porque a partir das ca e ´ condi¸˜es impostas construimos explicitamente a solu¸˜o. Como ´ claro, caso algum pivot co ca e seja nulo, ukk = 0, ser´ necess´rio efectuar uma troca de colunas (com uma coluna j em a a que ukj = 0) antes de calcular os lik . Essa troca ´ sempre aconselh´vel, fazendo pesquisa de e a pivot, trocando a coluna k com a coluna s : |uks | = maxj=k,...,N |ukj |. Para factorizar a matriz, usando o m´todo de Doolittle s˜o necess´rias o mesmo n´mero e a a u de opera¸˜es que no m´todo de elimina¸˜o de Gauss. H´, no entanto, vantagens comco e ca a putacionais apreci´veis no que diz respeito ao armazenamento dos elementos da matriz a relativamente ao m´todo de Gauss. e 154 Tendo obtido a decomposi¸˜o A = LU, para resolvermos um sistema Ax = b, considerca amos dois passos Ly = b Ux = y. Os dois sistemas s˜o resolvidos facilmente por substitui¸˜o pois L ´ uma matriz triangular a ca e inferior e U ´ triangular superior. e a c˜ a Observa¸˜o 1: Notamos que, caso exista j´ a factoriza¸ao, o tempo de c´lculo para a ca resolu¸˜o do sistema ser´ ca a Ts ≈ N 2 t∗ , que corresponde a ≈ 1 N 2 opera¸˜es (∗, /) para cada uma das substitui¸˜es nos dois sistemas co co 2 Ly = b e Ux = y. Observa¸˜o 2: De forma semelhante, podemos pensar numa factoriza¸˜o em que ao ca ca inv´s de L, ser´ a matriz U que ter´ a diagonal principal unit´ria. Esse outro processo, em e a a a tudo semelhante a este, ´ denominado usualmente por m´todo de Crout. e e Vamos agora ver alguns m´todos particulares para certo tipos de matrizes, em que e podemos reduzir o n´ meros de opera¸˜es. Come¸amos pelas matrizes sim´tricas e depois u co c e vamos ver o caso das matrizes tridiagonais. M´todo de Cholesky e Pode ser encarado como uma simplifica¸˜o do m´todo de Doolittle para matrizes sim´tricas ca e e T T (A = A ), de forma a que decomposi¸˜o seja A = LL . ca Se pensarmos numa matriz unidimensional, reparamos imediatamente que isso corre2 sponde a encontrar l11 : a11 = l11 , e caso consideremos apenas n´meros reais, isto ser´ u a apenas poss´ se a11 ≥ 0. Por outro lado, para resolver a11 x1 = b1 devemos considerar ıvel sempre a11 = 0. Vemos assim que no caso unidimensional isso corresponde a exigir que a11 > 0. No caso de uma matriz real de qualquer dimens˜o, isso corresponde ` no¸˜o de a a ca matriz definida positiva10 ... Como ´ claro, verificar que a matriz ´ definida positiva ´ mais moroso do que resolver o e e e sistema... Assim, o m´todo s´ ´ aplicado a matrizes que sabemos, por resultados te´ricos, e oe o serem definidas positivas e sim´tricas. Veremos, no pr´ximo cap´ e o ıtulo, que uma condi¸˜o ca suficiente para que a matriz seja definida positiva ´ ter a diagonal positiva e estritamente e dominante (por linhas ou colunas). Para este tipo de matrizes ´ v´lida a factoriza¸˜o: A = LLT , e o m´todo consiste nos e a ca e seguintes passos: 10 Relembramos alguns crit´rios para verificar que uma matriz ´ definida positiva: e e (i) xT Ax > 0, ∀x = 0, (ii) os valores pr´prios s˜o todos positivos, o a (iii) os menores principais s˜o todos positivos. a 155 Passo 1 : √ l11 = a11 i1 li1 = a11 (i = 2, ..., N) l Esta constru¸˜o da matriz L n˜o ´ unica. No caso dos reais, depende apenas do sinal ca a e´ escolhido para as raizes, sendo unica a menos de multiplica¸˜o por uma matriz diagonal em ´ ca que os elementos s˜o 1 ou −1. No caso dos complexos depende do ramo escolhido para as a raizes. No m´todo de Cholesky, o n´ mero de opera¸˜es ´ aproximadamente metade do efectuado e u co e nos m´todos de Gauss e Doolittle, porque aproveitamos o facto de a matriz ser sim´trica, e e tendo-se N3 ∗ TS ≈ t + N t√. 6 em que s˜o apenas consideradas significativas as ≈ N 3 /6 opera¸˜es (×; ÷), e o c´lculo das a co a √ . Normalmente, para N grande, N ra´ quadradas que assumimos demorar um tempo t . ızes o tempo de c´lculo da raiz quadrada, n˜o dependendo de N, pode ser considerado menos a a significativo que as restantes opera¸˜es (note-se ainda que, com poucas itera¸˜es, ´ poss´ co co e ıvel uma boa aproxima¸˜o da raiz pelo m´todo de Newton, usando apenas multiplica¸˜es e ca e co divis˜es). o Observa¸˜o: Caso se esteja a trabalhar com complexos, n˜o ´ necess´rio exigir que a ca a e a matriz seja definida positiva! Uma outra possibilidade para evitar o problema de exigir que a matriz seja definida positiva consiste em considerar a decomposi¸˜o ca A = LDL , o que tamb´m evita o c´lculo de ra´ quadradas e a ızes Passo k : (k = 2, ..., N )   l = kk  lik = 1 lkk akk − aik − k−1 2 r=1 lkr k−1 r=1 lir lkr (i = k + 1, ..., N) C´lculo de matrizes inversas a Para calcular uma matriz inversa atrav´s de um m´todo de factoriza¸˜o, resolvemos N e e ca sistemas Ax = ei (i = 1, ..., N ) em que ei ´ um vector (0, ..., 0, 1, 0, ..., 0) da base can´nica. Repare-se que a factoriza¸˜o e o ca da matriz A ´ apenas efectuada uma unica vez, sendo depois re-utilizada. no c´lculo dos e ´ a outros sistemas. Isto envolve o c´lculo de N substitui¸˜es para resolver Ly = b e ainda N a co 2 substitui¸˜es para resolver U y = b. Como cada substitui¸˜o envolve um n´ mero ∼ N de co ca u 2 opera¸˜es, (+; −) ou (×; ÷), isto d´ um total de ∼ 4 N 3 opera¸˜es, (+; −) ou (×; ÷). co a co 3 156 O processo de diagonaliza¸˜o completa (m´todo de Gauss-Jordan) envolve o mesmo ca e n´mero de opera¸˜es. Na primeira fase, em que obtemos a matriz triangular superior, efecu co N3 tuamos ∼ 3 opera¸˜es para a factoriza¸˜o, mas tamb´m N opera¸˜es no segundo membro co ca e co N2 N3 (k) (c´lculo dos b ´ ∼ 2 ), o que d´ ∼ 2 . Depois, para efectuarmos a diagonaliza¸˜o coma e a ca pleta eliminamos no sentido inverso, mas a´ ´ apenas necess´rio calcular os multiplicadores, ıe a 2 o que envolve apenas ∼ N opera¸˜es, porque temos zeros na parte triangular inferior. No co 2 3 entanto, voltamos a ter N opera¸˜es no segundo membro o que d´ mais ∼ N . Na realico a 2 dade, este processo ´ equivalente a resolver cada um dos sistemas triangulares superiores. e No total, teremos o mesmo n´ mero de opera¸˜es ∼ 4 N 3 . u co 3 — Reparando que as componentes dos vectores ei s˜o essencialmente zeros, podemos a reduzir significativamente a contagem do n´ mero de opera¸˜es, se repararmos que o c´lculo u co a de Ly = eN n˜o envolve qualquer opera¸˜o, j´ que y = eN . Da mesma forma Ly = ek a ca a N (N−k)(N−k+1) envolver´ apenas i=k (N − i) = a opera¸˜es, que somadas (de k = 1 at´ N) co e 2 N3 N3 N3 N3 3 d˜o apenas ∼ 6 opera¸˜es. Conclu´ a co ımos que a soma total ´ ∼ 3 + 6 + 2 = N . e a ca Sendo o n´mero de opera¸˜es ∼ N 3 , o triplo do necess´rio para a resolu¸˜o de um u co sistema, nunca ´ aconselh´vel inverter uma matriz, sendo prefer´ armazenar as matrizes e a ıvel L e U, j´ que de qualquer forma, quer a multiplicar A−1 b, quer a resolver Ly = b e U x = y, a o n´ mero de opera¸˜es envolvido ´ o mesmo: ∼ N 2 . u co e Um outro problema computacional que pode ocorrer ´ o armazenamento durante os e c´lculos da matriz inversa. No caso destes m´todos isso implica 2N 2 entradas, provindo a e N 2 das matrizes L e U, e mais N 2 do resultado. No entanto, se n˜o houver necessidade a 2 de guardar A, podemos reduzir o n´ mero para N + N entradas usando o m´todo de u e Gauss-Jordan. Matrizes Tridiagonais Este ´ o caso de matrizes em que, ` excep¸˜o das trˆs diagonais principais, todos os outros e a ca e elementos s˜o nulos. Ou seja: a aij = 0, se |i − j| > 1. Estas matrizes aparecem em muitos problemas pr´ticos (por exemplo, no caso de intera pola¸˜o por splines, ou na resolu¸˜o de equa¸˜es diferenciais) ca ca co Devido ` sua estrutura simples, o n´ mero de opera¸˜es necess´rio para resolver um a u co a sistema, pode ser consideravelmente reduzido, j´ que podemos escrever A = LU, onde L a ser´ uma matriz triangular inferior, bidiagonal, com diagonal unit´ria, e U uma matriz a a 157 triangular superior, bidiagonal:  a11 a12 0 ... 0 .  . ... .  a21 a22 . . .  .. .. ...  0 . . 0   . . ... ... ..  . . aN−1,N 0 . . . 0 aN,N−1 aNN  O m´todo de factoriza¸˜o de Doolittle reduz-se ent˜o a: e ca a Passo 1: u11 = a11 ; u12 = a12 a l21 = u21 11   ukk = akk − lk,k−1 uk−1,k uk,k+1 = ak,k+1 a  lk+1,k = k+1,k ukk    =            1 l21 0 . . . 0 0 1 ... ... ... ... ... ... 0 ... ... ... 1 lN N−1       0  1 0 . . . . . .          u11 u12 0 . . . . . . 0 0 ... 0 . . . . u22 . . . . . ... ... ... 0 ... ... ... uN−1,N ... ... 0 uNN         Passo k : (k = 2, ..., N ) Podemos contabilizar o n´ mero de opera¸˜es efectuado na factoriza¸˜o e na resolu¸˜o u co ca ca dos sistemas triangulares (neste caso, a substitui¸˜o ainda ser´ mais simples): ca a Factoriza¸ao: envolve N − 1 opera¸˜es (+; −), e 2N − 1 opera¸˜es (×; /). c˜ co co Resolver Ly = b : envolve N − 1 opera¸˜es (+; −), e N − 1 opera¸˜es (×; /). co co co co Resolver U x = y : envolve N − 1 opera¸˜es (+; −), e 2N − 1 opera¸˜es (×; /). • Corresponde a um total de (3N − 3) + (5N − 3) = 8N − 6 opera¸˜es! co Considerando, de novo, apenas como significativas as opera¸˜es (∗, /) obtemos, para um co sistema tridiagonal TS ≈ 5N t∗ . Observa¸˜o: O Mathematica tem implementada a rotina LinearSolve que permite reca solver um sistema introduzindo a matriz e o vector. A rotina LUDecomposition permite obter uma lista com trˆs elementos, em cujo primeiro ´ uma matriz em que est´ concatee e a nada a matriz L e a matriz U, o segundo elemento ´ um vector que indica as permuta¸˜es e co efectuadas aquando da pesquisa de pivot e o terceiro elemento ´ uma estimativa do n´mero e u de condi¸˜o cond∞ (A). Note-se que isto pressup˜e a entrada de uma matriz com valores ca o num´ricos, n˜o exactos (mais uma vez se alerta para a diferen¸a entre 1 e 1.0, por exe a c emplo).Para matrizes tridiagonais refere-se a existˆncia da rotina TridiagonalSolve, onde ´ e e apenas necess´rio introduzir uma lista com as trˆs diagonais e o vector de dados. Para isso a e ´ necess´rio adicionar o package LinearAlgebra‘Tridiagonal‘. e a 4.4.5 M´todos Iterativos e M´todos Directos e e Para finalizar o cap´ ıtulo iremos considerar de novo m´todos iterativos, mas agora relacionae dos com m´todos directos. e • M´todo de correc¸ao residual. e c˜ 158 Podemos contornar eventuais erros (devidos a um mau condicionamento ou a instabilidade num´rica) resultantes da resolu¸˜o de um sistema linear com um m´todo directo, e ca e usando um m´todo iterativo. Trata-se do m´todo de correc¸ao residual, que passamos a e e c˜ descrever. — Supondo que ao resolver o sistema Ax = b obtinhamos um vector impreciso x0 , m´ a aproxima¸˜o de x, podemos considerar resolver ca Aε1 = r0 em que r0 = b − Ax0 . Se o valor x1 = x0 + ε1 ainda n˜o ´ suficientemente bom, repetimos a e sucessivamente o processo, obtendo Aεn+1 = rn em que εn+1 = xn+1 − xn, rn = b − Axn . Cada itera¸˜o necessita de apenas ∼ N 2 opera¸˜es, porque guardamos as matrizes L e ca co U da factoriza¸˜o. ca Observa¸˜o 1 (correc¸ao residual, um m´todo de ponto fixo...) ca c˜ e Vejamos que, em certo sentido, se trata de um m´todo de ponto fixo. e Como vemos, o problema est´ na resolu¸˜o do sistema, pelo que podemos encarar que a ca a matriz A usada para resolver o sistema ´ ligeiramente perturbada. Vamos design´-la por e a ˜ A, diferente da matriz usada para calcular Ax − b. Sendo assim, o processo iterativo constru´ pelo m´todo da correc¸˜o residual ´ o ıdo e ca e seguinte ˜ A(xn+1 − xn ) = b − Axn , ou seja, ˜ ˜ xn+1 = xn − A−1 b + A−1 Axn . ˜ xn+1 − x = xn − x + A−1 A(x − xn ). Vemos assim que se trata de um m´todo equivalente a um m´todo do ponto fixo aplicado e e a en = x − xn , tendo-se ˜ en+1 = (I − A−1 A)en . ˜ Como j´ vimos, basta que ||I − A−1 A|| < 1, para que haja convergˆncia do m´todo, ora isso a e e ˜ for suficientemente pr´xima de A, ficando provada a convergˆncia do m´todo acontece se A o e e (veja-se tamb´m a demonstra¸˜o efectuada antes, para a estimativa do erro relativo devido e ca ˜ a A). N˜o podemos dizer que se trata exactamente de um m´todo do ponto fixo porque a a e ˜ perturba¸˜o da matriz A na resolu¸˜o do sistema n˜o ser´ igual a uma matriz fixa A, essa ca ca a a perturba¸˜o pode variar com xn de forma n˜o determinada, a n˜o ser experimentalmente. ca a a Isso n˜o invalida a demonstra¸˜o que acabamos de fazer, porque ainda que assim fosse, a ca ter´ ıamos ˜n ˜0 ||en || ≤ ||I − A−1 A|| · · · ||I − A−1 A|| ||e0 ||, 159 Designando por x a solu¸˜o exacta, temos Ax = b e portanto ca ˜ e naturalmente assumindo ||I − A−1 A|| < 1, obtemos uma convergˆncia para a solu¸˜o. e ca n Observa¸˜o 2 (compara¸ao quanto ao n´mero de opera¸oes entre m´todos directos e ca c˜ u c˜ e iterativos). Os m´todos iterativos implicam normalmente um c´lculo de ∼ N 2 opera¸˜es em cada e a co N itera¸˜o, o que os torna ineficazes para n > 3 . Para al´m disso, a precis˜o atingida ao fim de ca e a N/3 (0) N/3 iteradas n˜o ´ normalmente muito boa (ser´ ≤ L ||z − x ||), pelo que s´ se tornam a e a o realmente eficazes para matrizes de grandes dimens˜es, e especialmente quando a matriz ´ o e esparsa (ou seja, possui poucos elementos diferentes de zero); nesse caso os m´todos directos e n˜o se simplificam muito (excepto em casos particulares... como as matrizes tridiagonais), a enquanto que os m´todos iterativos apresentam uma redu¸ao apreci´vel do n´mero de e c˜ a u opera¸˜es. co 4.5 Exerc´ ıcios p(x) = a0 + a1 x + ... + am xm = 0 1. Para encontrar as ra´ de uma equa¸˜o alg´brica ızes ca e que tem solu¸˜o unica (devido ao teorema fundamental da algebra). Este processo leva ca ´ ´ a um m´todo r´pido e eficaz para calcularmos todas as ra´ e a ızes se aplicarmos o m´todo de e Newton ` resolu¸˜o deste sistema n˜o linear. a ca a a) Suponha que existem solu¸˜es complexas para uma equa¸˜o alg´brica cujos coeco ca e ficientes s˜o reais. Haver´ possibilidade de convergˆncia do m´todo de Newton para a a a e e solu¸˜o do sistema (S) se considerarmos todas as iteradas iniciais reais? Porquˆ? ca e b) Para o caso de equa¸˜es do terceiro grau, escreva o sistema em C3 que deve resolver co em cada itera¸˜o se pretender aplicar o m´todo de Newton. Aplique esse m´todo para ca e e 3 determinar aproximadamente as solu¸˜es de x + 3x + 1 = 0, calculando trˆs itera¸˜es, ap´s co e co o ter escolhido uma iterada inicial conveniente. 2. Considere o sistema de equa¸˜es n˜o lineares co a x = f (x + y) y = g(x + y) em que as fun¸˜es f e g verificam |f (t)| < α, |g (t)| < β, para qualquer t ∈ [a, b], e em que co f (R) ⊆ [a, b], g(R) ⊆ [a, b]. a) Mostre que existe uma unica solu¸˜o do sistema em R2 se α + β < 1, que essa solu¸˜o ´ ca ca se encontra em [a, b]2 , e que o m´todo do ponto fixo converge, quaisquer que sejam os valores e iniciais em R. 160 podemos desenvolver a factoriza¸˜o p(x) = am (x − z1 )...(x − zm ) estabelecendo um sistema ca de equa¸˜es n˜o lineares em Cm co a   a0 = am (−z1 )...(−zm )  . . (S) .   a m−1 = −am (z1 + ... + zm ) b) Reduza o sistema anterior ` resolu¸˜o de duas equa¸˜es em R, e mostre o mesmo a ca co resultado que em a). c) Concretize os resultados anteriores para o sistema x = 1 cos(x + y) − cos2 ( 1 (x + y)) 2 5 y = sin( 1 (x + y)) + 1 sin2 (x + y) 3 4 d) Come¸ando com (0, 0), determine uma iterada pelo m´todo de Newton em R2 para c e a aproxima¸˜o da solu¸˜o do sistema anterior. ca ca 3. Pretende-se resolver um sistema linear Ax = b em que os elementos da matriz A s˜o a definidos da seguinte forma: aij = 1 i(i+1) Ci se i = j se i = j a) Indique um intervalo para valores para Ci de forma a que o sistema tenha solu¸˜o ca unica. ´ Sugest˜o: Calcule um majorante para a soma dos elementos das linhas. a b) Considere Ci = −2 + 1/i, explicite um m´todo iterativo que convirja para a solu¸ao. e c˜ 4. Pretende-se resolver um sistema linear Ax = b em que os elementos da matriz A s˜o a definidos da seguinte forma: aij = M C i +C j C |M| C−1 se i = j se i = j em que C > 1, M = 0. a) Mostre que a matriz ´ definida positiva e conclua que ´ poss´ decompˆ-la na forma e e ıvel o T A = LL . b) Considere uma matriz 3 × 3, com M = 16, C = 2. Determine a inversa, usando o m´todo de Cholesky. e 5. Considere um sistema Ax = b em que o segundo membro ´ dado com um erro relativo e ||δb ||1 < 0.1. a) Sabendo que a matriz ´ sim´trica e que ||A||∞ ≤ 7, ||A−1 ||1 ≤ 1, determine um e e majorante para ||δx ||∞ b) Se a matriz for   6 1 0  1 3 1  1 2 4 ca o determine um majorante para condρ (A), baseado na localiza¸˜o dos valores pr´prios. 6. Considere o sistema de equa¸˜es co x − y cos(x)/4 = 0 1 − y + |x − 1| = 0 161 a) Mostre que existe uma e uma s´ solu¸˜o (x, y) ∈ [0, 1] × [1, 2]. o ca b) Determine uma aproxima¸˜o da solu¸˜o de forma a que o erro absoluto verifique ca ca ||e||∞ < 0.05. 7. Considere um sistema de equa¸˜es escrito na forma F (x) = 0, e seja JF (x) a matriz co jacobiana de F calculada em x. a) Mostre que se existir um ω ∈ R tal que ||I + ωJF (x)|| ≤ L < 1, ∀x ∈ RN , ent˜o o a sistema possui uma unica solu¸˜o em RN . ´ ca b) Conclua que o sistema   4x + y + sin(z) = 1 x + 4y + cos(z) = 1  sin(x) + cos(y) + 4z = 1 tem uma unica solu¸˜o em RN , que est´ no conjunto [− 1 , 1 ] × [− 3 , 3 ] × [− 3 , 3 ]. ´ ca a 4 2 8 8 8 8 c) Determine uma aproxima¸˜o dessa solu¸˜o calculando duas itera¸˜es pelo m´todo de ca ca co e (0) Newton, come¸ando com a iterada inicial x = 0. c 8. Considere o sistema   2 10 0  10 2 2  0 2 2 a) Mostre que as condi¸˜es necess´rias e suficientes para que o m´todo de Jacobi convirja co a e (0) 3 dado qualquer x ∈ R n˜o se verificam. a b) Considerando x(0) = (0, −1, 5) verifique que o m´todo diverge, e considerando x(0) = e (0) (0, 1, −5), ou mais em geral, x = (−1, 1, 0) + α(−1, 0, 5) o m´todo converge. Justifique. e 9. Considere o sistema de equa¸˜es: co   2x + y + ε cos(z) = 0 x + 3y − 3εxz = 0  εx2 + y + 3z = 0 a) Mostre que para 0 < ε < 1 2 o sistema tem solu¸˜o unica no conjunto ca ´ 1 S = {(x, y, z) ∈ R3 : |x|, |y|, |z| ≤ }. 2 b) Usando a fun¸˜o iteradora ca G(x, y, z) = −(y/2 + ε cos(z)/2, x/3 − εxz, εx2 /3 − y/3), mostre que, aplicando o m´todo do ponto fixo, se tem: e |z − zn | ≤ 5n ||(x1 − x0 , y1 − y0 , z1 − z0 )||∞ 6n−1 qualquer que seja o vector inicial (x0 , y0 , z0 ) ∈ S. 162 c) No caso ε = 0, mostre que o m´todo de Jacobi converge e que temos e 1 ||(xk , yk , zk )||∞ ≤ ( )k ||(x0 , y0 , z0 )||∞ 2 para qualquer (x0 , y0 , z0 ) ∈ R3 . 10. Pretende-se resolver o sistema       1 1/2 1/3 α 0.905  1/2 1/3 1/4   β  =  0.421  1/3 1/4 1/5 γ 0.265 a) Aplique o m´todo de Cholesky, verificando as condi¸˜es para uma matriz real. e co b) Supondo que o segundo membro foi obtido com um erro absoluto que verifica ||eb ||∞ ≤ 0.01, determine um majorante para o erro relativo da solu¸˜o. ca 11. Considere um sistema Ax = b em que o segundo membro ´ dado com um erro e relativo ||δb ||1 < 0.1. a) Sabendo que a matriz ´ sim´trica e que ||A||∞ ≤ 7, ||A−1 ||1 ≤ 1, determine um e e majorante para ||δx ||∞ b) Se a matriz for   6 1 0  1 3 1  1 2 4 determine um majorante para condρ (A), baseado na localiza¸˜o dos valores pr´prios. ca o 2 12. Considere os dois algoritmos seguintes para resolver A x = b Algoritmo I: i) Calcular B = A2 ii) Factorizar B iii) Resolver Bx = b Algoritmo II: i) Factorizar A ii) Resolver Ay = b iii) Resolver Ax = y a) Qual destes algoritmos envolve um menor n´mero de opera¸˜es quando N ´ grande? u co e b) Encontre algoritmos semelhantes para resolver um sistema Ap x = b, e indique uma estimativa do n´mero de opera¸˜es envolvidas. u co Sugest˜o: Note que Ap x = b ⇔ A(Ap−1 x) = b. a 163 Cap´ ıtulo 5 Determina¸˜o de Valores e Vectores ca Pr´prios de Matrizes o 5.1 No¸oes b´sicas c˜ a Seja E um espa¸o vectorial. Dizemos que λ ∈ C ´ um valor pr´prio de uma aplica¸˜o linear c e o ca A se: ∃v ∈ E, v = 0 : Av = λv, e a v ∈ E chamamos vector pr´prio de A associado a λ. Um mesmo valor pr´prio λ pode ter o o associados varios vectores pr´prios, que geram um subespa¸o vectorial, designado subespa¸o o c c pr´prio Sλ associado a λ. Para qualquer u ∈ Sλ ´ ´bvio que Au = λu. o eo Podemos considerar sempre uma base ortonormada em Sλ . Ao longo de cada elemento da base u a aplica¸˜o A fica invariante e comporta-se como uma aplica¸˜o linear a uma ca ca dimens˜o (i.e: como uma ”recta” de inclina¸˜o λ). Quando um dos valores pr´prios ´ λ = 0, a ca o e o subespa¸o pr´prio associado ´ o pr´prio n´ cleo (kernel) da aplica¸˜o A. No caso geral, c o e o u ca Sλ = Ker(A − λI). Lembramos que se dois valores pr´prios λ, µ s˜o distintos, ent˜o os vectores pr´prios o a a o associados a λ s˜o independentes dos que est˜o associados a µ. Basta reparar que se 0 = a a a v ∈ Sλ ∩ Sµ , ent˜o λv = Av = µv ⇒ (λ − µ)v = 0 ⇒ λ = µ. Apenas nos interessa considerar o caso em que o espa¸o vectorial E tem dimens˜o finita c a N a N, que podemos identificar a um certo R . No caso de operadores em dimens˜o infinita, o processo habitual ´ aproximar o operador linear por uma matriz (operador linear de e dimens˜o finita) e a´ determinar os valores pr´prios. Ou seja, ‘formalmente’ consideramos a ı o An → A, e ao determinar λn : An vn = λn vn , obtemos uma sucess˜o tal que λn → λ. Note-se a que isto ´ apenas poss´vel quando o problema ´ regular e est´ demonstrada a dependˆncia e ı e a e cont´nua. ı Come¸amos por rever algumas propriedades alg´bricas dos valores pr´prios em dimens˜o c e o a finita. 164 Como Sλ = Ker(A − λI) = {0}, λ ´ valor pr´prio de A se e s´ se e o o pA (λ) = det(λI − A) = 0, o que define uma equa¸˜o polinomial. Encontrando as ra´ desta equa¸˜o podemos obter ca ızes ca a decomposi¸˜o ca pA (λ) = (λ − λ1 )...(λ − λN ) em que λ1 , ..., λN s˜o os valores pr´prios de A. Podemos ter ra´ m´ltiplas nessa equa¸˜o e, a o ızes u ca nesse caso, dizemos que λ ´ um valor pr´prio com multiplicidade alg´brica p se λ for uma raiz e o e com multiplicidade p. Distinguimos multiplicidade alg´brica de multiplicidade geom´trica, e e que determina a dimens˜o do subespa¸o pr´prio Sλ . A multiplicidade geom´trica nem sema c o e pre coincide com alg´brica, para ilustrar esse facto, podemos dar como exemplo a matriz e 1 ε 0 1 e o e ca onde λ = 1 ´ um valor pr´prio de multiplicidade alg´brica 2, raiz da equa¸˜o (λ − 1)2 = 0, mas que tem apenas multiplicidade geom´trica 1, no caso de ε = 0, porque tem apenas um e vector pr´prio independente, v = (1, 0), e que no caso ε = 0 tem multiplicidade geom´trica o e 2. Sabemos que a multiplicidade geom´trica ´ sempre menor ou igual que a alg´brica. No e e e entanto, enquanto que a soma das multiplicidades alg´bricas ´ sempre igual ` dimens˜o e e a a da matriz N, a soma das multiplicidades geom´tricas pode variar muito com pequenas e varia¸˜es das entradas da matriz... basta ver o exemplo anterior! co • Uma propriedade importante do polin´mio caracter´ o ıstico ´ o teorema de Hamiltone Cayley, que afirma pA (A) = 0, ou seja, a potˆncia AN pode ser obtida pela combina¸˜o linear das potˆncias de grau inferior e ca e I, A, A2 , ..., AN−1 . • Outras propriedades importantes s˜o aquelas que relacionam valores pr´prios de difera o entes matrizes. Proposi¸˜o 5.1 Se duas matrizes A, B s˜o semelhantes, ou seja, se existe uma matriz P ca a invert´vel ı B = P −1 AP (P ´ a matriz mudan¸a de base), ent˜o os polin´mios caracter´sticos s˜o iguais. Portanto, e c a o ı a os valores pr´prios coincidem com a sua multiplicidade, e temos: o v ´ vector pr´prio (associado a um valor pr´prio λ) de B se e s´ se P v for vector pr´prio e o o o o (associado ao mesmo valor pr´prio λ) de A. o Demonstra¸ao: Basta reparar que c˜ pB (λ) = det(λI −B) = det(λP −1 P −P −1 AP ) = det(P −1 (λI −A)P ) = det(λI −A) = pA (λ), 165 porque det(P −1 ) = 1/ det(P ). A segunda afirma¸˜o resulta de ca Bv = P −1 AP v = P −1 (λP v) = λv. Observa¸˜o (decomposi¸ao - formas de Schur e Jordan). ca c˜ Podemos mesmo obter uma decomposi¸˜o em que os valores pr´prios s˜o os elementos ca o a da diagonal de uma matriz. A decomposi¸˜o na forma normal de Schur diz-nos que existe ca uma matriz unit´ria U tal que: a T = U ∗ AU ´ uma matriz triangular superior, e portanto pA (λ) = (λ − t11 )...(λ − tNN ). e No caso de A se tratar de uma matriz hermitiana, podemos obter T diagonal, ou seja U ∗ AU = diag(λ1 , ..., λN ) c em que vectores pr´prios associados a λ1 , ..., λN formam uma base ortonormada do espa¸o. o No caso mais geral, apenas podemos obter a decomposi¸˜o na forma can´nica de Jordan: ca o     Jn1 (λ1 ) 0 ... 0 λi 1 0 . . . 0 . .  . ...    . .  0 Jn2 (λ2 ) . . . .   0 λi  −1 P AP =    ; Jni (λi ) =  . . . .. .. .. . ..    . . . . 1  . 0 . 0 ... 0 Jnr (λr ) 0 ... 0 λi n ×n i i em que ni corresponde ` multiplicidade alg´brica do valor pr´prio λi . O caso que nos a e o interessar´ especialmente ´ aquele em a matriz A ´ diagonaliz´vel, ou seja em que os blocos a e e a Jni tˆm apenas um elemento. e Observa¸˜o (matrizes Hermitianas). ca No caso em que A ´ uma matriz hermitiana, ou seja A = A∗ , os valores pr´prios s˜o reais e o a e a forma normal de Schur assegura que existe uma matriz unit´ria U tal que ´ poss´ a a e ıvel decomposi¸ao espectral: c˜ Ax = U DU ∗ x = λ1 (u1 · x) u1 + ... + λN (uN · x) uN em que u1 , ..., uN s˜o vectores pr´prios (ortonormais entre si) associados aos valores pr´prios a o o e c o λ1 , ..., λN . A matriz U ´ uma matriz de mudan¸a de base formada por esses vectores pr´prios, enquanto que a matriz D ´ a matriz diagonal com os respectivos valores pr´prios. Trata-se e o de um caso em que a matriz ´ diagonaliz´vel. e a N˜o ´ dif´ verificar que neste caso a e ıcil Ak x = λk (u1 · x) u1 + ... + λk (uN · x) uN 1 N Ora, isto permite definir, a partir da expans˜o em s´rie de Taylor, fun¸˜es anal´ a e co ıticas (inteiras) em que a vari´vel ´ uma matriz! a e Assim, se f(x) = α0 + α1 x + ... + αn xn + ... obtemos f (A)x = (α0 I + α1 A + ... + αn An + ...)x = f (λ1 )(u1 · x) u1 + ... + f (λN )(uN · x) uN 166 o que permite, por exemplo, definir a exponencial de uma matriz, a partir dos seus valores pr´prios: o eA x = eλ1 (u1 · x) u1 + ... + eλN (uN · x) uN Esta representa¸˜o tem especial importˆncia ao resolvermos um sistema de equa¸˜es ca a co At diferenciais u (t) = Au(t), pois nesse caso u(t) = e u(0). Reparando que os vectores pr´prios definem operadores de projec¸˜o Pi x = (ui · x) ui o ca (assumimos ||ui || = 1), podemos tamb´m escrever A na forma: e Ax = (λ1 P1 + ... + λN PN )x, e daqui f (A)x = (f (λ1 )P1 + ... + f(λN )PN )x. ((Como informa¸˜o, observamos que esta ca representa¸˜o pode ser generalizada a casos particulares de operadores lineares em espa¸os ca c de dimens˜o infinita (operadores auto-adjuntos compactos...)) a Observa¸˜o (valores singulares). ca At´ aqui apenas fal´mos de valores pr´prios, no¸˜o que se aplica a uma matriz quadrada. e a o ca Podemos introduzir uma no¸˜o adaptada a matrizes n˜o quadradas. Sendo B ∈ CM × CN ca a uma matriz.M × N com valores complexos (N pode ser igual a M ) iremos considerar a ¯ o matriz quadrada obtida pelo produto da matriz adjunta B ∗ = B por ela pr´pria. Dessa ∗ forma obtemos uma matriz quadrada A = B B de dimens˜o N × N, que ser´ hermitiana e a a semi-definida positiva. Os valores pr´prios de A ser˜o positivos ou nulos e ´ atrav´s desses o a e e valores que definimos valores singulares: • Dizemos que µ ≥ 0 ´ valor singular de B se µ2 for valor pr´prio de A = B ∗ B. e o (i) Note-se que os n´ cleos de A e B coincidem, ie. Ker(A) = Ker(B), porque se Bx = 0 u ´ ´bvio que Ax = B ∗ Bx = 0; e reciprocamente, se Ax = 0 temos eo o que implica Bx = 0. Repare-se que isto significa que o n´ mero de valores singulares positivos (contando com u a multiplicidade geom´trica) ser´ igual ` caracter´ e a a ıstica da matriz B, e como ´ claro, os e restantes valores singulares ser˜o nulos. a (ii) A norma euclidiana de uma matriz n˜o quadrada ´ dada por ||B||2 = ρ(B ∗ B), e a e assim conclu´ ımos que a norma euclidiana de uma matriz ser´ igual ao maior valor singular. a (iii) A principal propriedade, ´ a decomposi¸ao em valores singulares (o an´logo da e c˜ a decomposi¸˜o espectral), que garante a existˆncia de N vectores ortonormais u1 , u2 , ...uN ∈ ca e CN , e de M vectores ortonormais v1 , ..., vM ∈ CM : em que r ´ a caracter´ e ıstica da matriz B (os µi restantes seriam nulos). Note-se que Buk = ∗ µk vk , e que B vk = µk uk . Quando um sistema da forma Bx = y tem solu¸˜o (ou solu¸˜es), ca co ent˜o a 1 1 x = (y · v1 )u1 + ... + (y · vr )ur . µ1 µr • Os valores singulares tˆm especial interesse na aproxima¸˜o de sistemas mal condie ca cionados. Por exemplo, est˜o relacionados com o problema de aproxima¸˜o de dados pelo a ca m´todo dos m´ e ınimos quadrados, que iremos abordar no ultimo cap´ ´ ıtulo.(Para maior detalhe, consultar p.ex.[18].) 167 Bx = µ1 (u1 · x)v1 + ... + µr (ur · x)vr , x∗ Ax = x∗ B ∗ Bx = (Bx)∗ Bx = ||Bx||2 = 0, 2 5.1.1 Valores pr´prios e o polin´mio caracter´ o o ıstico J´ vimos que sendo A uma matriz N × N, encontrar os valores pr´prios de A ´ encontrar a o e as raizes λ ∈ C : pA (λ) = det(λI − A) = 0, e o ıstico de grau N , e isto corresponde a resolver uma em que pA (λ) ´ o polin´mio caracter´ equa¸˜o polinomial. ca • Encarando o determinante como forma multilinear, temos pA (λ) = det(λI − A) = det(λe(1) − a(1) , ..., λe(N) − a(N) ) em que a(k) s˜o as linhas da matriz A e e(k) as linhas da matriz identidade (i.e: o vector k a da base can´nica). o Ora, se desenvolvermos det(λe(1) − a(1) , ..., λe(N) − a(N) ), obtemos pA (λ) = λN det(e(1) , ..., e(N) ) + ... + (−1)N det(a(1) , ..., a(N) ) e reparamos que no termo constante det(a(1) , ..., a(N) ) = det(A). Por outro lado, como pA (λ) = (−1)N λ1 ...λN + ... − (λ1 + ... + λN )λN−1 + λN , isto implica imediatamente que os termos constantes tˆm que ser iguais, ou seja det(A) = e λ1 ...λN . Da mesma forma, podemos obter λ1 +...+λN = det(a(1) , e(2) , ..., e(N) )+...+det(e(1) , ..., e(N−1) , a(N) ) = a11 +...+aNN = tr(A), ou seja, a soma dos valores pr´prios ´ igual a tr(A), o tra¸o da matriz A. o e c Portanto, podemos concluir as rela¸˜es co tr(A) = λ1 + ... + λN , det(A) = λ1 ...λN . • Escrevendo o polin´mio caracter´ o ıstico na forma pA (λ) = α1 + α2 λ + ... + αN λN−1 + λN , acabamos de concluir que os valores dos coeficientes αk s˜o obtidos pelo c´lculo de determia a nantes, o que significa que h´ uma dependˆncia cont´ a e ınua dos αk face aos valores dos elementos da matriz. Sendo os valores pr´prios as ra´ o ızes λ1 , ..., λN , do polin´mio caracter´ o ıstico, resta saber se h´ uma dependˆncia cont´ a e ınua das ra´ face ` varia¸˜o dos coeficientes, para ızes a ca concluir que os valores pr´prios dependem de forma cont´ o ınua das entradas da matriz. De 1 facto isso verifica-se : 1 Uma demonstra¸˜o alternativa, usando o teorema de Rouch´ pode ser vista em [25]. ca e 168 Lema 5.1 Seja p(x) = α1 +α2 x+...+αN xN−1 +xN , com α = (α1 , ..., αN ) ∈ CN , e seja z = (z1 , ..., zN ) ∈ CN um vector que tem as N ra´zes de p. Consideremos agora uma perturba¸ao ı c˜ do polin´mio, p, com coeficientes em α e ra´zes em z (ordenadas convenientemente, de o ˜ ˜ ı ˜ forma a que zk seja a componente mais pr´xima de zk ). Ent˜o, ˜ o a α → α ⇒ z → z, ˜ ˜ ou seja, h´ uma dependˆncia cont´nua das ra´zes face aos coeficientes. a e ı ı Demonstra¸˜o: ca Usando o teorema fundamental da ´lgebra, a p(x) = (x − z1 )...(x − zN ) = α1 + α2 x + ... + αN xN−1 + xN e a igualdade entre os polin´mios permite escrever um sistema com N equa¸˜es relacionando o co cada αk como fun¸˜o cont´ ca ınua dos valores z1 , ..., zN . Por exemplo, α1 = (−1)N z1 ...zN , ou αN = −(z1 + ... + zN ). Ou seja, com nota¸˜o vectorial, podemos escrever ca α = P(z), em que P ´ uma fun¸˜o vectorial de CN em CN , e ca P(z1 , ..., zN ) = ((−1)N z1 ...zN , · · · · · · , −(z1 + ... + zN )). Esta fun¸˜o ´ claramente cont´ ca e ınua e a menos de permuta¸˜o na lista (z1 , ..., zN ) tamb´m ´ ca e e injectiva. Ali´s, considerando a rela¸˜o de equivalˆncia w z quando σ(z) = w, onde σ ´ a ca e e uma permuta¸˜o dos coeficientes de z, podemos definir a bijectividade de ca P : CN / z ˙ −→ CN −→ α pelo teorema fundamental da ´lgebra. Como se trata de uma aplica¸˜o cont´ a ca ınua e bijectiva a sua inversa ´ tamb´m cont´ e e ınua (i.e. trata-se de um homeomorfismo). Conclu´ ımos assim que com uma ordena¸˜o apropriada das ra´ ´ poss´ obter o resultado. ca ızes e ıvel Corol´rio 5.1 Os valores pr´prios s˜o fun¸oes cont´nuas dos elementos da matriz. a o a c˜ ı 5.2 Teorema de Gerschgorin Podemos come¸ar por retirar alguma informa¸˜o acerca da localiza¸˜o dos valores pr´prios c ca ca o usando o teorema do Ponto Fixo. Com efeito, reparamos que se λ = 0, podemos escrever Av = λv ⇔ v = 169 A v λ e se || A || < 1, temos uma contrac¸˜o, logo a unica solu¸˜o ser´ v = 0. Assim, para termos ca ´ ca a λ solu¸˜es n˜o nulas, e consequentemente valores pr´prios, ´ necess´rio que λ ≤ ||A|| (o caso co a o e a λ = 0 ´ trivial). Isto reflecte a propriedade que j´ tinhamos visto acerca do raio espectral e a ρ(A) ≤ ||A||. No caso de A ser uma matriz hermitiana ´ tamb´m poss´ obter uma minora¸˜o de e e ıvel ca forma simples, x∗ .Ax = x∗ U ∗ DUx ≤ x∗ U ∗ (λmax I)Ux = λmax x∗ .x = λmax ||x||2 2 o que significa que ρ(A) ≥ max ||u∗ Au||2 ||u||2 =1 Exerc´ ıcio 5.1 (Quociente de Rayleigh). Mostre que se A for hermitiana ent˜o o maior a valor pr´prio verifica o x∗ Ax λmax = max ∗ . x=0 x x No entanto, estes resultados podem ser melhorados. O pr´ximo teorema permite obter o informa¸˜es a priori, mais concretas, acerca da localiza¸˜o dos valores pr´prios, atrav´s dos co ca o e elementos da matriz. Teorema 5.1 (Gerschgorin). a) Um valor pr´prio λ de uma matriz A verifica uma das seguintes desigualdades: o N |akk − λ| ≤ N j=1,j=i |akj | = rk , (k = 1, .., N) o que significa que os valores pr´prios pertencem a bolas fechadas com centro na diagonal o e raio rk , ou seja, λ ∈ ¯ B(akk , rk ). k=1 b) Para al´m disso, se a reuni˜o de m bolas forma uma componente conexa, haver´ exace a a tamente m valores pr´prios nessa componente (consideramos m ≥ 1). o c) O mesmo argumento ´ v´lido se considerarmos linhas ao inv´s de colunas! e a e Demonstra¸˜o: ca a) Um vector pr´prio v associado ao valor pr´prio λ verifica o o N N [Av]i = j=1 aij vj = λvi ⇔ N aij vj + aii vi = λvi j=1,j=i e daqui obtemos j=1,j=i aij vj = (λ − aii )vi 170 e portanto N |λ − aii | |vi | ≤ j=1,j=i |aij | |vj |. Considerando agora o ´ ındice k para o qual |vk | = maxi=1,...,N |vi | = ||v||∞ obtemos N N |λ − akk | ||v||∞ ≤ j=1,j=i |akj | |vj | ≤ j=1,j=i |akj | ||v||∞ e assim, dividindo por ||v||∞ = 0 (porque ´ um valor pr´prio), obtemos o resultado. e o b) Para mostrar a segunda parte, usamos argumentos anal´ ıticos. Consideramos um ”segmento formado por matrizes” At = D + t(A − D), (t ∈ [0, 1]), que come¸a na matriz D = diag(a11 , ..., aN N ), quando t = 0, e termina em A, quando t = 1. c Essas matrizes At tˆm valores pr´prios associados Λ1 (t), ..., ΛN (t) que v˜o definir linhas e o a cont´ ınuas (caminhos) no plano complexo. As matrizes At tˆm a mesma diagonal que a e matriz A, e as outras entradas est˜o multiplicadas por t. Temos Λi (0) = akk , e tamb´m a e Λi (1) = λi . Pelo que vimos em a), conclu´ ımos que os valores pr´prios λi (t) pertencem ` reuni˜o das o a a ¯ kk , t rk ) ⊆ B(akk , rk ). ¯ bolas, B(a Pelo corol´rio do lema anterior as fun¸˜es Λk : [0, 1] → C s˜o cont´ a co a ınuas, consequentemente transformam conexos em conexos, logo Λk ([0, 1]) ´ conexo, e por outro lado sabemos e ¯ kk , rk ). Isto implica que tem que pertencer a uma compoque tem que pertencer a B(a k k k a nente conexa dessa reuni˜o. Assim, Λk (1) = λk pertencem exactamente ` componente a conexa que cont´m Λk (0) = akk e o resultado est´ provado. e a c) Basta reparar que os valores pr´prios de AT coincidem com os de A, porque det(A − o λI) = det((A − λI)T ) = det(AT − λI). Observa¸˜o: Quando a matriz ´ real, o polin´mio caracter´ ca e o ıstico tem coeficientes reais. Assim, nesse caso, os valores pr´prios complexos aparecem como pares conjugados. Logo, o caso se conclua que h´ apenas um valor pr´prio numa componente conexa, ele ter´ que a o a obrigatoriamente ser real. Isso acontece frequentemente quando a componente conexa ´ e uma bola disjunta das restantes. Exemplo 5.1 Consideremos um primeiro caso em que a matriz ´ e 4 4  −4 1 −1 A =  0 1 −1  0 4 3  2 2 -6 -4 -2 2 4 6 -4 -2 2 4 6 -2 -2 -4 -4 171 ¯ ¯ ¯ Na primeira figura s˜o representadas as trˆs bolas B(−4, 2), B(1, 1), B(3, 4), bem como a a e localiza¸ao dos valores pr´prios, no plano complexo. Estas trˆs bolas s˜o as que se obtˆm c˜ o e a e fazendo uma an´lise por linhas com o Teorema de Gerschgorin. Como a primeira bola ´ a e ¯ disjunta das outras duas conclui-se que h´ um valor pr´prio em B(−4, 2) (que ´ obrigatoria o e amente real, pela observa¸ao anterior) e dois valores pr´prios na reuni˜o das outras duas, c˜ o a ¯ 1) ∪ B(3, 4) = B(3, 4), o que ´ confirmado na figura. Repare-se que na bola B(1, 1) ¯ ¯ ¯ B(1, e n˜o h´ nenhum valor pr´prio. a a o ¯ ¯ ¯ Na segunda figura ´ feita uma an´lise por colunas. Nesse caso, obtemos B(−4, 0), B(1, 5), B(3, 2). e a ¯ No entanto, reparamos que B(4, 0) n˜o ´ mais que o ponto z = −4, que ´ obviamente um a e e valor pr´prio, pois basta considerar v = (1, 0, 0), para termos Av = −4v. Isso acontece semo pre nos casos em a matriz tem uma coluna (ou linha) em que o elemento n˜o nulo est´ na a a diagonal. Assim, a an´lise por colunas permite concluir que h´ um valor pr´prio λ1 = −4 a a o e que os dois restantes, λ2 , λ3 est˜o em B(1, 5). Juntando esta informa¸ao com a obtida a c˜ ¯ por linhas, podemos concluir-se que λ1 = −4, e que λ2 , λ3 ∈ B(3, 4), o que ´ confirmado e nas figuras. Note-se que, neste caso, uma an´lise atrav´s da regra de Laplace permitiria a e resultados imediatos. Consideremos agora um outro exemplo em que a matriz ´ e 6 6 4 2 −4 2 0 0  2 + 2i −4 0 0   A=  0 0 2 + 4i −2  0 2 2i 4   6 4 2 4 2 2 2 4 4 6 8 8 6 4 2 2 4 2 4 6 √ ¯ ¯ Neste caso, fazendo uma an´lise por linhas, obtemos as bolas B1 = B(−4, 2), B2 = B(−4, 2 2), B3 = a ¯ ¯ a B(2 + 4i, 2), B4 = B(4, 4). A reuni˜o tem duas componentes conexas, uma formada por B1 ∪ B2 = B2 , que ´ disjunta da outra formada por B3 ∪ B4 . Pelo teorema conclu´mos que e ı h´ dois valores pr´prios em cada uma destas componentes. Fa¸amos agora uma an´lise a o c a √ ¯ ¯ ¯ + 4i, 2), B4 = por colunas. Nesse caso temos B1 = B(−4, 2 2), B2 = B(−4, 4), B3 = B(2 ¯ B(4, −2). Aqui h´ trˆs componentes conexas, uma formada pela reuni˜o B1 ∪ B2 = B2 a e a e duas outras formadas pelas bolas B3 e B4 . Podemos assim concluir que h´ um valor a ¯ pr´prio λ3 ∈ B3 , outro λ4 ∈ B4 e que os outros dois λ1 , λ2 ∈ B(−4, 4) = B1 ∪ B2 . Ino tersectando esta informa¸ao com a informa¸ao obtida por linhas, podemos mesmo concluir c˜ √ c˜ ¯ que λ1 , λ2 ∈ B(−4, 2 2). Como curiosidade, apresentamos o gr´fico da evolu¸ao dos valores pr´prios da matriz D a c˜ o para a matriz A, atrav´s do segmento de matrizes formadas por At = D + t(A − D), que e 172 foi utilizado na demonstra¸ao do teorema. Consideremos a matriz c˜ 10 10 5 5 −1 2 −2 −2  A =  −4 3 5 5 7 + αi   -5 -5 5 10 15 5 10 15 -5 -5 -10 Podemos ver, no primeiro gr´fico, para α = 1, a evolu¸ao da posi¸ao dos valores pr´prios a c˜ c˜ o desde a diagonal D, que tem valores pr´prios Λ1 (0) = −1, Λ2 (0) = 3, Λ3 (0) = 7 + i, a o que correspondem os pontos x1 = (−1, 0), x2 = (3, 0), x3 = (7, 1), at´ aos valores pr´prios e o da matriz final A. Repare-se na evolu¸ao do valor pr´prio Λ1 , que come¸ando no centro x1 c˜ o c ¯ acaba por sair da bola B(−1, 4). Isto retrata bem que pode haver bolas (definidas pela an´lise a de linhas ou colunas) onde n˜o h´ valores pr´prios, apenas podemos garantir a existˆncia de a a o e valores pr´prios na componente conexa. No segundo gr´fico mostramos a mesma evolu¸ao, o a c˜ mas para α = 0. Repare-se que para um certo t os valores das traject´rias de Λ1 e Λ2 o coincidem, o que corresponde a um valor pr´prio com multiplicidade 2. A partir desse o t as traject´rias tomam sempre valores complexos conjugados, como ´ caracter´stico das o e ı matrizes reais; note-se que ´ indiferente dizer que a traject´ria de Λ1 ´ continuada para o e o e valor pr´prio com parte imagin´ria positiva ou negativa, o que interessa ´ que a traject´ria o a e o ´ cont´nua. e ı Terminamos com um exemplo em que os valores pr´prios est˜o na fronteira das bolas, o a 1 1 05 .  −α 1 0 0  1 −α 0 0   A=  0 0 1 −1  0 0 1 2  05 . 3 2 1 -. 05 1 1 2 2 3 - 1 -. 05 1 1 2 3 Quer seja feita uma an´lise por linhas ou colunas o resultado ´ o mesmo. Se α = 2 (primeira a e ¯ figura) conclui-se que dever´ haver dois valores pr´prios na bola B(−2, 1) e dois valores a o ¯ 1) ∪ B(2, 1). Neste caso, como se pode observar, os valores pr´prios est˜o ¯ pr´prios em B(1, o o a exactamente sobre a fronteira das componentes conexas, o que ilustra que a estimativa n˜o a poderia dar raios inferiores. Se α = 1 (segunda figura) temos uma situa¸ao em que h´ uma c˜ a transla¸ao da situa¸ao anterior para uma situa¸ao de contacto num unico ponto. A reuni˜o c˜ c˜ c˜ ´ a das bolas fechadas tem apenas uma componente conexa, que ´ ela pr´pria. No entanto, e o nesta situa¸ao, em que a reuni˜o das bolas abertas tem duas componentes conexas (o que c˜ a significa, na pr´tica, que h´ apenas intersec¸ao num ponto), seguindo a demonstra¸ao do a a c˜ c˜ teorema, podemos concluir que a traject´ria de um valor pr´prio Λ1 (t) pertenceria sempre o o ¯ a bola B(−2, t), para t < 1, e portanto (sendo cont´nua) no instante t = 1 apenas poderia ` ı 173 ´ estar na fronteira. E o que se passa neste caso. Da mesma forma, a conclus˜o do teorema a mant´m-se v´lida num caso geral, quando h´ intersec¸ao num unico ponto. Basta ver o e a a c˜ ´ que se passa nesse ponto, analisando se se trata ou n˜o de um valor pr´prio (e qual a sua a o multiplicidade) e concluir para as componentes. 5.3 M´todo das Potˆncias e e Estando interessados em encontrar os valores pr´prios de uma matriz podemos pensar o imediatamente num processo — encontrar as ra´ ızes do polin´mio caracter´ o ıstico. Para esse efeito podemos usar qualquer m´todo que vimos, como sejam os m´todos de Bernoulli, e e de Newton, da Secante, ou de Steffensen. O primeiro apenas nos d´ a maior raiz real, o a segundo necessita do c´lculo da derivada de um determinante, e os outros dois necessitam a do c´lculo em cada iterada de um determinante, o que ´ bastante moroso, para al´m de a e e serem precisas boas aproxima¸˜es iniciais... co Poder´ ıamos ainda simplificar o processo determinando exactamente o polin´mio atrav´s o e de interpola¸˜o polinomial usando apenas o c´lculo de N +1 determinantes, o que reduziria ca a o n´ mero de c´lculos... mas mesmo este processo pode ser demasiado moroso. u a Vamos come¸ar por ver um processo extremamente simples, o m´todo das potˆncias, c e e ´ de von Mises (1929), que no entanto funciona apenas em circunstˆncias particulares! E a o m´todo mais simples e pode ser encarado como um m´todo de ponto fixo, em que se e e procura um vector pr´prio u de norma 1 (associado a um valor pr´prio λ = 0) no conjunto o o S = {x ∈ RN : ||x|| = 1}. Escrevendo Au , Au = λu ⇔ u = λ e reparando que ||Au|| = ||λu|| = |λ|, obtemos u= O m´todo iterativo poderia ficar e u(n+1) = |λ| Au(n) , λ ||Au(n) || |λ| Au . λ ||Au|| mas isso implicava um conhecimento a priori do argumento θλ ∈ [0, 2π[ do valor pr´prio, o |λ| −θλ i caso λ fosse um n´mero complexo, pois λ = e u . No entanto, no caso de se tratar de um valor pr´prio real |λ| = ±1, e a situa¸˜o ´ mais o ca e λ f´cil de resolver... sob certas condi¸˜es. Devemos come¸ar por reparar que, havendo sempre a co c mais que um valor pr´prio, a convergˆncia de uma tal sucess˜o n˜o estaria a priori bem o e a a ´ preciso impor restri¸˜es. determinada. E co • Admitiremos assim que a matriz ´ diagonaliz´vel e que um dos valores pr´prios ´ e a o e dominante, ou seja, |λ1 | > max |λi |, i=2,...,N 174 e tamb´m que esse valor pr´prio dominante, λ1 , ´ real. e o e Observa¸ao: A condi¸˜o de ser diagonaliz´vel pode ser verificada imediatamente se a c˜ ca a matriz for hermitiana. Nesse caso, a matriz tem valores pr´prios reais e basta mostrar o que h´ um valor pr´prio maior que os restantes. Isso pode ser provado pelo teorema de a o Gerschgorin, mas, na pr´tica, esta situa¸˜o ´ quase sempre verificada, a menos que haja a ca e valores pr´prios com multiplicidade superior a 1, ou em que h´ um outro valor pr´prio o a o dominante sim´trico. e • Verificadas estas condi¸˜es, podemos estabelecer o m´todo das potˆncias2 : co e e u(0) : ||u(0) || = 1, Au(n) u(n+1) = σn ||Au(n) || , em que σn = ±1 ´ o sinal da componente com maior m´dulo do vector Au(n) . Todas as e o iteradas s˜o vectores unit´rios para a norma considerada. a a Habitualmente, considera-se a normaliza¸˜o usando a norma do m´ximo (tamb´m ´ ca a e e frequente usar a norma euclidiana), que ser´ a adoptada no que se segue. a (0) A iterada inicial u ´ normalmente um valor aleat´rio, de forma a que na base ortonore o mada v1 , ..., vN formada pelos vectores pr´prios tenha componente n˜o nula relativamente o a ao vector pr´prio associado ao valor pr´prio dominante. Ou seja, exigimos que o o u(0) = αv1 + α2 v2 + ... + αN vN com α = 0. Proposi¸˜o 5.2 Seja A uma matriz diagonaliz´vel (em particular, hermitiana) com um ca a valor pr´prio dominante λ1 real: |λ1 | > |λ2 | ≥ ... ≥ |λN |. Se a iterada inicial u(0) tiver a o componente α = 0, o m´todo das potˆncias converge para v1 , e uma aproxima¸ao para o e e c˜ valor pr´prio dominante ´ o e [Au(n) ]i λ(n) = (n) ui 2 Uma outra possibilidade ´ considerar simplesmente e x(0) ∈ Rd , x(n+1) = Ax(n) , a a e apenas normalizar no final dividindo por ||Ax(n) || j´ que a divis˜o sucessiva por ||Ax(n) || tem apenas como objectivo evitar a divergˆncia, mantendo sempre o vector com norma 1. e ´ a a E ali´s f´cil verificar que se µi s˜o escalares, a µn A(...(µ1 A(µ0 x(0) )...) = µn ...µ0 An x(0) e portanto a normaliza¸˜o no final leva ao mesmo resultado. Como podemos ver, se u(n) = ca ||x(n) || x(n) Ax(n) Au(n) = A( (n) ) = . ||Au(n) || ||Ax(n) || ||x || ||Ax(n) || No entanto, se n˜o for efectuada a normaliza¸ao, as iteradas podem tomar valores que crescem muito a c˜ rapidamente e surgem problemas de c´lculo e precis˜o. a a x(n) , ||x(n) || 175 para qualquer ´ndice i (desde que ui = 0), sendo normalmente escolhido o ´ndice com ı ı 3 componente igual a 1. Estabelecemos, tamb´m, a estimativa de erro e ||v1 − u(n) ||∞ ≤ C (onde a constante C > 0 depende directamente de |λ1 − λ(n) | ≤ C λ2 λ1 1 ) |α| n (n) , e tamb´m e λ2 λ1 n . Demonstra¸˜o:4 ca Seja v1 , ..., vN a base de valores pr´prios unit´ria (i.e. ||vk ||∞ = 1), associada aos valores o a pr´prios λ1 , ..., λN . o Como supomos que u(0) = αv1 + α2 v2 + ... + αN vN , com α = 0, vamos considerar o subconjunto fechado de RN Sα = {αv1 + α2 v2 + ... + αN vN : α2 , ..., αN ∈ R}, que ´ um subespa¸o afim. Para qualquer x ∈ Sα , podemos considerar a decomposi¸˜o e c ca x = αv1 + x. ˜ Como podemos escrever x = x1 v1 + x2 v2 + ... + xN vN , vamos considerar a norma em RN ||x||∗ = |x1 | + ... + |xN |, 1 que ´ equivalente a qualquer outra norma de RN . Por exemplo, temos c1 ||.||∞ ≤ ||.||∗ e 1 ≤ c2 ||.||∞ , com c1 = 1, c2 = N||P ||∞ , em que P ´ a matriz de mudan¸a para a base e c can´nica, P vk = ek , porque o ||x||∞ = ||x1 v1 + ...xN vN ||∞ ≤ |x1 | + ... + |xN | = ||x||∗ 1 ||x||∗ = |x1 | + ... + |xN | ≤ N max |xk | = N ||P x||∞ ≤ N||P ||∞ ||x||∞ , 1 k=1,...,N j´ que x1 e1 + ... + xN eN = P (x1 v1 + ... + xN vN ), e portanto xk = [P x]k . a Note-se ainda que ||vk ||∗ = 1. 1 • Define-se a aplica¸˜o T : Sα → Sα ca Tx = Ax λ1 (note-se que λ1 = 0, sen˜o todos os valores pr´prios seriam nulos). a o 3 Esta estimativa de erro ´ v´lida em qualquer norma, j´ que como todas as normas s˜o equivalentes, e a a a ||v1 − u(n) || ≤ c2 ||v1 − u(n) ||∞ , e trata-se apenas de ajustar a constante. 4 A demonstra¸˜o cl´ssica ´ eventualmente bastante mais simples (e.g. [1]), mas fornece menos inca a e forma¸˜o. ca 176 Note-se que T (Sα ) = Sα , pois quando x ∈ Sα temos x = αv1 +x2 v2 +...+xN vN = αv1 +˜, x e ´ f´cil ver que e a Tx = A 1 λ1 1 (αv1 + x) = (αAv1 + A˜) = α v1 + A˜ ∈ Sα . ˜ x x λ1 λ1 λ1 λ1 porque A˜ = A(x2 v2 + ... + xN vN ) = x2 λ2 v2 + ... + xN λN vN . x • Vejamos agora que se trata de uma contrac¸˜o: ca 1 ||T x − T y||∗ = || λ1 A˜ − x 1 = λ2 λ1 = λ2 λ1 |x2 − y2 | + |x3 − y3 | | λ3 | + ... + |xN − yN | | λN | λ2 λ2 ||(x2 − y2 )v2 + 1 A˜||∞ y λ1 1 ||(x2 − y2 )λ2 v2 + ... + (xN − yN )λN vN ||∗ 1 |λ1 | λN λ3 ∗ (x3 − y3 )( λ2 )v3 ... + (xN − yN )( λ2 )vN ||1 = = = 1 N ≤ λ2 λ1 ||x − y||∗ . 1 Portanto, pelo Teorema do Ponto Fixo existe um unico z ∈ Sα : T z = z, esse valor ´ ´ e z = αv1 e temos n λ2 n (0) ∗ ||z − T u ||1 ≤ ||z − u(0) ||∗ . 1 λ1 Como a norma ||.||∗ ´ equivalente a ||.||∞ , temos 1 e ||z − T u ||∞ n (0) n c2 λ2 ≤ c1 λ1 ||z − u(0) ||∞ , em que c2 ≥ c1 > 0 s˜o as constantes que determinam a equivalˆncia entre as normas. a e a b a Por outro lado, temos || ||a|| − ||b|| || ≤ 2|| ||a|| − βb||, ∀β ≥ 0 (exerc´ 5 ). Aplicando esta ıcio 1 1 desigualdade com a = z, b = T n u(0) , β = ||z||∞ = |α| ,obtemos || logo, || 5 T n u(0) z T n u(0) z − ||∞ ≤ 2|| − ||∞ , ||z||∞ ||T n u(0) ||∞ ||z||∞ ||z||∞ n T n u(0) 2 c2 λ2 z − ||∞ ≤ n u(0) || ||z||∞ ||T |α| c1 λ1 ∞ ||a − b || ≤ 2||a − b||, ||b|| ||z − u(0) ||∞ . Quando ||a|| = 1, temos a desigualdade porque ||a − e como ||b − quando ||a|| = 1 temos ||a − a ||a|| b b || ≤ ||a − b|| + ||b − || ||b|| ||b|| b 1 || = ||b (||b|| − 1) || = | ||b|| − 1| , ||b|| ||b|| b || ≤ ||a − b|| + | ||b|| − ||a|| | ≤ 2||a − b||. ||b|| e b = βb. Basta agora considerar a = 177 Basta agora reparar que T n u(0) = An u(0) , λn 1 e portanto n T n u(0) An u(0) λn = || n 1(0) ||∞ = ||T n u(0) ||∞ λn A u 1 e por outro lado z ||z||∞ |λ1 | λ1 An u(0) Au(n) = (±1)n σ1 ...σn = ±u(n+1) , ||An u(0) ||∞ ||Au(n) ||∞ = α v |α| 1 = ±v1 (os sinais coincidem devido ` constru¸˜o), pelo que a ca (n+1) ||v1 − u (0) ||∞ c2 λ2 ≤2 c1 λ1 n ||v1 − u(0) ||∞ . |α| α2 Como ||v1 − u ||∞ = || |α| v2 + ... + αN vN ||∞ ≤ |α| |α| obtemos 1 ||u(0) ||∗ , 1 |α| e como ||u(0) ||∗ ≤ c2 ||u(0) ||∞ = c2 , 1 n ||v1 − u(n+1) ||∞ ≤ ´ 2c2 K λ2 |α| λ1 em que a constante K = c12 s´ poderia ser calculada se fossem conhecidos os valores e o vectores pr´prios. Repare-se que se α → 0 o majorante tende para infinito6 , o que coloca o em evidˆncia que a componente segundo o vector pr´prio dominante n˜o pode ser nula. e o a (n) Finalmente, como λ(n) = [Au(n) ]j , em que j ´ o ´ e ındice correspondente a uj = 1, e temos λ1 = [Av1 ]j , obtemos |λ1 − λ(n) | = |[Av1 ]j − [Au(n) ]j | ≤ ||Av1 − Au(n) ||∞ ≤ ||A||∞||v1 − u(n) ||∞ . Observa¸˜o 1: No caso de ser utilizada a norma ||.||2 para a normaliza¸˜o, a estimativa ca ca obtida pode ser expl´ ıcita no caso de matrizes sim´tricas, j´ que a matriz mudan¸a de base e a c P ser´ unit´ria. a a Observa¸˜o 2: A restri¸˜o ` escolha do vector inicial u(0) n˜o ´ significativa. Difica ca a a e cilmente acontece a situa¸˜o improv´vel de ser exactamente um vector cuja componente ca a segundo v1 fosse nula. Se usarmos n´meros com todos os decimais (p. ex. gerados aleatou riamente), ´ praticamente uma situa¸˜o inexistente, j´ que os pr´prios erros de arredondae ca a o mento fazem aparecer uma pequena componente. No entanto, em casos mais simples, quando usamos n´meros inteiros, podemos cair u facilmente em situa¸˜es em que isso acontece. Apresentamos um exemplo simples. Considco eremos a matriz   5 −7 7 M =  6 −9 8  6 −7 6 Se come¸armos com u(0) = (1, 1, 0), obtemos u(n) → v = (0.5, 1, 0.5). No entanto, o limite c obtido n˜o ´ o vector pr´prio associado ao valor pr´prio dominante! A matriz tem valores a e o o pr´prios λ1 = 5, λ2 = −2, λ3 = −1, e ´ f´cil ver que Mv = −2v, portanto v ´ o vector o e a e pr´prio associado ao valor pr´prio λ2 e n˜o a λ1 . A raz˜o ´ simples, como os vectores o o a a e pr´prios s˜o v1 = (1, 1, 1), v2 = (0.5, 1, 0.5), v3 = (0, 1, 1), temos u(0) = 2v2 − v3 , ou seja, o a Isto n˜o significa que n˜o ´ poss´ majorar ||v1 − u(n+1) ||∞ , pois ´ obvio que ser´ sempre menor que a a e ıvel e´ a 2. Apenas significa que n˜o h´ convergˆncia para zero. a a e 6 178 a componente segundo v1 ´ α = 0. Uma simples perturba¸˜o, usando u(0) = (1, 1, ε) com e ca ε = 0, mesmo muito pequeno, j´ ser´ suficiente para que o m´todo convirja para v1 . a a e Exemplo 5.2 Consideremos a matriz: 3 2 4 2 −2 1 0 2  −1 10 −1 −1   A=  −1 1 −2 1  1 0 −1 2   1 - -5 5 2 . 2 . 5 5 7 1 15 . 0 2 5 . 5 -. 25 2 25 . 5 75 . 1 0 . 1 2 3 4 Pelo Teorema de Gerschgorin, aplicado a linhas, conclu´mos que os valores pr´prios devem ı o estar na reuni˜o das bolas a ¯ ¯ ¯ B1 = B(−2, 3), B2 = B(10, 3), B3 = B(−2, 3), B4 = B(2, 2). Imediatamente vemos que ir´ haver duas componentes conexas, uma que ser´ B2 , onde a a haver´ apenas um valor pr´prio real, e a outra componente que ser´ a reuni˜o das trˆs a o a a e restantes bolas, o que se resume a B1 ∪B4 , onde haver´ trˆs valores pr´prios (ver a primeira a e o figura). Feita uma an´lise por colunas, obtemos as bolas a ¯ ¯ ¯ B1 = B(−2, 3), B2 = B(10, 2), B3 = B(−2, 2), B4 = B(2, 4), e conclu´mos que h´ apenas um valor pr´prio real em B2 e trˆs valores pr´prios em B1 ∪B4 . ı a o e o Intersectando a informa¸ao, conclu´mos que h´ um valor pr´prio real λ1 ∈ [8, 12] e trˆs c˜ ı a o e ¯ ¯ 2), onde este ultimo dom´nio ´ obtido pela valores pr´prios λ2 , λ3 , λ4 ∈ B(−2, 3) ∪ B(2, o ´ ı e intersec¸ao de B1 ∪ B4 com B1 ∪ B4 . c˜ Podemos concluir que o valor pr´prio real λ1 ´ um valor pr´prio dominante, porque |λ1 | ≥ 8 o e o e |λ2 |, |λ3 |, |λ4 | ≤ 5. Admitindo que a matriz ´ diagonaliz´vel, estamos nas condi¸oes de convergˆncia do m´todo e a c˜ e e (0) das potˆncias. Partimos do vector inicial u = (0, 1, 0, 0), escolha que foi orientada pelo e vector pr´prio dominante associado a matriz diagonal. Obtemos o ` u(1) = σ0 Au(0) (1, 10, 1, 0) 1 1 =+ = ( , 1, , 0) (0) || ||Au ∞ ||(1, 10, 1, 0)||∞ 10 10 e sucessivamente u(2) = (0.0816, 1 , 0.0714, 0), u(3) = (0.0846, 1 , 0.077, 0.0009). Em u(3) todos os d´gitos apresentados j´ s˜o correctos. Calculando Au(3) = (0.832, 9.835, 0.758, 0.0082), ı a a obtemos a aproxima¸ao λ(3) = 9.835, que ´ dada pelo valor da segunda componente (pois c˜ e (3) ´ nessa que u tem valor unit´rio... poder´amos obter outras aproxima¸oes dividindo a e a ı c˜ (3) (3) e componente Auk por uk , mas esta ´ a mais simples de obter). O valor exacto do valor pr´prio dominante ´ λ1 = 9.83703. Como λ2 = 2.34741, temos uma convergˆncia linear o e e λ2 com o factor | λ1 | = 0.238, o que nos permitiria escrever ||v1 − u(n) ||∞ ≤ 0.238n C. 179 Como avaliar a constante C? — Conhecendo o valor exacto do vector pr´prio, podemos avaliar os erros, e admitindo que o λ2 ||v1 − u(n) ||∞ = | |n Cn , λ1 colocamos num gr´fico os valores de Cn obtidos (figura a esquerda), a ` 0.5 0.4 0.3 0.2 0.1 500 400 300 200 100 5 10 15 20 5 10 15 20 25 30 35 e podemos concluir que os valores de Cn s˜o inferiores a 0.1, aproximando-se de 0.03. a ((Na figura da direita colocamos em evidˆncia a dependˆncia da constante C do valor α, e e ´ componente segundo o vector pr´prio dominante. E considerada a matriz M usada na o 1 observa¸ao anterior e o vector inicial u(0) = (1, 1, 453 ). Com este vector inicial temos α = c˜ 1 = 0, e o m´todo converge para o vector pr´prio dominante. Como podemos ver no e o 453 gr´fico os valores de Cn tendem para um valor pr´ximo de 450, e para outros α o valor da a o 1 constante seria pr´ximo de α . Como previsto na estimativa de erro, a constante depende o 1 directamente de α , e isso ´ aqui verificado )) e — Como a priori n˜o conhecemos os valores exactos, podemos no entanto obter informa¸oes a c˜ (n+1) (n) − u ||∞ para n suficientemente grande. Notamos avaliando o comportamento de ||u que ||u(n+1) − u(n) ||∞ ≤ ||u(n+1) − v1 ||∞ + ||v1 − u(n) ||∞, e ent˜o a ||u(n+1) − u(n) ||∞ ≤ Cn+1 | Admitindo que Cn ≤ C, ent˜o a ||u(n+1) − u(n) ||∞ ≤ 2C| Assim, ´ usual considerar a raz˜o e a Kn = 2C| λ2 |n ||u(n+1) − u(n) ||∞ λ2 λ1 ≈ = | |, λ2 n−1 (n) − u(n−1) || ||u λ1 2C| λ1 | ∞ λ2 n+1 λ2 | + Cn | |n . λ1 λ1 λ2 n | . λ1 o que permite n˜o apenas ter informa¸ao acerca da rapidez de convergˆncia, mas tamb´m a c˜ e e avaliar |λ2 |, j´ que |λ2 | ∼ Kn |λ1 |. Com efeito, partindo dos valores u(1) , u(2) , u(3) calculados, a poder´amos obter ı ||u(3) − u(2) ||∞ 0.007328 K2 = (2) = = 0.2565, (1) || ||u − u ∞ 0.02857 o que n˜o difere muito do valor 0.2386. Como tinhamos obtido λ(3) = 9.835, retiramos a |λ2 | ∼ 0.2386 × 9.835 = 2.3466, o que ´ uma aproxima¸ao muito razo´vel, j´ que λ2 = e c˜ a a 2.34741. 180 5.4 M´todo das itera¸oes inversas e c˜ Este m´todo ´ semelhante ao m´todo das potˆncias, mas baseia-se num conhecimento pr´vio e e e e e da localiza¸˜o dos valores pr´prios. Continuamos a assumir uma diagonaliza¸˜o com os ca o ca valores pr´prios que consideraremos reais (normalmente trabalharemos com matrizes hero miteanas). O m´todo das potˆncias apenas permitia aproximar o valor pr´prio dominante. e e o Aqui consideramos qualquer um, mas precisamos de um conhecimento a priori sobre ele, que pode advir do Teorema de Gerschgorin ou de uma aproxima¸˜o pelo m´todo das potˆncias. ca e e Assim, ´ suposto termos λ como aproxima¸˜o do valor pr´prio λm que pretendemos e ca o calcular. Logo, Av = λm v ⇔ (A − λI)v = (λm − λ)v ⇔ v = (A − λI)−1 v, λm − λ e portanto se v ´ valor pr´prio de A, tamb´m ´ de (A − λI)−1 . No entanto, os valores e o e e pr´prios s˜o diferentes, λm ´ valor pr´prio de A e µm = λm1−λ ´ valor pr´prio de (A − λI)−1 o a e o e o para o mesmo vector pr´prio! o A partir de uma iterada inicial x(0) (... com componente n˜o nula no vector pr´prio), a o obtemos o m´todo das itera¸oes inversas (ou m´todo de defla¸˜o de Wielandt) e c˜ e ca x(n+1) = σn (A − λI)−1 x(n) ||(A − λI)−1 x(n) ||∞ em que σn ´ o sinal da componente de maior m´dulo de (A − λI)−1 x(n) . Reparamos, mais e o uma vez, tratar-se uma itera¸˜o do ponto fixo, pois como vimos, ca Av = λm v ⇔ e daqui obtemos ||(A − λI)−1 v|| = v = (A − λI)−1 v, λm − λ Assim: ||v|| . |λm −λ| v λm − λ (A − λI)−1 v = ||v|| |λm − λ| ||(A − λI)−1 v|| λ e mais uma vez substituimos |λm −λ pelo sinal da componente que determina o m´dulo (que o m −λ| designamos por σ). A maneira para calcular de calcular as sucessivas iteradas baseia-se numa unica factor´ iza¸˜o ca A − λI = LU, seguida de sucessivas resolu¸˜es de sistemas (para cada n) : co LU w = x(n) ⇔ Ly = x(n) Uw = y o valor w ´ (A − λI)−1 x(n) . Assim, obtemos x(n+1) = σn w/||w||∞ . e 181 Reparamos que o m´todo das itera¸˜es inversas d´-nos uma aproxima¸˜o do vector e co a ca pr´prio v, para calcularmos uma aproxima¸˜o do valor pr´prio devemos fazer: o ca o λm ∼ [Ax(n) ]i [x(n) ]i De forma semelhante ao que conseguimos no m´todo das potˆncias podemos mostrar a e e convergˆncia deste m´todo desde que e e L= |λm − λ| < 1. mini=m |λi − λ| o que significa que |λm1−λ| ´ valor pr´prio dominante de (A − λI)−1 . Depois basta aplicar o e o resultado obtido para o m´todo das potˆncias. e e Este resultado pode ser facilmente verificado se repararmos que isto corresponde a considerar 1 1 max < i=m |λi − λ| |λm − λ| Exemplo 5.3 Consideremos a matriz  Pretendemos aproximar o valor pr´prio que o λ = 9. Ficamos com a factoriza¸ao c˜    −24 0 1 1 1  2 1 0 0   −1/12   A−λI =   1 1 −8 1  =  −1/24 1 1 1 −8 −1/24  −15 0 1 1  2 10 0 0   A=  1 1 1 1  1 1 1 1 se encontra no intervalo [8, 12] e escolhemos 0 0 1 −23 193 0 1 1 1 que iremos utilizar para calcular (A − λI)−1 . Escolhendo como iterada inicial u(0) = (0, 1, 0, 0). A escolha deve-se as mesmas raz˜es que ` o as justificadas no exemplo anterior, atendendo a que agora procuramos o valor pr´prio que o est´ na bola com centro em 10. a Resolvendo LUw = u(0) , obtemos (0.0117, 0.9765, 0.1412, 0.1412), portanto u(1) = σ0 (A − λI)−1 u(0) (0.0117, 0.9765, 0.1412, 0.1412) = −1 u(0) || ||(A − λI) ||(0.0117, 0.9765, 0.1412, 0.1412)||∞ ∞ = (0.0120482, 1., 0.144578, 0.144578)  0 −24 0 1 1 0   0 1 1/12 1/12  23 0   0 0 − 193 24 24 1 0 0 0 − 1530 193    = LU.  neste caso Au(1) = (0.1084, 10.024, 1.301, 1.301) e portanto λ(1) = 10.024... Continuando com as itera¸oes, u(2) = (0.00975434, 1., 0.123194, 0.123194), portanto λ(2) = c˜ 10.0195..., λ(3) = 10.0202 e aproximar´amos rapidamente o valor correcto λ = 10.0201. ı 182 5.5 M´todos de Factoriza¸˜o e ca Um dos m´todos mais utilizados para a determina¸˜o de valores pr´prios ´ o m´todo QR, e ca o e e de Francis, que foi precedido por um outro m´todo semelhante, devido a Rutishauser — o e m´todo LR, apresentado no final dos anos 50. A ideia principal destes m´todos consiste e e em efectuar uma factoriza¸˜o da matriz num produto de matrizes mais simples, trocar a ca ordem do produto e obter uma nova matriz a que ser´ aplicado o mesmo esquema! a Estes m´todos baseiam-se na semelhan¸a entre matrizes, pois escrevendo e c B = P −1 AP, a matriz A tem os mesmos valores pr´prios que B. Portanto, a ideia consiste em efectuar a o itera¸˜o ca −1 An+1 = Pn An Pn , come¸ando com A0 = A, se no limite tivermos uma matriz cujo c´lculo dos valores pr´prios c a o ´ simples (por exemplo, uma matriz triangular) ent˜o o problema fica simplificado, ou e a resolvido. Alternativamente, estes m´todos podem ser encarados como resultantes de uma factore iza¸˜o das matrizes. Assim, se for poss´ efectuar uma factoriza¸˜o do tipo An = Xn Yn , ca ıvel ca em que Xn ´ invert´ e ıvel, bastar´ considerar An+1 = Yn Xn para termos a −1 An+1 = Xn An Xn , −1 porque Yn = Xn An . 5.5.1 M´todo LR e No caso do m´todo LR, de Rutishauser, efectuamos uma factoriza¸˜o A = LU que por e ca tradi¸˜o ´ designada LR (left-right ao inv´s de lower-upper). Assim, come¸ando com A0 = ca e e c A, e tendo obtido An = Ln Un definimos a nova iterada como sendo An+1 = Un Ln , o que tamb´m significa que consideramos a itera¸˜o An+1 = L−1 An Ln . Reparamos que a e ca n matriz An+1 ´ semelhante a An e por isso os valores pr´prios s˜o os mesmos, subsequentee o a mente os mesmos que os de A0 = A. Se o m´todo convergir, ´ suposto que a sucess˜o de matrizes An tenda para uma matriz e e a triangular superior, cuja diagonal ir´ conter os valores pr´prios. No entanto, n˜o ´ f´cil a o a e a obter condi¸˜es de convergˆncia para este m´todo, podendo ser bastante inst´vel. Sabe-se co e e a (cf. [24]) que se A for sim´trica e definida positiva h´ convergˆncia. e a e 183 5.5.2 M´todo QR e • O m´todo QR, de Francis, ´ baseado numa factoriza¸˜o menos conhecida e e ca A = QR em que Q ´ uma matriz unit´ria (ou seja, QQ∗ = Q∗ Q = I) e R uma matriz triangular e a superior. Proposi¸˜o 5.3 A factoriza¸ao A = QR ´ unica, a menos de produto por uma matriz ca c˜ e ´ diagonal, cujas entradas tˆm m´dulo 1. e o Demonstra¸˜o: ca −1 Supondo que A = Q1 R1 = Q2 R2 , ent˜o R1 R2 = Q∗ Q2 , o que significa que a matriz a 1 −1 triangular superior R1 R2 seria uma matriz ortogonal (porque Q∗ Q2 ´). No entanto, as e 1 −1 unicas matrizes nestas condi¸˜es s˜o matrizes diagonais, logo R1 R2 = D, ou seja R1 = DR2 ´ co a e Q∗ Q2 = D, ou seja Q2 = Q1 D. Verifica-se que essa diagonal verifica DD∗ = Q∗ Q2 Q∗ Q1 = 1 1 2 I, ou seja |dii | = 1. • Constru¸ao da factoriza¸ao QR atrav´s de matrizes de Householder. c˜ c˜ e Uma matriz de Householder ´ uma matriz do tipo e H = I − 2vv ∗ em que v : ||v||2 = 1, ou seja v ∗ v = 1 (note-se que v ∗ v ´ uma matriz 1 × 1, identificada com e um n´mero, mas vv ∗ j´ ´ uma matriz N × N). u ae As matrizes de Householder s˜o unit´rias porque HH ∗ = H ∗ H = (I −2vv∗ )(I −2vv∗ ) = a a I − 4vv ∗ + 4vv ∗ vv ∗ = I. Podemos considerar vectores v (k) = (0, .., 0, vk , ..., vN ), que ir˜o definir matrizes de a ´ poss´ efectuar a decomposi¸˜o QR : Householder Hk . E ıvel ca R = HN−1 ...H1 A, Q∗ = HN−1 ...H1 , ∗ ∗ j´ que ´ f´cil verificar que QR = H1 ...HN−1 HN−1 ...H1 A = A, faltando apenas ver que a e a HN−1 ...H1 A ´ triangular superior calculando v (k) (cf.[1]). e • O m´todo QR consiste em come¸ar com A0 = A, e tendo factorizado e c An = Qn Rn , definir uma nova iterada An+1 = Rn Qn , ou seja, An+1 = Q∗ An Qn que ´ uma matriz semelhante a An . e n 184 Teorema 5.2 (Francis) Se a matriz A for invert´vel e os seus valores pr´prios tiverem ı o m´dulos diferentes, |λ1 | > ... > |λN | > 0, a matriz ´ diagonaliz´vel, ou seja, A = P −1 DP. o e a Se P admitir uma factoriza¸ao P = LU, a sucess˜o de matrizes (An ) converge para uma c˜ a matriz triangular superior cujos valores da diagonal ser˜o os valores pr´prios de A. Os a o vectores pr´prios associados encontram-se na matriz unit´ria Q. o a Demonstra¸˜o: Ver, por exemplo, [7]. ca No caso mais geral, pode convergir para uma matriz quase triangular (por blocos), cujos valores pr´prios s˜o razovelmente f´ceis de calcular. O m´todo tem ainda normalmente a o a a e particularidade de apresentar os valores pr´prios ordenados, estando na primeira linha o o maior e na ultima o mais pequeno. A rapidez de convergˆncia para zero dos elementos ´ e λk n˜o diagonais depende da rela¸˜o | λk+1 |, o que pode constituir um obst´culo ` rapidez do a ca a a m´todo, quando alguns valores pr´prios tˆm m´dulos semelhantes. Por isso ´ usada uma e o e o e t´cnica de acelera¸˜o de convergˆncia que veremos mais ` frente. e ca e a Exemplo 5.4 Consideramos a factoriza¸ao QR da matriz A, c˜ Q √  √  2/3 0 1/ √ 3 2 6 3/2 √ 0 4 1 1 √ √ √ 2  =  1/√6 1/ √ −1/√3  0 A= 2 3 2 5/ 2 3 2 , √ 2 −2 −4 3 1/ 6 −1/ 2 −1/ 3 0 0    n˜o especificando os c´lculos inerentes... A partir deste ponto calculamos A1 = RQ, e a a obtemos uma nova matriz cuja diagonal ´ {4.5, −0.5, −1}, estes s˜o os primeiros valores e a que aproximam os valores pr´prios de A. Voltamos a efectuar a decomposi¸ao A1 = Q1 R1 ... o c˜ que por raz˜es obvias n˜o ser´ aqui colocada. Calculando A2 = R1 Q1 , obtemos na diagonal o ´ a a os valores {4.52, −3.52, 2}. Procedendo de forma semelhante nas iteradas seguintes, obtemos a a ao fim de 7 itera¸oes, na diagonal de A7 , os valores {5.07..., −3.69..., 1.62...}, que n˜o est˜o c˜ muito longe dos valores pr´prios correctos {5, −3.64..., 1.64...}. A matriz A7 j´ ´ pr´xima o ae o de uma matriz triangular superior,  5.07467 −1.89079 0.853412 A7 =  0.343404 −3.69541 −3.5415  . 0.001455 −0.0368519 1.62073 O valor absoluto do maior elemento da subdiagonal determina, normalmente, um majorante do erro da aproxima¸ao. c˜  R Observa¸˜o (m´todo de Jacobi). ca e Outra possibilidade de obter a factoriza¸˜o QR ´ usar matrizes de rota¸˜es no plano ca e co ao inv´s de matrizes de Householder, ideia que tamb´m ´ usada no m´todo de Jacobi. e e e e O m´todo de Jacobi ´ v´lido para matrizes reais sim´tricas e baseia-se na utiliza¸˜o de e e a e ca 185 matrizes de rota¸˜o ca mas n˜o falaremos dele aqui (ver, por exemplo, [18]). a Ainda uma outra possibilidade para a efectuar a factoriza¸˜o QR ´ considerar o processo ca e de ortonormaliza¸˜o de Gram-Schmidt, que no entanto ´ inst´vel numericamente, devido ca e a ao cancelamento subtractivo.    U =     1 0 0 cos(θ) − sin(θ) sin(θ) cos(θ) . . . 1. .. 0 ··· 0 1 ···  0 .  .  .  ,  0   5.5.3 M´todo QR com deslocamento e Os m´todos de factoriza¸˜o s˜o computacionalmente dispendiosos em termos de tempo e ca a 2 3 (aproximadamente 3 N opera¸˜es por itera¸˜o) e como j´ referimos a sua convergˆncia co ca a e pode ser lenta. Uma possibilidade para acelerar a convergˆncia destes m´todos ´ utilizar e e e uma t´cnica de deslocamento (ou shift), reparando que considerando e ˜ A = A − αI ˜ se uma matriz B for semelhante a A ent˜o B = B + αI ser´ semelhante a A, porque a ˜ a ˜ B = P −1 AP = P −1 (A − αI)P = P −1 AP − αI. Assim, para o m´todo QR, podemos estruturar os passos usando um deslocamento αn e diferente, em cada passo, de forma a que efectuamos primeiro a decomposi¸˜o QR da matriz ca An − αn I e depois trocamos a ordem somando αn I. Ou seja, An − αn I = Qn Rn , An+1 = Rn Qn + αn I, ficando com e desta forma, An+1 continua a ser uma matriz semelhante a An . A escolha do deslocamento αn ´ discutida em [29] e uma das possibilidades ´ considerar αn como sendo o elemento de e e menor m´dulo da diagonal (normalmente o ultimo). o ´ Observa¸˜o 1: Apesar de ser o m´todo mais utilizado para o c´lculo de valores ca e a pr´prios, o m´todo QR com shift tem resistido ` demonstra¸˜o da sua convergˆncia no o e a ca e caso mais geral (cf.[7]). Observa¸˜o 2: O Mathematica tem implementadas as rotinas Eigenvalues e Eigenvecca tors, que permitem o c´lculo de valores e vectores pr´prios de matrizes, usando um m´todo a o e QR com shift. A factoriza¸˜o QR pode ser obtida usando a rotina QRDecomposition.(o ca resultado ´ uma lista com a transposta da matriz Q e com a matriz R). e 186 An+1 = Q∗ (An − αn I)Qn + αn I = Q∗ An Qn , n n 5.6 Condicionamento do c´lculo de valores pr´prios a o Apresentamos agora um resultado relativo ao condicionamento do c´lculo de valores pr´prios. a o ˜ Teorema 5.3 (Bauer-Fike). Seja A uma matriz hermitiana. No caso de A ser uma aproxima¸ao (hermitiana) de A, temos o resultado c˜ ˜ ˜ ∀j ∃i : |λi − λj | ≤ ||A − A||2 (5.1) ˜ ˜ em que λi s˜o os valores pr´prios de A e λj os de A. a o No caso mais geral, em que h´ a matriz tem forma can´nica de Jordan diagonal, A = a o P −1 DP (com D = diag(λ1 , ..., λN )), temos ˜ ˜ ∀j ∃i : |λi − λj | ≤ cond∞ (P )||A − A||∞ . (o que tamb´m ´ v´lido para algumas outras normas, como ||.||1 , ||.||2 ). e e a Demonstra¸˜o: ca i) Come¸amos por ver que o resultado sai facilmente para a norma ||.||∞ (ou mesmo c para ||.||1 ). ˜ ˜ Seja B = P (A − A)P −1 , temos B = D − C em que C = P AP −1 tem os valores pr´prios o ˜ Pelo teorema de Gerschgorin, aplicado a C = D − B, sabemos que dado um valor de A. ˜ pr´prio λj de C existe uma linha i : o ˜ |λi − bii − λj | ≤ e portanto ˜ |λi − λj | ≤ k (5.2) k=i |bik |, ˜ |bik | ≤ ||B||∞ ≤ ||P ||∞ ||A − A||∞ ||P −1 ||∞ . ii) Para mostrar que ´ v´lido para a norma ||.||2 , vemos que e a i=1,...,N ˜ ˜ min |λi − λ| ≤ cond2 (P )||A − A||2 , ˜ para qualquer valor pr´prio λ, e a partir daqui podemos aplicar de novo o teorema de o Gerschgorin para concluir o teorema. ˜ Suponhamos que λ = λi para qualquer i (sen˜o seria trivial, pois o m´ a ınimo seria zero) ˜ e seja v um vector pr´prio de A. ˜ o ˜v ˜ v = λ˜, Como A ˜ ˜ ˜ (λI − A)˜ = (A − A)˜ v v (5.3) ˜ ˜ ˜ e substituindo A, temos (λI − A)˜ = (λI − P −1 DP )˜ = P −1 (λI − D)P v o que implica, por v v ˜ (5.3), que ˜ ˜ (λI − D)P v = P (A − A)P −1 P v . ˜ ˜ 187 ˜ ˜ Como λ = λi , a matriz diagonal λI − D tem inversa, e obtemos ˜ ˜ P v = (λI − D)−1 P (A − A)P −1 P v . ˜ ˜ ˜ ˜ Notando que ||(λI − D)−1 ||2 = ρ((λI − D)−1 ) = outras normas ditas ’mon´tonas’), temos o ||P v ||2 ≤ ˜ o que origina 1 ˜ min |λ−λi | (o que tamb´m ´ v´lido para e e a 1 ˜ ||P (A − A)P −1 ||2 ||P v||2 ˜ ˜ − λi | min |λ i=1,...,N ˜ ˜ min |λi − λ| ≤ ||P ||2 ||P −1 ||2 ||A − A||2 . No caso de matrizes hermitianas, basta referir que pela decomposi¸˜o na forma normal ca ∗ de Schur podemos encontrar matrizes P unit´rias tal que A = P DP, pelo que ||P ||2 = a ∗ ||P ||2 = 1. Observa¸˜o: ca A propriedade que prov´mos traduz tamb´m o bom condicionamento no c´lculo de a e a valores pr´prios para as matrizes hermitianas. Para outro tipo de matrizes, o c´lculo dos o a valores pr´prios poder´ ser um problema mal condicionado, dependendo do n´ mero de o a u condi¸˜o da matriz P. ca Como a estimativa do n´ mero de condi¸˜o de P n˜o ´ normalmente poss´ u ca a e ıvel (se P fosse conhecido tamb´m seriam os seus valores pr´prios), apenas temos a informa¸˜o da e o ca possibilidade de ocorrerem problemas de condicionamento no c´lculo dos valores pr´prios. a o 5.7 C´lculo de ra´ a ızes polinomiais Terminamos este cap´ ıtulo referindo que um excelente processo de obter resultados acerca das ra´ de polin´mios ´ a utiliza¸˜o da no¸˜o de matriz companheira de um polin´mio. ızes o e ca ca o Defini¸˜o 5.1 Dizemos que C ´ a matriz ca e N−1 N aN−1 x + x , se  0 1  0  0  . ... C= .  .  0 ··· −a0 −a1 companheira do polin´mio p(x) = a0 + a1 x + ... + o 0 ... ... ··· ... ... 0 . . . 0 1 −aN−1        notando que o polin´mio caracter´stico de C ´ exactamente p. o ı e ··· 0 · · · −aN−2 Esta no¸˜o pode ser aplicada para a localiza¸˜o das ra´ ca ca ızes de polin´mios atrav´s do o e teorema de Gerschgorin (ver exerc´ 2, no final do cap´ ıcio ıtulo) ou mesmo para aproxim´-las a usando um qualquer m´todo de valores pr´prios, j´ que identificar os valores pr´prios de e o a o 188 C ´ equivalente a determinar as ra´ e ızes de p. Deste facto retiramos que a determina¸ao de c˜ valores pr´prios ´ um problema teoricamente equivalente a resolu¸ao de equa¸oes alg´bricas. o e ` c˜ c˜ e Exemplo 5.5 Tomemos como exemplo o m´todo das potˆncias aplicado a C. Executar a e e itera¸ao c˜ x(n+1) = C x(n) ´ equivalente a considerar e xi = xi+1 se i = 1, ..., N − 1, (n+1) (n) (n) = −a0 x1 − ... − aN−1 xN caso i = N. xN Reparamos assim que x1 = x2 = ... = xN , x2 = ... = xN , etc... de um (n) (n−N+i) , o que corresponde a substituir valores na iterada n por valores modo geral, xi = xN em iteradas anteriores. (k−N+1) (n) Ora, designando yk = xN , obtemos xi = yn+i−1 , pelo que o sistema anterior reduz-se a equa¸ao as diferen¸as ` c˜ ` c yn+N = −a0 yn − ... − aN−1 yn+N −1 . A mesma equa¸ao as diferen¸as que encontr´mos no m´todo de Bernoulli. c˜ ` c a e Para concluirmos que o m´todo de Bernoulli aparece como um caso particular do m´todo e e das potˆncias, reparamos que no caso do m´todo das potˆncias consideramos como aproxe e e 7 ima¸ao do valor pr´prio dominante : c˜ o λ(n) = [C x(n) ]1 x1 (n) (n) (n−1) (n−N+1) (n) (n−N+2) (n+1) (n) = x1 (n+1) (n) x1 = yn+1 , yn ou seja, a mesma aproxima¸ao que consideramos no m´todo de Bernoulli para a raiz domc˜ e inante! Outros m´todos para valores pr´prios levam a outras aproxima¸˜es, n˜o havendo nece o co a essariamente um m´todo espec´ e ıfico para polin´mios que lhes corresponda, como neste caso o aconteceu com o m´todo de Bernoulli. e Ver tamb´m a nota de rodap´ anterior, considerando o m´todo das potˆncias sem a normaliza¸ao e e e e c˜ sucessiva! Consideramos aqui a primeira componente, mas para qualquer componente j obter´ ıamos λ(n) = o que corresponde ao mesmo resultado. xj (n+1) 7 (n) xj = yn+j yn+j−1 189 que tem associada como polin´mio caracter´ o ıstico q(y) = a10 + aN−1 y + ... + a1 y N−1 + y N a0 a0 cujas ra´ s˜o as inversas de p(x), como vimos num exerc´ do Cap´ ızes a ıcio ıtulo 2 (basta tomar y = 1/x). Isto ´ perfeitamente natural, j´ que ´ claro que os valores pr´prios da matriz e a e o inversa s˜o os inversos da original. a Observa¸˜o: ca Como curiosidade reparamos que a  a1 − a0  1   C −1 =  0  .  . . 0 matriz inversa da matriz companheira ´ e  − a1 · · · − aN−1 − a10 a0 a0 0 ··· ··· 0   .  .  1 0 . .  ... ... ... .  . ··· 0 1 0 5.8 Exerc´ ıcios 1. (M´todo de Krylov) Considere o seguinte m´todo, baseado na aplica¸˜o do teorema de e e ca Hamilton-Cayley, para encontrar o polin´mio caracter´ o ıstico de uma matriz A de dimens˜o a N: • Calcular Ak , para k = 2, ..., N • Determinar os coeficientes αi tais que α0 I + α1 A + ... + αN−1 AN−1 + AN = 0. a) Indique uma estimativa do n´ mero de opera¸˜es (∗, /) necess´rias a esse c´lculo. u co a a b) Use este m´todo para determinar a equa¸˜o caracter´ e ca ıstica de uma matriz 2 × 2. k c) Ao inv´s de calcular A , considere um vector inicial x(0) e defina x(k) = Ax(k−1) . e Apresente um processo equivalente para determinar o polin´mio caracter´ o ıstico. Comente quanto ao n´ mero de opera¸˜es e quanto ` solubilidade do sistema. u co a 2. Considere a matriz companheira do polin´mio com coeficientes reais p(x) = a0 + o n−1 n a1 x + ... + an−1 x +x . a) Mostre que se |an−1 | > 1 + M, com M = max{|a0 |, |a1 | + 1, ..., |an−2 | + 1} ent˜o a existe uma e uma s´ raiz real dominante em [−an−1 − 1, −an−1 + 1], e que as restantes se o encontram na bola {|z| ≤ M }. b) Considere p(x) = 2 − 6x2 + 4x3 − 16x4 + 2x5 . Localize as ra´ dominante num intervalo de comprimento 2 e as restantes numa bola ızes de raio 1. Determine aproximadamente a raiz dominante usando duas itera¸˜es do m´todo das co e potˆncias. e 3. Seja A uma matriz real N × N, que verifica: |aii − ajj | > ri + rj , ∀i, j = 1, ..., N (i = j) em que N rk = −|akk | + 190 j=1 |akj | Mostre que os valores pr´prios da matriz s˜o reais. o a 4. Considere uma matriz A ∈ CN × CN e v´rias sucess˜es µ(k) ∈ l1 . Supondo que a o |aii | > ||µ(i) ||1 ∀i = 1, . . . , N |aij | ≤ |µj | ∀i, j = 1, . . . , N, (i = j) a) Mostre que a matriz A ´ invert´ e ıvel. b) Mostre que se A for hermitiana e tiver a diagonal positiva, ent˜o ´ definida positiva a e e o raio espectral verifica ρ(A) ≤ max i=1,... ,N (i) |aii | + ||µ(i) ||1 . c) Mostre que ´ poss´ resolver o sistema Ax = b, para qualquer b ∈ I N , usando o e ıvel R m´todo de Jacobi, e que se verifica: e ||x − x(n) ||∞ ≤ considerando x(0) = 0, com L = 1 − min ( i=1,... ,n Ln ||b||∞ 1−L K |µi | ) , e com K = min ||µ(i) ||1 . i=1,... ,n ||µ(i) ||1  (i) 5. Considere a matriz a) Aplicando o T. de Gerschgorin determine um dom´ ınio em C onde se encontram os valores pr´prios de A. o b) Conclua que existe um valor pr´prio dominante para A, e determine uma aproxima¸˜o o ca utilizando o m´todo das potˆncias. e e c) Diga qual o raio espectral da matriz A/10? O que pode concluir acerca da convergˆncia do seguinte m´todo: e e 6. Considere a matriz   −1 + i 1 1  1 −1 − i 1  1 0 3 + 4i a) Indique um dom´ ınio do plano complexo onde se situam os valores pr´prios. o b) Determine um majorante para o m´dulo do determinante da matriz. o c) Entre que valores se pode situar o raio espectral da matriz? A matriz ´ invert´ e ıvel? 7. Considere a matriz   8 1 −1  1 −3 1  0 1/2 1 191  6 0 1 0 . A= 2 1 2 −1 −1 a) Localize os valores pr´prios de A usando o teorema de Gerschgorin. o b) Indique os valores de b para os quais podemos obter uma decomposi¸˜o A = LLT , ca em que L ´ uma matriz triangular inferior real. e c) Para que valores de h ∈ R3 ´ poss´ e ıvel utilizar o m´todo de Jacobi para resolver e um sistema Ax = h? Indique uma estimativa de erro para ||e(n) ||∞ em fun¸˜o de ||h||∞, ca sabendo que x(0) = 0. 9. Considere uma matriz A ∈ CN × CN e v´rias sucess˜es µ(k) ∈ l1 . Supondo que a o |aii | > ||µ(i) ||1 ∀i = 1, . . . , N (i) a) Justifique que todos os valores pr´prios da matriz s˜o reais, e indique intervalos que o a os contenham. b) Verifique que a matriz possui um valor pr´prio dominante e aproxime-o considerando o trˆs iteradas do m´todo das potˆncias, usando como vector inicial v (0) = (1, 0, 0). e e e 8. Considere a matriz   10 3 − 2 cos(b) cos(b) 25 5 sin(a)  A= 1 1 5 sin(a) + sin(b) 50 |aij | ≤ |µj | ∀i, j = 1, . . . , N, (i = j) a) Mostre que a matriz A ´ invert´ e ıvel. b) Mostre que se A for hermitiana e tiver a diagonal positiva, ent˜o ´ definida positiva a e e o raio espectral verifica ρ(A) ≤ max i=1,... ,N |aii | + ||µ(i) ||1 . c) Mostre que ´ poss´ resolver o sistema Ax = b, para qualquer b ∈ RN , usando o e ıvel m´todo de Jacobi, e que se verifica: e Ln ||b||∞ ||x − x(n) ||∞ ≤ 1−L K considerando x(0) = 0, com |µ(i) | i L = 1 − min ( (i) ) , e com K = min ||µ(i) ||1 . i=1,... ,n ||µ ||1 i=1,... ,n 10. Suponha que obteve √ 2 1 −1 3 2 A= . 1 1 0 −1 2 a) Calcule a primeira itera¸˜o pelo m´todo QR. ca e b) Compare as aproxima¸˜es dos valores pr´prios com os valores pr´prios correctos. co o o 11. Considere a cos(θ) −a sin(θ) A= . a sin(θ) a cos(θ) Qual a factoriza¸˜o QR de A? Como se processa a itera¸˜o do m´todo QR neste caso? ca ca e Calcule os valores pr´prios de A e justifique. o 12. Mostre que se os elementos de uma matriz forem n´meros racionais ent˜o os valores u a pr´prios dessa matriz n˜o podem ser n´meros transcendentes. o a u 192 Cap´ ıtulo 6 Introdu¸˜o a m´todos de optimiza¸˜o ca e ca Um dos problemas correntes em aplica¸˜es ´ encontrar valores que minimizem1 determico e nadas quantidades. O c´lculo em R mostra que se uma fun¸˜o for C 1 , numa vizinhan¸a do a ca c ponto de m´ ınimo, isso implica que a derivada se anule. Isto sugere que se procure o ponto de m´ ınimo como um zero da derivada... mas esta ideia nem sempre admite generaliza¸˜es co nem facilidades pr´ticas. A apresenta¸˜o que aqui faremos ´ bastante superficial e de a ca e car´cter introdut´rio, para uma consulta mais aprofundada existem bastantes referˆncias, a o e por exemplo [7], [22]. Come¸amos por observar que os m´todos de minimiza¸˜o podem ser utilizados para c e ca resolver equa¸˜es f(x) = 0, bastando considerar a minimiza¸˜o de ||f (x)||, ou mais freco ca 2 quentemente ||f (x)||2 , j´ que nesse caso os pontos de m´ a ınimo ir˜o coincidir com as ra´ a ızes! Iremos come¸ar por falar de um m´todo de minimiza¸˜o simples, o m´todo dos m´ c e ca e ınimos quadrados, que tamb´m pode ser encarado como um m´todo para a aproxima¸˜o de uma e e ca fun¸˜o, ou de um conjunto de pontos por uma fun¸˜o. Devido a esse facto, e ao facto ser ca ca substancialmente diferente dos restantes, muitas vezes n˜o ´ enquadrado no contexto da a e optimiza¸˜o. ca 6.1 M´todo dos m´ e ınimos quadrados A minimiza¸˜o atrav´s do m´todo dos m´ ca e e ınimos quadrados, que pode ser visto como um caso particular de encontrar a distˆncia m´ a ınima a um conjunto convexo abstracto. No entanto, no caso que iremos abordar, esse conjunto convexo ´ simplesmente um subespa¸o vectorial e c de dimens˜o finita. Um caso particular de m´todo dos m´ a e ınimos quadrados ´ a regress˜o e a linear (e ´ o mais simples), em que a partir de v´rios dados num´ricos (normalmente obtidos e a e experimentalmente) se pretende obter a recta que melhor se aproxima desse conjunto de pontos. Assim, tenta-se obter uma rela¸˜o linear entre os diferentes valores. No entanto, ca nem sempre ´ conveniente obter uma aproxima¸˜o desses valores por rectas, podemos pensar e ca noutro tipo de fun¸˜es... polin´mios de grau superior, ou v´rias outras... Tamb´m pode ser co o a e 1 Ou que maximizem... como ´ ´bvio, tratam-se de problemas equivalentes! eo 193 necess´rio aproximar uma fun¸˜o, e n˜o apenas um conjunto de pontos, por outras fun¸˜es a ca a co mais simples (ou de caracter´ ısticas convenientes para o problema que queremos resolver). Vamos resolver estas quest˜es de forma simples — atrav´s do m´todo dos m´ o e e ınimos quadrados. Podemos encarar o m´todo dos m´ e ınimos quadrados como um m´todo com e restri¸˜es, porque o ponto de m´ co ınimo que pretendemos determinar est´ num subespa¸o (e a c vai ser a projec¸˜o ortogonal da fun¸˜o dada, no subespa¸o formado pela base de ”fun¸˜es ca ca c co aproximadoras”). No entanto, reparamos que se considerarmos o subespa¸o como o pr´prio c o espa¸o, j´ n˜o temos restri¸˜es... ´ isso que faremos! c a a co e • Tudo se vai resumir a minimizar uma distˆncia num espa¸o de Banach em que est´ a c a definido um produto interno, ou seja um espa¸o de Hilbert. Neste caso essa distˆncia ´ c a e dada atrav´s do produto interno e d(x, y) = ||x − y|| = x − y, x − y . O objectivo ´ minimizar a distˆncia de um ponto w a um subespa¸o vectorial S, ou o e a c 2 que ´ equivalente, minimizar o seu quadrado ||x − w|| , para x ∈ S. Podemos fazer isso e determinando quando a derivada (de Fr´chet) se anula. e Proposi¸˜o 6.1 Seja H um espa¸o de Hilbert e w ∈ H. A derivada de Fr´chet de J(x) = ca c e 1 ||x − w||2 ´ e 2 Jx h = x − w, h . Demonstra¸˜o: ca Note-se que J : S → R, e temos J(x + h) − J(x) = 1 1 x + h − w, x + h − w − x − w, x − w 2 2 1 1 = h, x + h − w + x + h − w, h 2 2 = x − w, h + ||h||2 . Portanto a derivada de Fr´chet de J em x ´ o operador linear h → x − w, h . e e Proposi¸˜o 6.2 x ´ ponto de m´nimo da fun¸ao J (definida na proposi¸ao anterior) se e ca e ı c˜ c˜ s´ se o Jx = 0, ou seja, se x − w, h = 0, para qualquer h ∈ H. Demonstra¸˜o: ca Se Jx = 0 ent˜o a J(x + h) − J(x) = Jx h + ||h||2 = ||h||2 > 0, ∀h = 0, e portanto x ´ ponto de m´ e ınimo estrito. Reciprocamente, se J(x + h) − J(x) > 0, ∀h = 0, 194 ent˜o Jx h + ||h||2 > 0, e para h = εv, com ||v|| = 1, ε > 0, temos a 0 < Jx v + ε. a a Fazendo ε → 0, ficamos com 0 ≤ Jx v, para qualquer ||v|| = 1, o que significa que ser´ v´lido para −v, logo 0 ≤ Jx (−v) = −Jx v. Conclui-se assim que Jx v = 0, para qualquer ||v|| = 1, h e portanto Jx h = ||h||Jx ( ||h|| ) = 0, para qualquer h = 0 (para h = 0, ´ trivial). e • Portanto, dado w ∈ S o problema a resolver passa a ser determinar x ∈ S : / x − w, h = 0, ∀h ∈ S, o que corresponde a encontrar a projec¸ao ortogonal de w a S. c˜ Como S ´ um subespa¸o, basta verificar para cada elemento da base desse subespa¸o e c c {v1 , ..., vN , ...} : x, vi = w, vi , para i = 1, ..., N, ... Por outro lado escrevendo x = j≥1 xj vj , obtemos xj vj , vi = w, vi , para i = 1, ..., N, ... j≥1 No caso de estarmos num espa¸o com dimens˜o finita N, corresponde a um sistema c a Vx = w :       < v1 , v1 > . . . < v1 , vN > x1 < w, v1 >    .    . . . ... . . .    . =  . . . . < vN , v1 > . . . < vN , vN > xN < w, v1 > denominado sistema normal. Por constru¸˜o, a solu¸˜o x do sistema Vx = w, ser´ o ponto que minimiza J(y) = ca ca a 1 2 ||y − w|| . 2 Proposi¸˜o 6.3 A matriz do sistema normal V ´ sim´trica e definida positiva (supondo ca e e que v1 , ..., vN s˜o linearmente independentes). a Demonstra¸˜o: ca A simetria resulta do produto interno (no caso de n´meros complexos a matriz ser´ u a hermitiana). Para verificar que ´ definida positiva, consideramos e N N (Vx)i = j=1 vj , vi xj = vi , j=1 xj vj = vi , x , e portanto N x Vx = i=1 xi vi , x = x, x = ||x||2 > 0, se x = 0. 195 Observa¸˜o: ca (i) Reparamos que se a base for ortogonal obtemos uma matriz diagonal e a solu¸˜o ´ ca e explicitamente dada pelas projec¸˜es sobre cada vector da base, i.e: co xk = Pvk w = w, vk . ||vk ||2 Um exemplo em que isso acontece ´ quando se consideram polin´mios ortogonais. e o (ii) Repare-se que, como a matriz V do sistema normal ´ sim´trica e definida positiva e e ela define um produto interno. (iii) A resolu¸˜o do sistema normal Vx = w ser´ equivalente a minimizar J(x) = ca a 1 x Vx − x w, e por isso os m´todos de minimiza¸˜o do tipo gradiente ou gradiente conjue ca 2 gado, tal como o m´todo de Cholesky, s˜o adequados para a resolu¸˜o do sistema normal. e a ca 6.1.1 Aproxima¸˜o no caso discreto ca No caso de uma aproxima¸˜o em que se pretende determinar a fun¸˜o da forma x = ca ca x1 v1 + ... + xN vN que melhor aproxima os valores w(ti ) obtidos no conjunto de pontos t1 , ..., tM , consideramos o produto interno em RM M < u, v >= k=1 u(tk )v(tk ). M 2 k=1 (x(tk )−w(tk )) . que est´ associado ` distˆncia que nos interessa minimizar: ||x−w||2 = a a a 2 Nota: No caso complexo, V = S∗ S. ´ E tamb´m claro que os valores singulares da matriz S s˜o as ra´ quadradas dos valores e a ızes pr´prios de V. o No caso discreto, a matriz do sistema normal pode ser escrita como o produto de uma matriz n˜o quadrada pela sua transposta S. A matriz S ´ constitu´ pelos valores das N a e ıda fun¸˜es base nos M pontos, ou seja, co   v1 (t1 ) . . . vN (t1 )   . . ... . . S= , e temos V = S S.  . . v1 (tM ) . . . vN (tM ) M×N Exerc´ ıcio 6.1 Considere w(ti ) valores obtidos para os pontos t1 , ..., tn . Mostre que se pretendermos uma aproxima¸ao polinomial com a base vk (t) = tk , obtemos v = α0 + α1 t + ... + c˜ p αp t , em que       n p n n+ 1 ... α0 i=1 ti i=1 w(ti )    .    . . . ... . . .    . =  . . . . n p i=1 ti ... n 2p i=1 ti αp n p i=1 ti w(ti ) e obtenha as f´rmulas para a regress˜o linear (o caso p = 1). o a 196 Observa¸˜o: Para o caso discreto, o Mathematica tem implementada a rotina Fit, que ca permite introduzir uma lista com os pontos a aproximar e uma outra lista com as fun¸˜es co base consideradas. 6.1.2 Aproxima¸˜o no caso cont´ ca ınuo No caso de uma aproxima¸˜o em que se pretende determinar a fun¸˜o da forma x = x1 v1 + ca ca ... + xN vN que melhor aproxima uma fun¸˜o w(t) definida num intervalo [a, b],consideramos ca o produto interno em L2 ([a, b]) b < u, v >L2 (a,b) = a u(t)v(t) dt. b a que est´ associado ` distˆncia que nos interessa minimizar: ||x − w||2 2 (a,b) = a a a L 2 w(t)| dt. |x(t) − e calcule o n´mero de condi¸ao da matriz (chamada matriz de Hilbert) para p = 1 e p = 2. u c˜ Nota: Esta matriz ´ torna-se bastante mal condicionada, mesmo para valores de p n˜o muito e a grandes. Exerc´ ıcio 6.2 Considere uma fun¸ao w definida no intervalo [0, 1]. Mostre que se pretenc˜ dermos uma aproxima¸ao polinomial com a base vk (t) = tk , obtemos v = α0 +α1 t+...+αp tp , c˜ em que      1  1 1 . . . p+1 α0 w(t) dt 0  .  .   . = . ... .   .   .  .  . . . . 1 p+1 ... 1 2p+1 αp 1 p t w(t) dt 0 6.1.3 Dependˆncia n˜o linear nos coeficientes e a g(x) = aebx , Supondo que queremos aproximar uma fun¸˜o f (x) por uma fun¸˜o do tipo ca ca reparamos que n˜o h´ dependˆncia linear nos coeficientes, pelo que h´ normalmente duas a a e a solu¸˜es. co (i) Solu¸ao exacta. c˜ Calcula-se o gradiente de J(a, b) = ||f(x) − aebx ||2 e procuram-se os pontos cr´ ıticos, tais que linear em a e b. Neste caso, J(a, b) = 0, o que ir´ levar a um sistema n˜o a a J(a, b) = f (x) − aebx , f (x) − aebx = ||f (x)||2 − 2a ebx, f (x) + a2 ebx , ebx 197 e portanto, J(a, b) = −2 ebx , f (x) + 2a ebx, ebx −2a xebx, f (x) + 2a2 xebx , ebx ebx ,f (x) ebx ,ebx bx bx = 0 0 leva-nos a um sistema de duas equa¸˜es a duas inc´gnitas. Neste caso simples, retiramos co o a= xebx , f(x) , e se a = 0, xebx, ebx . e ,e = ebx , f (x) A segunda equa¸˜o ´ uma equa¸˜o n˜o linear em b que dever´ ser resolvida. ca e ca a a (ii) Solu¸ao aproximada. c˜ Como queremos f (x) ≈ g(x), efectua-se a transforma¸˜o log(f (x)) ≈ log(g(x)) = log a+ ca bx. Desta forma podemos pensar em fazer a aproxima¸˜o dos pontos log(f(x)), que s˜o ca a facilmente calcul´veis, atrav´s de uma regress˜o linear com G(x) = A + Bx. Tendo obtido a e a A os valores de A e B, substitu´ ımos a = e , b = B. ´ E claro que a solu¸˜o aproximada pode diferir razoavelmente dos valores correctos, basta ca reparar que neste caso, log f (x) = log a + bx + E(x) ⇒ f(x) = eE(x) aebx , ou seja, o erro E(x) ir´ aparecer como coeficiente multiplicativo e exponencial. Caso os a o ca valores de E(x) sejam pequenos, teremos eE(x) pr´ximo de 1, o que torna a aproxima¸˜o aceit´vel (especialmente quando n˜o ´ garantida a exactid˜o dos pr´prios valores de f, como a a e a o acontece em ciˆncias experimentais). e • Este tipo de t´cnica pode ser aplicada com outro tipo de fun¸˜es, quando uma sime co ples transforma¸˜o permita passar de uma dependˆncia n˜o linear para uma dependˆncia ca e a e linear... com as devidas precau¸˜es. co 6.2 Minimiza¸˜o sem restri¸oes ca c˜ Iremos agora abordar superficialmente alguns m´todos de optimiza¸˜o que se caracterie ca zam por procurar o m´ ınimo de uma fun¸˜o sem impor restri¸˜es a que esse m´ ca co ınimo esteja especificamente num conjunto, ou o que pode ser equivalente, que verifique uma determinada propriedade. N˜o ser´ assim abordado o assunto da programa¸˜o linear e n˜o linear, a a ca a a minimiza¸˜o com restri¸˜es, que no caso n˜o linear se baseia parcialmente na generalca co a iza¸˜o da teoria dos multiplicadores de Lagrange (rela¸˜es de Kuhn-Tucker) e na ideia de ca co aproximar problemas de minimiza¸˜o com restri¸˜es por uma sucess˜o de problemas sem ca co a restri¸˜es (m´todo de Uzawa)... Nem t˜o pouco iremos introduzir a parte de programa¸˜o co e a ca linear, em que o m´todo do simplex ´ um paradigma de simplicidade e efic´cia. O assunto e e a da optimiza¸˜o ´ um vasto campo, e aqui apenas abordaremos alguns dos m´todos mais ca e e conhecidos na minimiza¸˜o sem restri¸˜es. ca co Come¸amos por relembrar as no¸˜es de pontos de m´ c co ınimo para uma fun¸˜o f : X ⊆ ca R → R: N 198 — Dizemos que x ∈ X ´ um ponto de m´nimo absoluto estrito de f em X, se f (y) > e ı f (x), ∀y ∈ X, com y = x. — Dizemos que x ∈ X ´ um ponto de m´nimo relativo estrito de f, se f (y) > f (x), ∀y ∈ e ı Vx , com y = x, onde Vx ´ uma vizinhan¸a de x. e c Defini¸˜o 6.1 Seja f : RN → R de classe C 1 . Dizemos que x ´ um ponto cr´tico de f se ca e ı f (x) = 0. Relembramos os seguintes teoremas da an´lise matem´tica. a a Teorema 6.1 (condi¸ao suficiente). Se f ∈ C 2 e a matriz hessiana 2 f for definida c˜ positiva num ponto cr´tico x, ent˜o x ´ um ponto de m´nimo relativo estrito de f (se for ı a e ı definida negativa ser´ um ponto de m´ximo relativo estrito). a a Demonstra¸˜o. Resulta do desenvolvimento em s´rie de Taylor, ca e f (x + h) = f (x) + 1 f(x)h + h 2 2 f(x + θh)h, com θ ∈]0, 1[, 2 j´ que nesse caso ficamos com f(x + h) − f(x) = h a suficientemente pequeno. f (x + θh)h > 0 se h = 0 for Teorema 6.2 (condi¸ao necess´ria). Se f ∈ C 1 e x for um ponto de m´nimo ou m´ximo c˜ a ı a relativo, ent˜o f (x) = 0. Se f ∈ C 2 , ent˜o a matriz hessiana de 2 f (x) ´ semidefinida a a e positiva ou semidefinida negativa, consoante x seja um ponto de m´ximo ou m´nimo relativo. a ı Demonstra¸˜o. Resulta tamb´m do desenvolvimento em s´rie de Taylor, ca e e f (x + h) = f (x) + f (x)h + o(||h||). h Como f (x + h) − f(x) ≥ 0, para qualquer h = 0, temos f(x) ||h|| ≥ o(1), o que no limite significa f (x)v ≥ 0, ∀v : ||v|| = 1, desigualdade que aplicada a −v d´ a f (x)v ≤ 0, e portanto f (x)v = 0, ∀v : ||v|| = 1. o Particularizando para v = e(k) (vectores da base can´nica), obtemos resultado ´ semelhante, considerando o desenvolvimento e 1 f(x + h) = f (x) + h 2 pois j´ mostr´mos que a a f(x) = 0. 199 2 f (x) = 0. O outro f (x)h + o(||h||2 ), Defini¸˜o 6.2 Uma fun¸ao diz-se convexa em D se para quaisquer x, y ∈ D verificar ca c˜ f (θx + (1 − θ)y) ≤ θf (x) + (1 − θ)f (y), ∀θ ∈ [0, 1] e estritamente convexa se a desigualdade for estrita (excepto para x = y). • Uma fun¸˜o ser´ convexa se f (y) ≥ f(x) + f(x)(y − x), caso f ∈ C 1 (D), e se ca a 2 f ∈ C (D) ser´ convexa quando a matriz hessiana for semidefinida positiva (estritamente a convexa se for definida positiva). Um processo de determinar m´ ınimos relativos ser´, portanto, encontrar x : f(x) = 0, a o que corresponde a resolver um sistema n˜o linear com N equa¸˜es (as derivadas parciais a co ∂1 f = 0, ..., ∂N f = 0) e N inc´gnitas, x1 , ..., xN , assegurando que a matriz hessiana ´ o e definida positiva. 6.2.1 M´todos de descida e Come¸amos por apresentar um tipo de m´todos, designados como m´todos de descida, em c e e que o processo de encontrar um ponto de m´ ınimo consiste em associar ` itera¸˜o uma fun¸˜o a ca ca de descida, de forma a assegurar que atrav´s do processo iterativo se esteja mais pr´ximo e o de um m´ ınimo. Genericamente podemos descrever os m´todos de descida como m´todos e e iterativos (semelhantes a m´todos de ponto fixo), que podem ser apresentados na forma e 2 geral : xn+1 = A(xn ), mas que est˜o sujeitos a um crit´rio de atribui¸˜o definido por uma fun¸˜o de descida Z. a e ca ca A fun¸ao de descida para A, ´ uma fun¸˜o cont´ c˜ e ca ınua num conjunto X com valores reais que deve verificar Z(A(x)) < Z(x), para todo o x = z, x ∈ X, onde z s˜o os pontos de a m´ ınimo (poder´ ser apenas um, ou v´rios). a a Normalmente a fun¸˜o Z poder´ ser a pr´pria fun¸˜o f, e nesse caso os pontos de m´ ca a o ca ınimo de Z coincidem com os pontos de m´ ınimo de f. Outra possibilidade ´ escolher Z = | f |, e e nesse caso poder´ haver pontos de m´ a ınimo para Z que n˜o o sejam para f (pois mesmo a que o gradiente seja nulo n˜o implicar´ que se trate de um ponto de m´ a a ınimo de f ). Teorema 6.3 (convergˆncia global). Se A for uma fun¸ao cont´nua e X for um conjunto e c˜ ı compacto ent˜o a sucess˜o (xn ), dada por um m´todo de descida, tem subsucess˜es convera a e o gentes que convergem para pontos de m´nimo. ı Demonstra¸˜o: ca Como admitimos que X ´ compacto ent˜o ´ poss´ retirar subsucess˜es convergentes. e a e ıvel o Consideremos (yn ) uma dessas subsucess˜es convergentes, temos yn → y, e suponhamos o por absurdo que y n˜o ´ ponto de m´ a e ınimo, logo Z(A(y)) > Z(y). Como A ´ cont´ e ınua, yn = A(yn−1 ) → A(y), Seguimos [22], com algumas simplifica¸oes. Grande parte da teoria geral ´ devida a Zangwill (final dos c˜ e anos 60). 2 200 ou seja A(y) = y, e portanto Z(A(y)) = Z(y),.contradi¸˜o que implica que y seja ponto de ca m´ ınimo. • No caso em que h´ apenas um ponto de m´ a ınimo, a sucess˜o definida pelo m´todo ter´ a e a que convergir para ele. Observa¸˜o: Quando se trata de minimizar uma fun¸˜o num intervalo de R existe ca ca um m´todo de certa forma an´logo ao m´todo da bissec¸˜o, designado m´todo da sec¸ao e a e ca e c˜ dourada (porque a divis˜o do intervalo ´ feita de acordo com a sucess˜o de Fibonacci). a e a Analisando a fun¸˜o nesses pontos, de forma a escolher intervalos em que o valor da fun¸˜o ca ca seja mais pequeno (usamos Z = f como fun¸˜o de descida), obtemos uma convergˆncia para ca e um ponto de m´ ınimo. Quando h´ apenas um m´ a ınimo nesse intervalo, o m´todo permite e localiz´-lo com uma convergˆncia linear em que o factor assimpt´tico ´ o n´ mero de ouro a e o e u √ 5−1 . 2 6.2.2 M´todo do gradiente e Come¸amos por apresentar um m´todo de descida bastante conhecido, o m´todo do gradic e e ente, relacionando-o com a pesquisa de um ponto cr´ ıtico x, onde f(x) = 0. Considerando ω n˜o nulo, podemos estabelecer a equivalˆncia, a e f (x) = 0 ⇔ x = x − ω f (x). Esta equivalˆncia, semelhante ` deduzida para o m´todo do ponto fixo com relaxa¸˜o, e a e ca sugere a implementa¸˜o do m´todo iterativo ca e x(n+1) = x(n) − ω f (x(n) ). Podemos reparar que − f (x(n) ) ser´ uma direc¸˜o que determina a descida de f no ponto a ca x(n) . Basta reparar que, admitindo que f ∈ C 2 , e sendo d = − f (x), pela f´rmula de o Taylor tem-se f (x + ωd) = f (x) + ω f (x)d + o(1), ou seja, f(x + ωd) = f (x) − ω| f (x)|2 + o(1). Isto significa que, para ω > 0 suficientemente pequeno, o termo o(1) ´ negligenci´vel, e e a teremos f (x + ωd) < f (x). Substituindo os valores, ie. x por x(n) e d por − f (x(n) ), conclu´ ımos que nessas condi¸˜es, co f (x(n+1) ) < f (x(n) ), ou seja, a fun¸˜o de descida ´ Z = f, e o processo iterativo ca e x(n+1) = x(n) − ωn f (x(n) ), 201 constitui um m´todo de descida, desde que os ωn > 0 sejam suficientemente pequenos. A e convergˆncia ´ assegurada pelo teorema de convergˆncia global. Acabamos de apresentar e e e uma variante a um m´todo bastante conhecido, denominado m´todo do gradiente (ou do e e declive m´ximo... em inglˆs, steepest descent). As diferen¸as entre as variantes residem na a e c escolha do valor ωn , j´ que no caso do m´todo do gradiente cl´ssico esse valor ωn ´ bem a e a e determinado em cada passo. Antes de entrarmos no assunto da escolha de ωn , apresentamos um exemplo. Exemplo 6.1 Consideramos a fun¸ao, c˜ f (x, y) = −1 −1 + . (x + 1)2 + y 2 + 0.5 (x − 1)2 + y 2 + 0.25 Vemos facilmente que esta fun¸ao tem dois pontos de m´nimo relativo, um deles pr´ximo de c˜ ı o 4 o (x, y) = (−1, 0), onde a fun¸ao atinge o valor f (−1, 0) = −2 − 17 , e um outro pr´ximo de c˜ (x, y) = (1, 0), onde a fun¸ao atinge o valor f (1, 0) = −4− 2 , que se trata mesmo do m´nimo c˜ ı 9 global (ver figura em baixo, a esquerda). Considerando quatro pontos iniciais distintos, ` (x0 , y0 ) = (±1, ±1), verificamos que as direc¸oes definidas pelo vector gradiente (nesses 4 c˜ pontos) podem tanto apontar para um dos m´nimos relativos como para o outro (figura em ı baixo, a direita, onde a fun¸ao ´ representada pelas curvas de n´vel). A convergˆncia para ` c˜ e ı e um outro m´nimo relativo ir´ depender do valor inicial considerado. Assim, para os pontos ı a iniciais (−1, ±1) haver´, a priori, convergˆncia para o ponto de m´nimo relativo pr´ximo a e ı o de (−1, 0), e para os pontos iniciais (1, ±1) haver´ convergˆncia para o ponto de m´nimo a e ı 3 relativo pr´ximo de (1, 0), que tamb´m ´ ponto de m´nimo global . o e e ı 2 1 0 1 1.5 -1 -2 -1 -2 -3 0.5 0 -0.5 -2 -1 0 1 2 -2 -1 0 1 2 -1 -1.5 • Escolha do valor ωn . No m´todo do declive m´ximo, o valor ωn ´ o ponto de m´ e a e ınimo de f (x(n) + ωd(n) ) enquanto fun¸˜o real de ω, o que implica resolver a equa¸˜o em R, ca ca φ (ω) = 0, em que φ(ω) = f x(n) − ω f (x(n) ) . Para resolver a equa¸˜o n˜o linear φ (ω) = 0 podemos utilizar qualquer um dos m´todos ca a e que estud´mos para equa¸˜es n˜o lineares com uma vari´vel. a co a a E importante notar que se ´ poss´ desenvolver m´todos para encontrar m´ e ıvel e ınimos relativos, j´ n˜o o a a ser´ para encontrar os m´ a ınimos globais, pelo menos no caso geral. Apenas com um razo´vel conhecimento a da fun¸˜o, por exemplo, no que diz respeito a sua convexidade, ou ao n´mero m´ximo de m´ ca ` u a ınimos relativos, ser´ poss´ obter o ponto em que se atinge um m´ a ıvel ınimo global. 3´ 202 Exemplo 6.2 Retomando o exemplo anterior, come¸amos com (x0 , y0 ) = (1, 1), e temos c (0) f (1, 1) = (0.132, 1.346) = −d . Assim, a primeira iterada seria definida pela resolu¸ao c˜ de d f ((1, 1) − ω(0.132, 1.346)) = 0, dω ou seja, 0 = d f (1 − 0.132ω, 1 − 1.346ω) dω −1 −1 d = + 2 + (1 − 1.346ω)2 + 0.5 2 + (1 − 1.346ω)2 + 0.25 dω (2 − 0.132ω) (−0.132ω) 2 ⇔ (0.736 − ω)(1.67 − 0.763ω + ω )(2.87 − 2.54ω + ω 2 ) = 0. A equa¸ao n˜o linear ´ aqui apresentada numa forma factorizada, mas normalmente haveria c˜ a e que encontrar as suas ra´zes atrav´s de um m´todo num´rico. Neste caso, h´ apenas uma ı e e e a raiz real que ´ ω0 = 0.736 e ser´ esse o ponto de m´nimo, segundo a direc¸ao dada pelo e a ı c˜ gradiente, que define a pr´xima itera¸ao, pois ficamos com o c˜ x(1) = x(0) − ω0 f(x(0) ) = (1, 1) − 0.736(0.132, 1.346) = (0.903, 0.009). Este valor ´ j´ uma aproxima¸ao razo´vel do valor correcto e, neste caso, em poucas ite a c˜ a era¸oes obter´amos um valor muito pr´ximo do valor correcto. Ilustramos esta situa¸ao na c˜ ı o c˜ figura seguinte, onde est´ representada a iterada a inicial, o vector e a direc¸ao definidas a c˜ ´ ao longo da linha a tracejado que deve ser procurado o ponto de m´nimo, pelo gradiente. E ı ´ esse o valor x(1) que est´ representado como um ponto negro, j´ muito pr´ximo do ponto e a a o de m´nimo, que ´ (0.99376, 0). ı e 1.5 1 0.5 0 -0.5 -1 -1.5 -2 -1 0 1 2 Observa¸˜o 1 (escolha aproximada do valor ωn ). ca Normalmente encontrar ωn que seja o zero da derivada pode envolver demasiados c´lculos, a pelo que ´ comum aproximar a fun¸˜o e ca φ(ω) = f x(n) − ω f(x(n) ) por um polin´mio do segundo grau p(ω) = α0 + α1 ω + α2 ω 2 . Esta aproxima¸˜o pressup˜e o ca o que f seja convexa, mas poder´ ser adaptada a outros casos. A aproxima¸˜o da fun¸˜o φ a ca ca atrav´s de uma par´bola pode ser efectuada com interpola¸˜o em trˆs pontos w1 , w2 , w3 , e a ca e positivos, escolhidos pr´ximo de 0, o que corresponde a resolver trˆs equa¸˜es o e co p(w1 ) = φ(w1 ), p(w2 ) = φ(w2 ), p(w3 ) = φ(w3 ), 203 para determinar as inc´gnitas αk . Podemos colocar o problema em termos de sistema, o      2 1 w1 w1 α0 φ(w1 ) 2  1 w2 w2   α1  =  φ(w2 )  , 2 1 w3 w3 α2 φ(w3 ) mas notamos que a solu¸˜o deste sistema ´ obtida de forma simples usando uma f´rmula ca e o de interpola¸˜o, ca p(ω) = φ(w1 ) + φ[w1 , w2 ](ω − w1 ) + φ[w1 , w2 , w3 ](ω − w1 )(ω − w2 ), )−φ(w em que φ[w1 , w2 ] = φ(w11 −w2 2 ) , e φ[w1 , w2 ] = φ[w1 ,w21]−φ[w2 ,w3 ] . w w −w3 Tendo obtido estes valores, calculamos o ponto de m´ ınimo de p, que ser´ ω tal que a ˜ p (˜ ) = 0, ou seja, ω 0 = φ[w1 , w2 ] + φ[w1 , w2 , w3 ](2˜ − w1 − w2 ), ω e portanto, ω= ˜ w1 + w2 φ[w1 , w2 ] − . 2 2φ[w1 , w2 , w3 ] Podemos usar este valor como aproxima¸˜o de ωn . ca No entanto, como referimos, esta aproxima¸˜o pressup˜e que a fun¸˜o seja convexa, j´ ca o ca a que doutra forma, ao calcular o zero da derivada do polin´mio, poderemos estar a encono trar um m´ximo ao inv´s de um m´ a e ınimo... veremos mais concretamente o m´todo e este e problema no exemplo seguinte. Exemplo 6.3 Retomamos ainda os dados do exemplo anterior, com (x0 , y0 ) = (1, 1). Notamos que a fun¸ao n˜o ´ sempre convexa, por isso podem surgir problemas com a aproxc˜ a e ima¸ao. Com efeito, considerando inicialmente w1 = 0, w2 = 0.1, w3 = 0.2, obtemos c˜ ω= ˜ w1 + w2 φ[w1 , w2 ] −5.596 − = 0.05 − = −0.133. 2 2φ[w1 , w2 , w3 ] 2 × (−15.21) Este valor ´ an´malo, porque ´ negativo e porque reparamos que se trata de uma par´bola e o e a concˆva, j´ que o coeficiente φ[w1 , w2 , w3 ] que determina a orienta¸ao da par´bola ´ negativo a a c˜ a e (ver figura em baixo, a esquerda). Ainda que neste caso haja problemas, eles podem ser con` tornados pela escolha de valores diferentes para w1 , w2 , w3 at´ que o coeficiente φ[w1 , w2 , w3 ] e seja positivo, e assim o extremo ser´ um m´nimo. Outra hip´tese ´ considerar ω = wk como a ı o e ˜ o valor mais baixo de φ(wk ), o que neste caso acontece para w3 . Optamos pela primeira hip´tese, escolhendo novos valores, w1 = 0, w2 = 0.5, w3 = 1.0, e o obtemos agora ω0 = ˜ w1 + w2 φ[w1 , w2 ] −4.03 − = 0.25 − = 0.7107... 2 2φ[w1 , w2 , w3 ] 2 × 4.38 Portanto, como a par´bola j´ ´ convexa (ver figura em baixo, ao centro), j´ podemos tomar a ae a como aproxima¸ao do ponto de m´nimo, c˜ ı x(1) = x(0) − ω0 f (x(0) ) = (1, 1) − 0.711(0.132, 1.346) = (0.906, 0.0403). ˜ 204 Repetindo o procedimento, notamos que os valores de w1 , w2 , w3 devem ser reajustados, e mais pequenos. Para w1 = 0, w2 = 0.1, w3 = 0.2, obter´amos x(2) = (0.9947, −0.0013), ... j´ ı a muito pr´ximo do valor correcto (0.99376..., 0). o 1 1 1.5 -2 -1 1 2 -2 -1 1 2 1 0.5 -1 -1 0 -2 -2 -0.5 -1 -3 -3 -1.5 -4 -4 -2 -1 0 1 2 Observa¸˜o 1. Outra possibilidade, para fun¸˜es regulares, consiste em considerar ca co a aproxima¸˜o usando derivadas, por exemplo, efectuando uma aproxima¸˜o de φ pelo ca ca 1 desenvolvimento em s´rie de MacLaurin, φ(ω) = φ(0) + φ (0)ω + 2 φ (0)ω 2 + o(1), mas e envolve um c´lculo das derivadas de ordem superior de f. a Observa¸˜o 2 (ordem de convergˆncia). ca e ´ E poss´ ver (cf. [22]) que o m´todo do gradiente quando aplicado ` minimiza¸˜o de ıvel e a ca formas quadr´ticas tem convergˆncia linear, e que o factor assimpt´tico de convergˆncia a e o e ´ dado por λmax −λmin e onde λmax , λmin s˜o o maior e o menor valor pr´prio da matriz a o λmax +λmin sim´trica e definida positiva A (referida na observa¸˜o anterior). No caso geral, esse mesmo e ca 2 resultado poder´ ser obtido para A = a f(z). 2 6.2.3 Aplica¸˜o ` resolu¸˜o de sistemas ca a ca Os m´todos de optimiza¸˜o podem tamb´m aplicar-se ` resolu¸˜o de sistemas (e os pr´prios e ca e a ca o m´todos iterativos podem ser vistos como um caso de m´todos de optimiza¸˜o — ´ o que e e ca e acontece com o m´todo de Gauss-Seidel, que resulta da aplica¸˜o de um m´todo de relaxa¸˜o e ca e ca de optimiza¸˜o a um sistema linear (cf.[7]). ca Seja A uma matriz hermitiana e definida positiva. Consideramos o sistema Ax = b, e a equivalˆncia e 1 Ax = b ⇔ J(x) = min J(y), em que J(y) = y ∗ Ay − y ∗ b, y 2 que podemos estabelecer, de forma semelhante ao que fiz´mos no caso dos m´ e ınimos quadrados (exerc´cio),.notando que ı J(y + h) − J(y) = 1 1 (y + h)∗ A(y + h) − (y + h)∗ b − y ∗ Ay + y ∗ b 2 2 1 ∗ 1 ∗ = y Ah + h A(y + h) − h∗ b = 2 2 1 ∗ ∗ 1 1 = h A y + h∗ Ay − h∗ b + h∗ Ah = h∗ (Ay − b) + O(||h||2 ) 2 2 2 205 (porque A ´ hermitiana), e portanto e J(y)h = h∗ (Ay − b), ou seja J(y) = Ay − b. A equivalˆncia sugere a aplica¸˜o do m´todo do gradiente ` fun¸˜o J(x), e temos e ca e a ca x(n+1) = x(n) − ωn J(x(n) ) em que ωn ser´ o m´ a ınimo de J(x(n) − ωd(n) ), sendo d(n) = Ax(n) − b. Podemos calcular explicitamente esse m´ ınimo, pois J(x(n) − ωd(n) ) = 1 (n) (x − ωd(n) )∗ A(x(n) − ωd(n) ) − (x(n) − ωd(n) )∗ b = 2 1 2 (n) ∗ (n) = ω (d ) Ad − ω (d(n) )∗ Ax(n) + ω(d(n) )∗ b + C, 2 notando que A ´ hermitiana (assim 1 (x(n) )∗ Ad(n) = 1 (d(n) )∗ Ax(n) ), e em que C = (x(n) )∗ Ax(n) − e 2 2 (n) ∗ (x ) b n˜o depende de ω. a d Portanto ao calcular dω J(x(n) − ωd(n) ), ficamos com d J(x(n) − ωd(n) ) = ω(d(n) )∗ Ad(n) − (d(n) )∗ Ax(n) + (d(n) )∗ b, dω e o m´ ınimo ser´ atingido quando a derivada se anular, o que acontece quando a ω(d(n) )∗ Ad(n) = (d(n) )∗ Ax(n) − (d(n) )∗ b, ou seja, ω= (d(n) )∗ (Ax(n) − b) ||d(n) ||2 = (n) ∗ (n) . (d(n) )∗ Ad(n) (d ) Ad • Resumindo, o m´todo do gradiente (aplicado a sistemas de equa¸˜es) fica e co x (n+1) =x (n) + ωn d (n) , com d(n) = Ax(n) − b, ||d(n) ||2 ωn = (d(n) )∗ Ad(n) . Observa¸˜o: ca (i) Conv´m notar que esta escolha de ω ´ tamb´m adoptada para sistemas n˜o lineares e e e a escritos sob a forma A(x) = b(x). (ii) Se a matriz n˜o estiver nas condi¸˜es referidas, consideramos a matriz A∗ A e rea co solvemos o sistema equivalente A∗ Ax = A∗ b. 6.2.4 M´todo do gradiente conjugado e No princ´ dos anos 50 apareceu um outro m´todo, devido a Hestenes e Stiefel, designado ıpio e por m´todo das direc¸oes conjugadas, que permitia melhorar a dedu¸˜o que acabamos de ver e c˜ ca para sistemas lineares. N˜o seguia a ideia da descida do m´todo do gradiente, procurando a e 206 antes direc¸˜es ortogonais face ` matriz, ditas A-conjugadas. A aplica¸˜o desse m´todo ` co a ca e a minimiza¸˜o de quaisquer fun¸˜es, ´ designada por m´todo do gradiente conjugado. ca co e e Recuperando a dedu¸˜o anterior, notamos que ca x(n) = x(n−1) + ωn−1 d(n−1) = x(0) + ωn−1 d(n−1) + ... + ω0 d(0) e portanto se as direc¸˜es d(k) e os coeficientes ωk fossem escolhidos apropriadamente, obter co (n) x = x, corresponderia a encontrar essas direc¸˜es e coeficientes tais que co x − x(0) = ωn−1 d(n−1) + ... + ω0 d(0) . Se os vectores d(0) , ..., d(N−1) constituirem uma base de RN , isso significa que seria poss´ ao ıvel fim de N itera¸˜es atingir a solu¸˜o exacta, caso fosse poss´ escolhˆ-los apropriadamente... co ca ıvel e sem conhecer a solu¸˜o!. No caso de formas quadr´ticas associadas a sistemas lineares, isso ca a ´ poss´ e ıvel! Com efeito, come¸amos por reparar que A, matriz hermitiana e definida positiva, define c um produto interno u, v A = u∗ Av, e podemos escolher d(0) , ..., d(N−1) de forma a constituirem uma base ortogonal para esse produto interno. Nesse caso, os valores ω0 , ..., ωN ser˜o as projec¸˜es segundo essa base, a co usando o produto interno definido por ., . A , tendo-se, x − x(0) , d(k) ωk = d(k) , d(k) A A = (d(k) )∗ A(x − x(0) ) (d(k) )∗ (b − Ax(0) ) = . (d(k) )∗ Ad(k) (d(k) )∗ Ad(k) Resta saber como encontrar as direc¸˜es d(k) . co (0) (0) Dado x , consideramos d = b − Ax(0) , o que permite definir x(1) = x(0) + ω0 d(0) . Ao resto, r(1) = b − Ax(1) , aplicamos o processo de ortogonaliza¸˜o de Gram-Schmidt (com o ca produto interno associado a A), para definir uma direc¸˜o d(1) que seja A-ortogonal a d(0) , ca dizendo-se que s˜o direc¸˜es A-conjugadas (o nome do m´todo surge daqui), ou seja, a co e d(1) = r(1) − r(1) , d(0) d(0) , d(0) A A d(0) = r(1) − (d(0) )∗ Ar(1) (0) d . (d(0) )∗ Ad(0) O mesmo processo ´ aplicado nos passos seguintes. e • Para r(k) = b − Ax(k) , definimos d(k) = r(k) − (d(k−1) )∗ Ar(k) (k−1) d , (d(k−1) )∗ Ad(k−1) e tal como deduzido no m´todo do gradiente, o valor ωk ´ dado por e e (d(k) )∗ (b − Ax(k) ) (d(k) )∗ r(k) ωk = = (k) ∗ (k) , (d(k) )∗ Ad(k) (d ) Ad tendo-se x(k+1) = x(k) + ωk d(k) 207 No final, podemos escrever x = x(0) + (d(0) )∗ r(0) (0) (d(N−1) )∗ r(N−1) d + .... + (N−1) ∗ (N−1) d(N−1) , (d(0) )∗ Ad(0) (d ) Ad ou seja, a solu¸˜o ´ atingida ao fim de N itera¸˜es, no caso de sistemas lineares. ca e co • Estas express˜es podem ser simplificadas, em termos de c´lculo, usando a ortogonalio a dade, pois (d(k) )∗ r(k) = (r(k) )∗ r(k) − (d(k−1) )∗ Ar(k) (d(k−1) )∗ r(k) = (r(k) )∗ r(k) , (d(k−1) )∗ Ad(k−1) porque (d(k−1) )∗ r(k) = 0. Por outro lado, como Ax(k) = Ax(k−1) + ωk−1 Ad(k−1) , obtemos Ad(k−1) = e como (r(k) )∗ r(k−1) = 0, (d(k−1) )∗ Ar(k) = (r(k) )∗ Ad(k−1) = e tamb´m e (d(k−1) )∗ Ad(k−1) = 1 ωk−1 (d(k−1) )∗ (r(k) − r(k−1) ) = 1 ωk−1 (d(k−1) )∗ r(k−1) = 1 ωk−1 (r(k−1) )∗ r(k−1) . 1 ωk−1 (r(k) )∗ r(k) − 1 ωk−1 (r(k) )∗ r(k−1) = 1 ωk−1 (r(k) )∗ r(k) 1 ωk−1 (r(k) − r(k−1) ), • Resumindo, o m´todo das direc¸oes conjugadas (ou do gradiente conjugado aplicado e c˜ a sistemas) fica, r(k) = b − Ax(k) , d(k) e com ωk = d(0) = r(0) (r(k) ∗ (k) = r(k) − (r(k−1) )∗ r(k−1) d(k−1) ) r x(k+1) = x(k) + ωk d(k) (r(k) )∗ r(k) . (d(k) )∗ Ad(k) Se no caso dos sistemas lineares o m´todo do gradiente conjugado atinge a solu¸˜o exacta e ca ao fim de um n´ mero de itera¸˜es menor ou igual que a dimens˜o da matriz, a sua extens˜o u co a a para o caso geral, n˜o verifica essa propriedade, como ´ natural. a e • Seguindo as mesmas etapas, o m´todo do gradiente conjugado, para quaisquer fun¸˜es e co regulares, resume-se a d(0) = d(k) = f (x(0) ), f (x(k) ) − || f (x(k) )||2 || f (x(k−1) )||2 d(k−1) . 208 e x(k+1) = x(k) + ωk d(k) em que ωk resulta de minimizar f(x(k) + ωd(k) ) enquanto fun¸˜o de ω, tal como no m´todo ca e do gradiente. Observa¸˜o: ca (i) A generaliza¸˜o do m´todo do gradiente conjugado ´ consistente com o caso parca e e ticular de sistemas, pois o gradiente da forma quadr´tica verifica J(x(k) ) = r(k) . Como a acontecia no caso do m´todo do gradiente, n˜o h´ f´rmula expl´ e a a o ıcita para ωk , sendo ainda necess´rio efectuar a minimiza¸˜o no parˆmetro ω. Essa minimiza¸˜o pode tamb´m ser a ca a ca e feita de forma aproximada usando a interpola¸˜o por uma par´bola, tal como no m´todo ca a e do gradiente. A justifica¸˜o da generaliza¸˜o do m´todo para fun¸˜es regulares resulta da ca ca e co aproxima¸˜o da fun¸˜o pr´ximo do ponto de m´ ca ca o ınimo por uma forma quadr´tica definida a pela matriz hessiana. (ii) No que diz respeito ` resolu¸˜o de sistemas lineares, o m´todo do gradiente cona ca e jugado aplicado a matrizes hermitianas, definidas positivas, consome aproximadamente N 3 opera¸˜es (×, \) e ´ apenas prefer´ ao m´todo de Cholesky no caso de matrizes suficienco e ıvel e temente esparsas. 6.2.5 M´todo de Newton e Para obtermos um m´todo com convergˆncia mais r´pida, quadr´tica, quando a fun¸˜o ´ e e a a ca e 2 regular (f ∈ C ) podemos considerar o m´todo de Newton, definindo-o de forma semelhante e a um m´todo de descida com e ωn d(n) = −[ Ou seja, resolvemos sucessivamente 2 2 f ]−1 (x(n) ) f (x(n) ). f (x(n) )(x(n+1) − x(n) ) = − f (x(n) ). • Repare-se que vimos que uma condi¸˜o suficiente para que a fun¸˜o fosse m´ ca ca ınimo relativo, seria que a matriz hessiana fosse definida positiva. Como assumimos que a fun¸˜o ca ınimo, a hessiana 2 f ´ regular podemos assumir que geralmente, pr´ximo do ponto de m´ e o ser´ definida positiva, o que nos garante que o m´todo est´ bem definido. a e a Note-se ainda que o m´todo envolve um elevado n´ mero de opera¸˜es relativo ao c´lculo e u co a da matriz hessiana e do sistema linear. • M´todo de Levenberg-Marquardt. e Como, longe do ponto de m´ ınimo, a matriz hessiana n˜o ser´ habitualmente definida a a positiva, podendo mesmo n˜o existir, ent˜o uma possibilidade ´ considerar m´todos de Newa a e e ton modificados. Uma alternativa bastante utilizada, consiste em fazer uma perturba¸˜o ca na matriz hessiana, adicionando um εI, ou seja, uma pequena perturba¸˜o na diagonal da ca matriz. Ficamos assim com ωn d(n) = −(εn I + [ 2 f ])−1 (x(n) ) f (x(n) ), 209 o que corresponder´ a resolver o sistema a (εn I + 2 f )(x(n) )(x(n+1) − x(n) ) = − f (x(n) ). Os valores εn > 0 devem ser pequenos, mas escolhidos de forma a que a matriz εn I + [ 2 f ] seja definida positiva. Isso consegue-se sempre porque para ε > 0 suficientemente grande ter´ ıamos uma matriz sim´trica com a diagonal estritamente dominante e e positiva. Este m´todo, ou as suas variantes, s˜o por vezes designados m´todos de Levenberge a e Marquardt. Note-se que no pr´prio processo de resolu¸˜o do sistema, poder´ ser avaliado o ca a se a matriz ´ ou n˜o definida positiva. Isso ser´ particularmente simples com o m´todo de e a a e Cholesky, j´ que as itera¸˜es seriam interrompidas pela existˆncia de um pivot negativo, a co e sendo necess´rio incrementar o valor de ε. a Observa¸˜o: H´ ainda todo um conjunto de m´todos derivados do m´todo de Newton, ca a e e com os mais variados objectivos, que incluem evitar a resolu¸˜o sistem´tica do sistema, ca a ou o c´lculo da matriz hessiana. Esses m´todos s˜o designados genericamente por m´todos a e a e quasi-Newton. • O Mathematica tem implementada a rotina FindMinimum, em que basta introduzir a fun¸˜o a minimizar e uma iterada inicial. ca 6.2.6 M´todo das coordenadas e Um dos m´todos mais simples consiste em considerar a avalia¸˜o da fun¸˜o, coordenada a e ca ca coordenada. Ou seja, dado um ponto inicial (y1 , ..., yN ) iremos corrigir as suas componentes procurando primeiro x1 tal que f(x1 , y2 , ..., yN ) = min f (y1 , y2 , ..., yN ), y1 depois x2 tal que f (x1 , x2 , y3 , ..., yN ) = min f (x1 , y2 , y3 , ..., yN ), y2 at´ encontrarmos xN tal que e f (x1 , ..., xN ) = min f(x1 , ..., xN−1 , yN ). yN Isto permite reduzir o problema a v´rias dimens˜es, a v´rios problemas unidimensionais. a o a Eventualmente poder´ acontecer a convergˆncia para um m´ a e ınimo relativo, mas no caso mais geral isso pode n˜o acontecer. Para complementar esta t´cnica, ´ habitualmente feita uma a e e procura no sentido inverso. Ou seja, tendo encontrado o ponto (x1 , ..., xN ) podemos repetir o procedimento come¸ando pela coordenada N. c No caso em que h´ apenas um m´ a ınimo segundo cada direc¸˜o, podemos mostrar a ca convergˆncia do m´todo usando o teorema anterior, para isso basta considerar como fun¸˜o e e ca de descida a pr´pria fun¸˜o f. o ca As direc¸˜es de descida aqui consideradas s˜o os vectores da base can´nica, ou seja, co a o (k) (k) temos d = ±e , e o valor ωk ser´ xk − yk , de acordo com as nota¸˜es usadas em cima. a co 210 Observa¸˜o: Uma t´cnica, n˜o fi´vel, mas que poder´ evitar um c´lculo exaustivo do ca e a a a a m´ ınimo segundo cada direc¸˜o consiste em efectuar uma pequena perturba¸˜o nas coordeca ca nadas. A ideia ´ fixar um parˆmetro ε > 0 e avaliar o menor dos valores entre f(x1 , .., xN ) e a e f(x1 ± ε, x2 , ...., xN ), ..., f (x1 , ...., xN−1 , xN ± ε). Repete-se sucessivamente este procedimento, at´ que o valor de f (x1 , .., xN ) seja o mais e pequeno. Nessa altura, dever´ diminuir o valor de ε. Voltamos a insistir que esta t´cnica a e pode n˜o levar ` obten¸˜o de um m´ a a ca ınimo, mas poder´ ser um processo para inicializar um a outro m´todo mais eficaz. e 6.3 Exerc´ ıcios x -2 -1 f(x) -10 -4 0 -2 1 2 1 5 1. Considere uma fun¸˜o f que toma os seguintes valores: ca e que tem um unico zero z ∈ [0, 1]. Pretende-se aproximar esta fun¸˜o por uma fun¸˜o ´ ca ca 3 do tipo g(x) = a + bx + cx , no sentido dos m´ ınimos quadrados. a) Mostre que os valores a, b, c verificam:       5 0 0 a −10  0 10 34   b  =  35  c 125 0 34 130 b) Seja a = −2, b = 25/12, c = 5/12 a solu¸˜o do sistema da al´ ca ınea anterior. Determine uma aproxima¸˜o da raiz w do polin´mio g em [0, 1] calculando x2 pelo m´todo de Newton ca o e com x0 = 1 (justifique a convergˆncia). e c) Sabendo que |z − w| < 0.01, determine um majorante para o erro absoluto que cometemos se utilizarmos o valor x2 obtido em b) para aproximar z. 2. Pretende-se aproximar a tabela de pontos dada no exerc´ anterior por uma fun¸˜o ıcio ca do tipo g(x) = aebx . a) Efectue uma transforma¸˜o nos pontos de forma a reduzir a aproxima¸˜o a um ca ca problema de m´ ınimos quadrados (linear). b) Calcule os valores a e b ap´s a resolu¸˜o do sistema normal e avalie a diferen¸a na o ca c norma euclidiana. c) Efectue a minimiza¸˜o atrav´s da deriva¸˜o em ordem a a e b e compare com os ca e ca resultados obtidos em b). 3. Pretende-se minimizar a fun¸˜o ca f (x, y) = x2 + y 2 + x + y − sin(xy)/2 211 no conjunto X = [−1, 1] × [−1, 1] a) Mostre que existe um e um s´ ponto cr´ o ıtico no conjunto X. Sugest˜o: Escreva a equa¸˜o que permite obter os pontos cr´ a ca ıticos, e aplique o teorema do ponto fixo. b) Prove que esse ponto cr´ ıtico ´ o m´ e ınimo da fun¸˜o em X. ca c) Usando o m´todo do ponto fixo, determine uma aproxima¸˜o para esse m´ e ca ınimo, com um erro absoluto nas componentes inferior a 0.01. d) Aproxime esse m´ ınimo usando duas iteradas do m´todo do gradiente com x(0) = 0. e 4. Pretende-se encontrar o m´ ınimo absoluto em R de f (x) = 1 + |5x − cos(2x) + 2 sin(x)| a) Mostre que h´ um unico ponto em R que ´ m´ a ´ e ınimo absoluto de f. b) Determine aproximadamente o valor desse m´ ınimo, de forma a que o erro absoluto seja inferior a 0.01, e determine exactamente o valor da fun¸˜o nesse m´ ca ınimo. 5. Pretende-se encontrar a fun¸˜o da forma g(x) = a exp(x) + b exp(−x) que melhor ca aproxima a fun¸˜o f (x) = exp(x/2) no intervalo [−2, 2] ca a) Para determinar a e b utilize o m´todo dos m´ e ınimos quadrados discreto, considerando os pontos {−2, −1, 0, 1, 2}. (Nota: N˜o esquecer de mostrar que as fun¸oes base s˜o linearmente independentes, a c˜ a para esse conjunto de pontos) b) Para determinar a e b utilize agora o m´todo dos m´ e ınimos quadrados cont´ ınuo, considerando todo o intervalo [−2, 2]. c) Compare os valores obtidos nas al´ ıneas anteriores e comente. Comente o condicionamento das matrizes obtidas nas al´ ıneas anteriores 6. Considere uma fun¸˜o f que toma os seguintes valores: ca x -2 -1 f(x) -10 -4 0 -2 1 2 1 5 b) Seja a = −2, b = 25/12, c = 5/12 a solu¸˜o do sistema da al´ ca ınea anterior. Determine e uma aproxima¸˜o da raiz w do polin´mio g em [0, 1] calculando x2 pelo m´todo de Newton ca o com x0 = 1 (justifique a convergˆncia). e c) Sabendo que |z − w| < 0.01, determine um majorante para o erro absoluto que cometemos se utilizarmos o valor x2 obtido em b) para aproximar z. 212 e que tem um unico zero z ∈ [0, 1]. Pretende-se aproximar esta fun¸˜o por uma fun¸˜o ´ ca ca do tipo g(x) = a + bx + cx3 , no sentido dos m´ ınimos quadrados. a) Mostre que os valores a, b, c verificam:       5 0 0 a −10  0 10 34   b  =  35  0 34 130 c 125 7. Considere a fun¸˜o f : R3 → R: ca f (x) = e||x||2 + x1 + x2 + x3 a) Mostre que a fun¸˜o h(t) = t/et verifica h(t) < 0.5. Sugest˜o: Determine uma ca a aproxima¸ao do valor do m´ximo positivo. c˜ a b) Mostre que existe um e um s´ ponto cr´ o ıtico de f em R3 e que pode ser determinado usando o m´todo iterativo: e x(n+1) = −0.5[1 1 1]T exp(−||x(n) ||2 ) 2 para qualquer x(0) ∈ R3 . Sugest˜o: Usando a desigualdade de Cauchy-Schwarz, mostre que a √ ||x||1 ≤ 3||x||2 e utilize a al´nea a) ı 8. Para aproximar o m´ ınimo de f : R3 → R: f (x) = e||x||2 + x1 + x2 + x3 , calcule duas iteradas, para x(0) = (−1, 1, 1), usando: a) M´todo do gradiente sem aproxima¸˜o. e ca b) M´todo do gradiente com aproxima¸˜o quadr´tica. e ca a c) M´todo do gradiente conjugado sem aproxima¸˜o. e ca d) M´todo de Newton. e 9. Considere f : R2 → R: f (x, y) = (x − 1)2 1 . + y 2 + 0.1 2 2 2 a) Mostre que o ponto de m´ ınimo de f ´ (1, 0). e (0) e b) Calcule duas iteradas, para x = (−1, −1), usando o m´todo do gradiente sem e com aproxima¸˜o. ca c) Compare os valores obtidos com os valores exactos e comente. 10. Suponha que f ´ uma fun¸˜o em que a matriz hessiana ´ sempre definida positiva. e ca e a) Mostre que se f (z) = 0, z ´ o unico ponto de m´ e ´ ınimo para f. b) Suponha que sabe o valor de f(z), mas n˜o sabe z. Mostre em que condi¸˜es o m´todo a co e do gradiente converge para esse ponto de m´ ınimo z, considerando ωn = |f (z) − f (x(n) )|. 213 Cap´ ıtulo 7 Anexos 7.1 7.1.1 Resultados Elementares de An´lise a Fun¸oes de v´rias vari´veis reais c˜ a a No caso unidimensional, um teorema fundamental que pode ser visto como uma generaliza¸˜o do teorema do valor m´dio, ´ a expans˜o em s´rie de Taylor com resto de Lagrange: ca e e a e Teorema 7.1 (Taylor) :Se f ∈ C p+1 (]a, b[), ent˜o para quaisquer x, y ∈]a, b[, existe ξ ∈ a ]a, b[: f (y) = f (x) + f (x)(y − x) + ... + 1 (p) 1 f (x)(y − x)p + f (p+1) (ξ)(y − x)p+1 . p! (p + 1)! Conv´m aqui observar que, no caso limite, se f ∈ C ∞ (]a, b[), a s´rie de Taylor e e p≥0 1 (p) f (x)(y − x)p , p! pode n˜o coincidir com a fun¸˜o. O exemplo cl´ssico ´ a fun¸˜o a ca a e ca f (x) = xex 0 2 se x > 0 se x ≤ 0, j´ que embora f ∈ C ∞ (R), f tem todas as derivadas nulas em zero, i.e. f (p) (0) = 0, ∀p. a Para que a s´rie de Taylor coincida com a fun¸˜o, ´ necess´rio exigir mais que a difere ca e a enciabilidade ad infinitum, ´ necess´rio exigir que a fun¸˜o seja anal´ e a ca ıtica. Uma fun¸˜o ca anal´ ıtica em I ´ aquela que admite uma representa¸˜o em s´rie de potˆncias nesse intervalo, e ca e e sendo no fundo uma generaliza¸˜o natural do conceito de polin´mio, ou seja a generaliza¸˜o ca o ca de um conceito alg´brico. Isto reflecte bem a diferen¸a entre conceitos alg´bricos e conceitos e c e da an´lise. Quando trabalhamos com fun¸˜es de vari´vel complexa a situa¸˜o ´ diferente, a co a ca e e pode-se provar que a´ coincidem as no¸˜es de diferenciabilidade e analiticidade. ı co 214 Defini¸˜o 7.1 Dizemos que F : X ⊆ RN → RM ´ de classe C 1 em X se as derivadas ca e ∂Fj parciais ∂i Fj = ∂xi (para i = 1, ..., N, j = 1, ..., M) existirem e forem cont´nuas em X. ı ` a Ao vector Fj = (∂1 Fj , ..., ∂N Fj ) chamamos gradiente de Fj , e a matriz (cujas linhas s˜o gradientes)   ∂1 F1 ... ∂N F1   ... F =  ∂1 FM ∂N FM chamamos matriz jacobiana de F. De forma an´loga, dizemos que F ´ de classe C p em X se as derivadas parciais ∂iα Fj a e para |α| ≤ p, existirem e forem cont´ ınuas em X. Aqui α designa um multi-´ ındice, ou seja N α = (i1 , ..., iN ) ∈ N , e |α| = i1 + ... + iN . Seja f : X ⊆ RN → R. Interessa-nos ainda recordar a no¸˜o de matriz Hessiana de ca uma fun¸˜o f com valores reais ca   ∂11 f ... ∂1N f   2 .. f = , . ∂N1 f ∂NN f que interv´m na expans˜o em s´rie de Taylor de ordem 2. e a e c˜ Teorema 7.2 (expans˜o de Taylor de ordem 2) Seja f ∈ C 2 (X) uma fun¸ao definida num a convexo X com valores reais. Ent˜o, para quaisquer x, x + h ∈ X, existe θ ∈]0, 1[: a f (x + h) = f (x) + f (x)h + h 2 f (x + θh)h ´ E claro que a expans˜o em s´rie de Taylor pode ser generalizada para ordens superiores. a e A maneira mais conveniente de o fazer ´ considerar formas diferenciais. No entanto, no e ˆmbito do curso esta expans˜o ser´ suficiente. a a a • Referimos tamb´m um resultado em que apenas se assegura a existˆncia de ponto e e fixo, n˜o se retirando informa¸˜o acerca da unicidade nem da convergˆncia, pois n˜o se a ca e a ´ apenas v´lido (nesta forma) em RN . A referˆncia a e trata de um teorema construtivo. E a este resultado ´ importante j´ que em algumas situa¸˜es n˜o ´ pratic´vel a demonstra¸˜o e a co a e a ca de existˆncia de um ponto fixo de outra forma. e ¯ Teorema 7.3 (do Ponto Fixo de Brouwer). Seja B(0, 1) uma bola unit´ria em RN . Uma a ¯ ¯ ¯ fun¸ao cont´nua G : B(0, 1) → B(0, 1) tem pelo menos um ponto fixo em .B(0, 1). c˜ ı Demonstra¸˜o: Sai fora do ˆmbito do curso. Note-se que a demonstra¸˜o n˜o ´ ca a ca a e 1 construtiva e portanto n˜o fornece um m´todo num´rico . a e e Apesar de Brouwer ser um ac´rrimo defensor do construtivismo, grande parte do seu trabalho mais e conhecido usa argumentos n˜o construtivistas, como ´ este o caso. a e 1 215 ¯ Teorema 7.4 Seja X um conjunto fechado homeomorfo a bola B(0, 1), e G : X → X uma ` aplica¸ao cont´nua. Ent˜o existe pelo menos um ponto fixo de G em X. c˜ ı a Demonstra¸˜o: Basta usar a defini¸˜o de homeomorfo: X ´ homeormorfo a Y se ca ca e existir uma aplica¸˜o cont´ ca ınua F : X → Y bijectiva e com inversa cont´ ınua. Nesse caso ¯ 1), e temos H = F GF −1 : B(0, 1) → B(0, 1) que ´ cont´ ¯ ¯ consideramos Y = B(0, e ınua por hip´tese, logo pelo Teorema de Brouwer, existe pelo menos um z : Hz = z, o que ´ o e −1 −1 −1 equivalente a GF z = F z, logo F z ´ um ponto fixo de G. e Observa¸ao: Um estrelado ´ um conjunto X = {x ∈ Rd : x = a + λr(ˆ)ˆ, com c˜ e xx x 2 2 d λ ∈ [0, 1], x = ||x|| ∈ S } (onde S designa a esfera unit´ria {x ∈ R : ||x|| = 1}), e r ´ uma ˆ a e 2 fun¸˜o cont´ ca ınua em S ). Todos os estrelados, e em particular os convexos, s˜o homeomorfos a ¯ 1) → X, por f (x) = a + r(ˆ)x, ` bola unit´ria, porque podemos definir a aplica¸˜o f : B(0, a a ca x que ´ uma aplica¸˜o bijectiva cont´ e ca ınua de inversa f −1 (y) = y − a. O resultado aparece normalmente enunciado apenas para convexos. • Um outro resultado que ´ referido no texto, permite concluir a existˆncia de pontos e e de m´ximo e m´ a ınimo num conjunto compacto. Teorema 7.5 (Weierstrass). Uma fun¸ao cont´nua f : X → R definida num compacto2 c˜ ı N X de R admite um ponto de m´nimo e um ponto de m´ximo em X. ı a 7.1.2 Fun¸oes de uma vari´vel complexa c˜ a Defini¸˜o 7.2 Uma fun¸ao f (z) = u(z) + iv(z) ´ diferenci´vel em z = x + iy ∈ C, se se ca c˜ e a verificarem as condi¸oes de Cauchy-Riemann c˜ ∂u = ∂v ∂x ∂y ∂u ∂v = − ∂x ∂y Estas condi¸˜es podem ser resumidas na express˜o co a 1 1 vari´veis x = 2 (z + z ), y = 2i (z − z ). Com efeito, a ¯ ¯ df d¯ z = 0, fazendo a mudan¸a de c 1 ∂u ∂u 1 ∂v ∂v df = ( + i ) + (i − ) d¯ 2 ∂x z ∂y 2 ∂x ∂y ∂v ∂v e a condi¸˜o d¯ = 0 ´ equivalente a 1 ( ∂u − ∂y ) = 0, 1 i( ∂u + ∂x ) = 0, ou seja, `s condi¸˜es ca df e a co z 2 ∂x 2 ∂y de Cauchy-Riemann. Um polin´mio verifica trivialmente as condi¸˜es de Cauchy-Riemann o co k z em C, visto dzz = 0, no entanto, a fun¸˜o f (z) = z n˜o ´ diferenci´vel, pois d¯ = 1 = 0, o ca ¯ a e a d¯ d¯ z Em espa¸os vectoriais de dimens˜o finita os conjuntos compactos s˜o limitados e fechados. Deve notarc a a ¯ se que em espa¸os de dimens˜o infinita isto n˜o ´ verdade, j´ que por exemplo, em l∞ a bola B(0, 1) sendo c a a e a limitada e fechada n˜o ´ compacta. Basta pensar que da sucess˜o definida pelos elementos da base n˜o ´ a e a a e poss´ extrair uma subsucess˜o convergente! ıvel a 2 216 mesmo acontecendo com f(z) = Re(z), pois Re(z) = 1 (z + z ), e assim ¯ 2 Por outro lado, analogamente, df 1 ∂u ∂u 1 ∂v ∂v = ( − i ) + (i + ), dz 2 ∂x ∂y 2 ∂x ∂y d 1 [ (z + z )] ¯ d¯ 2 z = 1 2 = 0. ∂v e quando a fun¸˜o ´ diferenci´vel, as condi¸˜es de Cauchy-Riemann d˜o dz = 1 ( ∂u + i ∂x ) + ca e a co a df 2 ∂x 1 ∂v (i + ∂u ), ou seja, a derivada fica f (z) = ∂f (z), ou equivalentemente f (z) = −i ∂f (z). 2 ∂x ∂x ∂x ∂y Entende-se por fun¸ao anal´tica num aberto X, uma fun¸˜o que admite expans˜o em c˜ ı ca a s´rie de potˆncias em torno de qualquer x ∈ X que ´ v´lida numa vizinhan¸a desse ponto. e e e a c H´ que distinguir a analiticidade em C de duas maneiras, j´ que a identifica¸˜o topol´gica a a ca o 2 2 entre C e R pode prestar-se a confus˜es. Assim, uma fun¸˜o anal´ o ca ıtica em R , em que as potˆncias s˜o potˆncias de cada uma das vari´veis, pode n˜o ser anal´ e a e a a ıtica em C, j´ que a nesse caso as potˆncias resultam apenas de multiplica¸˜o complexa com uma vari´vel! O e ca a rec´ ıproco ´ verdadeiro. e Teorema 7.6 As fun¸oes de vari´vel complexa, diferenci´veis num aberto X ⊆ C, s˜o c˜ a a a anal´ticas em X. ı A soma, o produto e a composi¸˜o de fun¸˜es anal´ ca co ıticas origina ainda fun¸˜es anal´ co ıticas. A divis˜o origina tamb´m uma fun¸˜o anal´ a e ca ıtica excepto nos pontos em que o denominador se anula. Uma outra designa¸˜o para uma fun¸˜o complexa anal´ ca ca ıtica ´ a de fun¸ao holomorfa. e c˜ Caso uma fun¸˜o seja holomorfa em todo o C, dizemos tamb´m que se trata de uma ca e fun¸˜o inteira. Os polin´mios s˜o fun¸˜es inteiras e, para al´m disso, as fun¸˜es habituais ca o a co e co ez = ex eiy = ex (cos(y) + i sin(y)), sin(z) = e −e , 2i iz −iz z −z z −z cos(z) = e +e , sinh(z) = e −e , cosh(z) = e +e 2 2 2 s˜o tamb´m fun¸˜es inteiras. a e co Especial cuidado deve-se ter com a potencia¸˜o em geral. Isto deve-se ao logaritmo ca estar apenas bem definido em certos ramos. Com efeito, sendo z w = ew log(z) , a potencia¸˜o fica dependente da boa defini¸˜o do logaritmo. Ora como o logaritmo ´ a ca ca e fun¸˜o inversa da exponencial, verificamos imediatamente que a exponencial n˜o ´ uma ca a e x+iy x+i(y+2kπ) fun¸˜o injectiva em C, pois e ca =e . Isto deve-se ao facto de senos e co-senos n˜o serem fun¸˜es injectivas em R. No entanto, se nos restringirmos a um intervalo em a co particular, como ] − π, π] ou [0, 2π[, j´ podemos assegurar injectividade. S˜o este tipo de a a intervalos que definem os ramos. Outro aspecto especial aparece nas divis˜es. Quando um denominador se anula podemos o ter trˆs tipos de singularidades a saber, remov´ e ıveis, isoladas ou essenciais. Com efeito, devemos considerar um teorema que surge como uma generaliza¸˜o da expans˜o em s´rie ca a e de Taylor. 217 iz −iz Teorema 7.7 (Laurent). Se f ´ anal´tica na coroa A = {z : r1 < |z − z0 | < r2 }, ent˜o e ı a para qualquer z ∈ A, f (z) = ak (z − z0 )k . k∈Z a Os coeficientes ak s˜o dados por ak = para qualquer r entre r1 e r2 . Se ak = 0, para k < 0, a fun¸˜o ´ anal´ ca e ıtica. Se existir k < 0 tal que ak = 0, ent˜o f tem a uma singularidade em z0 , que se designa essencial se houver uma infinidade de k < 0 para os quais ak = 0, e que se designa p´lo no caso contr´rio. o a Teorema 7.8 (Liouville). As unicas fun¸oes inteiras limitadas s˜o as constantes. ´ c˜ a Podemos ainda enunciar um resultado util, que permite boas estimativas para a local´ iza¸˜o de ra´ ca ızes, e cuja verifica¸˜o das condi¸˜es ´ simples. ca co e Teorema 7.9 (Rouch´) Sejam f e φ fun¸oes anal´ticas num dom´nio D tais que e c˜ ı ı |f (x) − φ(x)| ≤ |φ(x)|, ∀x ∈ ∂D e φ n˜o se anula em ∂D. Ent˜o f e φ tˆm o mesmo n´mero de zeros em D. a a e u Exemplo: Consideramos D = B(0, 3 ), f (x) = x4 + x3 + 1, e φ(x) = x4 (que tem quatro 2 zeros em D e n˜o se anula na fronteira). Como a |f (x) − φ(x)| = |x3 + 1| ≤ |x|3 + 1, quando |x| = 3 2 1 2πi |z−z0 |=r f (z) dz, (z − z0 )k+1 obtemos 27 8 +1≤ 81 , 16 e conclu´ ımos que h´ 4 zeros de f em D. a 218 7.2 Equa¸oes `s Diferen¸as c˜ a c Entendemos por equa¸˜o `s diferen¸as de ordem p + 1, uma equa¸˜o cuja inc´gnita ´ uma ca a c ca o e sucess˜o (xn ) : a xn+p+1 + ap xn+p + . . . + a0 xn = bn , (n ∈ N0 ) (7.1) e em que, no caso mais simples, os coeficientes a0 , . . . , ak s˜o constantes reais3 . Este caso a — o de equa¸˜es lineares com coeficientes constantes — ser´ o unico caso que iremos tratar co a ´ aqui. a Diremos que a equa¸˜o `s diferen¸as (7.1) ´ homog´nea se bn ≡ 0. Os valores da sucess˜o ca a c e e ficam determinados de forma unica a partir de valores iniciais atribu´ ´ ıdos a x0 , ..., xp atrav´s e da recorrˆncia e xn+p+1 = bn − ap xn+p − . . . − a0 xn , ou seja, baseando-nos nesta construtividade ´ imediata a prova de existˆncia e unicidade e e de solu¸˜o de uma equa¸˜o `s diferen¸as (7.1). ca ca a c Proposi¸˜o 7.1 Dados os valores iniciais x0 , ..., xp existe uma e uma s´ sucess˜o que ´ ca o a e solu¸ao da equa¸ao as diferen¸as (7.1). c˜ c˜ ` c Exemplo 7.1 Como exemplo, podemos considerar a sucess˜o de Fibonacci, que ´ solu¸ao a e c˜ da equa¸ao as diferen¸as homog´nea c˜ ` c e xn+2 − xn+1 − xn = 0 (7.2) com condi¸oes iniciais x0 = 0, x1 = 1. Atrav´s de xn+2 = xn+1 + xn podemos determinar c˜ e recursivamente x2 = 1, x3 = 2, x4 = 3, x5 = 5, x6 = 8, x7 = 13, etc... Nesta mat´ria iremos encontrar uma semelhan¸a com a teoria das equa¸oes diferenciais ordin´rias, e c c˜ a que podemos perceber melhor se encararmos estas equa¸oes as diferen¸as como resultado final de uma c˜ ` c discretiza¸˜o. Assim, pensemos em discretizar uma equa¸ao diferencial ca c˜ x (t) + ax (t) + bx(t) = 0 num intervalo [a, b], usando N pontos igualmente espa¸ados tn = a + nh, com h = c Ao considerar uma aproxima¸˜o das derivadas na seguinte forma ca x (tn ) ∼ e x (tn ) ∼ obtemos x(tn + h) − x(tn ) xn+1 − xn = h h xn+1 − 2xn + xn−1 h2 b−a N . 3 xn+1 − 2xn + xn−1 xn+1 − xn +a + bxn = 0 h2 h ou seja, uma equa¸˜o `s diferen¸as... (neste caso trata-se de uma aproxima¸ao por diferen¸as finitas, que ca a c c˜ c ser´ apenas estudada em detalhe em An´lise Num´rica II). a a e 219 No entanto, estes valores tamb´m podem ser obtidos usando a f´rmula e o √ √ 1 1+ 5 n 1− 5 n xn = √ ( ) −( ) . 2 2 5 (7.3) A quest˜o que se coloca ´ a de saber como ´ poss´ obter, a partir de uma equa¸˜o a e e ıvel ca suficiente geral como (7.1), uma solu¸˜o simplificada tal como apresent´mos (7.3) para a ca a equa¸˜o (7.2), mas com quaisquer condi¸˜es iniciais. ca co N˜o especificando as condi¸˜es iniciais, come¸amos por observar que qualquer solu¸˜o a co c ca da equa¸˜o (7.1) ´ dada atrav´s da soma de uma solu¸˜o particular com uma solu¸˜o da ca e e ca ca equa¸˜o homog´nea. ca e Proposi¸˜o 7.2 Seja (xn ) uma solu¸ao da equa¸ao (7.1) para certas condi¸oes iniciais. ca c˜ c˜ c˜ Qualquer solu¸ao (yn ) de (7.1) para outras condi¸oes iniciais resulta da soma de (xn ) com c˜ c˜ uma certa solu¸ao da equa¸ao homog´nea associada. c˜ c˜ e Demonstra¸˜o: Segundo as hip´teses consideradas, temos ca o xn+p+1 + ap xn+p + . . . + a0 xn = bn e yn+p+1 + ap yn+p + . . . + a0 yn = bn , ´ o para n ≥ 0. E ´bvio que se subtrairmos as duas equa¸˜es obtemos co (yn+p+1 − xn+p+1 ) + ap (yn+p − xn+p ) + . . . + a0 (yn − xn ) = 0 ca e ca e portanto (yn) resulta da soma da solu¸˜o particular (xn ) com (yn − xn ) que ´ solu¸˜o da equa¸˜o homog´nea associada a (7.1). ca e Proposi¸˜o 7.3 As solu¸oes de uma equa¸ao as diferen¸as homog´nea de ordem p + 1 ca c˜ c˜ ` c e formam um subespa¸o vectorial do espa¸o das sucess˜es cuja dimens˜o ´ p + 1. c c o a e Demonstra¸˜o: Basta reparar que se (xn ) e (yn ) s˜o solu¸˜es da equa¸˜o `s diferen¸as ca a co ca a c homog´nea, ou seja, e xn+p+1 + ap xn+p + . . . + a0 xn = 0, yn+p+1 + ap yn+p + . . . + a0 yn = 0, ent˜o para quaisquer α, β ∈ R a sucess˜o (αxn +βyn ) tamb´m ´ solu¸˜o. Fica assim provado a a e e ca que se trata de um subespa¸o vectorial S. O facto de ter dimens˜o p+1 resulta de haver p+1 c a graus de liberdade que s˜o determinados pelos p + 1 valores iniciais x0 , ..., xp . Com efeito, a como as solu¸˜es s˜o determinadas de forma unica a partir desses valores iniciais, resulta co a ´ p+1 que a cada vector (x0 , ..., xp ) ∈ R corresponde uma e uma s´ solu¸˜o, estabelecendo-se o ca uma transforma¸˜o bijectiva entre Rp+1 e o subespa¸o vectorial das solu¸˜es definido por ca c co T : Rp+1 −→ S (x0 , ..., xp ) −→ (xn ) que ´ um isomorfismo, porque T tamb´m ´ linear (exerc´ e e e ıcio). 220 7.2.1 Solu¸oes de uma Equa¸˜o `s Diferen¸as Homog´nea c˜ ca a c e Comecemos por ver o caso trivial em que temos uma equa¸˜o `s diferen¸as homog´nea de ca a c e ordem 1: xn+1 + axn = 0 a sua solu¸˜o ´ obviamente ca e xn = x0 (−a)n . Se considerarmos agora a equa¸˜o `s diferen¸as homog´nea de ordem 2: ca a c e xn+2 + a1 xn+1 + a0 xn = 0 em que substitu´ ımos a vari´vel, i.e: a sucess˜o (xn ), por uma sucess˜o particular a a a xn = z n em que z ´ um qualquer n´mero complexo, obtemos e u z n (z 2 + a1 z + a0 ) = 0. Temos solu¸˜es n˜o triviais para a equa¸˜o homog´nea se resolvermos a equa¸˜o do segundo co a ca e ca grau: z 2 + a1 z + a0 = 0, que sabemos ter duas ra´ complexas, que designaremos por z1 e z2 . Assim, se z1 = z2 , as ızes n n solu¸˜es da equa¸˜o homog´nea (7.4) ser˜o as sucess˜es da forma z1 e z2 , ou combina¸˜es co ca e a o co lineares delas: n n xn = c1 z1 + c2 z2 . Se a multiplicidade da raiz for dupla, ou seja, z1 = z2 = z, ent˜o para al´m da sucess˜o a e a n z , necessitamos de uma outra sucess˜o podemos encontrar uma outra solu¸˜o xn = nz n a ca (o que n˜o ´ dif´ de verificar, pois nesses casos z = −a1 /2), e assim a solu¸˜o geral vir´ a e ıcil ca a xn = c1 z n + c2 nz n . De uma forma geral temos o seguinte resultado. Teorema 7.10 As solu¸oes da equa¸ao as diferen¸as homog´nea de ordem p + 1 : c˜ c˜ ` c e xn+p+1 + ap xn+p + . . . + a0 xn = 0 s˜o obtidas resolvendo a equa¸ao caracter´stica a c˜ ı z p+1 + ap z p + . . . + a1 z + a0 = 0. Se as p + 1 ra´zes z0 , z1 , . . . , zp desta equa¸ao polinomial forem distintas, uma solu¸ao geral ı c˜ c˜ (xn ) ´ dada pelas combina¸oes lineares das solu¸oes (zi )n e c˜ c˜ xn = c0 (z0 )n + c1 (z1 )n + . . . + cp (zp )n . Caso haja ra´zes m´ltiplas, se, por exemplo, zj for uma raiz de multiplicidade m, ent˜o ı u a n devemos considerar combina¸oes lineares n˜o apenas dos (zi ) , em que i = j, mas tamb´m c˜ a e de n n n zj , nzj , . . . , nm zj . 221 (7.4) Exemplo 7.2 Consideremos a sucess˜o definida por x0 = 0, x1 = 0, x2 = 1,e recursivaa mente por xn+3 + xn+2 − xn+1 − xn = 0. O objectivo ´ determinar uma express˜o expl´cita que nos dˆ, por exemplo, o termo x378 e a ı e sem ter que calcular recursivamente os 375 termos anteriores!! A equa¸ao caracter´stica c˜ ı associada a equa¸ao as diferen¸as ´ ` c˜ ` c e z3 + z2 − z − 1 = 0 que tem como ra´zes 1 (raiz simples) e −1 (raiz dupla), portanto a solu¸ao geral ser´ ı c˜ a xn = c0 + c1 (−1)n + c2 n(−1)n . Tendo considerado como valores iniciais, x0 = 0, x1 = 0, x2 = 1, podemos obter um sistema que d´ a solu¸ao particular neste caso a c˜   c0 + c1 = x0 = 0  c0 + c1 = 0  c0 − c1 − c2 = x1 = 0 c − c1 = 1/2  0  c0 + c1 + 2c2 = x2 = 1 c2 = 1/2 1 xn = (1 − (−1)n + 2n(−1)n ). 4 Agora ´ f´cil estabelecer que x378 = (1 − 1 + 2 · 378)/4 = 189. e a ou seja, c0 = 1/4, c1 = −1/4, c2 = 1/2, e portanto 7.2.2 Equa¸oes `s diferen¸as n˜o homog´neas c˜ a c a e Consideremos agora o caso em que bn = 0. J´ vimos que basta encontrar uma solu¸˜o para ca ticular de (7.1) e a solu¸˜o geral da equa¸˜o homog´nea associada, para obtermos qualquer ca ca e solu¸˜o de (7.1) que ser´ a soma das duas. ca a Para encontrar uma solu¸˜o particular de (7.1), podemos recorrer a dois processos, ca o primeiro intuitivo, e que consiste em tentar descobrir uma poss´ solu¸˜o atrav´s do ıvel ca e ca aspecto do segundo membro, ou seja de bn . Assim, por exemplo, se tivermos uma equa¸˜o do tipo xn+2 + axn+1 + bxn = A + Bn, procuramos solu¸˜es na forma xn = α + βn, e obtemos co α(1 + a + b) + β(2 + a) + β(1 + a + b)n = A + Bn 1+a+b 2+a 0 1+a+b que s´ n˜o possui solu¸˜o se a + b = −1. o a ca 222 α β A B = . (7.5) Exemplo 7.3 1) Num caso concreto, xn+2 − xn+1 + xn = 2n + 2, e c˜ facilmente podemos obter que xn = 2n ´ uma solu¸ao particular, e portanto, a partir da solu¸ao da equa¸ao homog´nea, a solu¸ao geral fica c˜ c˜ e c˜ √ √ 1−i 3 n 1+i 3 n xn = 2n + c1 ( ) + c2 ( ) . 2 2 i i Se exigirmos ainda x0 = 0, x1 = 1, vamos obter c1 = √3 , c2 = − √3 . Apesar de estarem envolvidos valores complexos, o resultado final ser´ sempre um n´mero inteiro! a u 2) Outros exemplos levam a outras escolhas, por exemplo, num outro caso: escolhemos solu¸oes do tipo xn = α2n e obtemos c˜ xn+2 − xn+1 + xn = 2n , (22 α − 2α + α)2n = 2n , o que nos d´ α = 1/3, e portanto a solu¸ao geral ser´ a c˜ a √ √ 1 n 1−i 3 n 1+i 3 n xn = (2 ) + c1 ( ) + c2 ( ) . 3 2 2 No entanto, este m´todo baseia-se numa certa intui¸˜o ` qual n˜o podemos recorrer e ca a a em casos mais complicados. Temos por´m um m´todo que ´ similar ao que ´ usado em e e e e equa¸˜es diferenciais ordin´rias — o m´todo da varia¸˜o de constantes. co a e ca 7.2.3 M´todo da varia¸˜o de constantes e ca Dado que a equa¸˜o homog´nea de ordem p tem p solu¸˜es distintas (linearmente indepenca e co dentes), associadas `s raizes, chamemos a essas solu¸˜es a co x(1) , . . . , x(p) que se tratam de sucess˜es. O facto de serem linearmente independentes est´ directamente o a relacionado com o facto da sucess˜o dos determinantes a   (1) (2) (p) xn xn ··· xn (2) (p)  x(1) xn−1 · · · xn−1   n−1  wn = det   . . . ... . . .   . . . (1) (2) (p) xn−p+1 xn−p+1 · · · xn−p+1 nunca ser nula. A esta sucess˜o de determinantes chamamos Wronskiano (em analogia ao a caso das equa¸˜es diferenciais ordin´rias). O Wronskiano permite construir uma solu¸˜o co a ca particular para uma sucess˜o (bn ) qualquer (e.g. [15]) a   (1) (2) (p) xn xn ··· xn (2) (p) n  x(1) xi−1 · · · xi−1  bi  i−1  xn = det   . . . ... . . . wi   . . . i=0 xi−p+1 xi−p+1 · · · 223 (1) (2) xi−p+1 (p) (...estamos a supor aqui que as condi¸˜es iniciais s˜o dadas em x−p+1 , ..., x0 , para que o co a somat´rio comece em 0, sen˜o deveriamos come¸ar o somat´rio em p − 1). o a c o Exemplo 7.4 Consideremos a equa¸ao n˜o homog´nea c˜ a e xn − 2xn−1 + xn−2 = 1. Neste caso, ser´amos tentados a escolher xn = a+bn para descobrir uma solu¸ao particular, ı c˜ mas isso d´-nos a situa¸ao a + b = −2 + 1 = −1 em que o sistema (7.5) n˜o tem solu¸ao. a c˜ a c˜ Atrav´s do m´todo de varia¸ao de constantes podemos obter uma solu¸ao. Come¸ando por e e c˜ c˜ c reparar que a equa¸ao homog´nea tem como solu¸oes independentes c˜ e c˜ x(1) = 1, e x(2) = n, n n pois a equa¸ao caracteristica tem 1 como raiz dupla, obtemos como Wronskiano c˜ wn = det 1 n 1 n−1 n = −1. Assim, pelo m´todo de varia¸ao de constantes temos e c˜ n xn = i=0 1 det −1 1 n 1 i−1 =− i=0 (i − 1 − n) = (n + 1)(n + 2) 2 e a solu¸ao geral ser´ ent˜o dada por c˜ a a xn = (n + 1)(n + 2) + C1 + C2 n. 2 Se x0 = 0, x1 = 0, as constantes seriam C1 = −1, C2 = −2. 7.2.4 Exerc´ ıcios 1. Considere a sucess˜o definida por xn+2 = 9 xn+1 − 2xn em que x0 = 2 e x1 = 1. Mostre a 2 que xn converge para zero. 2. O processo de constru¸˜o de uma estrutura com 10 colunas obedece ` seguinte regra: ca a — A altura ak de uma coluna k deve ser igual ` seguinte m´dia ponderada de alturas de a e colunas mais pr´ximas ak = 1 (ak−1 − ak+1 ) + ak−2 . o 2 Tendo j´ sido constru´ a ıdas as duas primeiras colunas, com alturas a1 = 4, a2 = 8, bem como a ultima, com a10 = 180, determine qual a altura da coluna a5 . ´ 3. Considere a sucess˜o x0 = 1, x1 = 4 , com xn+1 = 8104 xn − 400xn−1 . Introduzindo o a 9 9 valor de x1 numericamente, ao fim de algumas itera¸˜es obtemos resultados para a sucess˜o co a 4 n que nada tˆm a ver com a solu¸˜o xn = ( 9 ) . Comente e justifique os resultados quanto ` e ca a estabilidade num´rica. e 224 7.3 Teoria de Erros em Espa¸os Normados c Come¸amos por generalizar os conceitos elementares de erros para espa¸os normados. c c 7.3.1 Erro, Absoluto e Relativo A generaliza¸˜o natural das no¸˜es de erro, ´ feita atrav´s da norma. ca co e e Defini¸˜o 7.3 . Seja E um espa¸o normado com norma ||.|| e x ∈ E um valor aproximado ca c ˜ de x ∈ E. Definimos: • Erro : ex = x − x ˜ • Erro Absoluto : ||ex|| = ||x − x|| ˜ • Erro Relativo : Se x = 0, definimos δx = x−˜ x , ||x|| ||x−˜|| x . ||x|| e portanto ||δx || = ´ E preciso ter em mente que mesmo em RN podemos ter medi¸˜es de erro diferentes, co √ consoante a norma utilizada. Assim se o valor exacto for (π, 2, 1) e tivermos obtido como valor aproximado (3.14, 1.4, 1.01), o erro absoluto com a norma ||.||∞ ´ igual a e √ ||e||∞ = max{|π − 3.14|, | 2 − 1.5|, |1 − 1.001|} = 0.0857864... enquanto se considerarmos a norma ||.||1 j´ obtemos um valor diferente, a √ ||e||1 = |π − 3.14| + | 2 − 1.5| + |1 − 1.001| = 0.0883791... e o mesmo se passa com os erros relativos. 7.3.2 Propaga¸˜o de Erros ca Se tivermos um ponto x que aproxima x, ao calcularmos a imagem por um operador Fr´chet ˜ e diferenci´vel A num conjunto X que cont´m os pontos x, x, vamos obter um valor aproxa e ˜ imado A˜ que ser´ diferente do valor Ax. Para controlarmos o erro que se propaga ao x a aplicarmos esta fun¸˜o, usamos a pr´pria defini¸˜o, ca o ca eAx = Ax − A˜ = Ax ex + o(ex ) x quando ||ex || tende para zero. Desta forma, desprezando o termo o(ex ), podemos definir eA x = Ax ex ˜ e para o erro relativo, quando Ax = 0, obtemos ˜ ||δA x|| = ||˜A x|| e ||Ax ex || ||x|| ||Ax || = ≤ ||δx || ||Ax|| ||Ax|| ||Ax|| 225 Observa¸˜o: Se A for um operador linear cont´ ca ınuo, bijectivo, com inversa cont´ ınua, ent˜o a −1 reencontramos o n´ mero de condi¸˜o ||A || ||A||, u ca ˜ ||δA x|| ≤ ||A−1 || ||A|| ||δx||, porque, como j´ referimos a derivada de Fr´chet de um operador linear ´ o pr´prio operador, a e e o e por outro lado, ||A−1 || = sup y=0 ||A−1 y|| ||A−1 Ax|| ||x|| = sup = sup . ||y|| ||Ax|| Ax=0 Ax=0 ||Ax|| Exemplo 7.5 Como exemplo, podemos tentar avaliar o comportamento de um integral b f (x)dx atrav´s da varia¸ao da fun¸ao f. Definimos e c˜ c˜ a b Af = a f (x)dx, notando que A : C([a, b]) → R. Como o integral ´ linear j´ vimos que Af = A, e como e a ||A||∞ = sup f =0 |Af| |Af | ≤ sup = |b − a|, ||f ||∞ f =0 ||f ||∞ ||f||∞|b − a| ||δf ||∞ . |Af | temos ˜ |δA f | ≤ 2·2 ˜ Assim, se f(x) = x2 + 1, e [a, b] = [−1, 1], temos |δA | ≤ 8/3 ||δf ||∞ = 3 ||δf ||∞ . Assim se 2 aproximarmos f(x) por 3 nesse intervalo, estimamos que o erro relativo do integral n˜o a 2 ||x2 +1−3/2||∞ 1/2 |8/3−3| 3 1 1 ser´ maior que 8 , porque ||δf ||∞ = ||x2 +1||∞ ≤ 2 = 4 . Com efeito, |δA | = 8/3 = 8 . a • Propaga¸ao de erros em espa¸os de dimens˜o finita c˜ c a Na pr´tica ´ este o caso que nos interessa, j´ que num algoritmo acabaremos sempre a e a por trabalhar em espa¸os de dimens˜o finita. c a e a Se pensarmos em RN , a derivada de Fr´chet pode ser identificada ` matriz Jacobiana, N M e portanto para uma qualquer fun¸˜o f : R → R , temos ca ef (x) = ˜ f (x)ex , o que ´ coerente com os resultados obtidos para opera¸˜es, que podem ser vistas como e co fun¸˜es φ : R2 → R. Nesse caso a matriz Jacobiana n˜o ´ mais que um vector com duas co a e componentes, normalmente designado por gradiente, ou seja f (x) = [ ∂φ ∂φ ] e temos ∂x ∂y eφ (x) = [ ˜ ∂φ ∂φ ] ∂x ∂y ex ey = ∂φ ∂φ (x, y)ex + (x, y)ey . ∂x ∂y 226 Para o erro relativo podemos estabelecer resultados semelhantes, ˜ δfi (x) = fi (x)ex , fi (x) a relembrando que ex = (x1 δx1 , ..., xN δxN ), o que no caso de φ : R2 → R d´ ∂φ y ∂φ (x, y) ˜φ (x, y) = x ∂x (x, y) δx + ∂y δ δy φ(x, y) φ(x, y) Outra possibilidade ´ estabelecer uma desigualdade em termos de normas, e ˜ ||δf (x)|| = ||˜f (x)|| e || f (x)ex|| || f (x)|| ||x|| = ≤ ||δx||. ||f(x)|| ||f (x)|| ||f (x)|| Exemplo 7.6 Assim, quando tivermos uma rotina que dependa de v´rias vari´veis que a a podem estar afectadas de erro, por exemplo, ao calcularmos uma rotina4 AproxInteg[Exp[-c x^2],{x,a,b}] os valores de a, b, c podem vir afectados de um erro que pode condicionar o resultado. Encarando esta rotina como uma fun¸ao regular φ : R3 → R, bastar´ obter valores para c˜ a ∂φ , ∂φ , ∂φ , para que possamos ter uma ideia dos erros relativos envolvidos. Mas como ∂a ∂b ∂c ´ claro, o c´lculo destas derivadas parciais para al´m de nem sempre ser f´cil, implicaria e a e a um conhecimento exacto da rotina AproxInteg(... neste caso concreto isso at´ seria f´cil, e a porque a rotina em causa reflecte o c´lculo aproximado de um integral param´trico, cuja a e deriva¸ao seria elementar). c˜ Para contornar na pr´tica este tipo de problemas, podemos ser levados a recorrer a solu¸oes a c˜ menos correctas do ponto de vista te´rico. Ou seja, podemos procurar uma aproxima¸ao o c˜ num´rica da derivada, em torno dos pontos a, b, c. e Num caso concreto, suponhamos que queremos ver qual o comportamento da rotina para valores de a ∼ −1, b ∼ 1, c ∼ 1. Calculando 1 (φ(−1 + , 1, 1) − φ(−1, 1, 1)), para aproximar ∂φ , usando = 0.001 obtemos ∂a ∂φ ∼ −0.368247, e de forma semelhante ∂φ ∼ 0.367512, ∂φ ∼ −0.378844. Por outro lado ∂a ∂b ∂c vemos que φ(−1, 1, 1) ∼ 1.49365. Assim, usando a norma do m´ximo ||Jφ (−1, 1, 1)||∞ ∼ a 0.378844, e obtemos 0.378844 ||e(−1,1,1) ||∞ . |δφ (−1, 1, 1)| ≤ 1.49365 Se calcularmos agora φ(−1.03, 1.01, 1.01), como ||e(−1,1,1) ||∞ = 0.03, n˜o devemos ter a um erro relativo superior a 0.00763. Com efeito, se calcularmos o valor, vemos que d´ a 1.50407, que corresponder´ a um erro relativo de 0.006976, dentro dos limites estimados. a Poder´ haver algumas diferen¸as, que depender˜o, entre outros factores, da proximidade dos a c a coeficientes aproximados face aos exactos, ou ainda da norma escolhida, mas os princ´pios ı gerais mantˆm-se presentes. e O nome AproxInteg ´ apenas ilustrativo, s´ nos interessa saber que a rotina ´ regular (F-diferenci´vel) e o e a para a abordagem num´rica, de ´ e ındole experimental, que expˆmos neste exemplo. Com efeito, a rotina o usada foi NIntegrate, que aproxima o valor de um integral num intervalo. 4 227 7.4 Operadores integrais e matrizes As matrizes s˜o os operadores lineares em dimens˜o finita e podem ser vistas, nalguns casos a a como discretiza¸˜es de operadores integrais lineares. Sem querer entrar em detalhes acerca co do assunto, que ´ suficientemente complicado para uma abordagem rigorosa, fora do ˆmbito e a introdut´rio do curso, iremos apresentar uma motiva¸˜o para estudos posteriores. o ca Uma possibilidade para definir uma matriz consiste em considerar uma fun¸˜o f : R2 → ca R vulgar, escolher alguns pontos x0 , ..., xN e colocar o resultado numa matriz. Obtemos assim uma matriz A, em que Aij = f (xi , xj ). Se no Mathematica fizermos literalmente ListPlot3D[A], o resultado ´ sobejamente cone hecido para quem j´ alguma vez procurou ver o gr´fico de uma fun¸˜o... mas talvez poucos a a ca ter˜o sido tentados a avaliar o determinante ou os valores pr´prios dessa matriz. Poder´ a o a parecer que n˜o faz muito sentido calcular o determinante, ou os valores pr´prios associados a o ` fun¸˜o... mas tem! Nas figuras que se seguem vamos ilustrar algumas situa¸˜es. Iremos a ca co b−a escolher um intervalo [a, b], definir os pontos xk = a + kh, com h = N , e apresentar figuras para as matrizes Aij = h f(xi , xj )... o facto de multiplicarmos por h ser´ justificado mais ` a a frente. Come¸amos com N = 4, com o intervalo [0, 4], considerando os cinco pontos xk dados c por 0, 1, 2, 3, 4, e a fun¸˜o ca f (x, y) = x2 − xy + 1 isso d´-nos a matriz a   A=    1 1 2 1 5 3 10 7 17 13  1 1 1 0 −1 −2   1 −1 −3   4 1 −2  9 5 1 e dificilmente podemos dizer imediatamente se se trata ou n˜o de uma matriz invert´ a ıvel. O gr´fico obtido pelo ListPlot3D ´ apresentado em baixo, ` esquerda. A segunda figura tem a e a a localiza¸˜o dos valores pr´prios. Neste caso h´ trˆs valores pr´prios nulos, e portanto a ca o a e o matriz n˜o ´ invert´ a e ıvel. Aumentamos N para 30... ´ claro que n˜o apresentamos a matriz, e a mas como ser´ de esperar, seria igualmente dificil avaliar se seria ou n˜o invert´ a a ıvel. Tal como para o valor de N anterior, colocamos o gr´fico da fun¸˜o e os valores pr´prios obtidos a ca o (terceira e quarta figura, em baixo).. 6 6 4 4 1 5 1 0 5 0 0 1 2 3 40 1 2 2 4 3 2 2 4 1 05 . 2 4 6 1 15 . 2 25 . 0 0 1 2 3 40 1 2 3 05 . 2 4 6 1 15 . 2 O gr´fico da fun¸˜o ´ semelhante, apenas o factor h fez diminuir a propor¸˜o, mas em a ca e ca nada influi na invertibilidade da matriz. Como podemos constatar, a matriz continuar´ a a n˜o ser invert´ (ter´ 28 valores pr´prios que d˜o zero!), e o aspecto da distribui¸˜o a ıvel a o a ca 228 dos valores pr´prios ´ semelhante! Se aumentarmos a dimens˜o de N iremos reparar que o e a acontecer´ a mesma coisa! Ser´ este um facto isolado, devido a alguma particularidade da a a fun¸˜o escolhida? ca Vamos considerar um outro exemplo, em que f (x, y) = 3 sin(xy) + x + y − 2. Notamos que a matriz associada ´ sim´trica, e portanto os valores pr´prios tˆm que ser reais. Ape e o e resentamos um gr´fico semelhante para N = 10 (figura em baixo, ` esquerda), e o gr´fico a a a com a localiza¸˜o do valores pr´prios, na figura seguinte. Nas restantes duas figuras, como ca o ´ claro que o gr´fico da fun¸˜o seria semelhante, colocamos apenas os valores pr´prios para e a ca o N = 50 e N = 200, respectivamente. 1 4 1-16 ´0 6 1-16 ´0 4 1-16 ´0 2 1-16 ´0 05 . 21 ´0 3 2 1 0 0 1 2 3 40 1 2 4 3 -16 -. 25 -. 05 25 . 5 75 . 1 0 1. 25 -. 25 -´ 1-16 20 -´ 1-16 40 25 . 5 75 . 1 0 -. 25 -´ 1 20 -16 25 . 5 75 . 1 0 -´ 1-16 40 -´ 1-16 60 1 H´ v´rias observa¸˜es a fazer. a a co (i) Os dois ultimos gr´ficos apresentam valores com parte imagin´ria, que s˜o ad´ a a a miss´ ıveis, j´ que a ordem de grandeza dos valores ´ totalmente insignificante, e resulta a e apenas de erros de arredondamento num´rico. Devemos consider´-los quase nulos. e a (ii) Verificamos uma convergˆncia para os mesmos valores. e ` excep¸˜o de seis valores pr´prios, todos os restantes s˜o quase nulos, independen(iii) A ca o a temente do valor N. Mais uma vez, este estranho fen´meno ocorre!... E, podemos considerar o que, na pr´tica, a matriz A n˜o ser´ invert´ a a a ıvel! (iv) Se procurarmos o vector pr´prio associado ao valor pr´prio mais elevado, ao coloo o carmos o vector em forma de gr´fico, obtemos a figura seguinte. a 01 .5 015 .2 01 . 005 .7 00 .5 005 .2 2 0 4 0 6 0 8 0 10 0 Suficientemente estranho? N˜o ser´, se procurarmos compreender o que estamos a cala a cular... ´ claro que, como n˜o iremos entrar em detalhes, apenas daremos uma justifica¸˜o e a ca ligeira. Multiplicando a matriz A por um vector v, obtemos o vector N [Av]i = k=0 hf (xk , xi )vk , e podemos encarar o valor das componentes como uma aproxima¸˜o em xi de ca b (Av)(y) = a f (x, y)v(x) dx, 229 j´ que a coloca¸˜o dos pontos permite pensar numa aproxima¸˜o do integral por somas de a ca ca Riemann, considerando pequenos intervalos de comprimento h, e notando que vk ser´ v(xk ). a Portanto, quando N ´ grande, estaremos a avaliar uma aproxima¸˜o do integral. Quanto e ca menos irregular for a fun¸˜o, melhor ser´ a aproxima¸˜o. Isto explica, parcialmente, o ca a ca ponto (ii). Repare-se que A ´ um operador linear. e Desde que a fun¸˜o f seja cont´ ca ınua, foi provado, no in´ ıcio do s´culo XX (devido a e Fredholm5 ), que esse operador integral ´ aquilo a que se designa por operador compacto, e e os seus valores pr´prios λ, para os quais Av = λv (com v n˜o nula), verificam uma o a propriedade curiosa que caracteriza este tipo de operadores. Ou h´ apenas um n´mero a u finito que n˜o ´ nulo ou, no caso de haver um n´mero infinito de valores n˜o nulos, formam a e u a um ponto de acumula¸˜o em zero. A situa¸˜o que retrat´mos nos exemplos apresentados ca ca a foi a primeira, e isto explica parcialmente (iii). A explica¸˜o de (iv) resulta de associar o ca vector pr´prio ` fun¸˜o pr´pria v, que verifica Av = λv, resultado da discretiza¸˜o. o a ca o ca Como curiosidade, examinamos mais alguns casos. O primeiro caso ´ o de uma matriz triangular superior, definida pela fun¸˜o descont´ e ca ınua f (x, y) = −1, se x > y, f (x, y) = 1, se x ≤ y, representada na primeira figura, em baixo. Nas duas figuras seguintes, mostramos os valores pr´prios obtidos para N = 20 e o N = 200. Neste caso, a convergˆncia ´ mais lenta, mas os valores pr´prios ir˜o ficar no eixo e e o a imagin´rio, formando um ponto de acumula¸˜o em zero. No gr´fico da direita podemos a ca a ver a parte real (a tracejado), e a parte imagin´ria (a cheio), do maior vector pr´prio (com a o parte imagin´ria positiva). Independentemente da escala, que ´ irrelevante num vector a e pr´prio (pois poder´ sempre ser multiplicado por qualquer valor), as fun¸˜es apresentadas o a co parecem-nos familiares. 3 2 02 . 01 . 0 -. 01 -. 02 0 1 2 3 40 1 3 00 .6 2 1 00 .4 00 .2 01 . 1 2 3 02 . 03 . 04 . -.2 00 -.4 00 -.6 00 2 5 5 0 7 10 15 10 15 5 0 2 5 7 1 4 3 01 . 1 02 . 03 . 04 . 2 2 3 Vejamos com maior aten¸˜o. No limite, em termos de integrais, teremos para uma ca fun¸˜o pr´pria v, ca o 4 y 4 Av = λv ⇔ 0 f (x, y)v(x)dx = λv(y) ⇔ 0 v(x)dx − v(x)dx = λv(y). y e se derivarmos obtemos 2v(y) = λv (y), ou seja, v(y) = Ce2y/λ (a constante ´ multiplicativa, e logo n˜o interfere num vector pr´prio). Para obtermos os valores de λ devemos voltar ` a o a igualdade anterior. Verificamos ent˜o que se λ = 0, a primitiva¸˜o de v d´ a ca a λ 2y/λ λ λ (e − 1) − (e8/λ − e2y/λ ) = λe2y/λ ⇔ (e8/λ + 1) = 0 2 2 2 A equa¸ao integral Av = g ´ denominada equa¸ao integral de Fredholm de primeira esp´cie, para c˜ e c˜ e contrastar com as equa¸˜es do tipo Av + v = g(y), denominadas de segunda esp´cie... o que acontece neste co e caso aos valores pr´prios? o 5 230 e portanto 8 λ = (2k + 1)πi, ou seja, os valores pr´prios ser˜o o a ± 8i 8i 8i , ± , .... , ± , .... π 3π (2n + 1)π 8 sucess˜o que tem zero como ponto de acumula¸˜o. Relativamente a λ = π , vemos que a a ca fun¸˜o pr´pria ser´ ca o a π π π v(x) = exp(x i) = cos(x ) + i sin(x ). 4 4 4 Neste caso reparamos que se trata da diferen¸a entre dois operadores do tipo c x (Av)(y) = a f (x, y)v(x) dx, que s˜o designados por operadores de Volterra, e correspondem no caso discreto a consida ´ erar matrizes triangulares. E sabido que operadores de Volterra s˜o tamb´m operadores a e compactos (com espectro nulo) e aqui evidencia-se que a diferen¸a entre eles ´ ainda um c e operador compacto (embora o espectro j´ n˜o seja nulo). a a At´ aqui n˜o apresent´mos nenhum operador integral que n˜o fosse compacto! Podemos e a a a entender isto, porque os elementos da matriz Aij = hf(xi , xj ) tendem para zero quando h → 0. Para que isso n˜o aconte¸a, uma possibilidade ´ considerar fun¸˜es que n˜o sejam a c e co a limitadas. Um caso de um operador integral n˜o compacto, ´ o operador de Abel, por a e exemplo, x v(x) (Av)(y) = dx. x2 − y 2 a Outro caso de operador n˜o compacto (nos complexos) ´ o operador de Cauchy, a e (Av)(z) = 1 πi γ onde mais uma vez ´ vis´ a singularidade. e ıvel Finalmente, apresentamos um outro tipo de operador n˜o compacto, em que f (x, y) = a −|x−y| e ´ uma fun¸˜o cont´ e ca ınua, mas em que o intervalo n˜o ´ limitado, trata-se do operador a e de Wiener-Hopf, (Av)(y) = 0 ∞ v(x) dx, x−z e−|x−y| v(x) dx. Terminamos, referindo que o caso mais curioso ´ o do operador identidade, que n˜o e a ´ compacto num espa¸o de dimens˜o infinita (o unico valor pr´prio ´ 1... mas ter´ uma e c a ´ o e a ‘multiplicidade infinita cont´ ınua’). Sob o ponto de vista dos operadores integrais pode ser encarado como um integral formal b (Iv)(y) = a δ(x − y)v(x) dx = v(y), em que a ‘fun¸˜o’ δ ´ designada delta de Dirac, e pode ser encarada intuitivamente como ca e uma fun¸˜o que vale infinito em zero e zero nos restantes pontos. Sob o ponto de vista ca das matrizes ser´ o equivalente a evitar que a matriz Aij = hδ(xi − xj ) tenda para zero a quando h → 0, exigindo que seja infinito quando xi = xj . Esta entidade, o delta de Dirac, ´ formalmente definida em contextos mais abstractos, na teoria da medida e na teoria das e distribui¸˜es. co 231 Cap´ ıtulo 8 Exerc´ ıcios resolvidos 8.1 8.1.1 Exerc´ ıcios de avalia¸oes anteriores c˜ 1a. Avalia¸˜o (97) ca 1. Considere o intervalo I = [a, b] ⊂ R, e as fun¸˜es g, h ∈ C 1 (I) tais que g ◦ h = h ◦ g. co Sabemos que g(I) ⊆ I, h(I) ⊆ I, e que |g (x)| ≤ L1 , |h (x)| ≤ L2 , ∀x ∈ I, com L1 L2 < 1. a) Se estabelecermos em I: x = g(x) ⇔ x = h(x) ⇔ f (x) = 0, mostre que existe uma unica raiz z ∈ I de f (x) = 0 e indique (justificando) trˆs fun¸˜es ´ e co iteradoras distintas que assegurem uma convergˆncia para essa raiz, qualquer que seja e x0 ∈ I. b) Supondo que a < 0 e b ≥ 0, mostre que o zero z da fun¸˜o f em I verifica: ca |z| ≤ min{|h(g(0))|, |g(h(0))|} 1 − L1 L2 c) Suponha agora que os pontos fixos de g e h em I s˜o diferentes. A equa¸˜o x = g(h(x)) a ca tem uma solu¸˜o unica em I? Justifique. ca ´ d) Mostre que as equa¸˜es: co 2x − cos( x= x2 0.5 1 ) = sin( 2 ) +1 x +1 4 (cos(x/2) + sin(x))2 + 4 tˆm uma unica solu¸˜o no intervalo [0, 1] e indique fun¸˜es iteradoras convergentes para a e ´ ca co solu¸˜o. ca Sugest˜o: Usar fun¸oes g e h apropriadas e aplicar o anterior. a c˜ 232 2. Considere uma fun¸˜o g cont´ ca ınua no intervalo [0, 1], diferenci´vel, que verifica: a 1 1 g(0) = , g (x) = x cos2 (g(x)) 2 2 Mostre que a fun¸˜o g tem um unico ponto fixo no intervalo [0, 1]. ca ´ 3. Considere a matriz  3 sin(a2 ) cos(b) A =  sin(a2 ) exp(b/π) + 2 sin(a + b)  5 cos(b) sin(a + b) 2  a) Mostre que a matriz A ´ definida positiva para quaisquer a, b ∈ R e que o m´todo de e e 3 Gauss-Seidel converge quando aplicado a um sistema do tipo Ax = v com v ∈ R . b) Localize intervalos para os valores pr´prios de A quando b = 0. o c) Mostre que a matriz tem um valor pr´prio dominante quando b > π log(5). Determine o esse valor pr´prio, quando a = 0, b = 7π. o 4. Seja E um espa¸o de Banach, e A um operador linear cont´ c ınuo em E, isto ´ A ∈ e L(E, E). a a) Mostre que se ||A||L(E,E) < λ, ent˜o o operador (λI − A)−1 existe e pertence a L(E, E). Para al´m disso, mostre que se verifica: e (λI − A) −1 = ∞ k=0 1 Ak , e que ||(λI − A)−1 ||L(E,E) ≤ k+1 λ λ − ||A||L(E,E) Sugest˜o: a Use a equivalˆncia (λI − A)X = I ⇔ X = (I + AX)/λ, e lembre que: e b) Considere a matriz definida no exerc´ ıcio 3 com b = 0, a ∈ R. Baseado na al´ ınea anterior, mostre que a matriz B = A − 6I ´ invert´ e que: e ıvel 5. Considere uma fun¸˜o f que toma os seguintes valores: ca x -2 -1 f(x) -10 -4 0 -2 1 2 1 5 ||B −1 ||1 ≤ 1 ||AB||L(E,E) ≤ ||A||L(E,E) ||B||L(E,E) b) Seja a = −2, b = 25/12, c = 5/12 a solu¸˜o do sistema da al´ ca ınea anterior. Determine uma aproxima¸˜o da raiz w do polin´mio g em [0, 1] calculando x2 pelo m´todo de Newton ca o e e com x0 = 1 (justifique a convergˆncia). c) Sabendo que |z − w| < 0.01, determine um majorante para o erro absoluto que cometemos se utilizarmos o valor x2 obtido em b) para aproximar z. 233 e que tem um unico zero z ∈ [0, 1]. Pretende-se aproximar esta fun¸˜o por uma fun¸˜o ´ ca ca 3 ınimos quadrados. do tipo g(x) = a + bx + cx , no sentido dos m´ a) Mostre que os valores a, b, c verificam:       5 0 0 a −10  0 10 34   b  =  35  0 34 130 c 125 8.1.2 2a. Avalia¸˜o (97) ca 1. Considere a seguinte f´rmula (deduzida atrav´s da resolu¸˜o de uma equa¸˜o `s diferen¸as) o e ca ca a c utilizada para calcular o valor de uma presta¸˜o p de um empr´stimo D a uma taxa T % ca e ao longo de N presta¸˜es: co p = tD 1 + 1 (1 + t)N − 1 (8.1) com t = T /1200. a) Aproximamos a f´rmula anterior, considerando (1 + t)N ∼ ex com x = N t e obtemos o p=x ˜ D ex . N ex − 1 (8.2) Mostre que se N p = 1.62D, existe um e um s´ x ∈ [1, 2] que verifica a equa¸˜o (8.2). ˜ o ca b) Considerando D = 10000, N = 180, p = 90, determine aproximadamente o valor de t > 0 que verifica a equa¸˜o (8.1), usando como crit´rio de paragem |tn+1 − tn | < ca e 0.001. Conclua, indicando o valor da taxa T . (Escolha um m´todo e uma iterada inicial e conveniente) (Isto corresponde a calcular a taxa a negociar para um empr´stimo de 10 mil e contos com uma presta¸ao mensal de 90 contos durante 15 anos.) c˜ 2. Considere f (x) = 0 ⇔ x = g(x) uma equa¸˜o em R que tem pelo menos duas ra´ ca ızes z1 e z2 consecutivas (ou seja, n˜o existe nenhuma outra raiz entre elas). a a) Mostre que se g ∈ C 1 (R) e |g (z1 )| < 1 ent˜o g (z2 ) ≥ 1. a b) Suponha que z2 ∈ I = [a, b], que |g (x)| > 1, ∀x ∈ I e que I ⊆ g(I). Mostre que o m´todo xn+1 = g −1 (xn ) converge para z2 qualquer que seja x0 ∈ I. e c) Seja f ∈ C p (R), tal que a raiz z2 tem multiplicidade p ≥ 1, e seja g tal que g (z2 ) > 1. Indique uma fun¸˜o iteradora que assegure uma convergˆncia local linear para z2 , e uma ca e outra que assegure convergˆncia quadr´tica, para cada caso de p. e a 3. Considere a matriz  10 3 − 2 cos(b) cos(b) 25 5 sin(a)  A= 1 1 5 sin(a) + sin(b) 50 a) Localize os valores pr´prios de A usando o teorema de Gershgorin. o b) Indique os valores de b para os quais podemos obter uma decomposi¸˜o A = LLT , ca em que L ´ uma matriz triangular inferior real. e c) Para que valores de h ∈ R3 ´ poss´ e ıvel utilizar o m´todo de Jacobi para resolver e um sistema Ax = h? Indique uma estimativa de erro para ||e(n) ||∞ em fun¸˜o de ||h||∞, ca sabendo que x(0) = 0. d) Seja A uma matriz real N × N, que verifica: |aii − ajj | > ri + rj , ∀i, j = 1, ..., N (i = j) 234  em que N rk = −|akk | + j=1 |akj | Mostre que os valores pr´prios da matriz s˜o reais. o a 4. Considere o operador A em E = C[0, a], com a < 1/2 definido por: x (Af )(x) = 0 (f (t))2 dt e sabemos que a sua derivada de Fr´chet ´: e e x (Af )h(x) = 2 Pretende-se resolver a equa¸˜o em E: ca x h(t)f (t)dt 0 f (x) = 0 (f(t))2 dt − φ(x) (8.3) em que φ ´ conhecido e verifica ||φ||∞ ≤ a. e a) Mostre que existe uma e uma s´ solu¸˜o de (8.3) em X = {f ∈ C[0, a] : ||f||∞ ≤ 1} o ca e indique uma sucess˜o que converge para a solu¸˜o. a ca b) Mostre que a solu¸˜o de (8.3) verifica ca ||f ||∞ ≤ a 1 − 2a 5. Pretende-se aproximar a fun¸˜o f(x) no intervalo [−1, 1] atrav´s de fun¸˜es do tipo ca e co g(x) = α + βf (x), no sentido dos m´ ınimos quadrados. Mostre que os valores α e β ficam perfeitamente determinados pelos quatro valores 1 −1 1 |f (x)|2 dx, f (x)dx, f (1), f (0), −1 e comente os resultados quando a fun¸˜o f ´ par ou impar. ca e 8.1.3 Teste (98) 1. Suponha que temos g([1, 2]) ⊂ [1, 2] e |g (x)| ≤ 1 em [1, 2]. 4 Pretende-se calcular y = g 20 (a) = g ◦ ... ◦ g(a), mas o valor de a ∈]1.1, 1.9[ ´ dado com e −3 um erro relativo |δa | ∼ 10 . Apresente, justificando com c´lculos, uma estimativa para o a erro relativo de y. Comente os resultados relativamente ao condicionamento. 2.a) Seja f ∈ C 1 (R), tal que f (0) = 0 e |f (x)| ≤ 1, ∀x ∈ R. Mostre que para x ≥ 0 temos x 2f (x) − cos(f ( )) ≤ 3x − 1. 2 235 Sugest˜o: Usar o teorema do ponto fixo em R. a b) Considere a equa¸˜o ca x |2 sin(x) − cos(sin( )) − 3x + 1| + 2 sin(x) = 4x − 2. 2 Mostre que h´ apenas uma raiz positiva e determine uma aproxima¸˜o tal que o erro a ca absoluto seja inferior a 10−2 . 3. Considere a sucess˜o definida por a 9 xn+2 = xn+1 − 2xn 2 em que x0 = 2 e x1 = 1. Mostre que xn converge para zero. 4.a) Seja E um espa¸o de Banach e X um conjunto n˜o vazio, fechado. Mostre que um c a operador cont´ ınuo A : E → E que verifica X ⊆ A(X) (pode assumir que A(X) ´ fechado) e e ||Ax − Ay|| ≥ L||x − y||, ∀x, y ∈ X para um certo L > 1, tem um e um s´ ponto fixo z ∈ X, e que o m´todo xn = Axn+1 o e converge para esse ponto fixo, qualquer que seja x0 ∈ X. b) Seja A uma contrac¸˜o num aberto n˜o vazio X, onde se sabe que existe um ponto ca a fixo z de A. Mostre que existe um subconjunto de X onde s˜o verificadas as condi¸˜es do Teorema a co do Ponto Fixo de Banach, e conclua que pode assegurar convergˆncia local do m´todo do e e ponto fixo. 8.1.4 1a. Avalia¸˜o (98) ca | sin(x) + 3x| + sin(x) − 1 = 0. 1. Considere a equa¸˜o em R: ca a) Mostre que a equa¸˜o tem duas ra´ ca ızes, uma positiva e uma negativa. b) Determine uma aproxima¸˜o da raiz positiva pelo m´todo de Newton, mostrando ca e a convergˆncia num intervalo apropriado, de forma a garantir um erro relativo inferior a e 10−3 . c) Ao calcular a sucess˜o definida por x0 = 0, xn+1 = 1 − 2 sin(xn ), aproximou-se o a 3 3 c´lculo do seno por sin(x) ∼ x − 1 x3 . Considerando que essa aproxima¸˜o implica um erro a ca 6 |x|5 absoluto inferior a 120 , determine um majorante do erro |x − yn | em que x ´ o limite de e (xn ), e em que yn ´ dado por e y0 = 0, yn+1 = 1 2 1 3 − yn + yn .. 3 3 9 d) Localize as ra´ de 0 = 1 − 5 y + 1 y 3 , come¸ando por indicar a coroa circular que as ızes c 3 3 9 cont´m. Aplique o m´todo de Bernoulli efectuando 5 itera¸˜es, justificando a convergˆncia.. e e co e 236 √ 2. Sabemos que podemos aproximar a, para qualquer a ∈ N, usando o m´todo do e x2 +a ponto fixo com x0 = 1 e com a fun¸˜o iteradora g(x) = 2x , que se trata de uma fun¸˜o ca ca racional (quociente de dois polin´mios de coeficientes inteiros), g : Q → Q. Da mesma o forma, ´ poss´ encontrar uma fun¸˜o iteradora racional, tal que o m´todo do ponto fixo e ıvel ca e convirja para o n´mero π? Em caso afirmativo apresente-a, em caso negativo justifique! u 3. O processo de constru¸˜o de uma estrutura com 10 colunas obedece ` seguinte regra: ca a — A altura ak de uma coluna k deve ser igual ` seguinte m´dia ponderada de alturas de a e colunas mais pr´ximas: o 1 ak = (ak−1 − ak+1 ) + ak−2 . 2 Tendo j´ sido constru´ a ıdas as duas primeiras colunas, com alturas a1 = 4, a2 = 8, bem como a ultima, com a10 = 180, determine qual a altura da coluna a5 . ´ 4. Considere X, Y dois espa¸os de Banach, e sejam A : X → Y, B : Y → X dois c operadores que verificam ||Ax1 −Ax2 ||Y ≤ KA ||x1 −x2 ||X , ∀x1 , x2 ∈ X ; ||By1 −By2 ||X ≤ KB ||y1 −y2 ||Y , ∀y1 , y2 ∈ Y Dˆ condi¸˜es em KA e KB para que o m´todo do ponto fixo xn+1 = BAxn convirja, e co e qualquer que seja x0 ∈ X. Encontre um exemplo para X, Y = Rd , em que KA > 1, e em que xn+1 = BAxn converge, ∀x0 ∈ X. 5. Considere a matriz (a ∈ [0, π ]) 2   9 + sin(a) 3 1 1 + cos(a) 0  A =  cos(a) 0 1 −2 a) Determine uma localiza¸˜o dos valores pr´prios usando o T. Gerschgorin. A matriz ca o ´ sempre invert´ e ıvel? Justifique. b) Seja a = 0. Aproxime o valor pr´prio dominante usando duas itera¸˜es do m´todo o co e das potˆncias. e c) Considere o seguinte m´todo, baseado na aplica¸˜o do teorema de Cayley-Hamilton, e ca para encontrar o polin´mio caracter´ o ıstico de uma matriz A de dimens˜o d : a k • Calcular A , para k = 2, ..., d • Determinar os coeficientes αi tais que α0 I + α1 A + ... + αd−1 Ad−1 + Ad = 0. Indique uma estimativa do n´ mero de opera¸˜es ( *, / ) necess´rio a esse c´lculo. u co a a Use este m´todo para determinar a equa¸˜o caracter´ e ca ıstica de A com a = 0. 6. Considere o m´todo SOR (Gauss-Seidel generalizado) em que e Cω = (D + ωL)−1 [(1 − ω)D − ωU]. 237 Mostre que ´ necess´rio que ω ∈]0, 2[ para que haja convergˆncia do m´todo, qualquer e a e e que seja a iterada inicial. Sugest˜o: Mostrar que ρ(Cω ) ≥ |ω − 1|. a 7. Pretende-se encontrar qual de trˆs figuras melhor aproxima cada uma de outras e co duas, no sentido dos m´ ınimos quadrados. Consideramos φ1 , φ2 , φ3 fun¸˜es base e f1 , f2 as fun¸˜es a aproximar no sentido dos m´ co ınimos quadrados. Temos a tabela com os respectivos valores: i= φ1 φ2 φ3 f1 f2 1 2 0 1 0 0 0 1 6 20 6 20 3 1 1 0 13 13 4 5 6 1 1 0 1 1 1 1 1 0 17 13 17 6 13 17 Determine qual das fun¸˜es base tem maior componente na aproxima¸˜o de fi e associe co ca essa componente ` figura pretendida. a Use a decomposi¸˜o de Cholesky para resolver o sistema normal. ca 8.1.5 2a. Avalia¸˜o (98) ca 2 1. Mostre que existe um unico ponto fixo da gaussiana g(x) = e−(x−25) /2 e determine uma ´ sua aproxima¸˜o com um erro absoluto inferior a 10−50 . Indique tamb´m o erro relativo. ca e Sugest˜o: Para a estimativa de erro use o teorema do valor m´dio. a e 2. Considere a equa¸˜o em R ca  a)[1.5] Aplicando o Teorema de Gerschgorin, mostre que existem e s˜o apenas trˆs, as a e ra´ reais de (8.4) e que se tem ızes √ √ √ √ 3 3 3 3 z1 ∈ [ 9, 11], z2 ∈ [− 7, − 5], z3 ∈ [−1, 1]. ca e b)[1.5] Determine uma aproxima¸˜o da maior raiz positiva de (8.4) pelo m´todo da secante mostrando a convergˆncia para as iteradas iniciais escolhidas, de forma a garantir e um erro relativo inferior a 10−2 . c)[1.5] Decomponha a matriz   16 −2 −1 0  B =  −1 0 0 −1 6 na forma B = LU usando o m´todo de Doolittle, e resolva os sistemas Bx = (0, 1, 0) e e −1 Bx = 13 (13, 96, 16). 238  x3 − 10 2 1 det  1 x3 + 6 0  = 0 0 1 x3 (8.4) d)[2.0] Calcule duas iteradas pelo m´todo das itera¸˜es inversas para obter uma aproxe co ima¸˜o da maior raiz negativa de (8.4), indicando uma estimativa do erro. ca 3. Considere a matriz companheira a1 x + ... + an−1 xn−1 + xn  0 1  . . 0  .  .  .  .  0 ··· −a0 −a1 do polin´mio com coeficientes reais p(x) = a0 + o 0 ... ... ··· ... ... 0 . . .        0 ··· 0 1 · · · −an−2 −an−1 que tem p como polin´mio caracter´ o ıstico. a)[1.5] Mostre que se |an−1 | > 1 + M, com M = max{|a0 |, |a1 | + 1, ..., |an−2 | + 1} ent˜o a existe uma e uma s´ raiz real dominante em [−an−1 − 1, −an−1 + 1], e que as restantes se o encontram na bola {|z| ≤ M }. b)[1.5] Considere p(x) = 2 − 6x2 + 4x3 − 16x4 + 2x5 . Localize as ra´ dominante num intervalo de comprimento 2 e as restantes numa bola ızes de raio 1. Determine aproximadamente a raiz dominante usando duas itera¸˜es do m´todo das co e potˆncias. e 4. Considere os operadores Am : C[0, 1] → C[0, 1], com m ∈ N x Am f(x) = 0 (f (t))m dt x a)[1.0] Mostre que a derivada de Fr´chet de Am ´ Am,f (h) = m 0 f(t)m−1 h(t)dt. e e b)[2.0] Mostre que no espa¸o X = {f ∈ C[0, 1] : ||f||∞ ≤ 3 } existe uma e uma s´ solu¸˜o c o ca 4 f de x x (f (t))5 dt + 0 0 (f(t))2 dt + 4f(x) = φ(x), (8.5) onde ||φ||∞ < 1. Indique um m´todo iterativo que convirja, qualquer que seja a iterada e inicial em X. c)[1.0] Determine um n´ mero de iteradas suficiente pelo m´todo do ponto fixo come¸ando u e c com f0 = 0, para que fn , uma aproxima¸˜o da solu¸˜o da equa¸˜o (8.5) verifique ||en ||∞ < ca ca ca 10−2 . 5.[2.5] Considere a fun¸˜o f (x, y) = ( x cos(xy) − 3y, y sin(x + y) − 4x) e a equa¸˜o em ca ca R2 : f (x, y) = (−1, 1) 239 (8.6) Encontre uma fun¸˜o iteradora g que garanta a convergˆncia do m´todo do ponto fixo ca e e para qualquer (x0 , y0 ) ∈ S, em que S = [−1, 1] × [−1, 1]. Mostre que existe uma unica ´ 2 solu¸˜o de (8.6) em R . ca 6. Pretende-se aproximar a fun¸˜o f (x) = sin(πx) no intervalo [0, 1] por fun¸˜es g(x) = ca co 1 2 a + b(x − 2 ) . 1 a)[1.0] Sabendo que 0 sin(πx)(x2 − x)dx = − π43 , mostre que os parˆmetros da fun¸˜o g a ca que melhor aproxima f no sentido dos m´ ınimos quadrados s˜o solu¸˜es do sistema: a co 1 1 12 1 12 1 80 a b = π 2 −8 2π 3 2 π a ca b)[1.5] Tomando π ∼ 3.14 no segundo membro, o sistema ter´ uma solu¸˜o aproximada ˜ majore o erro relativo ||δ(a,b) ||∞ . (˜, b), a 8.1.6 Teste (99) 1. Considere f (x) = cos( x ) + 2x + sin(x). 2 a) Mostre que existe uma unica raiz real z da equa¸˜o ´ ca e200.48 f (x) − 1 = 0 e que z pertence ao intervalo [−1, 1]. Escolha um m´todo iterativo para aproximar z e e determine ao fim de quantas itera¸˜es garante um erro relativo menor que 10%. co b) Considere a ´rea negativa A− definida pelo gr´fico da fun¸˜o f no intervalo [−1, 1] e a a ca − ˜ uma sua aproxima¸˜o ao considerar o c´lculo do integral com z ao inv´s de z. Discuta A ca a ˜ e o condicionamento do c´lculo de A− face ao erro relativo de z. a 2. a) Mostre que qualquer equa¸˜o em R, da forma ca ax6 + bx4 + cx2 = 1 − |x|d com a > 0, b, c, d ≥ 0 tem somente duas ra´ ızes reais, uma positiva e outra negativa. Sabendo que b ≥ c + d, indique intervalos que as contenham (dependendo de a e b). b) Determine uma aproxima¸˜o da raiz dominante de x3 +10x2 +2x −1 = 0 calculando ca 3 itera¸˜es do m´todo de Bernoulli. Apresente um majorante do erro absoluto. co e c) Usando a aproxima¸˜o de b) (se n˜o resolveu, considere −9.8) e sabendo que a raiz ca a 3 2 dominante de x − 2x − 10x − 1 = 0 ´ aproximadamente 4.351 apresente aproxima¸˜es e co para as ra´ reais e complexas de ızes x6 + 10x4 + 2x2 = 1. 3. Seja a > 0, e considere o operador P : C[0, a] → C[0, a] x (P f )(x) = 0 g(f (t)) dt, 240 em que g ∈ C 2 (R). a) Mostre que ||Pf ||L(C[0,a],C[0,a]) ≤ a||g ◦ f ||∞ . b) Querendo resolver a equa¸˜o diferencial y (2y − 1) = cos(y), obtivemos a equa¸˜o ca ca integral em C[0, a] x f (x)2 − f(x) = cos(f(t)) dt 0 Determine valores de a para os quais garanta a existˆncia e unicidade de solu¸˜o da equa¸˜o e ca ca 1 integral no conjunto X = {f ∈ C[0, a] : ||f||∞ ≤ 4 } e determine duas iteradas usando o m´todo do ponto fixo com f0 (x) ≡ 0. Determine um majorante do erro (com a = 0.1). e 8.1.7 1a. Avalia¸˜o (99) ca 1. Considere o corte de um recipiente com largura unit´ria e sec¸˜o constante. Uma das a ca paredes do recipiente ´ vertical e a outra ´ descrita por uma fun¸˜o f estritamente crescente. e e ca Pretende-se determinar o ponto mais elevado (z, f(z)) situado na parede do recipiente que ser´ submerso por um volume de ´gua V. a a a) Reduza o problema ao c´lculo da raiz da equa¸˜o (mostre a unicidade) a ca zf (z) − F (z) + F (0) = V, em que F = f. b) Considere f(x) = 1 (x4 + 3x2 ) + 1 e V = 1. Determine aproximadamente z de forma 6 a garantir um erro absoluto inferior a 0.01. 2. Ap´s a aplica¸˜o de uma certa transforma¸˜o T, algumas part´ o ca ca ıculas que se encontravam em [−1, 1] × [−1, 1] ficaram posicionadas numa parte desse conjunto. a) Sabendo que T (x, y) = 1 4 sin( x−y xy ) + cos( ), cos(x + y) − sin(xy) 2 2 mostre que apenas um ponto ficou invariante com a transforma¸˜o. O que acontece aos ca restantes pontos se repetirmos a transforma¸˜o? ca b) Estabele¸a um algoritmo que dˆ uma aproxima¸˜o do ponto atractor referido em a) c e ca com um erro absoluto inferior a 10−8 . 3. Considere a matriz (com a real)   − sin(a2 ) cos(a) 0 0 0 cos(a2 )  Aa =  −1 − cos(a2 ) −1 − cos(a) 4 a) Mostre que existe um valor pr´prio real dominante. No caso a = 0 determine uma o sua aproxima¸˜o usando trˆs itera¸˜es do m´todo das potˆncias. ca e co e e b) Use trˆs itera¸˜es do m´todo de Bernoulli para aproximar a raiz dominante da e co e equa¸˜o x3 − 4x2 + 2x + 2 = 0. Compare o resultado obtido com o da al´ ca ınea anterior e comente. 241 c) Seja a = 0. Aplique o m´todo das itera¸˜es inversas para aproximar um valor pr´prio e co o pr´ximo de 1, come¸ando com (0, 1, 0) como vector inicial e calculando duas itera¸˜es o c co atrav´s da factoriza¸˜o LU. e ca 4. Verificou-se que uma popula¸˜o tinha a seguinte f´rmula de crescimento: o n´mero ca o u de organismos novos era 3 vezes superior ao n´ mero de organismos actuais, mas verificavau se tamb´m que cada organismo da gera¸˜o anterior aniquilava dois dos novos organismos, e ca e os da gera¸˜o ainda anterior aniquilavam um organismo antes de perecerem. Obteve-se ca assim a f´rmula o un+1 = 4un − 2un−1 − 2un−2 . a) Sabendo que a = −0.481194, b = 1.31111, c = 3.17009, temos  −1   1 1 1 0.0354 −0.159 0.147  1/a 1/b 1/c  ∼  −0.516 1.387 0.787  . 2 2 2 1/a 1/b 1/c 1.48 −1.23 −0.934 Determine ao fim de quantas gera¸˜es pode obter uma popula¸˜o superior a 1 milh˜o, co ca a se come¸ar com u0 = 2 organismos apenas. c b) Comente a diferen¸a entre come¸ar com u0 = 12, u−1 = 10, u−2 = 6, ou com u−2 = 5 c c relativamente ao condicionamento. 5. Seja α > 2. Para resolver (α − y )y = 1 − y 2 , y(0) = 0, considerou-se a sucess˜o de a fun¸˜es f0 ≡ 0, co 1 x fn+1 (x) = 1 − fn (t)2 + fn (t)2 dt. α 0 a) Mostre que a derivada de Fr´chet do operador e A : C 1 [0, a] −→ f −→ x 0 1 α x 0 C 1 [0, a] 1 − f (t)2 + f (t)2 dt na norma ||f ||C 1 = ||f||∞ + ||f ||∞ ´ igual a e Af h = 2 α f (t)h (t) − f (t)h(t)dt. b) Estabele¸a que c 2(a + 1) ||f ||C 1 α c) Considere a = 1, α = 8. Mostre que se ||f ||C 1 ≤ 1, existe um unico ponto fixo do ´ operador A e determine um majorante do erro de f2 . ||Af ||L(C 1 [0,a],C 1 [0,a]) ≤ 242 8.2 8.2.1 Resolu¸oes c˜ 1a. Avalia¸˜o (97) ca 1. a) Como g(I), h(I) ⊂ I, temos h(g(I)), g(h(I)) ⊂ I. Por outro lado se x ∈ I, como g(x), h(x) ∈ I usando as hip´teses, temos: o |(h ◦ g) (x)| = |h (g(x))| |g (x)| ≤ L1 L2 < 1 Usando o corol´rio do teorema do ponto fixo, isto garante a existˆncia e unicidade de solu¸˜o a e ca das equa¸˜es x = h(g(x)) e x = g(h(x)) no intervalo I. co Apenas falta ver que z ´ solu¸˜o dessas equa¸˜es. Ora, f(z) = 0 se e s´ se z = g(z), z = e ca co o h(z), portanto tamb´m z = h(g(z)), z = g(h(z)). Como garantimos a existˆncia e unicidade e e dos pontos fixos de h ◦ g, g ◦ h no intervalo I, fica provado. Por outro lado, como as fun¸˜es co iteradoras h ◦ g, g ◦ h estavam nas condi¸˜es do corol´rio garantimos ainda a convergˆncia co a e para z. Uma outra fun¸˜o iteradora poder´ ser g ou h j´ que 0 ≤ L1 L2 < 1 implica 0 ≤ L1 < 1 ca a a ou 0 ≤ L2 < 1. ca 1. b) a < 0, b ≥ 0 implica 0 ∈ I e podemos escolher x0 = 0, e escolhendo a fun¸˜o iteradora h ◦ g, obtemos x1 = h(g(0)) e temos: |z − x0 | ≤ 1 1 |x1 − x0 | ⇔ |z| ≤ |h(g(0))|. 1 − L1 L2 1 − L1 L2 |(g ◦ h) (x)| = |g (h(x))| |h (x)| ≤ L2 L1 < 1 1 Podemos fazer o mesmo para g ◦ h, e tiramos |z| ≤ 1−L1 L2 |g(h(0))|. Agora basta escolher o menor majorante, considerando o min{|g(h(0))|, |h(g(0))|}. 1. c) Sim. Basta reparar que em a), para mostrar que existia ponto fixo de g ◦ h n˜o a utilizamos a hip´tese de g e h terem o mesmo ponto fixo. o 1. d) Considerando g(x) = 1 (cos(x/2) + sin(x)), h(x) = x21 vemos que podemos 2 +1 escrever a primeira equa¸˜o na forma x = g(h(x)) e a segunda na forma x = h(g(x)). De ca acordo com o que vimos basta ver que estes g e h verificam as hip´teses, para considerarmos o g ◦h fun¸˜o iteradora que converge para a solu¸˜o da primeira equa¸˜o e h◦g para a solu¸˜o ca ca ca ca da segunda. Ora, seja I = [0, 1]. Se x ∈ I, temos cos(x/2), sin(x) ≥ 0 e ´ claro que g(x) ≤ 1, assim e g(I) ⊆ I. Por outro lado |g (x)| = | −1 1 3 sin(x/2) + cos(x)| ≤ = L1 4 2 4 (podiamos mesmo majorar por 1 ) 2 Por outro lado, como x2 + 1 ≥ 1, ´ claro que h(I) ⊆ I, e se x ∈ I e |h (x)| = | (x2 −2x 2x 1 |= 2 ≤ = L2 2 2 + 1) (x + 1) 2 243 porque atinge o m´ximo quando x = 1, visto ser crescente: a 2x 2 + 1)2 (x = 2(x − 1)2 ≥0 (x2 + 1)2 Assim L1 L2 = 3 < 1, e podemos concluir pelo que vimos anteriormente em a) e c). 8 ( Se n˜o usassemos a sugest˜o, seriamos envolvidos em c´lculos muito mais complicaa a a dos...) 2. Come¸amos por observar que a fun¸ao g ´ solu¸ao de uma equa¸ao diferencial que c c˜ e c˜ c˜ verifica condi¸oes que asseguram existˆncia e unicidade para aquela condi¸ao inicial, e at´ c˜ e c˜ e ˆ podemos ver que g ∈ C ∞ , mas isto sai fora do nosso ambito. Vemos que |g (x)| = 1 |x| | cos(g(x))|2 ≤ 1 , por outro lado g (x) ≥ 0, e g ´ crescente. e 2 2 1 Como g(0) = 2 ∈ [0, 1], se g(1) ∈ [0, 1], ficam verificadas as condi¸˜es do corol´rio do co a teorema do ponto fixo, e podemos assegurar existˆncia e unicidade do ponto fixo. Ora, e como pelo teorema do valor m´dio: e 1 1 g(1) − g(0) = g (ξ) = ξ cos2 (g(ξ)) ∈ [0, [ 2 2 pois ξ ∈]0, 1[, temos g(1) ∈ [ 1 , 1[⊂ [0, 1]. 2 3. a) Vimos, como consequˆncia do teorema de Gershgorin, que sendo a matriz e sim´trica, basta ver que a matriz tem a diagonal positiva e estritamente dominante para e que seja definida positiva. Por outro lado, para mostrar que o m´todo de Gauss-Seidel e converge, tamb´m basta ver que tem a diagonal estritamente dominante. e Ora, todos os elementos da diagonal s˜o positivos e | sin(a2 )| + | cos(b)| ≤ 2 < 3, a 2 b/π | sin(a )| + | sin(a + b)| ≤ 2 < 2 + e , | cos(b)| + | sin(a + b)| ≤ 2 ≤ 5 . 2 3. b) No caso b = 0 temos  1 3 sin(a2 ) 3 sin(a)  A =  sin(a2 ) 5 1 sin(a) 2  e como a matriz ´ definida positiva, os valores pr´prios λ s˜o reais e positivos. Pelo teorema e o a 2 de Gerschgorin, |λ − 3| ≤ 1 + | sin(a )| ≤ 2, |λ − 3| ≤ | sin(a)| + | sin(a2 )| ≤ 2, |λ − 5 | ≤ 2 1 + | sin(a)| ≤ 2. Concluimos assim que λ ∈ [ 1 , 5]. 2 3. c) Neste caso, eb/π > 5 e pelo T. de Gershgorin, a segunda linha garante que |λ − eb/π − 2| ≤ 2 ⇔ (5 <) eb/π ≤ λ ≤ eb/π + 4. Portanto existe um valor pr´prio tal que o 5 λ > 5, por outro lado, a primeira e ultima linha garantem |λ − 3| ≤ 2 e |λ − 2 | ≤ 2, ou seja ´ v˜o existir dois valores pr´prios ≤ 5. a o Concluimos assim que h´ um valor pr´prio dominante > 5. a o Quando a = 0, b = 7π   3 0 −1 A =  0 e7 + 2 0  , 5 −1 0 2 244 e reparamos que λ = e7 + 2 ´ valor pr´prio associado ao vector pr´prio (0, 1, 0). (Esta e o o conclus˜o sai imediatamente aplicando o T. Gerschgorin). a 4. a) L(E, E) ´ espa¸o de Banach com a norma ||.||L(E,E) que designamos ||.|| para e c abreviar. Ora, (λI − A)−1 ´ a solu¸˜o de (λI − A)X = I ⇔ X = λ−1 I + λ−1 AX = G(X), e ca e vemos que G ´ contractiva em L(E, E). Pois, para quaisquer X, Y ∈ L(E, E), e ||G(X) − G(Y )|| = ||λ−1 AX − λ−1 AY || = λ−1 ||A(X − Y )|| ≤ λ−1 ||A|| ||X − Y || e L = λ−1 ||A|| < 1, por hip´tese. Aplicamos o teorema do ponto fixo a L(E, E) (que ´ o e fechado, pois ´ o pr´prio espa¸o) e conclu´ e o c ımos a existˆncia e unicidade de solu¸˜o Z = e ca (λI − A)−1 . Usando X0 = 0 obtemos X1 = G(X0 ) = λ−1 I e ||(λI − A)−1 || = ||Z − X0 || ≤ 1 1 ||X1 − X0 || = ||λ−1 I|| −1 ||A|| 1−L 1−λ como ||I|| = 1, obtemos a desigualdade. Finalmente, considerando X1 = λ−1 I obtemos n Xn+1 = k=0 Ak . λk+1 Provamos por indu¸˜o. Para n = 0 ´ imediato, j´ que se convenciona A0 = I. Supondo ca e a que a f´rmula ´ v´lida para Xn o e a n−1 Xn+1 = λ I + λ AXn = λ I + λ A k=0 −1 −1 −1 −1 Ak λk+1 = como A ´ linear, e n−1 =λ I+ k=0 −1 Ak+1 λk+2 n =λ I+ k=1 −1 Ak λk+1 e obtemos a express˜o de Xn+1 . a 4. b) Podemos aplicar a al´ ınea a) j´ que a matriz pertence a L(R3 , R3 ). a No exerc´ 3b) escrevemos a matriz e ´ f´cil ver que ||A||1 ≤ 5. Portanto, pela al´ ıcio e a ınea e ıvel anterior, considerando λ = 6 > 5 ≥ ||A||1 , sabemos que 6I − A´ invert´ e que ||(6I − A)−1 || ≤ 1 ≤1 6 − ||A||1 5. a) As fun¸˜es base s˜o φ0 (x) = 1, φ1 (x) = x, φ2 (x) = x3 , que s˜o polin´mios co a a o linearmente independentes para x0 = −2, x1 = −1, x3 = 0, x4 = 1, x5 = 2. 4 4 (φ0 , φ0 ) = k=0 φ0 (xk ) = k=0 2 1=5 245 4 4 (φ0 , φ1 ) = k=0 φ0 (xk )φ1 (xk ) = k=0 1.xk = −2 − 1 + 0 + 1 + 2 = 0 (φ0 , φ2 ) = 0, (φ1 , φ1 ) = 4 + 1 + 0 + 1 + 4 = 10, (φ1 , φ2 ) = 16 + 1 + 0 + 1 + 16 = 34, (φ2 , φ2 ) = 64 + 1 + 0 + 1 + 64 = 130 e (φ0 , f) = k=0 4 4 φ0 (xk )f (xk ) = k=0 1.f(xk ) = −10 + −4 − 2 + 1 + 5 = −10 (φ1 , f ) = −2 × −10 + (−1 × −4) + 0 + 1 × 1 + 2 × 5 = 35, (φ2 , f ) = −8 × −10 + (−1 × −4) + 0 + 1 × 1 + 8 × 5 = 125 e 5. b) g(x) = −2 + (25x + 5x3 )/12 = 0, e verifica-se que g ∈ C 2 ([0, 1]), pois ´ um 2 polin´mio. Como g(0)g(1) = −2 × (30/12 − 2) = −1 < 0, g (x) = (25 + 15x )/12 > 0, o g (x) = 30x/12 ≥ 0 e g(x0 ) > 0 para x0 = 1, verificam-se as condi¸˜es suficientes que co asseguram a convergˆncia do m´todo de Newton: e e x1 = x0 − −24 + 25x0 + 5x3 6 17 0 =1− = = 0.85 2 25 + 15x0 40 20 −24 + 25x1 + 5x3 1 = 0.841053.... 2 25 + 15x1 x2 = x1 − 5. c) A f´rmula do erro do M. Newton d´ : o a |w − x2 | = e da mesma forma |e1 | ≤ 0.05886, logo |g (ξ)| 2 2.5e2 1 e1 ≤ < 0.41856e2 1 2|g (x1 )| 5.9729 = 0.375 × 1, pois |e0 | < |1 − 0|. Portanto |w − x2 | < 2.5 |e |2 6.666... 0 |z − x2 | ≤ |z − w| + |w − x2 | ≤ 0.01 + 0.05886 = 0.06886. 8.2.2 2a. Avalia¸˜o (97) ca ex ex − 1 ⇔ x = 1.62 x = g(x). ex − 1 e 1. a) Como N p/D = 1.62 temos que resolver: ˜ 1.62 = x Basta verificar que existe um e um s´ ponto fixo de g no intervalo [1, 2]. o Ora g (x) = e−x > 0, portanto g ´ crescente e temos g(1) = 1.024035, g(2) = 1.40076 ∈ e [1, 2], logo g([1, 2]) ⊆ [1, 2]. Por outro lado, em [1, 2], |g (x)| = 1.62e−x ≤ 1.62e−1 = 0.59596... < 1, logo podemos aplicar o teorema do ponto fixo e concluir acerca da existˆncia e unicidade. e 246 1. b) Se repararmos que Np/D = 1.62, como a equa¸˜o (2) aproxima (1), podemos ca experimentar os valores obtidos: xa = g(1) ⇒ ta = xa /N ∼ 0.005689 e xb = g(2) ⇒ tb = xb /N ∼ 0.007782 Sendo 1 f (t) = p − tD 1 + (1 + t)N − 1 verificamos que f (ta ) = 1.082 e f (ta ) = −13.45, pelo que existe raiz neste intervalo, que podemos determinar usando, por exemplo, o m´todo da secante em que t−1 = ta = 0.005689, e t0 = tb = 0.007782 e obtemos sucessivamente: t1 = 0.0058449359; t2 = 0.0058505816 e temos |t2 − t1 | < 0.001. Portanto concluimos que t ∼ 0.00585 ⇒ T ∼ 7.02%. 2. a) Considerando h(x) = x − g(x) temos h ∈ C 1 (R) e h(z1 ) = h(z2 ) = 0. Como n˜o existe mais nenhuma raiz entre z1 e z2 , concluimos que ou h(x) > 0, ∀x ∈]z1 , z2 [ ou a h(x) < 0, ∀x ∈]z1 , z2 [. h(x) + No nosso caso, h (z1 ) = 1 − g (z1 ) > 0, e como h (z1 ) = limx→z1 x−z1 (porque h tem derivada cont´ ınua e h(z1 ) = 0), concluimos que h(x) > 0 num intervalo ]z1 , z1 +ε[. Portanto h(x) > 0 em ]z1 , z2 [, logo h(x) h (z2 ) = lim ≤0 − x − z x→z2 2 h(x) pois x−z2 < 0 quando x < z2 . Assim, g (z2 ) = 1 − h (z2 ) ≥ 1. (Podemos ver que quando uma fun¸ao iteradora C 1 converge para uma raiz, ela n˜o vai c˜ a convergir para outra, consecutiva) ca e 2. b) Como |g (x)| > 1 em I, nesse intervalo a fun¸˜o ´ injectiva, pois ou g (x) > 1 > 0 ou g (x) < −1 < 0, e g ser´ estritamente mon´tona. a o Faz pois sentido falar na inversa, g −1 , e ´ claro que g(z2 ) = z2 ⇔ z2 = g −1 (z2 ). e Vejamos pois que se verificam as condi¸˜es de convergˆncia do teorema do ponto fixo co e para g −1 em I. Se x ∈ I, como I ⊆ g(I), existe y ∈ I : x = g(y), logo y = g −1 (x) e portanto g −1 (x) ∈ I. Isto implica g −1 (I) ⊂ I. Por outro lado, para qualquer x ∈ I: |(g −1 ) (x)| = 1 |g (g −1 (x))| <1 porque y = g −1 (x) ∈ I e assim, pela hip´tese, |g (y)| > 1. o 2. c) No caso de p = 1, temos raizes simples, e sabemos que o m´todo de Newton e converge quadraticamente, pelo que podemos usar x − f (x)/f (x) como fun¸˜o iteradora. ca −1 a ınea b). Para a convergˆncia linear, podemos usar g , atendendo ´l´ e No caso de existirem raizes m´ltiplas, sabemos que o m´todo de Newton converge linu e earmente, e para obtermos convergˆncia quadr´tica usamos a modifica¸˜o x − p f (x)/f (x). e a ca 247 (Repare-se que o facto de o m´todo de Newton convergir para qualquer raiz, n˜o contradiz e a a al´nea a) porque, no caso do m´todo de Newton, n˜o h´ diferenciabilidade da fun¸ao ı e a a c˜ iteradora, j´ que pelo teorema de Rolle entre dois zeros de f a derivada anula-se. a Conclui-se que para termos uma fun¸ao iteradora que convirja para qualquer raiz ´ c˜ e necess´rio haver descontinuidades.) a 3. a) Reparamos que, por linhas, |λ − 10| ≤ |3 − 2 cos(b)| + | cos(b)| ≤ 6, |λ − 25| ≤ |5 sin(a)| + 1 ≤ 6, |λ − 50| ≤ 1 + |5 sin(a) + sin(b)| ≤ 7. Por colunas, conseguimos ainda |λ − 10| ≤ 2, |λ − 50| ≤ 6, o que significa λ1 ∈ [8, 12], λ2 ∈ [19, 31], λ3 ∈ [44, 56], porque os trˆs circulos s˜o disjuntos, e logo existe apenas um e a valor pr´prio em cada um deles que ter´ que ser real, pois os coeficientes da matriz s˜o o a a reais, e o polin´mio caracteristico teria raizes complexas conjugadas (o que contradiria a o existˆncia de um unico valor pr´prio). e ´ o 3. b) Da al´ ınea a) retiramos que a matriz ´ definida positiva, logo basta que a matriz e seja sim´trica para podermos obter a decomposi¸˜o de Cholesky A = LLT . Para isso, basta e ca que 3 − 2 cos(b) = 1; cos(b) = 1; 5 sin(a) + sin(b) = 5 sin(b), isto significa que cos(b) = 1 e sin(b) = 0, ou seja, b = 2kπ. 3. c) Como a matriz A tem a diagonal estritamente dominante, podemos aplicar o m´todo de Jacobi para qualquer h ∈ R3 . e No caso do m´todo de Jacobi, temos e   0 .3 − .2 cos(b) 0.1 cos(b) 0 0.2 sin(a)  ||∞ ≤ 0.6 ||C||∞ = ||  0.04 0.02 0.1 sin(a) + 0.02 sin(b) 0 ||e(n) ||∞ ≤ com L = ||C||∞ . Ora x(0) = 0 ⇒ x(1) portanto: Ln ||x(1) − x(0) ||∞ 1−L = (h1 /10, h2 /25, h3 /50), logo ||x(1) ||∞ ≤ ||h||∞ /10 e 0.6n ||h||∞ 4 Como ||e(n) ||∞ ≤ 3. d) Utilizando o Teorema de Gerschgorin, j´ dissemos, em a), que se a matriz for real a e os c´ ırculos forem disjuntos ent˜o os valores pr´prios s˜o reais. Vejamos que as hip´teses a o a o implicam que os circulos sejam disjuntos: Se |λ − aii | ≤ ri |λ − ajj | ≥ |aii − ajj | − |λ − aii | > ri + rj − ri = rj (para j = i), o que significa que λ n˜o est´ em nenhum outro circulo. a a 4. a) Vamos aplicar o corol´rio do Teorema do ponto fixo. Como o conjunto X ´ a e fechado e convexo, basta mostrar que G(X) ⊂ X e que ||Gf ||L(E,E) ≤ L < 1, ∀f ∈ X, onde x G(f )(x) = 0 (f (t))2 dt − φ(x). 248 Ora se f ∈ X, temos ||G(f )||∞ = max | x∈[0,a] x 0 x (f (t))2 dt − φ(x)| ≤ max max |f (t)|2 x∈[0,a] t∈[0,x] 0 1 dt + max |φ(x)| ≤ a||f ||2 + ||φ||∞ . ∞ x∈[0,a] Como ||f ||∞ ≤ 1, ||φ||∞ ≤ a, concluimos que ||G(f )||∞ ≤ 2a < 1, logo G(f ) ∈ X. e e Por outro lado, Gf = Af porque ´ imediato que a derivada de Fr´chet de φ em ordem a f ´ zero, e temos e ||Af ||L(E,E) = sup ||(Af )h||∞ ≤ sup 2a||h||∞||f||∞ ≤ 2a||f||∞. ||h||∞ ≤1 ||h||∞ ≤1 Portanto em X, temos ||Gf ||L(E,E) ≤ 2a||f ||∞ ≤ 2a < 1. 4. b) Basta reparar que definindo fn+1 = G(fn ) com f0 = 0 ∈ X, obtemos f1 = −φ e portanto, como L = 2a, ||f − f0 ||∞ ≤ 1 1 a ||f1 − f0 ||∞ = ||φ||∞ ≤ 1−L 1 − 2a 1 − 2a 5. Basta reparar que as fun¸˜es base s˜o 1 e f , logo: co a 1 1 1 (1, 1) = −1 1dx = 2; (1, f ) = −1 f (x)dx = f(1) − f(−1); (f , f ) = −1 |f (x)|2 dx e no segundo membro: 1 (1, f) = −1 f (x)dx; (f , f) = 1 f (x)f (x)dx = (f (1)2 − f (−1)2 ) 2 −1 1 Chamando aos quatro valores referidos, respectivamente, a, b, c, d, obtemos: 2 c−d c−d a α β = b (c − d2 )/2 2 Portanto, α e β s˜o determinados pelos referidos valores. a No caso da fun¸˜o ser par temos c = d o que implica β = 0, α = b/2, ou seja, a melhor ca fun¸˜o ser´: ca a 1 1 1 g(x) = f (x)dx = f (x)dx 2 −1 0 No caso de ser impar, obtemos b = −1 f(x)dx = 0, e como d = f (−1) = −f(1) = −c, temos o segundo membro do sistema nulo, portanto α = β = 0 e a melhor fun¸˜o ser´ ca a g = 0. 249 1 8.2.3 Teste (98) x0 = a; x1 = g(x0 ); ... x20 = g(x19 ) 1. Considerando o algoritmo (que corresponde a implementar o m´todo do ponto fixo): e e ´ claro que g 20 (a) = x20 . Por outro lado, cada opera¸˜o xk+1 = g(xk ) implica e ca δxk+1 ∼ xk g (xk ) δxk g(xk ) (8.7) e isto significa que podemos apresentar a estimativa aproximada |δxk+1 | ≤ 2· 1 maxx∈[1,2] |x| maxx∈[1,2] |g (x)| 1 4 |δxk | ≤ |δxk | = |δxk | minx∈[1,2] |g(x)| 1 2 e sai imediatamente |δx20 | ≤ ( 1 )20 |δx0 | ∼ 0.954 × 10−9 , ou melhor... |δx20 | ≤ ( 1 )20 1.9 |δx0 | ∼ 2 2 1.1 0.824 × 10−9 . Isto indica que este problema ´ (muito) bem condicionado, pois obtemos e um erro relativo que ´ um milion´simo do inicial! Aproveitamos para reparar que no e e m´todo do ponto fixo, obtemos sempre (8.7), e quando nos aproximamos do ponto fixo e xk ∼ z = g(z) ∼ g(xk ), logo δxk+1 ∼ g (z)δxk , e portanto de um modo geral basta haver convergˆncia (⇒ |g (z)| < 1) para que o problema seja bem condicionado. e 2.a) A desigualdade ´ equivalente a g(x) = (2f (x) − cos(f ( x )) + 1) 1 ≤ x. Podemos concluir e 2 3 que a igualdade se verifica apenas nos pontos fixos de g. Em R h´ apenas um ponto fixo a porque |g (x)| = 1 |2f (x) + 1 f ( x ) sin(f( x ))| ≤ 1 5 = 5 < 1, ∀x ∈ R. Esse ponto fixo ´ zero e 3 2 2 2 32 6 pois g(0) = 0 − 1 + 1 = 0. Nos outros casos, ou g(x) > x ou g(x) < x. Como g (0) < 1 implica g(x) < x para x pr´ximo de zero, positivo, ent˜o estamos no segundo caso. o a b) Usando a) para f(x) = sin(x), que verifica as condi¸˜es, obtemos imediatamente para co x ≥ 0: x − 2 sin(x) − cos(sin( )) − 3x + 1 + 2 sin(x) = 4x − 2 2 ou seja, equivalentemente, x = g(x) com x g(x) = 1 + cos(sin( )). 2 Imediatamente, g (x) = − 1 cos( x ) sin(sin( x )) e |g (x)| ≤ 1 < 1, ∀x ≥ 0, o que implica 2 2 2 2 a contractividade em [0, +∞[ conjunto fechado. Por outro lado g(x) ∈ [0, 2], implica g([0, +∞[) ⊆ [0, +∞[, estando nas condi¸˜es do teorema do ponto fixo, sabemos que h´ co a apenas um ponto fixo, e a convergˆncia ´ assegurada, sendo alternada porque g (x) < 0 e e para x ∈ [0, 2], j´ que o coseno e o seno s˜o positivos em [0,1] (e sin(x) ≤ x). a a Assim sendo, podemos prever a priori que come¸ando com x0 = 1, (|e0 | < 1), sejam c 1 n −2 necess´rias n iteradas: |en | ≤ ( 2 ) < 10 ⇒ n > 2 log 10/ log 2 ∼ 6.64.. ⇒ n ≥ 7. Mas a a posteriori vemos que s˜o precisas menos iteradas, porque a x0 = 1, x1 = 1.88726..., x2 = 1.68972..., x3 = 1.73313... 250 e como a convergˆncia ´ alternada sabemos que z ∈ [x2 , x3 ] e temos mesmo |e3 | ≤ 1 |x3 − e e 4 x2 | = 0.0109... pelo que ainda ´ necess´ria mais uma iterada para podermos assegurar um e a ca erro absoluto inferior a 10−2 , e obtemos x4 = 1.7233804... Como informa¸˜o, o valor exacto seria 1.725163... 3. A equa¸˜o caracter´ ca ıstica associada a xn+2 − 9 xn+1 + 2xn = 0 ´ r2 − 9 r + 2 = 0, que tem e 2 2 1 como ra´ r1 = 2 , r2 = 4, o que d´ como solu¸˜o geral da equa¸˜o (homog´nea): ızes a ca ca e 1 xn = A( )n + B(4)n 2 para obtermos x0 = 2, x1 = 1, resolvemos o sistema A1 2 A + B = x0 = 2 + B · 4 = x1 = 1 o que d´ A = 2, B = 0, e a solu¸˜o ´ xn = 2( 1 )n que converge para zero. a ca e 2 Deixamos como observa¸˜o importante que se o dado inicial estivesse afectado de um ca a a pequeno erro, por exemplo, x0 = 2 + 10−4 , j´ obteriamos uma sucess˜o divergente como solu¸˜o (trata-se portanto de um problema mal condicionado)! ca 4a). Come¸amos por ver que A ´ injectivo em X, porque Ax = Ay implica ||x − y|| ≤ c e 1 ||Ax − Ay|| = 0, logo x = y. Assim, existe aplica¸˜o inversa definida em A(X), e ca L A−1 : A(X) → X ´ uma bijec¸˜o. Vamos ver que estamos nas condi¸˜es do teorema de Banach para A−1 em e ca co A(X) : i) A(X) ´ n˜o vazio (porque se x ∈ X = ∅, Ax ∈ A(X)) e fechado. Foi admitido, mas e a podemos provar: Porque se yn ∈ A(X) e yn → y, ent˜o sendo yn = Axn , com xn ∈ X, temos ||xn − xm || ≤ a 1 1 ||Axn − Axm || = L ||yn − ym ||. Mas como (yn ) ´ sucess˜o de Cauchy (porque converge), e a L ent˜o (xn ) tamb´m ´, e converge para x ∈ X. Ora sendo A cont´ a e e ınuo, yn = Axn → Ax, a unicidade do limite implica y = Ax, logo y ∈ A(X). ii) A−1 (A(X)) ⊆ A(X), porque A−1 (A(X)) = X. e ca iii) A−1 ´ uma contrac¸˜o em A(X). Dados quaisquer y1 , y2 ∈ A(X), escrevemos y1 = Ax1 , y2 = Ax2 , e temos ||A−1 y1 − A−1 y2 || = ||x1 − x1 || ≤ 1 1 ||Ax1 − Ax2 || = ||y1 − y2 || L L 1 em que L < 1. Pelo Teorema de Banach ∃1 z ∈ A(X) : A−1 z = z, mas tamb´m Az = z, pelo que e −1 z ∈ X. Por outro lado yn+1 = A yn converge se y0 ∈ A(X). Equivalentemente, escrevendo yn = Axn , temos Axn+1 = A−1 (Axn ) = xn , com x0 ∈ X. 4b) 251 Sendo X aberto contendo o ponto fixo z, existe sempre uma bola aberta B(z, r) ⊂ X, ¯ com r > 0, e uma bola mais pequena, fechada, B(z, r ) ⊂ X, com r < r. Vemos que a´ se ı cumprem as condi¸˜es do T. de Banach: co ¯ ¯ i) z ∈ B(z, r ) = ∅, e B(z, r ) ´ fechado e ¯ r ), porque ´ contractivo em X ⊃ B(z, r ). ¯ ii) A ´ contractivo em B(z, e e ¯ ¯ iii) Para al´m disso A(B(z, r )) ⊆ B(z, r ) porque e ¯ ¯ x ∈ B(z, r ) ⇒ ||Ax − z|| = ||Ax − Az|| ≤ L||x − z|| ≤ Lr < r ⇒ Ax ∈ B(z, r ) 8.2.4 1a. Avalia¸˜o (98) ca 1.a) Come¸amos por reparar que sin(x) + x ≥ 0 se x ≥ 0, pois sin(x) ´ positivo para c e 0 < x < 1. Portanto, se x ≥ 0, temos sin(x) + 3x ≥ 0, logo | sin(x) + 3x| + sin(x) = 2 sin(x) + 3x ≥ 2(sin(x) + x) ≥ 0. Se x ≤ 0, como o seno ´ ´ e ımpar, o resultado anterior d´-nos sin(x) + x ≤ 0, logo a | sin(x) + 3x| + sin(x) = − sin(x) − 3x + sin(x) = −3x ≥ 0. Como a radicia¸˜o ´ bijectiva de R+ → R+ , ca e | sin(x) + 3x| + sin(x) = 1 ⇐⇒ | sin(x) + 3x| + sin(x) = 1. E, como vimos, podemos distinguir dois casos: Se x ≤ 0 ent˜o | sin(x) + 3x| + sin(x) = 1 ⇔ −3x = 1 ⇔ x = −1/3. Portanto s´ existe a o uma raiz negativa. Se x ≥ 0 ent˜o | sin(x) + 3x| + sin(x) = 1 ⇔ 2 sin(x) + 3x − 1 = 0. Temos duas maneiras a de chegar ao resultado: i) Designando f (x) = 2 sin(x) + 3x − 1, ´ uma fun¸˜o diferenci´vel em R e temos e ca a f (x) = 3 − 2 cos(x) > 0. Portanto, existindo uma raiz, ela ser´ unica, pois a fun¸˜o f ´ a ´ ca e ´ f´cil ver que a raiz existe, e ´ positiva, porque, por exemplo, estritamente crescente em R. E a e podemos aplicar o T. valor interm´dio em [0, 1 ] j´ que f(0) = −1 e f( 1 ) ∼ 1.459. e a 2 2 ii) Designando g(x) = 1 (1 − 2 sin(x)). Pelo teorema do ponto fixo em R, como |g (x)| = 3 | 2 cos(x)| ≤ 2 < 1, podemos garantir que existe uma unica raiz em R, que ´ positiva porque ´ e 3 3 g([0, 1 ]) ⊂ [0, 1 ], porque g ´ decrescente nesse intervalo e g(0) = 1/3, g( 1 ) = .013716 ∈ [0, 1 ]. e 2 2 2 2 1 ], 2 1.b) Consideremos f (x) = 2 sin(x) + 3x − 1, f ∈ C 2 [0, 1 ]. Vamos utilizar o intervalo 2 [0, em que j´ mostr´mos que existia uma raiz. Condi¸˜es do M. de Newton: a a co i) f(0)f ( 1 ) = (−1) × 1.459 ≤ 0; ii) f (x) = 2 cos(x) + 3 = 0, pois cos(x) = − 3 ´ e 2 2 imposs´ ıvel. (J´ tinham sido verificadas em 1.a)) a f f iii) f (x) = −2 sin(x) ≤ 0, se x ∈ [0, 1 ]. iv) | f (0) | = | −1 | ≤ 0.5; | f (0.5) | = 1.459 = 2 (0) 5 (0.5) 4.755 0.307 ≤ 0.5. Consideramos x0 = 0.25, imediatamente temos |e0 | ≤ 0.25. Obtemos x1 = 0.2004219, 2 sin( 1 ) 2 logo |e1 | ≤ max |f 0(x)| |e0 |2 ≤ 4.937 0.252 = 0.01216... 2|f (x )| Com x2 = .2005366, e o erro |e2 | ≤ |e2 | |z| como f(0.2) < 0, |δ2 | = ≤ 0.29×10−4 0.2 < 10 . 2 sin( 1 ) 2 |e |2 2|f (x1 )| 1 −3 ≤ 0.95885 4.9598 0.012162 = 2.8586 × 10−5 e 252 1.c) Consideremos a sucess˜o xn+1 = 1 − 2 sin(xn ) com x0 = 0. A sucess˜o converge a a 3 3 devido ` al´ a ınea a), por aplica¸˜o do T. do Ponto Fixo, e temos tamb´m a seguinte estimativa ca e 1 2 n n de erro |x−xn | ≤ L |x−x0 | ≤ 2 ( 3 ) . Por outro lado a sucess˜o (yn ) tamb´m converge porque a e sendo g(y) = 1 − 2 (y − 1 y 3 ), temos tamb´m g([0, 1 ]) ⊆ [0, 1 ] e |g (y)| = | − 2 (1 − 1 y 2 )| ≤ 2 . e 3 3 6 2 2 3 2 3 (i) Podemos obter rapidamente um majorante do erro usando |x − yn | ≤ |x − y| + |y − yn |. Porque como |y − yn | ≤ ( 2 )n |y − y0 | basta reparar que x − y = 2 (sin(x) − y + 1 y 3 ) portanto, 3 3 6 usando o T. Lagrange: |x − y| = 1 2 | sin(x) − sin(y) + sin(y) − y + y 3 | ≤ 3 6 2 1 3 2 |y|5 2 2 ≤ | sin(x) − sin(y)| + | sin(y) − y + y | ≤ |x − y| + 3 3 6 3 3 120 2 |y|5 3 120 e daqui concluimos que 1 |x − y| ≤ 3 |x − yn | ≤ o que nos d´ ent˜o (notar que y ∈ [0, 1 ]) a a 2 |y|5 2 1 2 1 + ( )n |y − y0 | ≤ + ( )n . 60 3 1920 3 2 Falta-nos apenas a estimativa para |xn − yn |. Observando que |xn+1 − yn+1 | = 1 2 − sin(xn ) − 3 3 1 2 1 3 − (yn − yn ) 3 3 6 |yn |5 , 120 (ii) Outro processo, semelhante... mas ‘mais correcto’, seria utilizar desigualdade triangular |x − yn | ≤ |x − xn | + |xn − yn |. 2 1 3 = | sin(xn ) − (yn − yn )| ≤ (∗) 3 6 3 como sabemos que | sin(yn ) − (yn − 1 yn )| ≤ 6 somando e subtraindo sin(yn ) obtemos 2 |yn |5 2 |yn |5 2 2 (∗) ≤ | sin(xn) − sin(yn )| + ≤ | cos(ξn )| |xn − yn | + , 3 3 120 3 3 120 usando o T. de Lagrange para o seno. Assim, como | cos(ξn )| ≤ 1 e como |yn | ≤ 0.5 temos n+1 5 ≤ 2 3 n +K designando n = |xn − yn | e K = 2 0.5 . Podemos finalmente obter a express˜o de an usando a 3 120 2 a equa¸˜o `s diferen¸as an+1 = 3 an + K que tem como solu¸˜o particular: a constante 3K, ca a c ca e como solu¸˜o global an = 3K + A( 2 )n . Daqui sai 0 = a0 = 3K + A ⇒ A = −3K, portanto ca 3 an = 3K(1 − ( 2 )n ) e 3 n ou seja tamb´m ficamos com |x − yn | ≤ 1 ( 2 )n + e 2 3 253 2 0.54 1 ≤ 3K(1 − ( )n ) ≤ 3K = = 7 = 0.52 · 10−3 3 120 2 · 15 1 . 1920 obtemos y3 = 0, y4 = 15, y5 = −3, y6 = 225, y7 = −90 e encontramos y ∼ −90 = − 2 que 225 5 ainda se encontra muito longe da raiz dominante (que est´ pr´ximo de −5). a o 1 1.d) A coroa circular ´ definida por 1+5 < |z| < 1 + 5 / 1 , ou seja 1 < |z| < 16. e 3 9 6 Pela regra de Descartes h´ duas (ou zero) ra´ a ızes positivas e uma negativa. Como p(1) = − 4 + 1 < 0 e p(0) = 1 > 0, concluimos que s˜o todas reais e ir˜o ficar nos intervalos a a 3 9 3 ] − 16, 0[, ]0, 1[, ]1, 16[. H´ uma raiz dominante porque z1 + z2 + z3 = 0 (o coeficiente em x2 ´ zero) logo a e z1 = −z3 sse z2 = 0, o que n˜o acontece. Assim, o m´todo de Bernoulli converge. Fazendo a e y0 = 0, y1 = 0, y2 = 1, com yn+3 = 15yn+1 − 3yn 2. Se g(x) ´ uma fun¸˜o racional podemos escrevˆ-la como frac¸ao de dois polin´mios e ca e c˜ o de coeficientes inteiros p(x) g(x) = . q(x) Caso existisse uma tal fun¸˜o iteradora, π seria ponto fixo de g, logo π = p(π) ⇔ q(π)π − ca q(π) p(π) = 0, o que significava que π era raiz de uma equa¸˜o polinomial com coeficientes ca inteiros, ou seja um n´ mero alg´brico, o que ´ falso, pois sabemos que π ´ transcendente. u e e e 3. Reparamos que a regra enunciada corresponde a uma equa¸˜o `s diferen¸as hoca a c mog´nea e ak+1 + 2ak − ak−1 − 2ak−2 = 0. e a a Associando a equa¸˜o caracter´ ca ıstica r3 + 2r2 − r − 2 = 0, ´ f´cil ver que 1, −1, e −2 s˜o as solu¸˜es dessa equa¸˜o, e assim temos a solu¸˜o global co ca ca ak = A + B(−1)n + C(−2)n . As constantes podem ser determinadas a partir do sistema       A + B + C = a0 = 4 1 1 1 A 4  A − B − 2C = a1 = 8 ⇔  1 −1 −2   B  =  8   9 9 A + (−1) B + (−2) C = a9 = 180 1 −1 −512 C 180 obtendo-se C = −172/510 = −0.33726, B = −1.49412, A = 5.83137. Assim, a4 = 5.83137 − 1.49412 · (−1)4 − 0.33726 · (−2)4 = −1.05883. Neste caso a coluna seria uma esp´cie de estalactite.... e 4. Como BA : X → X, em que X ´ espa¸o de Banach (logo fechado, n˜o-vazio), basta e c a ver qual a condi¸˜o a impˆr a KA e KB para que haja contractividade e concluir acerca da ca o convergˆncia. Ora, e ||BAx1 − BAx2 ||X ≤ KB ||Ax1 − Ax2 ||Y ≤ KB KA ||x1 − x2 ||X , ∀x1 , x2 ∈ X, portanto ser´ suficiente que KA KB < 1. a Considerando A = 2I em que I ´ a matriz identidade em Rd , temos claramente ||Ax1 − e Ax2 || = 2||x1 − x2 ||, logo KA = 2. Por outro lado com B = 1 I obtemos BA = 2 I e como ´ e 3 3 254 claro temos contractividade. Neste caso simples, podemos mesmo ver que xn = ( 2 )n x0 que 3 converge para zero. 5. a) Como sin(a) ∈ [0, 1], pelo T.Gerschgorin (aplicado a linhas e colunas) os valores pr´prios λ tˆm que pertencer ` reuni˜o de bolas definidas por o e a a |λ − 9 − sin(a)| ≤ | cos(a)| ; |z − 1 − cos(a)| ≤ | cos(a)| ; |λ + 2| ≤ 1 por outro lado podemos aplicar a desigualdade triangular, |λ − 9| − | sin(a)| ≤ |λ − 9 − sin(a)| ≤ 1 ⇒ |λ − 9| ≤ 2, e da mesma forma |λ − 1| − | cos(a)| ≤ |λ − 1 − cos(a)| ≤ cos(a) ⇒ |λ − 1| ≤ 2| cos(a)|. Como n˜o h´ intersec¸˜o das bolas (a unica possibilidade a a ca ´ seria em λ = −1 caso tivessemos cos(a) = −1... o que n˜o acontece), os trˆs valores pr´prios a e o que tˆm que ser reais (a matriz ´ real) e pertencem a [−3, −1], a [−1, 3], e a [7, 11]. e e Sabendo agora que s˜o reais, vemos que λ ∈ [7, 11] pode ser melhorado para a λ ∈ [9 + sin(a) − cos(a), 9 + sin(a) + cos(a)] ⊆ [8 + sin(a), 10 + sin(a)] ⊂ [8, 11]. Da mesma forma, podemos melhorar λ ∈ [−1, 3] para λ ∈ [1 + cos(a) − cos(a), 1 + cos(a) + cos(a)] = [1, 1 + 2 cos(a)] ⊂ [1, 3] intervalo ao qual zero n˜o pertence. Como n˜o a a pode haver nenhum valor pr´prio nulo, a matriz ´ invert´ o e ıvel. Outra possibilidade para concluir da invertibilidade ´ ver que a matriz tem a diagonal e estritamente dominante por linhas, porque |9 + sin(a)| > 4, |1 + cos(a)| > 1 e | − 2| > 1. b) Existe valor pr´prio dominante que est´ no intervalo [8, 11], todos os valores pr´prios o a o s˜o distintos, podemos aplicar o m´todo das potˆncias. Come¸amos a itera¸˜o com o vector a e e c ca x(0) = (1, 0, 0). Portanto, x e x(2) = + (1) Ax(0) (9, 1, 0) 1 = (1, , 0), = σ0 =+ ||Ax(0) ||∞ 9 9 (9 + 1/3, 1 + 2/9, 1/9) = (1, 11/84, 1/84). 9 + 1/3 3 Calculando Ax(2) = ( 395 , 53 , 28 ) obtemos λ ∼ 9.4048. 42 42 k c) O c´lculo de A pode ser efectuado guardando Ak−1 . Para calcular o produto de duas a matrizes efectuamos d3 opera¸˜es (∗, /), logo necessitamos de d − 1 vezes d3 opera¸˜es ∼ d4 . co co Podemos melhorar este valor elevado, determinando apenas a linha (ou coluna) Ak de Ak (i) que nos interessa para resolver o sistema, j´ que Ak = Ak−1 A envolve apenas d2 opera¸˜es, a co (i) (i) 2 reduzindo assim o n´mero de opera¸˜es para d − 1 vezes d . u co Agora, determinar os coeficientes α0 , ..., αd−1 ´ resolver o sistema e α0 I + α1 A + ... + αd−1 Ad−1 + Ad = 0 que tem solu¸˜o caso as matrizes I, A, ..., Ad−1 sejam linearmente independentes. No caso ca de se obter uma linha (ou coluna) independente para I, A, ..., Ad−1 , ´ poss´ determinar e ıvel esses coeficientes em ∼ d3 /3 opera¸˜es (caso contr´rio poder´ co a ıamos ter que verificar d2 − d sistemas...). No caso favor´vel, o n´mero total de opera¸˜es (∗, /) ser´ ∼ d3 −d+ 1 d3 ∼ 4 d3 .) a u co a 3 3 255 No caso concreto de A com a = 0, basta reparar que a primeira linha de A2 = (84, 34, 7) e a de A3 ´ (790, 327, 70). Obtemos e      1 9 84 α0 −790  0 3 34   α1  =  −327  , −70 0 1 7 α2 e como tamb´m sabemos que o tra¸o de A ´ −α2 obtemos imediatamente α2 = −9, assim e c e α1 = −70 − 7α2 = −7, α0 = −790 − 9α1 − 84α2 = −790 + 819 = 29. 6. Sejam λ1 , ..., λd os valores pr´prios de Cω , sabemos que | det(Cω )| = |λ1 · · · λd |. o Reparemos que det(Cω ) = det(D + ωL)−1 det((1 − ω)D − ωU ) = = det(D−1 ) det((1 − ω)D) = |1 − ω|d porque as matrizes L e U tˆm diagonais nulas. Assim, ρ(C)d ≥ |λ1 | · · · |λd | = |1 − ω|d , o e que prova a sugest˜o. Sendo necess´rio que ρ(Cω ) < 1 pela teoria, logo |1 − ω| ≤ ρ(Cω ) < 1 a a implica (com ω real) ω ∈]0, 2[. 7. (Identifica¸˜o de caracteres) Basta reparar que (φm , φn ) = ca p.ex. 6 i=1 O polin´mio caracter´ o ıstico ´ λ3 − 9λ2 − 7λ + 29. e φm (i)φn (i). Assim, (φ1 , φ1 ) = 0 + 1 + 1 + 1 + 1 + 0 = 4, (φ1 , φ2 ) = 0 · 0 + 1 · 0 + 1 · 1 + 1 · 1 + 1 · 1 + 0 · 1 = 3, etc... obtendo-se os sistemas normais (respectivamente para       4 3 3 a1 63 4 3  3 4 2   b1  =  60  ;  3 4 3 2 3 c1 50 3 2  2 f1 e f2 ) :     3 a2 52 2   b2  =  49  3 c2 39   3 2 √ 1 0 2  3 √ 0   0 27 2−17  (a matriz usando a decomposi¸˜o da matriz A = LLT =  2 ca   5 5 1 0 0 7 7 do sistema normal est´ sempre nas condi¸˜es de aplicabilidade do m´todo de Cholesky), a co e obtemos de Lg = (63, 60, 50), g = (31.5, 9.63809, 5.40899), e de Lt x = g assim x = (4.8, 6.2, 6.4). A maior componente ´ a terceira, pelo que a figura pretendida que melhor e aproxima f1 ´ a associada a φ3 . e Finalmente, para f2 , de Lg = (52, 49, 39), g = (23, 7.59929, 1.69031), e de Lt x = g obtemos x = (7, 6, 2), e a figura pretendida ´ a associada a φ1 . e √ 7 2 −1 √ 2 7 0 256 8.2.5 1. 2a. Avalia¸˜o (98) ca 2 Queremos resolver x = g(x). Como 0 < |e−(x−25) /2 | ≤ 1, ent˜o o ponto fixo tem que a estar no intervalo [0, 1]. 2 2 Sendo f(x) = x − g(x), f (x) = 1 +(x− 25)e−(x−25) /2 , e f (x) = −(x − 25)2 e−(x−25) /2 ≤ 0. 2 2 Como f (0) = 1 − 25e−25 /2 ∼ 1, f (1) = 1 − 24e−24 /2 ∼ 1, ent˜o a fun¸˜o f ´ a ca e estritamente crescente e como temos f(0)f (1) = −e−25 2 /2 (1 − e−24 2 /2 ) < 0, |0−f (0)| , min |f (x)| conclu´ ımos que existe uma e uma s´ raiz em [0, 1]. o Usando o teorema de Lagrange, temos |e0 | = |z − 0| ≤ |e0 | ≤ e−25 2 /2 e daqui < 10−25 2 /6 . Basta agora localizar os λ’s usando o T. Gerschgorin. Isso d´-nos, por colunas, λ ∈ a ¯ ¯ ¯ B(10, 1) ∪ B(−6, 3) ∪ B(0, 1), e como as bolas s˜o disjuntas podemos concluir que existe a um valor pr´prio em cada uma, que ser´ sempre real, pois a matriz tamb´m o ´. Por linhas o a e e ¯ ¯ ¯ 1). obtemos λ ∈ B(10, 3) ∪ B(−6, 1) ∪ B(0, Intersectando a informa¸˜o, podemos ordenar λ1 ∈ [9, 11], λ2 ∈ [−7, −5], λ3 ∈ [−1, 1], ca o que significa que √ √ √ √ 3 3 3 3 z1 ∈ [ 9, 11], z2 ∈ [− 7, − 5], z3 ∈ [−1, 1]. 2.b) Calculando o determinante temos p(λ) = (λ − 10)(λ + 6)λ − (2λ − 1) = 0 ⇔ p(λ) = λ3 − 4λ2 − 62λ + 1 = 0. i) No intervalo I = [9, 11] temos p(9) = −152, p(11) = 166. ii) Por outro lado p (λ) = 3λ2 − 8λ − 62 ´ sempre positivo em I porque p (λ) = 6λ − 8 > 0 em I, logo p ´ crescente e e e como p (9) = 109 > 0, fica provado. iii) J´ vimos que p (λ) > 0, basta escolher duas iteradas a iniciais positivas. Escolhendo x−1 = 11, x0 = 10.5, como p(11) = 166, p(10.5) = 66.625, fica provado iv)a). 3 Fazemos agora as itera¸˜es n˜o esquecendo que δ √xn ∼ 1 δxn e portanto bastar´ enconco a a 3 trar |δxn | < 3 · 10−2 , e como xn > 9, basta |en | < 0.27 x1 = x0 − p(x0 ) x0 − x−1 0.5 = 10.5 − 66.625 = 10.16477 p(x0 ) − p(x−1 ) 99.375 257 Quando a aproxima¸˜o ´ 0 o erro relativo ´ sempre 100%, porque |δ| = |z−0| = 1. ca e e |z| 2.a) Trata-se de determinar as raizes do polinomio caracter´ ıstico de   10 −2 −1  −1 −6 0  , ou seja, encontrar λ = x3 : det(λI − A) = 0 A= 0 −1 0 Podemos mesmo ver que p(10) = −19, logo |e−1 | ≤ 1, |e1 | ≤ 0.5. Como sabemos que o erro verifica max |p (x)| 58 |e1 | ≤ |e0 | |e−1 | ≤ 0.5 < 0.111. 2 min |p (x)| 218 2.c)        16 −2 −1 16 −2 −1 16 −2 −1 16 −2 −1 1 1  −1 0 0  −→  −1 (0 0)  −→  −1 − 1 − 16  −→  −1 − 1 − 16  16 16 8 16 8 0 (−1 6) 0 8 (6) 0 8 6+ 1 0 −1 6 2      16 −2 −1 1 0 0 16 −2 −1 1  −1 0 0  =  −1 1 0   0 − 1 − 16  16 8 13 0 −1 6 0 8 1 0 0 2  Assim, Resolvemos Ly = (0, 1, 0) e obtemos y1 = 0, y2 = 1, y3 = −8, depois Ux = (0, 1, −8) d´ a 1 208 x3 = −16 , x2 = −8(1 − 13 ) = −96 , x1 = − 16·13 = −1. 13 13 De forma an´loga ter´ a ıamos para o segundo sistema x = (1248, 9310, 1517)/169 2.d) Escolhemos λ = 6 como aproxima¸˜o e temos ca   16 −2 −1 A + 6I =  −1 0 0  0 −1 6 que ´ a matriz do sistema anterior! Escolhendo x(0) = (0, 1, 0), estamos nas condi¸˜es e co pretendidas em c). Rapidamente obtemos x e daqui x(2) = σ1 (1248, 9310, 1517)/169 (A + 6I)−1 x(1) = = (0.134049, 1, 0.162943) −1 x(1) || ||(A + 6I) 9310/169 ∞ (1) (A + 6I)−1 x(0) = σ1 =− ||(A + 6I)−1 x(0) ||∞ −1 (13, 96, 16) 13 96/13 =( 13 16 , 1, ) 96 96 portanto, como Ax(2) = (−0.822448, −6.13404, −1), obtemos λ(2) = −6.13404, e daqui z2 ∼ −1.83055. Vejamos que p(λ(2) ) = 0.002563865, e como p (−7) = 141, p (−5) = 53, com p crescente, temos |p(z2 ) − p(λ(2) )| 0.002563865 |z2 − λ(2) | ≤ ≤ minx∈[−7,−5] |p (x)| 53 3.a) ¯ ¯ Basta ver que pelo T.Gerschgorin por colunas temos λ ∈ B(0, |a0 |) ∪k B(0, |ak | + 1) ∪ ¯ B(|an−1 |, 1). Esta ultima bola ´ disjunta das restantes porque ´ e 258 |λk | ≤ max{|a0 |, |ak | + 1} = M, k por outro lado |λn−1 + an−1 | ≤ 1, logo |λn−1 | ≥ |an−1 | − 1. Assim como |λk | ≤ M < |an−1 | − 1 ≤ |λn−1 |, n˜o h´ intersec¸˜o das bolas! a a ca 3.b) Neste caso   0 1 0 0 0  0 0 1 0 0     0 0 0 1 0     0 0 0 0 1  −1 0 3 −2 8 e portanto pelo teorema anterior temos |λ5 −8| ≤ 1. Por outro lado como por linhas |λi | ≤ 1, ¯ e |λ5 − 8| ≤ 6 n˜o intersecta a outra, conclu´ a ımos que est˜o todas as outras na bola B(0, 1). a (0) Como a raiz dominante ´ tal que |λ5 − 8| ≤ 1,escolhemos x = (0, 0, 0, 0, 1). e x(1) = σ0 x(2) Assim λ(2) = (Ax(2) )5 x5 (2) (0, 0, 0, 1, 8) Ax(0) 1 = = (0, 0, 0, , 1); ||Ax(0) ||∞ 8 8 (1) Ax 2 4 = σ1 = (0, 0, , , 1) (1) || ||Ax 31 31 ∞ + 8. = 6−8 31 4.a) Para determinar a derivada precisamos de calcular Am (f + h) − Am (f) = 0 (f(y) + h(y))m dy − x x = 0 mf (y)m−1 h(y)dy + 0 Pf,h (y)h(y)2 dy = x = 0 mf (y)m−1 h(y)dy + o(||h||∞) x x x (f (y))m dy 0 = portanto Am,f (h) = m 0 f(y)m−1 h(y)dy 4.b) X ´ fechado e convexo, vamos provar as outras condi¸˜es do Corol´rio do T. Ponto Fixo e co a de Banach. Come¸amos por ver que c ||Am,f ||L(.,.) e portanto como temos 1 1 f (x) = φ(x) − 4 4 x ||Am,f (h)||∞ = sup ≤m ||h||∞ h=0 1 0 |f (x)|m−1 dx < mK m−1 (f (y))5 dy + 0 1 4 x (f (y))2 dy = Bf (x) 0 ent˜o Bf = 1 A5,f + 1 A2,f e temos para f ∈ X a 4 4 1 1 1 3 3 ||Bf ||L(.,.) = || A5,f + A2,f ||L(.,.) ≤ (5( )4 + 2( )2 ) < 1 4 4 4 4 4 259 Falta ver que B(X) ⊆ X. Ora, 1 1 ||Bf (x)|| ≤ ||φ(x)|| + || 4 4 4.c) Come¸ando com f0 = 0, temos c 1 f1 = φ 4 portanto ||e0 || ≤ 1 1 ||f1 − f0 || = 4|| φ|| ≤ 1 1−L 4 x 0 1 (f (y))5 dy|| + || 4 x 0 3 (f(y))2 dy|| ≤ . 4 1 como ||en || ≤ ( 3 )n||e0 ||, basta que ( 3 )n < 100 4 4 5.a) Vamos aplicar o Teorema do Ponto Fixo ao conjunto fechado e convexo S = [−1, 1] × [−1, 1] com a fun¸˜o g obtida a partir da equivalˆncia: ca e x cos(xy) − 3y + 1 = 0 ⇔ y sin(x + y) − 4x − 1) = 0 ⇔ (x, y) = ( y sin(x + y) − 1 , x cos(xy) + 1 ) = g(x, y) 4 4 3 3 f(x, y) = (−1, 1) ⇔ Vemos que g(S) ⊆ S, porque se x, y ∈ S ent˜o a y 1 1 x 1 2 | sin(x + y) − | ≤ , | cos(xy)) + | ≤ , 4 4 2 3 3 3 o que implica g(S) ⊆ [− 1 , 1 ] × [− 2 , 2 ]. Como 2 2 3 3 Jg (x, y) = cos(x + y) −xy sin(xy) + 1 cos(xy) 3 3 y 4 1 4 sin(x + y) + y cos(x + y) 4 −x2 sin(xy) 3 ent˜o para qualquer x, y ∈ X a ||Jg (x, y)||1 = max | y cos(x + y)| + | −xy sin(xy) + 1 cos(xy)|, 4 3 3 | 1 sin(x + y) + y cos(x + y)| + | −x sin(xy)| ≤ 4 4 3 1 1 1 1 1 1 ≤ max 4 + 3 + 3 , 4 + 4 + 3 = 11 < 1 12 2 Daqui conclu´ ımos pelo T. Ponto Fixo que existe um e um s´ ponto fixo de g em X, o o que ´ equivalente a ser solu¸˜o da equa¸˜o f (x, y) = 0. e ca ca N˜o pode existir nenhuma raiz se |x| > 1 ou |y| > 1, porque: (i) se |x| > 1 ent˜o a a y 1 |y| + 1 1 x 1 1 |x| = | sin(x + y) − | ≤ = | cos(xy) + | + ≤ 4 4 4 4 3 3 4 1 x 1 1 x 7 ≤ | |+ + =| |+ 4 3 3 4 12 12 260 o que implica 11 |x| ≤ 12 se |y| > 1 ent˜o a 7 12 ⇒ |x| ≤ 7 11 < 1, o que d´ uma contradi¸˜o; (ii) da mesma forma a ca x 1 |x| + 1 1 y 1 1 |y| = | cos(xy) + | ≤ = | sin(x + y) − | + ≤ 3 3 3 3 4 4 3 1 y 1 1 y 7 ≤ | |+ + =| |+ 3 4 4 3 12 12 e isto d´ a mesma contradi¸˜o porque implica que |y| < 1. a ca 6. As fun¸˜es base podem ser φ0 (x) = 1, φ1 (x) = (x − 1 )2 o que d´ o sistema normal co a 2 1 1 12 1 12 1 80 a b = 2 π π 2 −8 2π 3 porque 1 (φ0 , φ0 ) = 0 1 12 dx = 1, (φ0 , φ1 ) = 1 1 1 1 (x − )2 dx = (x − )3 |x=1 = , x=0 2 3 2 12 0 1 1 1 (x − )5 |x=1 = , (φ1 , φ1 ) = x=0 5 2 80 e 1 2 sin(πx)dx = − cos(πx)|x=1 = , x=0 π π 0 1 1 12 4 (x2 − x + ) sin(πx)dx = − 3 + . 4 π 4π 0 1 (φ0 , f ) = (φ1 , f ) = Resolvendo o sistema obtemos (a, b) = (0.980162, −4.12251) 8.2.6 Teste (99) 1. a) Temos e200.48 f (x) = 1 ⇔ f (x) = 0 ⇔ x = − 1 (cos( x ) + sin(x)) = g(x). Por outro lado, 2 2 |g (x)| ≤ 3 < 1, pois 4 |g (x)| = | 11 x 1 1 1 3 sin( ) − cos(x)| ≤ + = = L < 1. 22 2 2 4 2 4 Aplicando T.P.Fixo, em que E = R fechado, convexo, n˜o vazio, com g(R) ⊆ R,temos a existˆncia e unicidade em R. e Por outro lado, −1 = −1 1 x −1 (1 + 1) ≤ − (cos( ) + sin(x)) ≤ (−1 − 1) = 1 2 2 2 2 261 ou seja g(R) ⊆ [−1, 1], logo z = g(z) ∈ [−1, 1]. Sabemos que |en| ≤ Ln |z −x0 |, fazendo x0 = 0, temos portanto se ( 3 )n < 0.1 teremos |δn | = |en | < 0.1. 4 |z| Isso acontece se n log(0.75) < log(0.1) ⇔ n > −1/ log10 (0.75) = 8.0039, ou seja, basta efectuar 9 itera¸˜es. co n ((Outro processo, seria considerar um z : |˜| ≤ |z|, e assim |δn | = |en | ≤ |ez|| e bastaria ˜ z |z| |˜ z exigir |en | ≤ 0.1|˜| com as estimativas habituais.)) b) Como f (−1) < 0 a fun¸˜o ´ negativa em [−1, z[ e a ´rea negativa ´ dada por ca e a e A(x) = xA (x) xf (x) ˜ δx = δx f (t)dt, tendo-se |δA | = A(x) A(x) −1 x |en | |z| ≤ Ln = ( 3 )n (note que z = 0), 4 e quando x = z, como f(z) = 0 e A(z) = 0 (porque a ´rea ´ mesmo negativa!) ent˜o a e a ˜A | = 0 e o problema ´ muito bem condicionado pr´ximo de z. |δ e o 2. a) Vamos usar a regra de Descartes. Basta reparar que se x > 0 ent˜o temos a ax6 + bx4 + cx2 + dx − 1 = 0, o que corresponde a + + + + − e h´ uma varia¸˜o m´ a ca ınima de sinal, logo existe uma e uma s´ raiz positiva (reparando tamb´m que b, c, d nulos n˜o alteram as varia¸˜es m´ o e a co ınimas). 6 4 2 Se x < 0 ent˜o p(x) = ax + bx + cx − dx − 1, e assim p(−x) d´ tamb´m + + + + +−, a a e i.e: uma varia¸˜o de sinal, e existe uma s´ raiz negativa. ca o Para determinar um intervalo, usamos a regra do m´ximo, reparando que | ± d| = d, e a ˜ = max{a, b, c, d} = max{a, b} que M = max{b, c, d, 1} = max{1, b}, bem como M a fun¸˜o ´ par, logo z + = −z − , ca e 1 max{b, 1} < z+ < 1 + , 1 + max{a, b} a b) Come¸ando com x0 = 0, x1 = 0, x2 = 1, temos x3 = −10x2 − 2x1 + x0 = −10. c Sucessivamente x4 = −10x3 − 2x2 + x1 = 100 − 2 = 98, x5 = −10 · 98 + 20 + 1 = −959. Ou seja, y5 = x5 = −959/98 = −9.78571... x4 Sendo q(x) = x3 + 10x2 + 2x − 1, para avaliarmos o erro, vemos que q(y5 ) = −0.0509838, que q(y4 ) = q(−9.59) = 17.527 > 0, a que q (x) = 3x2 +20x+ 2 varia entre 93.567 e 82.104 no intervalo I = [y5 , y4 ] onde estar´ a raiz z. (Note que q = 6x + 20 < 0 se x < −10 ). Usamos a estimativa a posteriori 3 |e5 | = |z − y5 | ≤ |f(y5 )| 0.0509838 = = 0.000621. 2 + 20x + 2| minx∈I |3x 82.104 1 c) Isto significa que uma raiz de x3√ 10x2 + 2x − 1 ser´ ∼ 4.351 = 0.229832, e portanto + a temos as ra´ reais de (∗) iguais a ± 0.229832 = ±0.479408. ızes Da al´ ınea b) surgem as ra´ complexas ±3.12812i. ızes 262 Para determinar as restantes poderiamos dividir x3 + 10x2 + 2x − 1 por (x + 9.78571) e por (x − 0.229832), usando a regra de Ruffini (o que daria ∼ x + 0.444122). Mas, muito mais f´cil ´ reparar que −z1 z2 z3 = −1, logo a e z2 ∼ 1 = −0.444628 0.229832 · (−9.78571) Portanto as restantes ra´ s˜o ±0.666805i. ızes a (Os valores com 6 decimais, seriam ±0.479403, ±0.666830i, ±3.12812i, ou seja, foram obtidos excelentes resultados!) 3. a) Para calcular a derivada de Fr´chet, e x P (f + h) − P f = 0 g(f (t) + h(t)) dt − g(f (t)) dt como g ∈ C 2 (R), usamos a f´rmula de Taylor g(y + ) − g(y) = g (y) + 1 g (ξ) 2 , com o 2 ξ ∈]y; y + [, aplicada aos valores y = f(t), = h(t). Obtemos x 1 P (f + h) − P f = g (f (t))h(t) + g (ξt ) h(t)2 dt, 2 0 em que ξt ∈]f(t), f (t) + h(t)[. Assim, Pf h = cont´ ınuo, pois x x g 0 (f(t))h(t)dt que ´ um operador linear e x ||P (f + h) − P f − 0 g (f (t))h(t)||∞ = || a max |g (ξ)| ||h||2 = o(||h||∞), ≤ ∞ 2 ξ∈S 0 1 g (ξt ) h(t)2 dt||∞ ≤ 2 em que design´mos a S = [ min {f (t), f (t) + h(t)}, max {f (t), f (t) + h(t)}] t∈[0,a] t∈[0,a] com ||h||∞ ≤ 1. Querendo calcular ||Pf ||L(.,.) , reparamos que ||Pf h||∞ x 1 = ||h||∞ maxx∈[0,a] | 0 g (f (t))h(t)dt| ||h||∞ x (t))| |h(t)| ≤ 0 maxt∈[0,a] |g (f||h||∞ dt ≤ a||g ◦ f ||∞ ||Pf ||L(.,.) = suph=0 ||Pf h|| , ||h|| e que ≤ b) Designando (Bf)(x) = f (x)2 e (P f )(x) = x cos(f(t)) dt, 0 temos f = Bf − P f ⇔ f = Af, designando A = B − P. Podemos tentar aplicar o corol´rio do teorema do ponto fixo, reparando que (Bf h)(x) = a 2f(x)h(x), pois B(f + h) − Bf = (f + h)2 − f 2 = 2f h + h2 263 Assim ||Bf ||L(.,.) = suph=0 ||2f h|| = 2||f ||∞ , e pela al´ ınea anterior ||Pf ||L(.,.) ≤ a||−sin(f )||∞ ≤ ||h|| a, portanto ||Af ||L(.,.) ≤ ||Bf ||L(.,.) + ||Pf ||L(.,.) ≤ 2||f ||∞ + a. Sabemos assim que para f ∈ X temos ||(B − P )f ||L(.,.) ≤ 2 1 + a < 1 ao impˆr a < 1 . o 4 2 X ´ uma bola fechada, logo um conjunto convexo, fechado e n˜o-vazio. e a Falta ver que se f ∈ X ent˜o Af ∈ X. a x ||Af ||∞ = ||f − 2 0 1 1 cos(f (t)) dt||∞ ≤ ( )2 + a|| cos(f )||∞ = + a, 4 16 1 3 portanto basta que 16 + a ≤ 1 , ou seja, basta que a ≤ 16 < 1 para que todas as condi¸˜es co 4 2 estejam verificadas. x x f0 = 0, f1 = Af0 = 0 − 0 cos(0) dt = −x, f2 = Af1 = (−x)2 − 0 cos(−t) dt = x2 − sin(x). 1 Para o majorante com a = 0.1, temos L = 1 + 0.1, logo ||e2 ||∞ ≤ L2 1−L || − x − 0||∞, e 2 2 fica ||e2 ||∞ ≤ 0.6 0.1 = 0.09. 0.4 8.2.7 1a. Avalia¸˜o (99) ca 1. a) Basta reparar que a ´rea=volume=Vz ´ dado pela ´rea do rectˆngulo= zf (z) subtra´ a e a a ıda z da ´rea do gr´fico de f que ´= 0 f (x)dx = F (z) − F (0). a a e Quanto ` unicidade, basta reparar que sendo h(x) = xf(x) − F (x) + F (0) − V, temos a h (x) = f (x) + xf (x) − f(x) = xf (x) > 0 se x > 0. Portanto, como consequˆncia do Teorema de Rolle haver´ no m´ximo uma raiz. e a a b) F (x) = 1 ( 1 x5 + x3 ) + x. Assim obtemos a equa¸˜o ca 6 5 1 1 4 1 5 (z + 3z 3 ) + z − ( z 5 + z 3 ) − z = 1 ⇔ z 5 + 2z 3 = 6 ⇔ 2z 5 + 5z 3 − 15 = 0 6 6 5 5 que podemos aproximar usando o m´todo de Newton. e 5 Notamos que sendo h(x) = 2x + 5x3 − 15, temos h(1) = −8, h(2) = 89, e o unico ´ zero existe em [1, 2]. Como h (x) = 40x3 + 30x ≥ 0 em [1, 2] temos as condi¸˜es suficientes co de convergˆncia satisfeitas se come¸armos com x0 = 2, x1 = 1.59545, x1 = 1.34315, x2 = e c 1.24487, x3 = 1.23164. Podemos usar a estimativa a posteriori |e3 | ≤ |h(x3 )| 0.00993061 = ≤ 0.0004. min[1,2] |h (x)| 25 2. a) Basta ver que estamos nas condi¸˜es do T. ponto fixo. Calculando a norma da co jacobiana no convexo D = [−1, 1] × [−1, 1] JT (x, y) = 1 4 cos( x−y ) − y sin(xy/2) cos( x−y ) − x sin(xy/2) 2 2 2 2 − sin(x + y) − y cos(xy) − sin(x + y) − x cos(xy) ≤ 1 max{ 3 + 3 , 1 + 1} = 3 4 2 2 4 264 ∞ ≤ Por outro lado ´ claro pela figura que se verifica T (D) ⊂ D, mas devemos provar pois e s´ algumas part´ o ıculas foram representadas. Assim, ||T (x, y)||∞ ≤ 1 1 max{2, 2} = , para (x, y) ∈ D. 4 2 As condi¸˜es do T. P. Fixo est˜o verificadas, e existe um e um s´ (x, y) : T (x, y) = (x, y). Se co a o repetirmos a transforma¸˜o obtemos uma sucess˜o pelo m´todo do ponto fixo que converge ca a e para o ponto fixo. b) Sabendo que ||en ||∞ ≤ ( 3 )n ||e0 ||∞ ≤ ( 3 )n temos ( 3 )n < 10−8 se n > − log 8 0.75 = 4 4 4 10 64.0314. Logo, um algoritmo pode ser x=0.0; y=0.0; Do[w=N[sin( x−y )+cos( xy )]/4;y=N[cos(x+y)−sin(xy)]/4;x=w,{k,1,65}]; 2 2 Print[ ( ,N[x,16], , ,N[y,16], ) ] que dar´ (0.2556140945030951, 0.2099772200205733), n´meros que tˆm todos os 16 a u e d´ ıgitos correctos! ¯ 3. a) Analisando por colunas, valores pr´prios est˜o localizados em B(− sin(a2 ), |1 + o a 2 2 ¯ ¯ cos(a )|), B(0, |1 + cos(a)| + | cos(a)|), B(4, | cos(a )|). Para vermos que a ultima bola n˜o intersecta as restantes, temos |λ − 4| ≤ | cos(a2 )| ⇒ ´ a 2 |λ| ≥ 4 − | cos(a )| ≥ 3. Por outro lado |λ + sin(a2 )| ≤ |1 + cos(a2 )| ⇒ |λ| ≤ 1 + | cos(a2 )| + | sin(a2 )| < 3, e tamb´m |λ| ≤ |1 + cos(a)| + | cos(a)| ≤ 3. e A unica hip´tese de intersec¸˜o ´ |λ| = 3, mais concretamente λ = 3, quando cos(a) = 1. ´ o ca e Nesse caso basta ver que λ = 3 n˜o ´ valor pr´prio. A matriz fica a e o   0 1 0 −3 1 0  0  , det(A0 −3I) = 0 −3 1 = −3(−3+2)−(0+2) = 3−2 = 1 = 0. 0 1 A0 = −2 −2 4 −2 −2 1 Calculando agora duas itera¸˜es co A0 [0 0 1]T = [0 1 4]T , logo u(1) = [0 1 1]T 4 1 A0 [0 1 1]T = [ 1 1 7 ]T , logo u(2) = [ 14 2 1]T 4 4 2 7 e basta ver que λ(2) = [A0 u(2) ]3 = − 1 − 4 + 4 = 23 . 7 7 7 b) Sendo un+3 = 4un+2 − 2un+1 − 2un, temos para u0 = 0, u1 = 0, u2 = 1 que u3 = 4, u4 = 16 − 2 = 14, u5 = 56 − 8 − 2 = 46. Obtemos z ∼ u5 /u4 = 23/7 o que ´ igual ` aproxima¸˜o anterior. Isto explica-se porque e a ca a matriz de a) ´ a matriz companheira do polin´mio anterior, e vimos que a aplica¸˜o do e o ca m´todo das potˆncias ` matriz companheira, corresponde a aplicar o m´todo de Bernoulli. e e a e c) Tendo         −1 1 0 −1 1 0 −1 1 0 −1 1 0 −1 1  →  0 −1 1  A0 −I =  0 −1 1  →  0 −1 1  →  0 −2−2 2 =4 3 −2 −2 3 2 −2 3 2 4 −1 −1 265 ficamos com  e resolvendo Ly = [010], d´ y = [01 − 4], e Uw = [01 − 4] d´ w = [334], ou seja [ 3 3 1]. a a 44 4. a) O polin´mio caracter´ o ıstico associado ` equa¸˜o `s diferen¸as ´ x3 − 4x2 + 2x + 2, a ca a c e e verifica-se que as suas ra´ s˜o a, b, c. ızes a Logo un = Aan + Bbn + Ccn e de u0 = 2, u−1 = 0, u−2 = 0 retiramos o sistema      A 2 1 1 1  1/a 1/b 1/c   B  =  0  2 2 2 C   0     1/a 1/b 1/c  A 0.0354 −0.159 0.147 2 0.0708  B  =  −0.516 1.387 0.787   0  =  −1.032  C 1.48 −1.23 −0.934 0 2.96 e conclu´ ımos que un = 0.0708(−0.481194)n − 1.032(1.31111)n + 2.96(3.17009)n o termo que domina na sucess˜o quando n → ∞ ´ a potˆncia de 3.17... pelo que podemos a e e prever que un ∼ 2.96(3.17009)n > 106 quando 10 log( 2.96 ) = 11.033... ou seja quando n ≥ 12. n> log 3.17009 6     −1 1 0 1 0 0 −1 1 0  0 −1 1  =  0 1 0   0 −1 1  −2 −2 3 2 4 1 0 0 −1 Na realidade, obtemos u11 = 962112 e u12 = 3050016. b) Se come¸armos com u0 = 12, u−1 = 10, u−2 = 6, obtemos c      0.0354 −0.159 0.147 12 −0.28  −0.516 1.387 0.787   10  =  12.4  1.48 −1.23 −0.934 6 −0.125 e portanto un = −0.27(−0.481194)n + 12.4(1.31111)n − 0.125(3.17009)n converge para −∞. Se come¸armos com u0 = 12, u−1 = 10, u−2 = 5, obtemos un = −0.43(−0.481194)n + c 11.6(1.31111)n + 0.81(3.17009)n e a sucess˜o ir´ convergir para +∞. a a Portanto, com uma mudan¸a m´ c ınima nas condi¸˜es iniciais (n˜o poderia ser menor se co a consideramos n´meros naturais) h´ uma mudan¸a radical no comportamento da sucess˜o. u a c a Essa mudan¸a ´ ali´s ´bvia quando efectuamos z = axn , j´ que δz = δa + nδx e mesmo que c e a o a admitissemos δx = 0 ir´ ıamos ter δz = δa o que neste caso ´ bastante grave, j´ que se z → ∞ e a basta que δa = 0 para que ez = zδz → ∞. 266 5. a) T (f + h) − T f = portanto Tf h = 2 x 0 x f 0 f (t)2 + 2f (t)h (t) + h (t)2 dt − 0 f (t)2 = (T (f + h) − T f ) = 2f (x)h (x) + h (x)2 h j´ que a x x x 0 2f (t)h (t) + h (t)2 dt ||T (f +h)−T f −Tf h||∞ +||(T (f+h)−T f−Tf h) ||∞ = || Por outro lado, x 0 h (t)2 dt||+||h (x)2 || ≤ (a+1)||h ||2 e assim Uf h = x 2f h 0 pois U (f + h) − Uf = 0 2f(t)h(t) + h(t)2 dt (U (f + h) − U f ) = 2f (x)h(x) + h(x)2 x ||U (f +h)−U f−Uf h||∞ +||(U (f+h)−Uf −Uf h) ||∞ = || Portanto a F-derivada de b) Temos ||Tf ||L(C 1 ) = sup e tamb´m e ||Uf ||L(C 1 ) = sup Assim e conv´m que e 2|| 2|| x f 0 1 (x α 0 h(t)2 dt||+||h(x)2 || ≤ (a+1)||h||2 − Uf + Tf) ´ e 1 (−Uf α + Tf ). h || + 2||f h || (a + 1)||f || ||h || ≤2 ≤ 2(a + 1)||f ||∞ ||h|| + ||h || ||h|| + ||h || + 2||f h|| (a + 1)||f || ||h|| ≤2 ≤ 2(a + 1)||f ||∞ ||h|| + ||h || ||h|| + ||h || x f h|| 0 1 2(a + 1) ||f ||C 1 || (Tf − Uf )||L(C 1 ) = α α 2(a + 1) ||f ||C 1 < 1 α c) Considere a = 1, α = 8. Mostre que se ||f ||C 1 ≤ 1, existe um unico ponto fixo do ´ operador A e determine um majorante do erro de f2 . Da al´ ınea anterior temos 1 ||Af || ≤ 2 Como a+1 ||Af ||C 1 ≤ (||f ||2 1 + 1) C α porque 1 1 ||Af ||C 1 = α || 0 1 − f (t)2 + f (t)2 dt||∞ + α ||1 − f (t)2 + f (t)2 ||∞ ≤ 1 a 1 ≤ α (a + a||f ||2 + a||f ||2 + 1 + ||f ||2 + ||f ||2 ) ≤ α (||f|| + ||f ||)2 + α (||f|| + ||f ||)2 ∞ ∞ ∞ ∞ x temos ||Af ||C 1 ≤ a+1 2 1 (||f ||2 1 + 1) ≤ 2 = . C α 8 2 267 8.3 8.3.1 Trabalhos computacionais Trabalhos computacionais (97) x cos(x2 ) + 1 = 0 Problema 1 : Determine todas as ra´ da equa¸˜o ızes ca no intervalo [−3, 3] com um erro relativo inferior a 10−10 . Indique o m´todo que utilizou em cada caso, mostrando a convergˆncia e as estimativas e e de erro. Indique os valores de todas as iteradas e compare, pelo menos num caso, dois m´todos distintos, relativamente ` rapidez de convergˆncia. Aplique um m´todo do ponto e a e e fixo (com convergˆncia linear) para determinar uma das ra´ e ızes. Problema 2 : Considere a seguinte equa¸˜o alg´brica: ca e a p(x) = x5 − ax4 + 4x − a3 = 0 2 onde a ´ um parˆmetro real. e a a) Baseando-se nos resultados vistos nas aulas, relativamente ` localiza¸˜o de ra´ a ca ızes, trace os gr´ficos dos limites, inferior e superior do anel onde se prevˆ encontrar as ra´ a e ızes quando a varia em [−5, 5]. b) Usando um m´todo iterativo, coloque no plano complexo as 5 curvas que correspone dem ` localiza¸˜o das 5 ra´ a ca ızes quando a varia entre [−5, 5]. (N˜o precisa de justificar a a convergˆncia, no caso de ra´ complexas.) e ızes c) Considere a sucess˜o un+5 = 2un+4 − 2un+1 + 32un . Verifique experimentalmente a que un+1 /un → 2.593068..., considerando ui = 0 se i = 0, 1, 2, 3 e u4 = 1. Justifique a convergˆncia para aquele valor. e Problema 3 : Considere a equa¸˜o: ca y 3 + bx =d c em que a ≥ −1, b, c > 0, d ∈ R, s˜o valores fixos. Esta equa¸˜o define implicitamente y a ca como fun¸˜o de x, ou seja, dado um certo x, obtemos o valor y(x) resolvendo a equa¸˜o em ca ca y. Para determinar aproximadamente os valores de y(x) utilize o m´todo de Newton. e a) Mostre que qualquer que seja x ∈ R as condi¸˜es suficientes para a convergˆncia do co e m´todo de Newton est˜o asseguradas. e a b) Considere trˆs diferentes valores para a, b, c, d. Trace o gr´fico de y como fun¸˜o e a ca de x, no intervalo [−5, 5] (calcule no m´ ınimo 20 pontos). Use como crit´rio de paragem e |yn+1 − yn | ≤ 0.001 . c) Para os valores a, b, c, d considerados em b) mostre que existe um unico ponto fixo ´ −8 de y(x) em R e determine-o com um erro absoluto inferior a 10 . eax+y + Problema 4 : Considere as curvas em R2 parametrizadas por C : [0, 2π] → R2 t → (r(t), s(t)) 268 onde r, s ∈ C 1 [0, 2π]. Considere as seguintes curvas fechadas: C1 : C2 : r(t) = 1 + t(t − 2π), s(t) = 1 + 2 sin(t)e2−t/2 r(t) = sin(t), s(t) = cos(t − 4) + 4 a) Usando um m´todo iterativo, determine os pontos do plano onde as curvas C1 e C2 e se intersectam. b) Considere agora curvas da forma C(r) : [0, 2π] → R2 t → r(t)(cos(t), sin(t)) onde r(t) = cos(t/2)(2π − t)t/a + b. Definindo rn+1 (t) = r(rn (t)), r0 (t) = t, considere as curvas C(rn ). Mostre que, no limite, quando n → ∞, as curvas C(rn ) convergem para um circulo se a = 8, b = 2. Determine o valor da ´rea desse circulo. a c) Estabele¸a condi¸˜es gerais sobre uma fun¸˜o r(t) de forma a que, no limite, as curvas c co ca n C(r ), consideradas em b), sejam circulos. d) Se considerar a = 4 e b = 2, na al´ ınea b), para n suficientemente grande (p.ex: n n+1 n > 20), trace as curvas C(r ) e C(r ). Determine aproximadamente os valores de t para os quais as curvas se intersectam, isto ´: C n (t) = C n+1 (t), quando n tende para infinito. e Determine aproximadamente os pontos de interse¸˜o da curva C(r32 ) com a recta y = ca 6x − 9 se a = 4, b = 0.5. Problema 5 : Considere duas fun¸˜es f, g ∈ C 1 (R). Pretendem-se determinar pontos co (x, f (x)) que est˜o ` menor distˆncia (euclidiana) de pontos (y, g(y)). a a a a) Considere primeiro o caso trivial, em que f intersecta g, e dˆ um exemplo de duas e fun¸˜es diferenci´veis em R que se intersectam em todos os pontos do intervalo [−2, 2]. co a Indique tamb´m um exemplo em que a distˆncia entre f e g ´ um ´ e a e ınfimo em R e consequentemente n˜o ´ atingida em nenhum ponto. a e b) No caso em que f n˜o intersecta g demonstre que em pontos em que a distˆncia ´ a a e m´ ınima, ou seja: ||(x, f(x)) − (y, g(y))||2 = min ||(a, f (a)) − (b, g(b))||2 a,b∈R temos f (x) = g (y) e as normais coincidem. Sugest˜o: Verifique primeiro que se um ponto da fun¸ao (z, f (z)) est´ uma distˆncia a c˜ a a m´nima de um outro ponto qualquer (a, b), ent˜o a normal ao ponto (z, f (z)) intersecta ı a (a, b). c) Aplique o resultado anterior para determinar esses pontos (atrav´s de um sistema) e x no caso de ter fun¸˜es f, g n˜o triviais... um exemplo: f (x) = e , g(x) = x + cos(x) − 4. co a d) Usando as fun¸˜es f(x) = ex , g(x) = x + cos(µx) − 4, trace um gr´fico da distˆncia co a a em fun¸˜o de µ. Determine, justificando, para que o valor tende a distˆncia quando µ → ∞. ca a Observa¸ao: Este problema corresponde, por exemplo, a encontrar o local onde efectuar c˜ uma ponte com o m´nimo comprimento... ı 269 Problema 6 : Considere um t´ nel cujas paredes s˜o definidas por duas fun¸˜es f1 e f2 , u a co positivas, num intervalo [0, R] e com uma distˆncia m´ a ınima h > 0 entre elas (ver figura). No ponto A sup˜e-se existir uma fonte emissora de um projectil segundo um ˆngulo α ∈ [ −π , π ], o a 4 4 e sup˜e-se que o impacto desse projectil nas paredes do t´nel causa uma reflex˜o perfeita o u a (ou seja o ˆngulo de reflex˜o ´ sim´trico ao ˆngulo de incidˆncia, relativamente ` normal). a a e e a e a a) Construa, a partir de 3 pares distintos de fun¸˜es que definam essas paredes, gr´ficos co a que relacionem o ˆngulo de emiss˜o do projectil com o ponto de impacto quando x = R a a (ver figura 2). (Um desses pares dever´ ser: f1 = sin(x) + 1, f2 = cos(x) + 3.5 no intervalo [0, 10]) a Para efectuar este trabalho ter´ que determinar cada ponto de impacto, resolvendo uma a equa¸ao n˜o linear do tipo fi (x) = ax + b, usando um m´todo iterativo. c˜ a e b) Efectue tamb´m gr´ficos que indiquem o comprimento da traject´ria e o ˆngulo de e a o a impacto, em fun¸˜o do ˆngulo de emiss˜o, para os exemplos estudados em a). ca a a c) Considerando f1 = sin(ax + b) + 1 e f2 (x) = cos(cx + d) + 3.5, construa um procedimento que lhe permita tentar identificar os parˆmetros a, b, c, d, a partir do conhecimento a dos gr´ficos obtidos em a). a Ou seja, a partir dos resultados das experiˆncias com a emiss˜o de proj´cteis, pretendee a e se tentar determinar a forma do t´nel. Na pr´tica, deve considerar valores de a, b, c, d u a aleat´rios (que corresponder˜o ao t´nel a determinar) e construir um processo que lhe o a u permita reencontrar esses valores. Isso deve ser feito, considerando certos valores iniciais ca a0 , b0 , c0 , d0 e a partir da compara¸˜o dos dois resultados obter novos valores a1 , b1 , c1 , d1 que melhor se ajustem... at´ que este processo iterativo permita obter os verdadeiros valores. e 8.3.2 Trabalhos computacionais (98) x5 = 1 − x cos(xp ) Problema 1 : Determine todas as ra´ reais da equa¸˜o ızes ca assegurando um erro relativo inferior a 10−10 , para p = 0, 2, 4, 6, 8. a) Indique o m´todo que utilizou em cada caso, mostrando a convergˆncia e as estimae e tivas de erro. Indique os valores de todas as iteradas e compare, pelo menos num caso, dois m´todos distintos, relativamente ` rapidez de convergˆncia. e a e b) Determine uma aproxima¸˜o para as ra´ ca ızes complexas no caso p = 0, utilizando 3 itera¸˜es do m´todo de Newton, come¸ando com x0 = −0.8 + 0.7i e com x0 = 0.4 + 0.9i. co e c c) Determine a raiz real z de f(x) = x51 + 50xex = 50, usando o m´todo de Newton, e −10 com um erro relativo inferior a 10 . Se calcularmos f (˜), com z = z + 0.1, o valor ser´ z ˜ a pr´ximo de 0? Justifique! o Problema 2 : Considere as curvas em R2 parametrizadas por C : [−π 1/3 , π 1/3 ] → R2 t → (r(t), s(t)) onde r, s ∈ C 1 [−π 1/3 , π 1/3 ]. a) Considere as seguintes curvas fechadas: 270 C1 : r(t) = (cos(t))2 + t2 − 1, s(t) = sin(t3 − 1) + (sin(t3 ))2 C2 : r(t) = (sin(t))2 − t2 + 1, s(t) = 1 − sin(t3 − 1) − (sin(t3 ))2 Usando um m´todo iterativo, determine os pontos do plano onde as curvas C1 e C2 se e intersectam. 1 b) Sendo r(t) = a sin(t/2)(2π − t)t + b, definimos agora curvas da forma C(r) : [0, 2π] → R2 t → r(t)(cos(t), sin(t)) Definindo rn+1 (t) = r(rn (t)), r0 (t) = t, considere as curvas C(rn ). Mostre que, no limite, quando n → ∞, as curvas C(rn ) convergem para um c´ ırculo se a = 10, b = 2. Determine o valor da ´rea desse c´ a ırculo. c) Estabele¸a condi¸˜es gerais sobre uma fun¸˜o r(t) de forma a que, no limite, as curvas c co ca n C(r ), consideradas em b), sejam c´ ırculos. d) Se considerar a = 3 e b = 1, na al´ ınea b), para n = 1000, trace as curvas C(rn ) e C(rn+1 ). Determine aproximadamente os valores de t para os quais as curvas se intersectam, isto ´: C(rn (t)) = C(rn+1 (t)). e Trace C(rn ), C(rn+1 ), C(rn+2 ), C(rn+3 ), para n > 100, e justifique os gr´ficos obtidos. a Problema 3 : a) Considere duas fun¸˜es f, g ∈ C 1 (R). Pretendem-se determinar pontos (x, f (x)) que co est˜o ` menor distˆncia (euclidiana) de pontos (y, g(y)). No caso em que f n˜o intersecta a a a a g mostre que, em pontos em que a distˆncia ´ m´ a e ınima, ou seja: ||(x, f(x)) − (y, g(y))||2 = min ||(a, f (a)) − (b, g(b))||2 a,b∈I R temos f (x) = g (y) e as normais coincidem. Sugest˜o: Verifique primeiro que se um ponto da fun¸ao (z, f (z)) est´ uma distˆncia a c˜ a a m´nima de um outro ponto qualquer (a, b), ent˜o a normal ao ponto (z, f (z)) intersecta ı a (a, b). Aplique este resultado para determinar esses pontos (atrav´s de um sistema) no caso de e x ter fun¸˜es f, g n˜o triviais, por exemplo: f (x) = e , g(x) = x3 + cos(x) − 16. co a a b) Considere uma fun¸˜o f ∈ C 3 (R). A cada ponto do seu gr´fico (z, f (z)) podemos ca associar uma recta tangente e uma recta normal. Se f (z) = 0, a equa¸˜o da recta normal ca −1 nesse ponto ´ dada por y = f (z) (x − z) + f (z). Dado um outro ponto w, suficientemente e pr´ximo de z, determine o ponto de intersec¸˜o das rectas normais. o ca i) Considerando o limite quando w → z, verifique que a f´rmula para esse ponto de o intersec¸˜o limite (xz , yz ) ´ dada por ca e (xz , yz ) = (z, f (z)) + 271 Lf (z)2 (−f (z), 1) f (z) onde Lf (z) = 1 + f (z)2 representa a unidade elementar de comprimento de arco. Ao L (z)3 valor ρ(z) = ff (z) chamamos raio de curvatura, e uma circunferˆncia com centro em (xz , yz ) e e raio |ρ(z)| ser´ a circunferˆncia tangente que melhor aproxima o gr´fico da fun¸˜o f numa a e a ca vizinhan¸a de z. c ii) Para as fun¸˜es f (x) = x2 , f (x) = x3 − 3x + 1, f (x) = sin(x), f (x) = a2 − x2 /b2 , co etc... trace os gr´ficos dos centros de curvatura (xz , yz ). a iii) Determine os pontos z : xz = 0, yz = 0, e interprete geometricamente. Problema 4 : Considere a equa¸˜o ca 1 sin(x) = 2t2 x + 2x − (cos(t + x))3 3 a) Mostre que ela define implicitamente x como fun¸˜o de t, para qualquer t ∈ R, e ca trace o gr´fico da fun¸˜o em [−5, 5]. a ca b) Seja M uma matriz de dimens˜o d = 1000, que varia com o valor de t : a   x(t)2 x(t) + 1 0 0 ... 0  x(t) − 1 x(t)2 x(t) + 1 0 ... 0     0 x(t) − 1 x(t)2 x(t) + 1 ... 0  M =   . . . . . . . . . .   . . . . .  0 0 0 ... x(t) − 1 x(t)2 Determine o valor da componente x500 da solu¸˜o do sistema M x = (1, 0, ..., 0, 1), e trace ca o gr´fico dessa componente em fun¸˜o de t ∈ [−5, 5]. Indique um majorante para o erro a ca cometido. Problema 5 : Considere a equa¸˜o integral ca x f (x) − λ a K(x, y)f(y)dy = φ(x), para x ∈ [a, b], em que λ ∈ R, φ ´ uma fun¸˜o cont´ e ca ınua em [a, b] e K ´ uma fun¸˜o cont´ e ca ınua em [a, b]×[a, b]. a) Mostre que a equa¸˜o tem uma e uma s´ solu¸˜o cont´ ca o ca ınua no intervalo [a, b], qualquer que seja λ. b) Construa numericamente uma aproxima¸˜o, usando um m´todo de ponto fixo, para ca e a solu¸˜o da equa¸˜o integral em [0, 1] : ca ca f (x) + 1 2 x 0 f (y) dy = cos(x) x2 + y 2 + 1 Para esse efeito considere a seguinte f´rmula dos trap´zios para aproximar o valor do integral o e (com n suficientemente grande): b a b−a f (x) dx ∼ n f (a) + f (b) b−a + f (a + k ) 2 n k=1 272 n−1 Apresente numa figura os gr´ficos das ultimas aproxima¸˜es de f (x) obtidas, apresentando a ´ co as majora¸˜es de erro. Discuta essas majora¸˜es de erro considerando que o erro da f´rmula co co o (b−a)3 de integra¸˜o ´ |Ef | ≤ 12n2 ||f ||∞ . ca e c) Considere agora uma equa¸˜o em que a inc´gnita ´ a sucess˜o (xn ), verificando-se ca o e a 30 xn = λ k=1 sin(xk ) + cos(n) n+k Mostre que existe uma unica sucess˜o em l∞ que verifica esta equa¸˜o, e aproxime os seus ´ a ca primeiros 10 termos, indicando uma majora¸˜o para o erro cometido. ca Problema 6 : Considere um circuito fechado, cujos limites est˜o definidos pelas curvas a interior C1 , e exterior C2 , dadas com a parametriza¸˜o: ca Ci : [0, 2π] −→ R2 t −→ ri (t)(cos(t), sin(t)) em que 0 < r1 < r2 s˜o fun¸˜es em C 1 ([0, 2π]) com uma distˆncia m´ a co a ınima h > 0 entre elas. Sendo Ac = ((1 − c)r1 (0) + cr2 (0), 0), em que 0 < c < 1, o ponto de emiss˜o de um a proj´ctil segundo a direc¸˜o (0, 1) e supondo que o impacto desse proj´ctil nas paredes do e ca e t´nel causa uma reflex˜o perfeita (ou seja o ˆngulo de reflex˜o ´ sim´trico ao ˆngulo de u a a a e e a incidˆncia, relativamente ` normal): e a a) Construa, a partir de 3 pares distintos de fun¸˜es que definam essas paredes, gr´ficos co a que relacionem o ponto de emiss˜o do proj´ctil com o primeiro ponto de retorno ao sega e mento [r1 (0), r2 (0)]. Trata-se portanto de um gr´fico de uma fun¸˜o T : [r1 (0), r2 (0)] → a ca [r1 (0), r2 (0)]. (Estude o caso em que ri (t) s˜o constantes. Um outro par poder´ ser: r1 (t) = 1 cos(4t)+ a a 2 3 7 , r2 (t) = cos(4t) + 2 ) 2 Para efectuar este trabalho dever´ determinar cada ponto de impacto, resolvendo uma a equa¸ao n˜o linear do tipo fi (x) = ax+b, usando um m´todo iterativo. Caso n˜o o proj´ctil c˜ a e a e fique preso em reflex˜es sucessivas, n˜o regressando ao segmento de partida, pode terminar o a o ciclo ao fim de um n´mero suficientemente grande de itera¸˜es (p.ex: 200). u co b) Para alguns valores de x0 ∈ [r1 (0), r2 (0)], construa a sucess˜o xn+1 = T xn , dea terminando um n´ mero razo´vel de itera¸˜es (p.ex: 10). Apresente conclus˜es acerca do u a co o comportamento destas sucess˜es. o c) Considerando r1 (t) = sin(2t) + sin(a) sin(t) + sin(b) sin(2t) + 5 2 r2 (t) = cos(2t) + cos(c) sin(2t) + cos(d) sin(3t) + 9 2 construa um programa que lhe permita tentar identificar os parˆmetros a, b, c, d, a partir a do conhecimento de gr´ficos semelhantes aos obtidos em a). a Ou seja, a partir dos resultados das experiˆncias com a emiss˜o de proj´cteis, pretendee a e se tentar determinar a forma do circuito!! 273 Na pr´tica, deve considerar valores de a, b, c, d aleat´rios (que corresponder˜o ao t´ nel a o a u a determinar) e construir um processo que lhe permita reencontrar esses valores. Isso deve ser feito, considerando certos valores iniciais a0 , b0 , c0 , d0 e a partir da compara¸˜o dos dois ca resultados obter novos valores a1 , b1 , c1 , d1 que melhor se ajustem... de forma a que este processo iterativo permita aproximar os verdadeiros valores. 8.3.3 Trabalhos computacionais (99) x3 = 3x + 3 + a cos(x). Problema 1 : Considere a equa¸˜o ca a) Discuta a existˆncia e unicidade de solu¸˜o real em fun¸˜o do parˆmetro a ∈ R. Trace e ca ca a o gr´fico da raiz em fun¸˜o de a, nos casos em que seja raiz unica. a ca ´ b) Suponha que o valor de a ´ substitu´ sucessivamente pelo valor da raiz, de forma e ıdo a que se obtenha uma sucess˜o de ra´ zn . a ızes Considerando z0 = a = 1, determine o valor da raiz z1 usando um m´todo do ponto fixo e −6 com convergˆncia linear, assegurando um erro absoluto inferior a 10 . e Use o valor z1 como novo a, ou seja a = z1 para determinar z2 da mesma forma. Atendendo a que j´ existia um erro no parˆmetro a determine um majorante para o erro a a absoluto de z2 . c) A sucess˜o zn converge para que valor? Determine-o pelo m´todo da secante assegua e −8 rando um erro inferior a 10 . d) Verifique experimentalmente que a sucess˜o xn+1 = h(xn ) em que h(x) = −2x− 1 +x3 a 2 n˜o converge (excepto para trˆs iteradas iniciais exactas, quais?) tra¸ando os gr´ficos das a e c a fun¸˜es h(x), h(h(x)), etc... Mostre que, no entanto, h(I) ⊆ I para um certo intervalo, co determinando-o exactamente. Problema 2 : Considere os seguintes m´todos num´ricos e e (R) e (S) xn+1 = xn − f (xn ) f (xn ) x0 xn+1 = xn − 2f (xn )f (xn ) 2f (xn )f (xn )−f (xn )f (xn ) x0 − f (xn )f (xn )f (xn ) 2f (xn )f (xn )f (xn ) para a resolu¸˜o de equa¸˜es f (x) = 0. ca co a) Obtenha a express˜o do m´todo (R) calculando a nova iterada atrav´s do zero da a e e fun¸˜o r(x) = ax+b em que os coeficientes a, b, c s˜o obtidos resolvendo o sistema r(xn ) = ca a cx+1 f (xn ), r (xn ) = f (xn ), r (xn ) = f (xn ). Da mesma forma obtenha a express˜o do m´todo a e 2 (S), agora considerando s(y) = ay + by + c, e resolvendo o sistema s(fn) = xn , s (fn ) = (f −1 ) (xn ), s (fn ) = (f −1 ) (xn ), em que fn = f (xn ), notando que y = 0 corresponde xn+1 = s(0) = c. Interprete geometricamente os m´todos e trace os gr´ficos das fun¸˜es iteradoras para e a co alguns exemplos de f. 274 b) Mostre a convergˆncia local de ambos os m´todos. Mostre que ambos os m´todos e e e apresentam pelo menos convergˆncia local c´ bica sob certas condi¸˜es (que deve explicitar) e u co e calcule os coeficientes assimpt´ticos de convergˆncia. Comente os resultados obtidos. o e √ c) Utilize os m´todos anteriores para obter aproxima¸˜es de p a, para v´rios valores reais e co a de p, a > 1. Compare os valores obtidos pelos m´todos (R), (S) e tamb´m pelo m´todo de e e e Newton, relativamente ` rapidez de convergˆncia face ` iterada inicial. a e a (Para esse efeito, para al´m do estudo da ordem de convergˆncia, esboce os gr´ficos das e e a iteradas x1 , x2 , x3 , ... em fun¸˜o da iterada inicial x0 . ca Considere a = 209, p = 3, e outros dois pares de valores, tomando valores x0 ∈ [−15, 15]) d) Efectue o mesmo estudo, considerando agora outras fun¸oes, como seja f(x) = x3 − c˜ x cos(x) − 1. Interprete os gr´ficos obtidos. a Problema 3 : Uma corda presa pelas extremidades a = −1, b = 1 vibra verificando a equa¸˜o (harm´nica no tempo): ca o u (x) + k 2 u(x) = 0. Atrav´s de uma divis˜o do intervalo [−1, 1] em m + 1 subintervalos de comprimento h = e a 2/(m + 1) ´ poss´ e ıvel aproximar o valor de u nos pontos un = u(−1 + nh) atrav´s da e aproxima¸˜o de ca un+1 − 2un + un−1 . u (xn ) ∼ h2 a) Obtenha uma f´rmula expl´ o ıcita de un em fun¸˜o de ua = u(−1) e ub = u(1) usando ca uma equa¸˜o `s diferen¸as. ca a c b) Estude o problema de estabilidade face ao erro dos valores das ra´ ızes da equa¸˜o ca caracter´ ıstica. a c) Considerando valores concretos de ua , ub e k trace o gr´fico que une os pontos un para v´rios valores de m. Comente os resultados. a d) Altere os valores de ua e ub usando como novos valores os valores obtidos para u1 e um , respectivamente. Repita este processo pelo menos m vezes e trace um gr´fico tridimensional a que mostre a varia¸˜o da solu¸˜o ao longo deste processo. ca ca Problema 4 : Considere o seguinte m´todo para determinar as ra´ e ızes de polin´mios o de grau m. Usando a decomposi¸˜o ca p(x) = a0 + a1 x + ... + am xm = am (x − z1 )...(x − zm ) ´ poss´ escrever o sistema n˜o linear e ıvel a   (−1)m z1 ...zm = a0 /am  . . (S) .   −z − ... − z = a 1 m m−1 /am . Aplicando ` resolu¸˜o do sistema (S) um m´todo iterativo obtˆm-se sucessivas aproxima¸˜es a ca e e co `s ra´ z1 , ..., zm . a ızes 275 a) Mostre que o sistema (S) tem uma e uma s´ solu¸˜o em Cm . o ca b) Considere m = 3, m = 5 e escreva explicitamente o sistema n˜o linear (S). Explicite a tamb´m os c´lculos necess´rios ` implementa¸˜o do m´todo de Newton para a resolu¸˜o e a a a ca e ca num´rica de (S). Discuta a possibilidade de aproxima¸˜o das ra´ relativamente `s iteradas e ca ızes a iniciais consideradas (por exemplo, sendo reais ou complexas). c) Aplique 10 itera¸˜es do m´todo de Newton a (S) para aproximar as ra´ de algumas co e ızes equa¸˜es alg´bricas, entre as quais co e p1 (x) = x5 + x4 − 2x3 + x2 + 2x + 1 = 0, p2 (x) = x5 + x4 − 6x3 − 4x2 + 2x + 1 = 0, escolhendo convenientemente as iteradas iniciais (e justificando essa escolha, baseando-se em resultados te´ricos). o Apresente majora¸˜es do erro absoluto para as aproxima¸˜es das ra´ de p2 (x). co co ızes Problema 5 : Uma matriz M de dimens˜o n×n diz-se matriz de Toeplitz se tiver todas a as subdiagonais constantes (em particular, uma matriz tridiagonal com as trˆs diagonais e constantes ´ uma matriz de Toeplitz). e a) Estabelecer um processo expl´ ıcito de calcular a inversa de matrizes de Toeplitz usando equa¸˜es `s diferen¸as. co a c b) Indicar a f´rmula geral para a matriz inversa de uma matriz de Toeplitz tridiagonal o cujas diagonais tˆm valores a, b, c reais (a ´ o valor constante da subdiagonal inferior e c o e e da superior). c) Calcular os valores pr´prios de qualquer matriz de Toeplitz tridiagonal (como em o (b)). Ou seja, usando ainda equa¸˜es `s diferen¸as, mostre que se a c > 0, ent˜o co a c a √ λk = b + 2 ac cos(θk ) kπ em que θk = n+1 , para k = 1, ..., n. Deduza uma f´rmula semelhante para o caso a c < 0. o Problema 6 a) Implementa¸˜o computacional de um algoritmo que permita obter a factoriza¸˜o QR ca ca de uma qualquer matriz. b) Implementa¸˜o do m´todo QR para a determina¸˜o de valores pr´prios da matriz ca e ca o companheira de um polin´mio. o c) Aplicando o m´todo de (b), apresente um gr´fico com as curvas (no plano complexo) e a que correspondem ` localiza¸˜o das ra´ dos polin´mios a ca ızes o pa (x) = x7 + ax6 + a2 x5 − ax4 + x3 + 1, ao variar a ∈ [−2, 2]. Apresente e discuta as aproxima¸˜es que considerar e os resultados co obtidos. Efectue o mesmo para pa (x) = x7 + 2a2 x6 + 3a3 x5 − 2ax4 + 3ax3 + 1, com a ∈ [−2, 2]. 276 8.4 . Gloss´rio a A algarismos significativos, 6(rodap´) e alg´brico (n´ mero), 75 e u algoritmo, 12 arredondamento sim´trico/ por corte, 7 e Aitken (acelera¸˜o de), 56 ca B Banach ... espa¸o de, 101 c ... teorema do ponto fixo de, 106 Bauer-Fike (teorema de), 187 Bernoulli (m´todo de), 79 e bissec¸˜o (m´todo da), 37 ca e Bolzano (teorema do valor interm´dio de), 35 e Brouwer (teorema do ponto fixo de), 215 Budan-Fourier (regra de), 77 C cancelamento subtractivo, 12 Cauchy, sucess˜o de, 4, 101 a Cauchy-Riemann, condi¸˜es de, 217 co Cholesky (m´todo de), 155 e completo (espa¸o), 101 c condicionamento, 15, 146 conjunto ... convexo, 111 ... estrelado, 216 contractiva (fun¸˜o), 48 ca contractivo (operador), 105 convergˆncia mon´tona/alternada, 47 e o coordenadas (m´todo das), 210 e correc¸˜o residual (m´todo da), 158 ca e Crout (m´todo de), 155 e D declive m´ximo (m´todo do), 202 a e derivada de Fr´chet, 109 e diagonal estritamente dominante, 137 d´ ıgitos correctos, 6 d´ ıgitos de guarda, 9 Doolittle (m´todo de), 154 e 277 E equa¸˜es `s diferen¸as, 219 co a c erro absoluto/ relativo, 7 est´vel (numericamente), 16 a estimativa a priori/ posteriori, 26 F falsa posi¸˜o (m´todo da), 40 ca e falsa posi¸˜o modificado (m´todo da), 46 ca e frac¸˜o cont´ ca ınua, 51 Fr´chet (derivada de), 109 e fun¸˜o ca ... convexa, 200 ... de descida, 200 ... holomorfa, 217 ... iteradora, 47 G Gauss (m´todo de elimina¸˜o de), 149 e ca Gauss-Seidel (m´todo de), 133 e Gerschgorin (teorema de), 170 gradiente (m´todo do), 201 e gradiente conjugado (m´todo do), 207 e H Hamilton-Cayley (teorema de), 165 H¨rner (forma de), 78 o I itera¸˜o de Picard, 47, 105, 119 ca itera¸˜es inversas de Wielandt (m´todo das), 181 co e J Jacobi (m´todo de), 132 e Jordan (forma de), 166 K Kahan (teorema de), 142 Kantorovich (teorema de ), 130 Krylov (m´todo de), 190 e L Lagrange (teorema do valor m´dio de), 35 e Levenberg-Marquardt (m´todo de), 209 e Liouville (teorema de), 209 LR de Rutishauser (m´todo), 183 e 278 M matriz ... companheira, 188 ... hermitiana, 166 ... hessiana, 215 ... de Householder, 184 ... irredut´ ıvel, 138 ... jacobiana, 215 ... semelhante, 165 m´todos de descida, 200 e m´ ınimos quadrados (m´todo dos), 193 e M¨ ller (m´todo de), 73 u e N Neumann (s´rie de), 117 e Newton (m´todo de) e ... em R, 58 ... em C, 85 ... em RN , 129 ... em Banach’s, 116 ... em minimiza¸˜o, 209 ca Newton-Kantorovich (m´todo de), 116 e norma, espa¸o normado, 95 c normas equivalentes, 98 norma matricial induzida, 123 nota¸˜o cient´ ca ıfica, 4 n´ mero de condi¸ao u c˜ ... para fun¸˜es, 11 co ... para matrizes, 146 n´ mero de opera¸˜es elementares: u co ... no m´todo de elimina¸˜o de Gauss, 151 e ca ... para a invers˜o de matrizes, 156 a O operador ... compacto, 230 ... cont´ ınuo, 103 ... integral, 230 ... linear, 104 ordem de convergˆncia e ... linear, 29, 108 ... supralinear, 29, 31, 115 ... quadr´tica/ c´bica, 31, 115 a u Ostrowski-Reich (teorema de), 143 overflow, 7 279 P Picard (m´todo de), 105, 119 e polin´mio caracter´ o ıstico, 168 ponto fixo, 47 ponto fixo (m´todo do) e ... em R, 47 ... em C, 83 ... em RN , 127 ... em Banach’s, 105 ponto flutuante (sistema de), 5 ponto de m´ ınimo, 198 potˆncias de Von Mises (m´todo das), 174 e e pr´-condicionamento, 149 e precis˜o simples/ dupla, 5 a Q QR de Francis (m´todo), 184 e QR com shift (m´todo), 186 e R raio espectral, 125 raiz (de uma equa¸˜o), 23 ca Rayleigh (qu´ciente de), 170 o Rolle (teorema de), 35 Rouch´ (teorema de), 218 e S Schur (forma de), 166 secante (m´todo da), 69 e sec¸˜o dourada (m´todo da), 201 ca e sistema normal, 195 SOR (m´todo), 141 e Steffenson (m´todo de), 57 e supress˜o de zeros, 63 a T Taylor (f´rmula de), 215 o tempo de c´lculo, 33 a teorema da convergˆncia global (para m´todos de descida), 200 e e teorema fundamental da ´lgebra, 75 a transcendente (n´ mero), 75 u U underflow, 7 unidade de arredondamento, 8 280 V valor, vector e subespa¸o pr´prio, 164 c o valores singulares de uma matriz, 167 varia¸˜es de sinal (n´mero m´ co u ınimo/m´ximo), 76 a W Weierstrass (teorema de), 216 Wronskiano, 223 Z zero de uma fun¸˜o, 23 ca 281 282 Bibliografia [1] Atkinson K. E.; An Introduction to Numerical Analysis. Wiley & Sons, New York, 1989. [2] Bahder T. B.; Mathematica for Scientists and Engineers. Addison-Wesley, Reading, 1995. [3] Burden R., Faires J.; Numerical Analysis, 5th. ed. PWS Publishers, Boston, 1993. [4] Carmo J., Sernadas A, Sernadas C., Dionisio F. M., Caleiro C.; Introdu¸˜o ` proca a grama¸˜o em Mathematica, IST Press, 1999. ca [5] Carpentier M.; An´lise Num´rica. Sec¸ao de Folhas, A.E.I.S.T., 1996. a e c˜ [6] Cartan H.; Cours de Calcul Diff´rentiel. Hermann, Paris, 1990. e [7] Ciarlet P. G.; Introduction ` l’analyse num´rique matricielle et ` l’optimisation. Masa e a son, Paris, 1988. [8] Clarke F. H.; Optimization and Nonsmooth Analysis. SIAM, Philadelphia, 1990. [9] Conte, S. D., de Boor C.; Elementary numerical analysis. McGraw-Hill, Singapore, 1981. [10] D´midovitch B., Maron I.; El´ments de calcul num´rique. MIR, Moscovo, 1973. e e e [11] Ferreira, J. Campos.; Introdu¸˜o ` An´lise Matem´tica. Funda¸ao Calouste Gulca a a a c˜ benkian, Lisboa, 1987. [12] Flanigan F. J.;. Complex Variables. Harmonic and Analytic Functions. Dover, New York, 1983. [13] Golub G. H., Van Loan C.F.; Matrix Computations. John Hopkins, Baltimore, 1985. [14] Guerreiro, J. S. C.; Curso de Matem´ticas Gerais, vol. I II e III. Escolar Editora, a Lisboa, 1981. [15] Henrici P.; Elements of numerical analysis. Wiley & Sons, New York, 1964. [16] Householder A. S.; The theory of matrices in numerical analysis. Dover, New York, 1975. 283 [17] Isaacson E., Keller H. B.; Analysis of numerical methods. Wiley & Sons, New York, 1966. [18] Kress R.; Numerical Analysis. Springer-Verlag, New York, 1998. [19] Kurosh A.; Cours d’Alg`bre Sup´rieure. MIR, Moscovo, 1973. e e ´ [20] Lima P.; M´todos Num´ricos da Algebra. Sec¸ao de Folhas, A.E.I.S.T., 1997. e e c˜ [21] Loura L. C.; T´picos de An´lise Num´rica. Monografia, I.S.T., 1990. o a e [22] Luenberger, D. G.; Linear and Nonlinear Programming. Addison-Wesley, ReadingMassachussets, 1984. ´ [23] Magalh˜es, L.;. Algebra Linear. Monografia, A.E.I.S.T., 1988. a [24] Nougier J. P.; M´thodes de calcul num´rique, 2nd. ed. Masson, Paris, 1985. e e [25] Ortega J. M.; Numerical Analysis, a second course. SIAM, Philadelphia, 1990. [26] Ortega J.M., Rheinboldt, W.; Iterative solution of nonlinear equations in several variables. Academic Press, New York, 1970. [27] Pina H.; M´todos num´ricos. McGraw-Hill, Lisboa, 1995. e e [28] Scheid F.; An´lise num´rica. McGraw-Hill, Lisboa, 1991. a e [29] Stoer J., Bulirsch R.; Introduction to Numerical Analysis, 2nd ed. Springer Texts in Appl. Math., 1993. [30] Tavares L.V., Correia F.N.; Optimiza¸˜o Linear e n˜o Linear. Funda¸ao Calouste ca a c˜ Gulbenkian, Lisboa, 1987. [31] Valen¸a M. R.; M´todos num´ricos. Livraria Minho, Braga, 1993. c e e [32] Wilkinson J. H.; The Algebraic Eigenvalue Problem. Clarendon Press, Oxford, 1988. [33] Wilkinson J. H.; Rounding errors in algebraic processes. Dover, New York, 1994. [34] Zeidler E.; Nonlinear Functional Analysis and its Applications. Springer-Verlag, New York, 1993. 284
x

Log In

or reset password

Reset Password

Enter the email address you signed up with, and we'll send a reset password email to that address

Academia © 2012