análise numérica - tradução da 10a edição norte-americana

68
ANÁLISE NUMÉRICA RICHARD L. BURDEN | DOUGLAS J. FAIRES | ANNETTE M. BURDEN TRADUçãO DA 10- a EDIçãO NORTE-AMERICANA

Upload: cengage-learning-brasil

Post on 25-Jul-2016

1.124 views

Category:

Documents


358 download

DESCRIPTION

Este texto respeitável introduz a teoria e a aplicação das técnicas modernas de aproximação numérica aos alunos que fazem curso de um ou dois semestres sobre análise numérica. Além de proporcionar tratamento acessível que exige somente pré-requisito de cálculo, os autores explicam como, por que e quando se pode esperar que as técnicas de aproximação funcionem e por que, em algumas situações, elas falham. Uma riqueza de exemplos e exercícios desenvolve a intuição dos alunos e demonstra as aplicações práticas do tema aos problemas cotidianos importantes nas disciplinas de matemática, informática, engenharia e ciência física. O primeiro livro deste gênero, criado há mais de 30 anos para servir ao público universitário diversificado, ANÁLISE NUMÉRICA de Burden, Faires e Burden, continua sendo a introdução definitiva ao tema vital e prático.

TRANSCRIPT

Page 1: Análise Numérica - tradução da 10a edição norte-americana

análise numéricaRichaRd L. BuRden | dougLas J. FaiRes | annette M. BuRden

T r a d u ç ão da 1 0 -a e d i ç ão n o rT e -a m e r i c a n a

Outras Obras

CálCulO VOlumes 1 e 2Tradução da 7a edição norte-americanaJames Stewart

Pré-CálCulO 3a edição revista e ampliadaAndré Machado Caldeira, Luiza Maria Oliveira da Silva, Maria Augusta Soares Machado e Valéria Zuma Medeiros (coord.)

CálCulO numériCO: aPrendizagem COm aPOiO de sOftware2a edição revista e ampliadaSelma Arenales e Artur Darezzo

matemátiCa aPliCada a administraçãO e eCOnOmiaTradução da 9a edição norte-americanaS. T. Tan

PrObabilidade e estatístiCa Para engenharia e CiênCias Tradução da 8a edição norte-americanaJay L. Devore

ISBN 13 978-85-221-2340-7ISBN 10 85-221-2340-3

9 7 8 8 5 2 2 1 2 3 4 0 7

Este livro apresenta a teoria e a aplicação de técnicas modernas de aproximação numérica. Fornece uma base sólida para estudos futuros de maior profundidade em análise numérica e computação científica.

Todos os conceitos são desenvolvidos de forma clara e cuidadosa e posteriormente ilus-trados com exemplos que demonstram, de forma concisa, como as técnicas numéricas podem ser aplicadas em situações concretas das diversas áreas das ciências exatas.

Nesta nova edição, diversos exemplos foram reescritos para ter maior clareza. Os exercícios foram organizados em computacionais, aplicados e teóricos, sendo que muitos dos aplicados são novos. Os conjuntos de exercícios incluem numerosos pro-blemas aplicados de diversas áreas da engenharia, bem como das ciências físicas, computacionais, biológicas e sociais. Alguns dos exemplos no livro foram reescri-tos para enfatizar melhor o problema a ser resolvido antes de apresentar a solução. Também foram acrescentados alguns passos a alguns dos exemplos, para mostrar explicitamente os cálculos necessários. Além disso, cada capítulo, agora, possui questões para discussão, muitas delas direcionam o estudante para áreas modernas de pesquisa em desenvolvimento de software. O material bibliográfico também foi atualizado para apresentar novas edições de obras que são referências.

análise numérica pode ser utilizado como livro-texto para as disciplinas cálculo nu-mérico e análise numérica nos cursos de Engenharia, Matemática, Ciência da Com-putação e em cursos introdutórios que abordem resolução numérica de equações diferenciais ordinárias e parciais.

Tradução da 10-a edição norTe-americana

análise numéricaRichaRd L. BuRden | dougLas J. FaiRes | annette M. BuRden

Para suas soluções de curso e aprendizado, visite www.cengage.com.br

Richard L. Burden | Douglas J. Faires | Annette M. Burden

análise numérica

analise_numericaOK.indd 1 1/14/16 11:46 AM

Page 2: Análise Numérica - tradução da 10a edição norte-americana

Dados Internacionais de Catalogação na Publicação (CIP) (Câmara Brasileira do Livro, SP, Brasil)

Burden, Richard L. Análise numérica / Richard L. Burden, J. Douglas Faires ; Annette M. Burden ; tradução All Tasks ; revisão técnica Helena Maria Ávila de Castro. – 3. ed. São Paulo : Cengage Learning, 2015.

Título original: Numerical analysis 10a ed. norte-americana.     Bibliografia ISBN 978-85-221-2340-7

1. Análise numérica I. Faires, J. Douglas. II. Burden, Annette M. III. Título.

15-09093 CDD-515

Índice para catálogo sistemático:

1. Análise numérica : Matemática 515

Page 3: Análise Numérica - tradução da 10a edição norte-americana

Austrália • Brasil • Japão • Coreia • México • Cingapura • Espanha • Reino Unido • Estados Unidos

ANÁLISE NUMÉRICATradução da 10a edição norte-americana

Richard L. BurdenYoungstown State University

J. Douglas FairesYoungstown State University

Annette M. BurdenYoungstown State University

TraduçãoAll Tasks e Helena Maria Ávila de Castro

Revisão TécnicaHelena Maria Ávila de CastroProfessora Doutora do Instituto de Matemática e Estatística da Universidade de São Paulo (IME-SP)

Page 4: Análise Numérica - tradução da 10a edição norte-americana

© 2016, 2011, 2005 Cengage Learning© 2016 Cengage Learning Edições Ltda.

Todos os direitos reservados. Nenhuma parte deste livro poderá ser reproduzida, sejam quais forem os meios em-pregados, sem a permissão, por escrito, da Editora. Aos infratores aplicam-se as sanções previstas nos artigos 102, 104, 106, 107 da Lei no 9.610, de 19 de fevereiro de 1998.

Esta editora empenhou-se em contatar os responsáveis pelos direitos autorais de todas as imagens e de outros materiais utilizados neste livro. Se porventura for cons-tatada a omissão involuntária na identificação de algum deles, dispomo-nos a efetuar, futuramente, os possíveis acertos.

A editora não se responsabiliza pelo funcionamento dos

links contidos neste livro que podem estar suspensos.

Para informações sobre nossos produtos,

entre em contato pelo telefone

0800 11 19 39

Para permissão de uso de material desta

obra, envie seu pedido para

[email protected]

© 2016 Cengage Learning. Todos os direitos reservados.

ISBN 13: 978-85-221-2340-7ISBN 10: 85-221-2340-3

Cengage LearningCondomínio E-Business ParkRua Werner Siemens, 111 – Prédio 11 – Torre A – Conjunto 12Lapa de Baixo – CEP 05069-900 – São Paulo – SPTel.: (11) 3665-9900 Fax: (11) 3665-9901SAC: 0800 11 19 39

Para suas soluções de curso e aprendizado, visitewww.cengage.com.br

Gerente Editorial: Noelma Brocanelli

Editora de Desenvolvimento: Salete Del Guerra

Editora de Aquisição: Guacira Simonelli

Supervisora de Produção Gráfica: Fabiana Alencar

Especialista em Direitos Autorais: Jenis Oh

Título Original: Numerical Analysis, Tenth Edition

ISBN 13: 978-1-305-25366-7

ISBN 10: 1-305-25366-3

Tradução: All Tasks e Helena Maria Ávila de Castro

Revisão Técnica: Helena Maria Ávila de Castro

Revisão: Tatiana Tanaka, Vera Lúcia Pereira e Mônica de Aguiar Rocha

Projeto Gráfico e Diagramação: Triall Composição Editorial Ltda.

Indexação: Joana Figueiredo

Capa: Buono Disegno

Imagem de capa: Vilmos Varga/Shutterstock

Análise numérica

Tradução da 10a edição norte-americana

3a edição brasileira

Richard L. Burden, Douglas J. Faires e Annette M. Burden

Impresso no BrasilPrinted in Brazil1 2 3 4 5 18 17 16 15

Page 5: Análise Numérica - tradução da 10a edição norte-americana

Esta edição é dedicada à memória de J. Douglas Faires.

Doug foi um amigo, colega e coautor por mais de 40 anos .Sentiremos, com pesar, sua falta.

Analise.indb 5 15/12/2015 08:39:41

Page 6: Análise Numérica - tradução da 10a edição norte-americana

Analise.indb 6 15/12/2015 08:39:41

Page 7: Análise Numérica - tradução da 10a edição norte-americana

Sobre o texto

Este livro foi elaborado para uma sequência de cursos sobre a teoria e aplicação de técnicas de aproximação numérica. Ele foi desenvolvido principalmente para es-tudantes de matemática, ciências e engenharia que tenham completado pelo menos o primeiro ano da sequência-padrão de cálculo da faculdade. A familiaridade com os fundamentos da álgebra matricial e equações diferenciais é útil, mas apresentamos o material introdutório destes tópicos de modo que não haja necessidade de tais cursos serem pré-requisitos.

As edições anteriores de Análise numérica foram utilizadas em uma ampla varie-dade de situações. Em alguns casos, a análise matemática subjacente ao desenvolvi-mento de técnicas de aproximação foi mais enfatizada que os próprios métodos; em outros, a ênfase foi contrária. O livro também foi utilizado como referência principal em disciplinas iniciais de pós-graduação em programas de engenharia, matemática e ciência da computação e nas disciplinas de primeiro ano em cursos de análise introdu-tória oferecidos em universidades internacionais. Adaptamos o livro para se adequar a esses diversos usuários sem comprometer nosso propósito original:

Introduzir técnicas modernas de aproximação; explicar como, por que e quando pode se esperar que elas funcionem; e fornecer uma base para estudo posterior de análise numérica e computação científica.

A obra contém material suficiente para, pelo menos, um ano completo de estudo, mas sabemos que muitos professores utilizam o texto para uma disciplina de apenas um semestre. Em uma disciplina de um semestre, os estudantes aprendem a identifi-car os tipos de problemas que requerem técnicas numéricas para sua solução e veem exemplos da propagação de erro que pode ocorrer quando métodos numéricos são aplicados. Eles aproximam com precisão a solução de problemas que não podem ser resolvidos exatamente e aprendem técnicas típicas para fazer estimativas de limitantes de erro para as aproximações. O restante do texto, então, serve como referência para métodos que não foram considerados no curso. Tanto o curso de um ano como o de um semestre é consistente com os propósitos do texto.

Quase todos os conceitos são ilustrados por exemplos, e esta edição contém apro-ximadamente 2 500 exercícios testados em sala de aula que vão desde aplicações ele-mentares de métodos e algoritmos a generalizações e extensões da teoria deles. Além

vii

Prefácio

Page 8: Análise Numérica - tradução da 10a edição norte-americana

viii Análise numérica

disso, os conjuntos de exercícios incluem numerosos problemas aplicados de diversas áreas da engenharia, bem como das ciências físicas, computacionais, biológicas e sociais. As aplicações escolhidas demonstram de forma clara e concisa como as técnicas numéri-cas podem e, frequentemente, precisam ser aplicadas em situações da vida real.

Vários pacotes de software, conhecidos como Sistemas de Computação Algébri-ca (SCA), foram desenvolvidos para produzir cálculos matemáticos simbólicos. O Maple©, o Mathematica© e o MAtlAb são predominantes entre eles no ambiente acadêmico. As versões desses pacotes de softwares para estudantes estão disponíveis a preços razoáveis para os sistemas computacionais mais comuns. Além disso, agora está disponível o Sage, um sistema de domínio público. Informações sobre esse siste-ma podem ser encontradas no site

http://www.sagemath.org

Embora haja diferenças significativas entre os pacotes, tanto no desempenho quan-to no preço, todos podem executar operações padrão de álgebra e de cálculo.

Os resultados, na maior parte de nossos exemplos e exercícios, foram gerados usando problemas para os quais é possível determinar valores exatos, pois isso per-mite que se monitore melhor o desempenho do método de aproximação. Além disso, em muitas técnicas numéricas a análise de erro requer a limitação de uma derivada ordinária ou parcial de uma função, o que pode ser uma tarefa tediosa e não particular-mente instrutiva, uma vez que as técnicas do cálculo tenham sido dominadas. Assim, ter um pacote de computação simbólica disponível pode ser muito útil no estudo de técnicas de aproximação, uma vez que soluções exatas podem frequentemente ser ob-tidas facilmente por meio da computação simbólica. As derivadas podem ser obtidas simbolicamente de modo rápido, e um pouco de discernimento em geral permite que a computação simbólica ajude também no processo de limitação.

Desde nossa primeira edição, introduzimos um recurso que era inovador e um tanto controverso. Em vez de apresentar nossas técnicas de aproximação em uma linguagem de programação específica (FORTRAN dominava na época), fornecemos algoritmos em pseudocódigo, que resultariam em um programa bem estruturado em várias linguagens.

Respostas dos exercícios no site

Nesta edição estão disponíveis, para professores e alunos, as respostas dos exer-cícios selecionados na página do livro, no site da Cengage, em www.cengage.com.br.

Novidades desta edição

Há mais de 35 anos foi publicada a primeira edição deste livro. Isso ocorreu na década posterior aos principais avanços nas técnicas numéricas. Esses avanços foram o reflexo da ampla disponibilidade dos equipamentos computacionais. Em cada uma de nossas revisões do livro, adicionamos novas técnicas na tentativa de manter nossa abordagem atualizada. Para manter essa tendência, precisamos fazer diversas mudan-ças significativas para esta edição:

• Alguns dos exemplos do livro foram reescritos para enfatizar melhor o problema a ser resolvido antes de dar a solução. Foram acrescentados alguns passos em alguns dos exemplos para mostrar explicitamente os cálculos necessários nos primeiros passos

viii

Page 9: Análise Numérica - tradução da 10a edição norte-americana

Prefácio ix

do processo iterativo. Isso dá ao leitor uma opção de testar e debug os programas que escreverem para problemas similares aos exemplos.

• Os exercícios dos capítulos foram divididos em computacionais, aplicados e teóricos para dar ao professor maior flexibilidade ao passar as lições de casa. Em quase todas as situações computacionais, os exercícios foram emparelhados de modo par-ímpar. As respostas para os exercícios ímpares estão disponíveis na página do livro no site da Editora, de modo que se os problemas pares forem dados como lição de casa, os estudantes poderão trabalhar nos problemas ímpares e verificar suas respostas antes de fazer os problemas pares.

• Muitos exercícios aplicados novos foram adicionado ao texto.• Foram adicionadas questões para discussão depois de cada capítulo, principalmente

para o uso do professor nos cursos online.• A última seção de cada capítulo mudou de nome e foi dividida em quatro subse-

ções: Software numérico, Questões para discussão, Conceitos-chaves e Revisão do Capítulo. Muitas dessas questões para discussão direcionam o estudante para áreas modernas de pesquisa em desenvolvimento de software.

• Partes do texto foram reorganizadas para facilitar os cursos online.• O material bibliográfico foi atualizado para refletir novas edições dos livros que

são referências. Foram adicionadas novas fontes que não estavam disponíveis an-teriormente.

Como sempre em nossas revisões, cada sentença foi examinada para verificar se ela foi construída de maneira a refletir melhor o que estamos tentando descrever.

Linhas gerais de curso sugeridas

O livro Análise Numérica foi desenvolvido para permitir flexibilidade aos profes-sores tanto na escolha dos tópicos quanto no nível de rigor teórico e na ênfase nas aplicações. Em conformidade com esses objetivos, fornecemos referências detalhadas para os resultados que não são demonstrados no texto e para as aplicações que são usa-das para indicar a importância prática dos métodos. Os textos de referências citados são aqueles com mais probabilidade de serem encontrados nas bibliotecas da faculda-de e foram atualizados para refletir as edições recentes. Também incluímos referências de trabalhos de pesquisa originais, quando entendemos que esse material era acessível ao nosso público-alvo. Todo o material citado foi indexado para a posição apropriada no texto e foram incluídas as informações de chamada de material de referência (por exemplo: [AHU, p. 252-269] ) para permitir uma fácil localização em buscas por ma-terial em bibliotecas.

O seguinte fluxograma indica os pré-requisitos dos capítulos. A maioria das sequên-cias que podem ser geradas deste gráfico foi testada pelos autores na Youngstown State University.

O material dessa edição permite que os professores preparem um curso de gradua-ção em álgebra linear numérica para alunos que não tenham estudado análise numéri-ca anteriormente. Isso pode ser feito cobrindo os Capítulos 1, 6, 7 e 9.

ix

Analise.indb 9 15/12/2015 08:39:41

Page 10: Análise Numérica - tradução da 10a edição norte-americana

x Análise numérica

Capítulo 6Capítulo 2 Capítulo 3

Capítulo 7Capítulo 10 Capítulo 8

Capítulo 9

Capítulo 11

Capítulo 12

Capítulo 4

Capítulo 1

Capítulo 5

Agradecimentos

Tivemos a felicidade de contar com a impressão de muitos de nossos estudantes e colegas sobre as edições anteriores deste livro e levamos todos os comentários muito a sério. Tentamos incluir todas as sugestões que complementam a filosofia do livro e so-mos extremamente gratos a todos aqueles que reservaram um tempo para nos contatar durante esses anos e sugerir formas de melhorar as versões subsequentes.

Gostaríamos de agradecer particularmente os seguintes, cujas sugestões usamos nesta edição e também nas anteriores.

Douglas CarterJohn Carroll, Dublin UniversityYavuz Duman, T.C. Istanbul Kultur Universitesi Neil Goldman,Christopher Harrison,Teryn Jones, Youngstown State UniversityAleksandar Samardzic, University of BelgradeMikhail M. Shvartsman, University of St. ThomasDennis C. Smolarski, Santa Clara UniversityDale Smith, Comcast

Gostaríamos de agradecer à dra Barbara T. Faires, por sua cooperação em nos for-necer os materiais necessários para tornar possível essa revisão. Sua benevolência em uma época tão difícil foi muito valiosa .

Como foi nossa prática nas edições anteriores, utilizamos a ajuda de estudantes da Youngstown State University na preparação da décima edição. Agradecemos a Teryn Jones que trabalhou nos aplicativos Java. Gostaríamos de agradecer a Edward R. Bur-den, um estudante de doutorado em Engenharia Elétrica na Ohio State University, que tem verificado todos os problemas aplicados e material novo do texto. Gostaríamos também de expressar gratidão aos nossos colegas de faculdade e à administração da

Analise.indb 10 15/12/2015 08:39:41

Page 11: Análise Numérica - tradução da 10a edição norte-americana

Prefácio xi

Youngstown State University por nos fornecer a oportunidade e as instalações para concluirmos este projeto.

Por fim, gostaríamos de agradecer a algumas pessoas que trouxeram contribuições significativas à história dos métodos numéricos. Herman H. Goldstine escreveu um livro excelente, intitulado A History of Numerical A nalysis from the 16th Through the 19th Century [Golds]. Outra fonte excelente de conhecimento matemático histórico é o arquivo MacTutor History of Mathematics na University of St. Andrews, Escócia. Ele foi criado por John J. O’Connor e Edmund F. Robertson e encontra-se no seguinte endereço da Internet:

http://www-gap.dcs.st-and.ac.uk/~history/

Uma quantidade incrível de trabalho foi consumida para a criação do material desse site e consideramos as informações verdadeiramente precisas. Finalmente, agradecemos a todos que contribuíram com a Wikipedia, agregando sua experiência ao site para que outros pudessem se beneficiar de seu conhecimento.

Para concluir, agradecemos novamente àqueles que despenderam tempo e esforços para nos contatar durante esses anos. É maravilhoso contar com tantos estudantes e docentes que utilizaram nosso livro como seu primeiro contato com os métodos nu-méricos. Esperamos que esta edição dê continuidade a este intercâmbio e aumente o prazer dos estudantes no aprendizado da análise numérica. Se tiver sugestões para a melhora de edições futuras deste livro, seríamos gratos, como sempre, por seus co-mentários. Podemos ser contatados mais facilmente por correio eletrônico nos endere-ços listados abaixo.

Richard L. [email protected]

Annette M. [email protected]

Analise.indb 11 15/12/2015 08:39:42

Page 12: Análise Numérica - tradução da 10a edição norte-americana

Analise.indb 12 15/12/2015 08:39:42

Page 13: Análise Numérica - tradução da 10a edição norte-americana

Prefácio ........................................................................................vii

1 Preliminares matemáticos e análise de erros 1

1.1 Revisão de cálculo .......................................................................................................2 1.2 Erros de arredondamento e aritmética no computador ...............................................16 1.3 Algoritmos e convergência .........................................................................................32 1.4 Software numérico ......................................................................................................42

2 Soluções de equações em uma variável .......................................51 2.1 O método da bissecção ................................................................................................52 2.2 Iteraçãodepontofixo ..................................................................................................60 2.3 MétododeNewtonesuasextensões...........................................................................71 2.4 Análise de erro para métodos iterativos ......................................................................86 2.5 Acelerando a convergência .........................................................................................96 2.6 Zeros de polinômios e o método de Muller ..............................................................102 2.7 Software numérico e revisão do capítulo .................................................................. 113

3 Interpolação e aproximação polinomial .....................................115 3.1 Interpolação e polinômios de Lagrange .................................................................... 116 3.2 Interpolação de dados e o método de Neville ...........................................................128 3.3 Diferenças divididas ..................................................................................................136 3.4 Interpolação de Hermite ............................................................................................149 3.5 Interpolação por spline cúbico ..................................................................................158 3.6 Curvas parametrizadas ..............................................................................................179 3.7 Software numérico e revisão do capítulo ..................................................................187

Sumário

Page 14: Análise Numérica - tradução da 10a edição norte-americana

xiv Análise numérica

4. Derivação e integração numérica ..............................................189 4.1 Derivação numérica ..................................................................................................190 4.2 Extrapolação de Richardson......................................................................................203 4.3 Elementos de integração numérica ...........................................................................212 4.4 Integração numérica composta..................................................................................224 4.5 Integração de Romberg .............................................................................................234 4.6 Métodos da quadratura adaptativos...........................................................................243 4.7 Quadratura de Gauss .................................................................................................252 4.8 Integrais múltiplas .....................................................................................................259 4.9 Integrais impróprias ..................................................................................................274 4.10 Software numérico e revisão do capítulo ..................................................................280

5 Problemas de valor inicial para equações diferenciais ordinárias ...............................................................283

5.1 A teoria elementar dos problemas de valor inicial ....................................................284 5.2 Método de Euler ........................................................................................................290 5.3 Métodos de Taylor de ordem superior ......................................................................301 5.4 Métodos de Runge-Kutta ..........................................................................................309 5.5 Controle de erros e o método de Runge-Kutta-Fehlberg ..........................................322 5.6 Métodos de passo múltiplo .......................................................................................331 5.7 Métodos de passo múltiplo com tamanho de passo variável ....................................347 5.8 Métodos de Extrapolação ..........................................................................................354 5.9 Equações de ordem superior e sistemas de equações diferenciais ............................363 5.10 Estabilidade ...............................................................................................................373 5.11 Equações diferenciais rígidas ....................................................................................384 5.12 Software numérico ....................................................................................................392

6 Métodos diretos para resolução de sistemas lineares .....................................................................................395 6.1 Sistemas de equações lineares...................................................................................396 6.2 Estratégias de pivotamento .......................................................................................412 6.3 Álgebra linear e inversão de matrizes .......................................................................422 6.4 O determinante de uma matriz ..................................................................................438 6.5 Fatoração de matrizes................................................................................................445 6.6 Tipos especiais de matrizes .......................................................................................457 6.7 Software numérico ....................................................................................................474

7 Técnicas iterativas na álgebra das matrizes ................................479 7.1 Normas de vetores e matrizes ...................................................................................480 7.2 Autovalores e autovetores .........................................................................................493 7.3 Técnicas iterativas de Jacobi e Gauss-Siedel .................................................................500

Analise.indb 14 15/12/2015 08:39:42

Page 15: Análise Numérica - tradução da 10a edição norte-americana

Sumário xv

7.4 Tecnicas de relaxação para a resolução de sistemas lineares ....................................515 7.5 Limitantes do erro e refinamento iterativo ................................................................523 7.6 Método do gradiente conjugado ................................................................................534 7.7 Software numérico ....................................................................................................552

8 Teoria da aproximação ..............................................................555 8.1 Aproximações por mínimos quadrados discretos .....................................................556 8.2 Polinômios ortogonais e aproximação por mínimos quadrados ...............................569 8.3 Polinômios de Chebyshev e economia na série de potência .....................................579 8.4 Aproximação por função racional .............................................................................590 8.5 Aproximação por polinômios trigonométricos .........................................................600 8.6 Transformadas rápidas de Fourier ............................................................................. 611 8.7 Software numérico ....................................................................................................623

9 Aproximação de autovalores ......................................................625 9.1 Álgebra linear e autovalores .....................................................................................626 9.2 Matrizes ortogonais e transformações de semelhança ..............................................636 9.3 O método da potência ...............................................................................................643 9.4 O método de Householder ........................................................................................662 9.5 O algoritmo QR .........................................................................................................671 9.6 Decomposição de valor singular ..............................................................................686 9.7 Software numérico ....................................................................................................701

10 Soluções numéricas de sistemas de equações não lineares ..............................................................................703 10.1 Pontos fixos para funções de várias variáveis ...........................................................704 10.2 O método de Newton ................................................................................................714 10.3 Métodos Quasi-Newton ............................................................................................722 10.4 Técnicas de declive máximo .....................................................................................730 10.5 Métodos de homotopia e continuação .......................................................................738 10.6 Software numérico ....................................................................................................747

11 Problemas de contorno para equações diferenciais ordinárias ...............................................................751 11.1 O método Shooting linear .........................................................................................752 11.2 O método Shooting para problemas não lineares ......................................................760 11.3 O método das diferenças finitas para problemas lineares .........................................767 11.4 Métodos de diferenças finitas para problemas não lineares ......................................774 11.5 O método de Rayleigh-Ritz.......................................................................................781 11.6 Software numérico ....................................................................................................797

Analise.indb 15 15/12/2015 08:39:42

Page 16: Análise Numérica - tradução da 10a edição norte-americana

xvi Análise numérica

12 Soluções numéricas de equações diferenciais parciais .....................................................................................801 12.1 Equações diferenciais parciais elípticas ....................................................................804 12.2 Equações diferenciais parciais parabólicas ...............................................................814 12.3 Equações diferenciais parciais hiperbólicas ..............................................................829 12.4 Umaintroduçãoaométododoselementosfinitos ....................................................838 12.5 Software numérico ....................................................................................................852Bibliografia ........................................................................................................................................855Índice remissivo .....................................................................................................................................865

Page 17: Análise Numérica - tradução da 10a edição norte-americana

Introdução

Nos cursos iniciais de química, vemos a lei dos gases ideais:

PV 5 NRT,

a qual relaciona a pressão P, o volume V, a temperatura T e o número de moles N de um gás “ideal”. Nessa equação, R é uma constante que depende do sistema de medidas.

Suponha que duas experiências sejam conduzidas para testar essa lei, usando o mesmo gás em cada caso. Na primeira experiência,

P 5 1,00 atm, V 5 0,100 m3,N 5 0,00420 mol, R 5 0,08206.

A lei dos gases ideais prevê que a temperatura do gás seja

T 290,15 K 17 °C.(1,00)(0,100)

(0,00420)(0,08206)PVNR

Quando medimos a temperatura do gás, descobrimos que a tempera tura verdadeira é de 15 °C.

V1

V2

Então, repetimos a experiência usando os mesmos valores de R e N, mas aumen-tamos a pressão por um fator 2 e reduzimos o volume pelo mesmo fator. Já que o pro-

1

1

Preliminares matemáticos e análise de erros

C A P Í T U LO

Analise.indb 1 15/12/2015 08:39:43

Page 18: Análise Numérica - tradução da 10a edição norte-americana

2 Análise numérica

duto PV continua o mesmo, a tempera tura prevista ainda é de 17 °C, mas descobrimos que a temperatura real do gás é agora de 19 °C.

Claramente, a lei dos gases ideais é duvidosa, mas antes de concluir que a lei é inválida nessa situação, deveríamos examinar os dados para ver se o erro pode ser atri-buído aos resultados experimentais. Se assim for, devemos ser capazes de determinar quão mais precisos os resultados experimentais deveriam ser para garantir que um erro dessa ordem não ocorresse.

A análise dos erros envolvidos no cálculo é um tópico importante na análise numé-rica e é apresentada na Seção 1.2. Essa aplicação particular é considerada no Exercício 26 daquela seção.

Este capítulo contém um breve resumo daqueles tópicos do cálculo elementar de uma variável que serão necessários nos capítulos posteriores. Um conhecimento sólido de cálculo é essencial para um entendimento da análise de técnicas numéricas, e uma revisão mais completa pode ser necessária para aqueles que estiverem afastados deste assunto por algum tempo. Além disso, há uma introdução à convergência, análise de erros, representação dos números pela máquina e algumas técnicas para categorizar e minimizar os erros computacionais.

1.1 Revisão de cálculo Limites e continuidade

Os conceitos de limite e continuidade de uma função são fundamentais no estudo do cálculo e formam a base da análise das técnicas numéricas.

Definição 1.1 Uma função f definida em um conjunto X de números reais tem o limite L em x0, escrito como

limx x0

f (x) L,

se, dado qualquer número real ε . 0, existe um número real δ . 0, tal que

u f (x) 2 L u , ε, sempre que x ∈ X e 0 , u x 2 x0 u , δ.

(Veja a Figura 1.1.) n

x

L �

L �L

x0 � δ x0 � δx0

y

y � f (x)

ε

ε

ε

Figura 1.1

2

Analise.indb 2 15/12/2015 08:39:43

Page 19: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 3

Os conceitos básicos de cálculo e suas aplicações foram desenvolvidos no final do século XVII e início do sé-culo XVIII, mas os conceitos matemáticos precisos de limite e continuidade não foram definidos até a época de Augustin Louis Cauchy (1789-1857), Heinrich Eduard Heine (1821-1881) e Karl Weierstrass (1815-1897) no final do século XIX.

Definição 1.2 Seja f uma função definida em um conjunto X de números reais e x0 ∈ X. Então f é con­tínua em x0 se

limx x0

f (x) f (x0).

A função f é contínua no conjunto X se for contínua em cada número de X. n

C (X) denota o conjunto de todas as funções que são contínuas no conjunto X. Quando X é um intervalo da reta real, os parênteses nessa notação são omitidos. Por exemplo, o conjunto de todas as funções contínuas no intervalo fechado [a, b] é deno-tado por C [a, b]. O símbolo R denota o conjunto dos números reais que tem também a notação de intervalo (−∞, ∞). Assim, o conjunto de todas as funções que são contínuas em todo número real é denotado por C (R) ou por C (−∞, ∞).

O limite de uma sequência de números reais ou complexos é definido de maneira análoga.

Definição 1.3 Seja {xn}∞n51 uma sequência infinita de números reais. A sequência tem o limite x

(converge para x) se, para qualquer ε . 0, existe um número inteiro N (ε), tal que u xn 2 x u , ε, sempre que n . N (ε). A notação

limn ∞

xn xMMouMMxn r xMMquandoMMn r ∞,

significa que a sequência {xn}∞n51 converge para x. n

Teorema 1.4 Se f é uma função definida no conjunto X de números reais e x0 ∈ X, então as seguintes afirmações são equivalentes:

a. f é contínua em x0;b. Se {xn}

∞n51 for qualquer sequência em X convergindo para x0, então o lim n r ∞

f (xn) 5 f (x0). n

As funções que considerarmos ao discutir os métodos numéricos supostas como contínuas, já que isso é um requisito mínimo para um comportamento previsível. Fun-ções que não são contínuas podem pular pontos de interesse, o que pode causar difi-culdade na tentativa de aproxi mar uma solução de um problema.

Diferenciabilidade

Hipóteses mais sofisticadas sobre uma função geralmente levam a uma melhor apro-ximação dos resultados. Por exemplo, uma função com um gráfico liso normalmente vai comportar-se de maneira mais previsível que aquela com numerosas características irre gulares. A condição de ser lisa baseia-se no conceito da derivada.

Definição 1.5 Seja f uma função definida em um intervalo aberto contendo x0. A função f é dife­renciável em x0 se

3

Analise.indb 3 15/12/2015 08:39:44

Page 20: Análise Numérica - tradução da 10a edição norte-americana

4 Análise numérica

f (x0) limx x0

f (x) f (x0)x x0

existe. O número f  9(x0) é chamado derivada de f em x0. Uma função que tem uma derivada em cada número do conjunto X é diferenciável em X. n

A derivada de f em x0 é a inclinação da reta tangente ao gráfico de f em (x0, f (x0)), como mostrado na Figura 1.2.

x

y

y � f (x)(x0, f (x0))f (x0)

x0

A reta tangente tem inclinação f �(x0)

Teorema 1.6 Se a função f for diferenciável em x0, então f será contínua em x0. n

Os próximos teoremas são de fundamental importância nos métodos de dedução da estimativa de erro. As demonstrações desses teoremas e dos outros resultados sem referências nesta seção podem ser encontradas em qualquer texto padrão de cálculo.

O conjunto de todas as funções que têm n derivadas contínuas em X é denotado por C n ( X  ), e o conjunto das funções que têm derivadas de todas as ordens em X é denotado por C ∞( X  ). Funções polinomiais, racionais, trigonométricas, exponenciais e logarítmicas estão em C ∞( X  ), onde X consiste em todos os números para os quais as funções estão definidas. Quando X for um intervalo da reta real, omitiremos novamen-te os parênteses nessa notação.

O teorema atribuído a Michel Rolle (1652-1719) apareceu em 1691 em um artigo intitulado Méthode pour résoundre les ègalites. Rolle, originalmente, criticou o cálculo desenvolvido por Isaac Newton e Gottfried leibniz, mas depois tornou-se um de seus defensores.

Teorema 1.7 (Teorema de Rolle)

Suponha que f ∈ C [ a, b] e que f seja diferenciável em (a, b). Se f (a) 5 f (b), então existe um número c em (a, b) com f 9(c) 5 0. (Veja a Figura 1.3.) n

Teorema 1.8 (Teorema do valor médio)

Se f ∈ C [ a, b] e f for diferenciável em (a, b), então existe um número c em (a, b) com (Veja Figura 1.4.)

Figura 1.2

Analise.indb 4 15/12/2015 08:39:44

Page 21: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 5

Teorema 1.9 (Teorema do valor extremo)

Se f ∈ C [ a, b], então existem c1, c2 ∈ [a, b] com f (c1) # f (x) # f (c2), para todo x ∈ [ a, b]. Além disso, se f for diferenciável em (a, b), então os números c1 e c2 ocorrem nas extremidades de [a, b] ou nos pontos para os quais f   9 for zero. (Veja a Figura 1.5.) n

y

xa c2 c1 b

y 5 f (x)

Figura 1.5

x

f (c) 5 0

a bc

f (a) 5 f (b)

y

y 5 f (x)

Figura 1.3

Figura 1.4

y

xa bc

Inclinação f (c)

Retas paralelas

Inclinação

y 5 f (x)

b 2 a

f (b) 2 f (a)

f (c) . (Veja a Figura 1.4.)

f (b) f (a)b a

n

Analise.indb 5 15/12/2015 08:39:45

Page 22: Análise Numérica - tradução da 10a edição norte-americana

6 Análise numérica

Encontre os valores mínimo e máximo absolutos de

f (x ) 5 2 − ex 1 2x

nos intervalos (a) [0, 1] e (b) [1, 2].

Solução Começamos derivando f (x) para obter

f   9(x) 5 −e x 1 2.

Temos que f   9(x ) 5 0 quando −e x 1 2 5 0 ou, equivalentemente, quando e x 5 2. Tomando o logaritmo natural em ambos os lados da equação, obtemos

ln (e x ) 5 ln (2) ou x 5 ln (2) ≈ 0,69314718056

(a) Quando o intervalo é [0,1], os extremos absolutos devem ocorrer em f  (0), f  (ln (2)) ou f (1). Calculando, temos

f (0) 5 2 − e0 1 2(0) 5 1f (ln (2)) 5 2 − eln (2) 1 2 ln (2) 5 2 ln (2) ≈ 1,38629436112

f (1) 5 2 − e 1 2(1) 5 4 − e ≈ 1,28171817154.

logo, o mínimo absoluto de f (x) em [0,1] é f (0) =1, e o máximo absoluto é f (ln (2)) = 2 ln (2).

(b) Quando o intervalo é [1, 2], sabemos que f   9(x) 0 de modo que os extremos absolu-tos ocorrem em f (1) e f (2). Mas, f (2) 5 2 − e2 1 2(2) 5 6 − e2 ≈ −1,3890560983. Assim, o mínimo absoluto em [1, 2] é 6 − e2 e o máximo absoluto é 1.

Observamos que

max0≤x≤2

| f (x)| = |6 − e2| ≈ 1.3890560983. n

O teorema a seguir não é geralmente apresentado em um curso básico de cálculo, mas é deduzido pela aplicação do Teorema de Rolle sucessivamente a f, f   9, . . . e, final-mente, a f  (n−1). Este resultado é considerado no Exercício 26.

Teorema 1.10 (Teorema de Rolle generalizado)

Suponha que f ∈ C [a, b] seja n vezes diferenciável em (a, b). Se f (x ) 5 0 em n 1 1 números distintos a # x0 , x1 , . . . , xn # b, então existe um número c em (x0 , xn ) e portanto em (a, b) com f (n) (c) 5 0. n

Usaremos frequentemente o teorema do valor intermediário. Embora seu enuncia-do pareça razoável, sua demonstração está além do escopo do curso usual de cálculo. Ele pode, entretanto, ser encontrado na maioria dos textos de análise (veja, por exem-plo, [Fu], pg. 67).

Teorema 1.11 (Teorema do valor intermediário)

Se f ∈ C [a, b] e K é qualquer número entre f (a) e f (b), então existe um número c em (a, b) para o qual f (c) 5 K. n

A Figura 1.6 mostra uma escolha do número cuja existência é garantida pelo teore-ma do valor intermediário. Neste exemplo, existem outras duas possibilidades.

ExEmplO 1EXS

P P

Analise.indb 6 15/12/2015 08:39:46

Page 23: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 7

x

y

f (a)

f (b)

y � f (x)

K

(a, f (a))

(b, f (b))

a bc

Mostre que x 5 − 2x 3 1 3x 2 − 1 5 0 tem uma solução no intervalo [0,1].

Solução Considere a função definida por f (x ) 5 x 5 − 2x 3 1 3x 2 − 1. A função f é contínua em [0,1]. Além disso,

f (0) 5 −1 , 0 e 0 , 1 5 f (1).

Portanto, o teorema do valor intermediário implica que existe um número c, com 0 , c , 1, para o qual c5 − 2c3 1 3c2 − 1 5 0. n

Como visto no Exemplo 2, o teorema do valor intermediário é usado para determinar quando existem soluções para certos problemas. Entretanto, ele não fornece uma maneira eficiente de encontrar estas soluções. Este tópico será considerado no Capítulo 2.

Integração

O outro conceito básico de cálculo que usamos extensivamente é a integral de Riemann.

Definição 1.12 A integral de Riemann da função f no intervalo [a, b] é o limite seguinte, desde que ele exista:

b

af (x) d lim

max ∆xi 0 ∑

n

i 1 f (zi) ∆xi,x

onde os números x0, x1, . . . , xn satisfazem a 5 x0 # x1 # . . . # xn 5 b e onde ∆ xi 5 xi 2 xi21, para cada i 5 1, 2, . . . , n e zi é arbitrariamente escolhido no intervalo [ xi21, xi]. n

George Friedrich Bernhard Riemann (1826-1866) fez muitas das importantes descobertas que classificam as funções que têm integrais. Ele também tem trabalhos fundamentais na geometria e na teoria das funções com-plexas e é respeitado como um dos mais profundos matemáticos do século XIX.

Uma função f que é contínua em um intervalo [a, b] também é integrável, segundo Riemann, em [a, b]. Isso permite escolher, para conveniência de cálculo, que os pon-tos xi sejam igualmente espaçados em [a, b] e, para cada i 5 1, 2, . . . , n, escolher zi 5 xi. Nesse caso,

b

af (x) d lim

n ∞ ∑

n

i 1f (xi),

b anx

onde os números mostrados na Figura 1.7 como xi são xi 5 a 1 i (b 2 a)/n.

ExEmplO 2EXS

P P

Figura 1.6

Analise.indb 7 15/12/2015 08:39:46

Page 24: Análise Numérica - tradução da 10a edição norte-americana

8 Análise numérica

y

x

y 5 f (x)

a 5 x0 x1 x2 xi21 xi xn21 b 5 xn. . . . . .

Dois outros resultados serão necessários em nosso estudo de análise numérica. O primeiro é uma generalização usual do Teorema do valor médio para integrais.

Teorema 1.13 (Teorema do valor médio para integrais com peso)

Suponha que f ∈ C [a, b], que a integral de Riemann de g exista em [a, b] e que g (x) não mude de sinal em [a, b]. Então, existe um número c em (a, b) tal que

Eb

a f   (x) g (x) d x 5 f  (c) E b

a g (x) d x. n

Quando g (x) ; 1, o Teorema 1.13 é o teorema do valor médio usual para integrais. Ele fornece o valor médio da função f no intervalo [a, b] como (Veja a Figura 1.8.)

f (c) b

af (x) d x.

1b a

x

y

f (c)

y 5 f (x)

a bc

A demonstração do Teorema 1.13 geralmente não é apresentada em um curso de cálculo básico, mas pode ser encontrada na maioria dos textos de análise (veja, por exemplo, [Fu], p. 162).

Polinômios e séries de Taylor

O teorema final desta revisão de cálculo descreve os polinômios de Taylor. Esses poli-nômios são amplamente usados na análise numérica.

Figura 1.7

Figura 1.8

Analise.indb 8 15/12/2015 08:39:47

Page 25: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 9

Teorema 1.14 (Teorema de Taylor)

Suponha que f ∈ C n [a, b], que f  (n11) exista em [a, b] e que x0 ∈ [a, b]. Para todo x ∈ [a, b], existe um número j (x) entre x0 e x com

f (x) 5 Pn (x) 1 Rn (x),

onde

Pn(x) f (x0) f (x0)(x x0) (x x0)2 . . . (x x0)n

∑n

k 0(x x0)k

e

Rn(x) (x x0)n 1.f (n 1)( (x))

(n 1)!

f (k)(x0)k!

f (n)(x0)n!

f (x0)2!

e

Pn(x) f (x0) f (x0)(x x0) (x x0)2 . . . (x x0)n

∑n

k 0(x x0)k

e

Rn(x) (x x0)n 1.f (n 1)( (x))

(n 1)!

f (k)(x0)k!

f (n)(x0)n!

f (x0)2!

n

Aqui, Pn(x) é chamado polinômio de Taylor de ordem n (ou enésimo polimônio de Taylor) de f em x0 e Rn (x) é chamado resto (ou erro de truncamento) relativo a Pn(x). Como o número j (x) no erro de truncamento Rn(x) depende do valor de x no qual o po-linômio Pn(x) está sendo calculado, ele é função da va riável x. Entretanto, não devemos esperar que sejamos capazes de determinar explicitamente j (x). O Teorema de Taylor simplesmente garante que tal função existe e que seu valor está entre x e x0. Na verdade, um dos problemas comuns nos métodos numéricos é tentar determinar uma limitação re-alística para o valor de f   (n11) (j (x)) quando x está dentro de algum intervalo especificado.

Brook Taylor (1685-1731) descreveu esta série em 1715 no artigo Methodus incrementorum directa et inversa. Casos especiais do resultado e provavelmente o próprio resultado tinham sido previamente conhecidos por Isaac Newton, James Gregory e outros.

A série infinita obtida pelo limite de Pn(x) quando n r ∞ é chamada série de Taylor de f em x0. No caso de x0 5 0, o polinômio de Taylor é frequentemente chamado poli­nômio de Maclaurin e a série de Taylor é geralmente chamada série de Maclaurin.

Colin Maclaurin (1698-1746) é mais conhecido como o defensor do cálculo de Newton quando este esteve sob o ataque ferrenho do filósofo irlandês, o bispo George Berkeley. Maclaurin não descobriu a série que leva seu nome; ela era conhecida pelos matemáticos do século XVII, antes de seu nascimento. Entretanto, ele desenvol-veu um método para resolver um sistema de equações lineares que é conhecido como Regra de Cramer, que Cramer não publicou até 1750.

O termo erro de truncamento no polinômio de Taylor refere-se ao erro envolvido na utilização de uma adição truncada ou finita para aproximar a soma de uma série infinita.

Sejam f (x) = cos x e x0 = 0. Determine

(a) o segundo polinômio de Taylor de f em x0; e(b) o terceiro polinômio de Taylor de f em x0.

ExEmplO 3EXS

P P

Analise.indb 9 15/12/2015 08:39:47

Page 26: Análise Numérica - tradução da 10a edição norte-americana

10 Análise numérica

Solução Visto que f ∈ C  ∞ (R), o Teorema de Taylor pode ser aplicado a qualquer n ≥ 0. Além disso,

f   9(x) 5 sen x, f 0(x) 5 2 cos x, f -(x) 5 sen x e f (4)(x) 5 cos x,

assim

f (0) 5 1, f 9(0) 5 0, f 0(0) 5 2 1 e f -(0) 5 0.

(a) Para n 5 2 e x0 5 0, temos

cos x f (0) f (0)x x2 x3

1 12

x2 16

x3 sen (x),

f ( (x))3!

f (0)2!

em que j (x) é algum número (geralmente desconhecido) entre 0 e x. (Veja a Figura 1.9.)

y

x

y � cos x

y � P2(x) � 1 � x2

1

�π

�2

�2

�2

1

π

ππ

Quando x 5 0,01, ele se torna

cos (0,01) 1 12

(0,01)2 16

(0,01)3 sen (0,01) 0,99995 sen (0,01).10 6

6

A aproximação para cos(0,01) determinada pelo polinômio de Taylor é, portanto, 0,99995. O erro de truncamento, ou resto, relativo a essa aproximação é

sen (0,01) 0,16–

10 6 sen (0,01),10 6

6 3

onde usamos a barra sobre o 6 em 0,16– para indicar que esse algarismo repete-se indefi-nidamente. Embora não tenhamos nenhuma maneira de determinar sen j(0,01), sabemos que todos os valores do seno ficam no intervalo [2 1, 1], assim, o erro que ocorre se usarmos a aproximação 0,99995 para o valor do cos(0,01) é limitado por

ucos (0,01) 2 0,99995u 5 0,16– 3 1026 u sen j(0,01) u # 0,16

– 3 1026.

Consequentemente, a aproximação 0,99995 é igual pelo menos aos primeiros cinco algarismos do cos(0,01) e

Figura 1.9

Analise.indb 10 15/12/2015 08:39:48

Page 27: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 11

0,9999483 , 0,99995 2 1,6– 3 1026 # cos (0,01)

# 0,99995 1 1,6– 3 1026 , 0,9999517.

O limitante para o erro é muito maior que o erro real. Isso acontece em parte em ra-zão da limi tação deficiente usada para usen j(x) u. É mostrado no Exercício 27 que, para todos os valores de x, temos usen x u # uxu. Como 0 # j , 0,01, poderíamos ter usado o fato de que usen j (x)u # 0,01 na fórmula de erro, produzindo o limitante 0,16

– 3 1028.

(b) Como f    -(0) 5 0, o polinômio de Taylor de ordem três com o termo de resto em x0 5 0 é

cos x 1 12

x2 x4cos (x),124

onde 0 , j (x) , 0,01. O polinômio aproximador permanece o mesmo e a aproximação ainda é 0,99995, mas agora temos muito mais segurança de precisão. Como ucos j (x)u # 1 para todo x, temos

x4cos (x) (0,01)4(1) < 4,2 10 10.1

24124 3#

Assim

ucos (0,01) 2 0,99995u # 4,2 3 10210,

e

0,99994999958 5 0,99995 2 4,2 3 10210

# cos (0,01) # 0,99995 1 4,2 3 10210 5 0,99995000042. n

O Exemplo 3 ilustra os dois objetivos da análise numérica:

(i) Determinar uma aproximação para a solução de um dado problema.(ii) Determinar um limitante para o erro da aproximação.

Os polinômios de Taylor em ambas as partes fornecem a mesma resposta para (i), mas o polinômio de Taylor de ordem três fornece uma resposta muito melhor para (ii) que o polinômio de Taylor de ordem dois.

Podemos também usar os polinômios de Taylor para obter aproximações para integrais.

Ilustração Podemos usar o terceiro polinômio de Taylor e seu resto, encontrados no Exemplo 3, para aproximar E0,1

0 cos x d x . Temos

0,1

0cos x dx

0,1

0!1

12

x2@ dx0,1

0x4 cos (x) dx

x x30,1

0

0,1

0x4 cos (x) dx

0,1 (0,1)30,1

0x4 cos (x) dx.

124

16

124

16

124

Analise.indb 11 15/12/2015 08:39:49

Page 28: Análise Numérica - tradução da 10a edição norte-americana

12 Análise numérica

Portanto,

0,1

0cos x dx 0,1 (0,1)3 0,09983

–.

16

Um limitante para o erro nessa aproximação é determinado pela integral do resto de Taylor e o fato de que ucos j(x)u # 1 para todo x:

124

0,1

0x4 cos ξ (x) dx #

124

0,1

0x4| cos ξ (x)| dx

#124

0,1

0x4 dx =

(0,1)5

120= 8,3 3 10−8.

Como o valor verdadeiro da integral é

0,1

0cos x dx sen x

0,1

0sen 0,1 0,099833416647,

o erro real da aproximação é 8,3314 3 1028, o qual está dentro da limitação do erro. n

1. Mostre que as seguintes equações têm pelo menos uma solução nos intervalos dados.a. x cos x 2 2x2 1 3x 2 1 5 0, [0,2, 0,3] e [1,2, 1,3]b. (x 2 2)2 2 ln x 5 0, [1, 2] e [e, 4]c. 2x cos(2x) 2 (x 2 2)2 5 0, [2, 3] e [3, 4]d. x 2 (ln x)x 5 0, [4, 5]

2. Mostre que as seguintes equações têm pelo menos uma solução nos intervalos dados.a. œwx − cos x 5 0, [0, 1]b. ex − x 2 1 3x − 2 5 0, [0, 1]

c. −3 tg(2x ) 1 x 5 0, [0, 1]

d. ln x − x 2 1 }52

x − 1 5 0, [ }12 , 1]

3. Encontre intervalos que contenham soluções das seguintes equações.a. x − 2−x 5 0b. 2x cos (2x ) − (x 1 1)2 5 0c. 3x − ex 5 0d. x 1 1 − 2 sen (π x ) 5 0

4. Encontre intervalos que contenham soluções das seguintes equações.a. x 2 32x 5 0 b. 4x2 2 ex 5 0c. x3 2 2x2 2 4x 1 2 5 0 d. x3 1 4,001x2 1 4,002x 1 1,101 5 0

5. Determine maxa#x#b u f (x) u para as seguintes funções e intervalos.a. f (x) 5 (2 2 ex 1 2x)/3, [0, 1]b f (x) 5 (4x 2 3)/(x2 2 2x), [0,5, 1]c. f (x) 5 2x cos(2x) 2 (x 2 2)2, [2, 4]d. f (x) 5 1 1 e2cos(x21), [1, 2]

EXERCÍCIOS 1.1

Analise.indb 12 15/12/2015 08:39:50

Page 29: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 13

6. Encontre maxa≤x ≤b para as seguintes funções e intervalos.a. f (x ) 5 2x / (x 2 1 1), [0, 2]b. f (x ) 5 x 2 √w(4 − x ), [0, 4]c. f (x ) 5 x 3 − 4x 1 2, [1, 2]d. f (x ) 5 x √w(3 − x 2 ), [0, 1]

7. Mostre que f   9(x) é 0 pelo menos uma vez nos intervalos dados.a. f (x) 5 1 2 ex 1 (e 2 1) sen ((π/2)x), [0, 1]b. f (x) 5 (x 2 1) tg x 1 x sen πx, [0, 1]c. f (x) 5 x sen πx 2 (x 2 2) ln x, [1, 2]d. f (x) 5 (x 2 2) sen x ln(x 1 2) [21, 3]

8. Suponha que f ∈ C [a, b] e que f   9(x) exista em (a, b). Mostre que se f   9(x) 0 para todo x em (a, b), então pode existir no máximo um número p em [a, b] com f (p) 5 0.

9. Seja f (x) 5 x3.a. Determine o polinômio de Taylor de ordem dois P2(x) em x0 5 0.b. Determine R2(0,5) e o erro real ao usar P2(0,5) para aproximar f (0,5).c. Repita a parte (a) usando x0 5 1.d. Repita a parte (b) usando o polinômio da parte (c).

10. Determine o polinômio de Taylor de ordem três P3(x) para a função f (x) 5 œwx 1 1 em x0 5 0. Aproxime œw0,5 , œw0,75, œw1,25 e œw1,5 usando P3(x) e determine os erros reais.

11. Determine o polinômio de Taylor de ordem dois P2(x) para a função f (x) 5 ex cos x em x0 5 0.a. Use P2(0,5) para aproximar f (0,5). Determine um limitante superior para o erro u f (0,5) 2 P2(0,5)u

usando a fórmula de erro e compare-o com o erro real.b. Determine um limitante para o erro u f (x) 2 P2(x) u cometido ao usar P2(x) para aproximar f (x) no in-

tervalo [0, 1].c. Aproxime E1

0 f (x) dx usando E10 P2(x) dx.

d. Determine um limitante superior para o erro em (c) usando E10 uR2(x) dxu e compare o limitante com o

erro real.12. Repita o Exercício 11 usando x0 5 π/6.13. Determine o polinômio de Taylor de ordem três P3(x) para a função f (x) 5 (x 2 1) ln x em x0 5 1.

a. Use P3(0,5) para aproximar f (0,5). Determine um limitante superior para o erro u f (0,5) 2 P3(0,5)u usando a fórmula de erro e compare-o com o erro real.

b. Determine um limitante para erro u f (x) 2 P3(x) u cometido usando P3(x) ao aproximar f (x) no intervalo [0,5, 1,5].

c. Aproxime E1,50,5 f (x) dx usando E1,5

0,5 P3(x) dx.d. Determine um limitante superior para o erro em (c) usando E1,5

0,5 uR3(x) dxu e compare o limitante com o erro real.

14. Seja f (x) 5 2x cos (2x) 2 (x 2 2)2 e x0 5 0.a. Determine o polinômio de Taylor de ordem três P3(x) e use-o para aproximar f (0,4).b. Use a fórmula de erro do Teorema de Taylor para determinar um limitante superior para o erro

u f (0,4) 2 P3(0,4) u. Calcule o erro real.c. Determine o polinômio de Taylor de ordem quatro P4(x) e use-o para aproximar f (0,4).d. Use a fórmula de erro do Teorema de Taylor para determinar um limitante superior para erro

u f (0,4) 2 P4(0,4) u. Calcule o erro real.

Analise.indb 13 15/12/2015 08:39:51

Page 30: Análise Numérica - tradução da 10a edição norte-americana

14 Análise numérica

15. Determine o polinômio de Taylor de ordem quatro P4(x) para a função f (x) 5 xe x 2 em x0 5 0.a. Determine um limitante superior para o erro u f (x) 2 P4(x) u para 0 # x # 0,4.b. Aproxime E0,4

0 f (x) dx usando E0,40 P4(x) dx.

c. Determine um limitante superior para o erro em (b) usando E0,40 P4(x) dx.

d. Aproxime f   9(0,2) usando P 94(0,2) e determine o erro.16. Use o termo de erro de um polinômio de Taylor para estimar o erro envolvido na utilização de sen x ≈ x

para aproximar sen 1°.17. Use um polinômio de Taylor em π/4 para aproximar cos 42° com uma precisão de 1026.18. Seja f (x) 5 (1 2 x)21 e x0 5 0. Determine o polinômio de Taylor de ordem n Pn(x) de f (x) em x0. Determine

o valor de n necessário para que Pn(x) aproxime f (x) com precisão de 1026 em [0, 0,5].19. Seja f (x) 5 e x e x0 5 0. Determine o polinômio de Taylor de ordem n, Pn(x), de f (x) em x0. Determine o

valor de n necessário para que Pn(x) aproxime f (x) com precisão de 1026 em [0, 0,5].20. Determine o polinômio de Maclaurin de grau n, Pn(x), de f (x) 5 arctg x.21. O polinômio P2(x) 5 1 2 }

12

x2 deve ser usado para aproximar f (x) 5 cos x em [2 }12

, }12

]. Determine um li mi tante para o erro máximo.

22. Use o teorema do valor intermediário 1.11 e o Teorema de Rolle 1.7 para mostrar que o gráfico de f (x) 5 x3 1 2  x 1 k cruza o eixo x exatamente uma vez, independentemente do valor da constante k.

23. Um polinômio de Maclaurin para e x é usado para fornecer a aproximação 2,5 de e. O limitante para o erro nessa aproximação é estabelecido como sendo E 5 }1

6 . Determine um limitante para o erro em E.

24. A função erro definida porerf (x)

x

0e t2dt

2Ϲ

fornece a probabilidade de que qualquer uma de uma série de tentativas fique a menos de x unidades da média, supondo que as tentativas tenham uma distribuição normal com média 0 e desvio padrão

√2/2.

Essa integral não pode ser calculada em termos de funções elementares, por essa razão deve ser usada uma técnica de aproximação.a. Integre a série de Maclaurin para e 2x2 para mostrar que

erf (x) ∑k 0

2Ϲ

( 1)kx2k 1

(2k 1)k!

b. A função erro também pode ser expressa na forma

erf (x) e x2∑k 0

2kx2k 1

1 . 3 . 5 ... (2k 1)2

Ϲ

Verifique que as duas séries coincidem para k 5 1, 2, 3 e 4. [Sugestão: use a série de Maclaurin para e 2x 2.] c. Use a série do item (a) para aproximar erf (1) com precisão de 1027. d. Use o mesmo número de termos que no item (c) para aproximar erf (1) com a série do item (b). e. Explique por que ocorrem dificuldades ao usar a série do item (b) para aproximar erf (x).

EXERCÍCIOS TEÓRICOS

25. O polinômio de Taylor de ordem n de uma função f em x0 é às vezes conhecido como o polinômio de grau no máximo n que “melhor” aproxima f perto de x0.

Analise.indb 14 15/12/2015 08:39:52

Page 31: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 15

a. Explique por que essa descrição é precisa.b. Determine o polinômio quadrático que melhor aproxima uma função f perto de x0 5 1 se a reta tangente

em x0 5 1 tem a equação y 5 4x 2 1 e se f  0(1) 5 6.26. Demonstre o Teorema de Rolle generalizado, Teorema 1.10, verificando o seguinte.

a. Use o Teorema de Rolle para mostrar que f   9 (zi ) 5 0 para n − 1 números em [a, b], com a , z1 , z2 , ··· , zn−1 , b.

b. Use o Teorema de Rolle para mostrar que f  0 (wi ) 5 0 para n − 2 números em [a, b] com z1 , w1 , z2 , w2 ··· wn−2 ,zn−1 , b.

c. Continue os argumentos nas partes (a) e (b) para mostrar que para cada j = 1, 2,..., n − 1, existem n − j números distintos em [a, b], nos quais f ( j ) é 0.

d. Mostre que a parte (c) implica a conclusão do teorema.27. O Exemplo 3 afirma que para todo x temos |sen x|≤ |x|. Use o seguinte para verificar esta afirmação.

a. Mostre que para todo x ≥ 0, f (x) 5 x − sen x é não decrescente, o que implica que sen x ≤ x com a igualdade ocorrendo apenas quando x 5 0.

b. Use o fato de que a função seno é ímpar para obter a conclusão.28. Diz-se que uma função f : [a, b] r R satisfaz uma condição de Lipschitz com constante de lipschitz L em

[a, b] se, para todo x, y ∈ [a, b], temos u f (x) 2 f (y) u # L ux 2 yu. a. Mostre que se f satisfaz uma condição de lipschitz com constante de lipschitz L no intervalo [a, b],

então f ∈ C [a, b]. b. Mostre que se f tem uma derivada que é limitada em [a, b] por L, então f satisfaz uma condição de

lipschitz com constante de lipschitz L em [a, b]. c. Dê um exemplo de uma função que seja contínua em um intervalo fechado, mas não satisfaça uma con-

dição de lipschitz no intervalo.29. Suponha que f ∈ C [a, b], que x1 e x2 estão em [a, b]. a. Mostre que existe um número j entre x1 e x2 com

f (ξ) =f (x1) + f (x2)

2=

12

f (x1) +12

f (x2).

b. Suponha que c1 e c2 sejam constantes positivas. Mostre que existe um número j entre x1 e x2 com

f ( ) c1 f (x1) )c2 f (x2

c1 c2

c. Dê um exemplo que mostre que o resultado na parte (b) não é necessariamente válido quando c1 e c2 têm sinais opostos, com c1 – c2.

30. Sejam f ∈ C [a, b] e p no intervalo aberto (a, b). a. Suponha que f (p) 0. Mostre que existe um δ . 0 tal que f (x) 0, para todo x em [ p 2 δ, p 1 δ],

onde [ p 2 δ, p 1 δ] é subconjunto de [a, b]. b. Suponha que f (p) 5 0 e que seja dado k . 0. Mostre que existe um δ . 0 tal que u f (x) u # k para todo

x em [ p 2 δ, p 1 δ], onde [ p 2 δ, p 1 δ] é subconjunto de [a, b].

QUESTÃO PARA DISCUSSÃO

1. Descreva, com suas próprias palavras, a condição de lipschitz. Dê vários exemplos de funções que satisfa-çam esta condição ou dê vários exemplos de funções que não satisfaçam esta condição.

Analise.indb 15 15/12/2015 08:39:52

Page 32: Análise Numérica - tradução da 10a edição norte-americana

16 Análise numérica

1.2 Erros de arredondamento e aritmética no computador

A aritmética executada por uma calculadora ou computador é diferente daquela dos nossos cursos de álgebra e cálculo. Você pode esperar que tenhamos sempre como afirmações verdadeiras coisas como 2 1 2 5 4, 4 · 8 5 32 e (œw3)2 5 3. Entretanto, na aritmética computacional, esperamos resultados exatos para 2 1 2 5 4, 4 · 8 5 32, mas não temos precisamente (œw3)2 5 3. Para entender por que isso é verdadeiro, devemos explorar o mundo da aritmética com número finito de algarismos.

Espere erros devido ao arredondamento sempre que forem feitos cálculos usando números que não sejam po-tências de 2. Manter esse erro sob controle é extremamente importante quando o número de cálculos for grande.

Em nosso mundo da matemática tradicional, permitimos números com uma quan-tidade infinita de algarismos. A aritmética que usamos nesse mundo define œw3 como o único número positivo que, quando multiplicado por si mesmo, produz o inteiro 3. No mundo da computação, entretanto, cada número representável tem apenas um número fixo e finito de algarismos. Isso significa, por exem plo, que apenas números racionais – e nem mesmo todos eles – podem ser representados exatamente. Como œw3 não é racional, recebe uma representação aproximada, cujo quadrado não será precisamen-te 3, embora provavelmente seja suficientemente próximo de 3 para ser aceitável na maioria das situações. Na maior parte dos casos, então, essa aritmética de máquina é satisfatória e passa sem ser notada e sem causar preocupação, mas às vezes aparecem problemas por causa dessa discrepância.

O erro que é produzido quando uma calculadora ou um computador é usado para rea-lizar cálculos com números reais é chamado erro de arredondamento. Isso ocorre por-que a aritmética efetuada em uma máquina envolve apenas números com uma quantidade finita de algarismos, com o resultado de que os cálculos são efetuados apenas com repre-sentações aproximadas dos números corretos. Em um computador típico, apenas um sub-conjunto relativamente pequeno do sistema de números reais é usado para a representa-ção de todos os números reais. Esse subconjunto contém apenas números racionais, tanto positivos como negativos, e armazena a parte fracionária junto com a parte exponencial.

Números de máquina binários

Em 1985, o IEEE (Instituto de Engenheiros Elétricos e Eletrônicos) publicou um re-latório chamado Binary Floating Point Arithmetic Standard 754-1985. Uma versão atualizada foi publicada em 2008 como IEEE 754-2008. Isso fornece os padrões para números binários e decimais de ponto flutuante, formatos para troca de dados, algoritmos para o arredondamento de operações aritméticas e o tratamento de exceções. Foram especificados formatos para precisões simples, dupla e estendida, e esses padrões são geralmente seguidos por todos os fabricantes de microcomputadores que usam hardware de ponto flutuante.

É usada para um número real uma representação de 64 bits (dígitos binários). O primeiro bit é um indicador de sinal, denotado por s. Ele é seguido por um expoente de 11 bits, c, chamado característica, e por uma fração binária de 52 bits, f, chamada mantissa. A base para o expoente é 2.

Visto que 52 algarismos binários correspondem a 16 ou 17 algarismos decimais, podemos considerar que um número representado nesse sistema tem pelo menos 16 algarismos decimais de precisão. O expoente de 11 algarismos binários fornece uma

Analise.indb 16 15/12/2015 08:39:53

Page 33: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 17

faixa de 0 a 211 2 1 5 2.047. Entretanto, a utilização apenas de inteiros positivos para o expoente não permitiria uma representação adequada de números de módulo peque-no. Para garantir que números de módulo pequeno sejam igualmente representáveis, 1.023 é subtraído da característica, de maneira que o intervalo do expoente seja, na verdade, de 21.023 a 1.024.

Para economizar armazenamento e fornecer uma representação única de cada nú-mero em ponto flutuante, é imposta uma normalização. A utilização desse sistema for-nece um número em ponto flutuante da forma

(21) s  2c21.023 (1 1 f )

Ilustração Considere o número de máquina

0 10000000011 1011100100010000000000000000000000000000000000000000.

O bit mais à esquerda é s = 0, o que indica que o número é positivo. Os próximos 11 bits, 10000000011, que fornecem a característica, são equivalentes ao número decimal

c 5 1 · 210 1 0 · 29 · 1 . . . 1 0 · 22 1 1 · 21 1 1 · 20 5 1024 1 2 1 1 5 1027.

A parte exponencial do número é, portanto, 21.02721.023 5 24. Os 52 bits finais especificam que a mantissa seja

f 1 · ! 12@

11 · ! 1

2@3

1 · ! 12@

41 · ! 1

2@5

1 · ! 12@

81 · ! 1

2@12

.

Consequentemente, esse número de máquina representa precisamente o número decimal

( 1)s 2c 1023 (1 f ) ( 1)0 · 21027 1023 !1 ! @@27,56640625.

14.096

1256

132

116

18

12

Entretanto, o próximo menor número de máquina é

0 10000000011 1011100100001111111111111111111111111111111111111111,

e o próximo maior número de máquina é

0 10000000011 1011100100010000000000000000000000000000000000000001.

Isso significa que nosso número de máquina original representa não apenas 27,56640625, mas também metade dos números reais que estão entre 27,56640625 e o número de máquina menor mais próximo, bem como metade dos números entre 27,5640625 e o número de máquina maior mais próximo. Para ser preciso, ele representa qualquer número real no intervalo

[27,5664062499999982236431605997495353221893310546875, 27,5664062500000017763568394002504646778106689453125).

O menor número positivo normalizado que pode ser representado tem s 5 0, c 5 1 e f 5 0 e é equivalente a

221022 · (1 1 0) < 0,22251 3 102307,

Analise.indb 17 15/12/2015 08:39:53

Page 34: Análise Numérica - tradução da 10a edição norte-americana

18 Análise numérica

e o maior tem s 5 0, c 5 2.046 e f 5 1 2 2252 e é equivalente a

21023 · (2 2 2252) < 0,17977 3 10309.

Números que ocorrem em cálculos com módulo menor que

221022 · (1 1 0)

resultam em underflow e são geralmente igualados a zero. Números maiores que

21023 · (2 2 2252)

resultam em overflow e normalmente fazem o cálculo parar (a menos que o programa tenha sido projetado para detectar essa ocorrência). Observe que há duas representações para o número zero; um 0 positivo quando s 5 0, c 5 0 e f 5 0, e um 0 negativo quando s 5 1, c 5 0 e f 5 0.

Números de máquina decimais

O uso da representação binária tende a dissimular dificuldades computacionais que ocorrem quando uma coleção finita de números de máquina for usada para representar todos os números reais. Para examinar esses problemas, usaremos os números deci-mais mais familiares em vez da representação binária. Consideraremos agora, por sim-plicidade, que os números de máquina sejam representados na forma normalizada de ponto flutuante decimal

60,d1d2 . . . dk 3 10n, 1 # d1 # 9 e 0 # di # 9,

para cada i 5 2, . . . , k. Os números dessa forma são chamados números de máquina decimais de k algarismos.

Qualquer número real positivo dentro do intervalo numérico da máquina pode ser normalizado na forma

y 5 0,d1d2 . . . dk dk11dk12 . . . 3 10n.

O erro que resulta da substituição de um número por sua forma em ponto flutuante é chamado erro de arredon­damento, independentemente de ter sido usado o método de arredondamento ou truncamento.

A forma em ponto flutuante de y, denotada por f l (y), é obtida terminando a mantissa de y em k alga ris mos decimais. Há duas maneiras de realizar isso. Um método, chamado truncamento, é simplesmente cortar (ou truncar) os algarismos dk11dk12 . . . . Isso produz a forma em ponto flutuante

f l ( y) 5 0,d1d2 . . . dk 3 10n.

O outro método, chamado arredondamento, adiciona 5 3 10n2(k11) a y e então trunca o resultado para obter um número da forma

f l ( y) 5 0,δ1δ2 . . . δk 3 10n.

Desse modo, ao arredondar, se dk11 $ 5, adicionamos 1 a dk para obter f l (y); isto é, arredondamos para cima. Quando dk11 , 5, simplesmente cortamos tudo menos os primeiros k algarismos; logo, arredondamos para baixo. Se arredondarmos para baixo,

Analise.indb 18 15/12/2015 08:39:53

Page 35: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 19

então δi 5 di para cada i 5 1, 2, . . . , k. Entretanto, se arredondarmos para cima, os algarismos (e mesmo o expoente) podem mudar.

Determine os valores com cinco algarismos do número irracional π por (a) truncamento e (b) arredondamento.

Solução O número π tem uma expansão decimal infinita da forma π 5 3,14159265 . . . Escrevendo na forma decimal normalizada, temos

π 5 0,314159265 . . . 3 101.

(a) A forma em ponto flutuante de π usando o truncamento para cinco algarismos é

f l (π) 5 0,31415 3 101 5 3,1415.

(b) Como o sexto algarismo da expansão decimal de π é 9, a forma de ponto flutuante de π usando arredondamento para cinco algarismos é

f l (π) 5 (0,31415 1 0,00001) 3 101 5 3,1416. n

O erro relativo é geralmente uma medida melhor de precisão que o erro absoluto, já que leva em consideração o tamanho do número que está sendo aproximado.

A seguinte definição descreve dois métodos para medir erros de aproximação.

Definição 1.15 Ao supor que p ∗ é uma aproximação de p, o erro real é p 2 p∗, o erro absoluto é u p 2 p∗ u e o erro relativo é |p − p∗|

|p|, contanto que p ≠ 0. n

Considere os erros real, absoluto e relativo na representação de p por p∗ no seguin-te exemplo.

Determine os erros real, absoluto e relativo ao aproximar p por p∗ quando

(a) p 5 0,3000 3 101 e p∗ 5 0,3100 3 101 ;(b) p 5 0,3000 3 10−3 e p∗ 5 0,3100 3 10−3

;(c) p 5 0,3000 3 104 e p∗ 5 0,3100 3 104

.

Solução

(a) Se p 5 0,3000 3 101 e p∗ 5 0,3100 3 101, o erro real é −0.1, o erro absoluto é 0,1 e o erro relativo é 0,3333– 3 1021.

(b) Se p 5 0,3000 3 1023 e p∗ 5 0,3100 3 1023, o erro real é −0.1 3 10−4 , o erro ab-soluto é 0,1 3 1024 e o erro relativo é 0,3333– 3 1021.

(c) Se p 5 0,3000 3 104 e p∗ 5 0,3100 3 104, o erro real é −0.1 3 103 , o erro absolu-to é 0,1 3 103 e o erro relativo é novamente 0,3333– 3 1021.

Esse exemplo mostra que o mesmo erro relativo, 0,3333– 3 1021, ocorre para erros absolutos muito variados. Como uma medida de precisão, o erro absoluto pode ser enganoso e o erro relativo pode ser mais significativo, já que este leva em consideração o próprio valor. n

ExEmplO 1EXS

P P

ExEmplO 2EXS

P P

Analise.indb 19 15/12/2015 08:39:53

Page 36: Análise Numérica - tradução da 10a edição norte-americana

20 Análise numérica

Um limitante do erro é um número não negativo maior do que o erro absoluto. Ele é às vezes obtido pelos métodos do cálculo para determinar o valor absoluto máximo de uma função. Esperamos encontrar o menor limitante superior para o erro para obter uma estimativa do erro real que seja tão precisa quanto possível.

A definição seguinte usa o erro relativo para fornecer uma medida dos algarismos significativos de precisão para uma aproximação.

Em geral, não podemos determinar o valor exato do erro real em uma aproximação. Em vez disso, encontramos um limitante para o erro, o que fornece “o pior caso” de erro.

Definição 1.16 Diz-se que o número p∗ aproxima p até t algarismos significativos (ou posições) se t for o maior inteiro não negativo para o qual

5 10 t.

p p*

p# 3 n

A Tabela 1.1 ilustra a natureza contínua dos algarismos significativos listando, para os vários valores de p, o menor limitante superior de u p 2 p∗ u, denotado por max u p 2 p∗ u quando p∗ coincide com p até quatro algarismos significativos.

Tabela 1.1 p 0,1 0,5 100 1.000 5.000 9.990 10.000

max u p 2 p∗ u 0,00005 0,00025 0,05 0,5 2,5 4,995 5.

O termo algarismo significativo é usado muitas vezes para descrever livremente o número de algarismos deci-mais que parecem ser precisos. A definição é mais precisa e fornece um conceito contínuo.

Retornando à representação de números por máquinas, vemos que a representação em ponto flutuante f l (y) para o número y tem o erro relativo

.y f l( y)

y

Se forem usados k algarismos decimais e truncamento para a representação por má-quina de

y 5 0,d1d2 . . . dk dk11 . . . 3 10n,

então

10 k.0,dk 1dk 2...

0,d1d2...0,dk 1dk 2 ... 10n k

0,d1d2 ... 10n

0,d1d2 ... dkdk 1 ... 10n 0,d1d2 ... dk 10n

0,d1d2 ... 10y f l(y)

y n

3

33

33

Analise.indb 20 15/12/2015 08:39:54

Page 37: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 21

Desde que d1 0, o valor mínimo do denominador é 0,1. O numerador é limitado acima por 1. Consequentemente,

10 k 10 k 1.10,1

y f l(y)y # 3

De maneira similar, um limitante para o erro relativo ao usar aritmética de arredonda-mento, com k algarismos, é 0,5 3 102k11. (Veja o Exercício 28.)

Observe que os limitantes do erro relativo usando a aritmética com k alga ris mos são independentes do número que está sendo representado. Esse resultado deve-se à ma neira como os números de máquina são distribuídos ao longo da reta real. Por causa da forma exponencial da característica, a mesma quantidade de números de máquina decimais é usada para re presentar cada um dos intervalos [0,1, 1], [1, 10] e [10, 100]. Na verdade, dentro dos limites da máquina, a quantidade de números de máquina deci-mais em [10n, 10n11] é constante para todos os inteiros n.

Aritmética com número finito de algarismo

Além da representação imprecisa de números, a aritmética realizada em um com-putador não é exata. A aritmética envolve a manipulação de algarismos binários por várias operações de deslocamento ou lógicas. Como o mecanismo real dessas opera-ções não é pertinente nesta apresentação, devemos criar nossa própria aproximação da aritmética de computador. Embora nossa aritmética não forneça a descrição exata, ela é suficiente para explicar os problemas que ocorrem. (Para uma explicação das mani-pulações realmente envolvidas, estimulamos o leitor a consultar textos de ciência da computação mais técnicos, como [MA], Computer System Architecture.)

Suponha que as representações em ponto flutuante f l(x) e f l(y) sejam fornecidas para os números reais x e y e que os símbolos %, *, ^ e *; representem as operações de máquina adição, subtração, multiplicação e divisão, respectivamente. Considerare-mos uma aritmética com um número finito de algarismos determinada por

x % y 5 f l( f l(x) 1 f l(  y)), x ^ y 5 f l( f l(x) 3 f l(y)), x * y 5 f l( f l(x) 2 f l(  y)), x *; y 5 f l( f l(x) 4 f l(y).

Essa aritmética corresponde à realização de aritmética exata nas representações em ponto flutuante de x e y e, depois, à conversão do resultado exato em sua representação em ponto flutuante com um número finito de algarismos.

Suponha que x 5 }57 e y 5 }

13 . Use truncamento, com cinco algarismos, para calcular

x % y, x * y, x ^ y e x *; y.

Solução Observe que

x =57

= 0,714285 e y =13

= 0,3

implicam que os valores truncados, com cinco algarismos, de x e y são

f l (x ) 5 0,71428 3 100 e f l (y) 5 0,33333 3 100 .

ExEmplO 3EXS

P P

Analise.indb 21 15/12/2015 08:39:55

Page 38: Análise Numérica - tradução da 10a edição norte-americana

22 Análise numérica

Assim,

x % y 5 f l ( f l (x ) 1 f l (y)) 5 f l (0,71428 3 100 1 0,33333 3 100)

          5 f l (1,04761 3 100 ) 5 0,10476 3 101 .

O valor verdadeiro é x 1 y 5 }57 1 }

13 5 }

2221

, de modo que temos

Erro absoluto =2221

− 0,10476 3 101 = 0,190 3 10−4

e

Erro relativo =0,190 10−4

22/21= 0,182 10−4.3

3

A Tabela 1.2 lista os valores destes e de outros cálculos. n

Tabela 1.2 Operação Resultado Valor real Erro absoluto Erro relativo

x % y 0,10476 3 101 22/21 0,190 3 1024 0,182 3 1024

x * y 0,38095 3 100 8/21 0,238 3 1025 0,625 3 1025

x ^ y 0,23809 3 100 5/21 0,524 3 1025 0,220 3 1024

x *; y 0,21428 3 101 15/7 0,571 3 1024 0,267 3 1024

Como o máximo erro relativo para as operações do Exemplo 3 é 0,267 3 1024, a aritmética produz resultados satisfatórios de cinco algarismos. Esse não é o caso no exemplo a seguir.

Suponha que, além de x 5 }57 e y 5 }

13  

, tenhamos

u 5 0,714251. υ 5 98765,9 e w 5 0,111111 3 1024 ,

de modo que

f l (u) = 0,71425 3 100 , f l (υ) = 0,98765 3 105 e f l (w ) = 0.11111 3 1024.

Determine os valores truncados em cinco algarismos de x * u, (x * u) *; w , (x * u) ^ υ e u ! υ.

Solução Estes números foram escolhidos para ilustrar alguns problemas que podem apa-recer com a aritmética com um número finito de algarismos. Como x e u são quase os mesmos, sua diferença é pequena. O erro absoluto de x * u é

|(x − u) − (x * u)| 5 |(x − u) − ( f l ( f l (x ) − f l (u)))|

=5

7− 0,714251 − f l 0,71428 100 − 0,71425 100

= 0,347143 10−4 − f l 0,00003 100 = 0,47143 10−5.3

3

3

3

3

ExEmplO 4EXS

P P

Analise.indb 22 15/12/2015 08:39:56

Page 39: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 23

Esta aproximação tem um erro absoluto pequeno, mas um erro relativo grande:

0,47143 10−5

0,347143 10−40,136.

3

3#

A divisão subsequente pelo número pequeno w ou a multiplicação subsequente pelo número grande υ aumenta o erro absoluto sem modificar o erro relativo. A adição dos números grande e pequeno u e v produz um erro absoluto grande, mas não um erro relativo grande. Estes cálculos estão mostrados na Tabela 1.3. n

Tabela 1.3 Operação Resultado Valor real Erro absoluto Erro relativo

x * u 0,30000 3 1024 0,34714 3 1024 0,471 3 1025 0,136

(x * u) *; w 0,27000 3 101 0,31242 3 101 0,424 0,136

(x * u) ^ υ 0,29629 3 101 0,34285 3 101 0,465 0,136

u % υ 0,98765 3 105 0,98766 3 105 0,161 3 101 0,163 3 1024

Um dos cálculos produtores de erro mais comum envolve o cancelamento de alga-rismos significativos devido à subtração de números quase iguais. Suponha que dois números quase iguais x e y, com x . y, tenham representações com k algarismos

f l (x) 5 0, d1d2 . . . dpap11ap12 . . . ak 3 10n

e

f l (y) 5 0, d1d2 . . . dpb

p11b

p12 . . . bk 3 10n.

A forma em ponto flutuante de x 2 y é

f l (   f l (x) 2 f l (  y)) 5 0, sp11sp12 . . . sk 3 10n2p,

onde

0, sp11sp12 . . . sk 5 0,ap11ap12 . . . ak 2 0,bp11b

p12 . . . bk.

O número em ponto flutuante usado para representar x 2 y tem no máximo k 2 p alga-rismos significativos. Entretanto, na maioria dos dispositivos de cálculo, serão atribuídos k algarismos para x 2 y, com os últimos p sendo nulos ou atribuídos aleatoriamente. Quaisquer cálculos posteriores envolvendo x 2 y levarão adiante o problema de ter apenas k 2 p algarismos significativos, já que uma cadeia de cálculos não é mais precisa que sua parte menos precisa.

Se uma representação ou cálculo com um número finito de algarismos intro-duzir um erro, ocorrerá uma ampliação posterior do erro ao se dividir por um nú-mero de módulo pequeno (ou, de maneira equivalente, ao se multiplicar por um número de módulo grande). Suponha, por exemplo, que o número z tenha a aproxi-mação com um número finito de algarismos z 1 δ, onde δ é o erro produzido pela representação ou pelo cálculo anterior. Agora, se dividirmos por ε 5 102n, onde n . 0, então

f l ! @ (z δ) 10n.f l(z)f l(ε)

zε 3

Analise.indb 23 15/12/2015 08:39:56

Page 40: Análise Numérica - tradução da 10a edição norte-americana

24 Análise numérica

Portanto, o erro absoluto nessa aproximação, uδu 3 10n, é o erro absoluto original, uδu, multiplicado pelo fator 10n.

Seja p = 0,54617 e q = 0,54601. Use aritmética com quatro algarismos para aproximar p − q e determine os erros absoluto e relativo usando (a) arredondamento e (b) truncamento.

Solução O exato valor de r 5 p 2 q é r 5 0,00016. (a) Suponha que a subtração seja realizada usando a aritmética de quatro algarismos.

Arredondando p e q para quatro algarismos, tem-se p∗ 5 0,5462 e q∗ 5 0,5460, respectivamente, e r  ∗ 5 p∗ 2 q ∗ 5 0,0002 é a aproximação de r com quatro alga-rismos. Como

0,25,r r∗

r0,00016 0,0002

0,00016

o resultado tem apenas um algarismo significativo, enquanto p∗ e q∗ tinham preci-são de quatro e cinco algarismos significativos, respectivamente.

(b) Se for usado o truncamento para obter quatro algarismos, as aproximações de qua-tro algarismos de p, q e r são p∗ 5 0,5461, q ∗ 5 0,5460 e r ∗ 5 p∗ 2 q∗ 5 0,0001. Isso dá

0,375,0,00016 0,00010,00016

r r∗

r

que também resulta em apenas um algarismo significativo de precisão. n

A perda de precisão em decorrência do erro de arredondamento pode frequen-temente ser evitada por uma reformulação do problema, como ilustrado a seguir.

Ilustração A fórmula quadrática afirma que as raízes de ax2 1 bx 1 c 5 0, quando a ≠ 0, são

x1 e x2 .b œb2 4ac2a

b œb2 4ac2a (1.1)

Considere esta fórmula aplicada à equação x2 1 62,10x 1 1 5 0, cujas raízes são aproximadamente

x1 5 2 0,01610723 e x2 5 262,08390.

Usaremos novamente aritmética de arredondamento, com quatro algarismos, nos cálculos para determinar a raiz. Nessa equação, b2 é muito maior do que 4ac, então o numerador no cálculo de x1 envolve a subtração de números quase iguais. Como

œb2 4ac œ(62,10)2 (4,000)(1,000)(1,000)œ3856 4,000 œ3852 62,06,

temos

f l(x1) 0,02000,0,040002,000

62,10 62,062,000

ExEmplO 5EXS

P P

Analise.indb 24 15/12/2015 08:39:58

Page 41: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 25

uma aproximação insatisfatória de x1 5 20,01611, com o grande erro relativo

2,4 10 1.0,01611 0,02000

0,016113

As raízes x1 e x2 de uma equação quadrática geral estão relacionadas aos coeficientes pelo fato de que x1 x2

ba e x1x2 .c

a Esse é um caso especial das fórmulas de Vièta para os coeficientes de polinômios.

Por outro lado, o cálculo de x2 envolve a adição dos números quase iguais 2b e 2œwb2 2 4ac. Isso não representa problema já que

f l(x2) 62,1062,10 62,06

2,000124,2

2,000

tem o erro relativo pequeno

3,2 10 4.62,08 62,10

62,08

Para obter uma aproximação de x1 mais precisa com arredondamento para quatro algarismos, mudamos a forma da fórmula quadrática racionalizando o numerador:

x1 ! @ ,b œb2 4ac2a

b œb2 4ac

b œb2 4ac)b2 (b2 4ac)

2a ( b œb2 4ac)

o que pode ser simplificado para a fórmula quadrática alternativa

2cx1b œb2 4ac

. (1.2)

Usando a equação (1.2), tem-se

f l(x1) 0,01610,2,00062,10 62,06

2,000124,2

que tem o pequeno erro relativo 6,2 3 1024.

A técnica de racionalização também pode ser aplicada para fornecer a seguinte fórmula quadrática alternativa para x2:

2cx2

b œb2 4ac (1.3)

Essa é a forma a ser usada se b for um número negativo. Na Ilustração, entretanto, o uso errôneo dessa fórmula para x2 resultaria não apenas na subtração de números

Page 42: Análise Numérica - tradução da 10a edição norte-americana

26 Análise numérica

quase iguais, mas também na divisão pelo pequeno resultado dessa subtração. A im-precisão que essa combinação produz,

f l(x2) 50,00,2c

b œb2 4ac2,000

62,10 62,062,000

0,04000

tem o grande erro relativo 1,9 3 1021. n

• A lição: pense antes de calcular!

Aritmética estruturada

A perda de precisão devida ao erro de arredondamento pode também ser reduzida reor-ganizando os cálculos, como mostra o próximo exemplo.

Calcule f (x) 5 x3 26,1 x2 1 3,2x 1 1,5 em x 5 4,71 usando aritmética de três alga ris-mos.

Solução A Tabela 1.4 fornece os resultados intermediários dos cálculos.

Tabela 1.4 x x2 x3 6,1x2 3,2x

Exato 4,71 22,1841 104,487111 135,32301 15,072

Três algarismos (truncamento) 4,71 22,1 104. 134. 15,0

Três algarismos (arredondamento) 4,71 22,2 105. 135. 15,1

A fim de ilustrar a situação, observemos os cálculos envolvidos na determina-ção de x3 usando a aritmética de arredondamento com três algarismos. Primeiro determinamos

x2 5 4,712 5 22,1841 e arredondamos para 22,2.

Então usamos esse valor de x2 para determinar

x3 5 x2 . x 5 22,2 · 4,71 5 104,562 que arredondamos para 105.

Além disso,

6,1x 2 5 6,1(22,2) 5 135,42 que arredondamos para 135,

e

3,2x 5 3,2(4,71) 5 15,072 que arredondamos para 15,1.

O resultado exato do cálculo é

Exato: f  (4,71) 5 104,487111 2 135,32301 1 15,072 1 1,5 5 214,263899;

Usando aritmética com número finito de algarismos, a maneira na qual somamos os resultados pode afetar o resultado final. Suponha que somemos da esquerda para a direita. Então, para a aritmética de truncamento, temos

ExEmplO 6EXS

P P

Analise.indb 26 15/12/2015 08:40:01

Page 43: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 27

Três algarismos (truncamento): f (4,71) 5 ((104,0 2 134,0) 1 15,0) 1 1,5 5 213,5;

e para a aritmética de arredondamento, temos

Três algarismos (arredondamento): f (4,71) 5 ((105,0 2 135,0) 1 15,1) 1 1,5 5 213,4.

(Verifique esses resultados cuidadosamente para se assegurar de que sua noção de arit-mética de um número finito de algarismos está correta.) Observe que os valores do truncamento para três algarismos simplesmente retêm os primeiros três algarismos, sem nenhum arredondamento envolvido, e diferem significativamente dos valores do arredondamento para três algarismos.

Os erros relativos nos métodos com três algarismos são

0,05, para o truncamento

0,06, para o arredondamento.

e

14,263899 13,414,263899

14,263899 13,514,263899

n

Ilustração Como abordagem alternativa, o polinômio f (x) do Exemplo 6 pode ser escrito de modo estruturado como

f (x) 5 x3 2 6,1x2 1 3,2x 1 1,5 5 ((x 2 6,1) x 1 3,2) x 1 1,5.

O uso da aritmética de truncamento, com três algarismos, produz agora

f (4,71) 5((4,71 − 6,1) 4,71 1 3,2) 4,71 1 1,5 5 ((−1,39)(4,71) 1 3,2)4,71 1 1,5

5(−6,54 1 3,2) 4,71 1 1,5 5 (−3,34) 4,71 1 1,5 5 −15,7 1 1,5 5 −14,2.

De modo parecido, obtemos agora com o arredondamento, com três algarismos, a res-posta −14,3. Os novos erros relativos são

Três algarismos (truncamento): 0,0045;

e

Três algarismos (arredondamento): 0,0025.14,263899 14,314,263899

14,263899 14,214,263899

lembre-se de que o truncamento (ou arredondamento) é efetuado após cada cálculo.

A estruturação reduziu o erro relativo da aproximação por truncamento para menos de 10% do valor obtido inicialmente. Para a aproximação por arredondamento, a melhora foi ainda mais dramática; o erro, nesse caso, foi reduzido em mais de 95%. n

Os polinômios devem sempre ser expressos na forma estruturada antes de se realizar um cálculo, pois essa forma minimiza o número de operações aritméticas. O decréscimo de erro na ilustração se dá em decorrência da redução nas operações de quatro multipli-cações e três adições para duas multiplicações e três adições. Uma maneira de reduzir o erro de arredondamento é reduzir o número de operações.

Analise.indb 27 15/12/2015 08:40:01

Page 44: Análise Numérica - tradução da 10a edição norte-americana

28 Análise numérica

1. Calcule o erro absoluto e o erro relativo na aproximação de p por p∗.a. p 5 π, p∗ 5 22/7 b. p 5 π, p∗ 5 3,1416c. p 5 e, p∗ 5 2,718 d. p 5 œw2, p∗ 5 1,414

2. Calcule o erro absoluto e o erro relativo na aproximação de p por p∗.a. p 5 e10, p∗ 5 22.000 b. p 5 10π, p∗ 5 1.400c. p 5 8!, p∗ 5 39.900 d. p 5 9!, p∗ 5 œw18π (9/e)9

3. Suponha que p∗ deva aproximar p com erro relativo de no máximo 1023. Determine o maior intervalo no qual p∗ deve estar contido para cada valor de p.a. 150 b. 900 c. 1.500 d. 90

4. Determine o maior intervalo no qual p∗ deve estar contido a fim de aproximar p com erro relativo de no máximo 1024 para cada valor de p.a. π b. e c. œw2 d. 3œw7

5. Efetue os seguintes cálculos (i) exatamente, (ii) usando aritmética de truncamento, com três algarismos, e (iii) usando aritmética de arredondamento, com três algarismos. (iv) Calcule os erros relativos nas partes (ii) e (iii).

a. b. . c. ! @ d. ! @13

13

311

320

311

320

13

45

13

45

6. Use a aritmética de arredondamento, com três algarismos, para efetuar os seguintes cálculos. Calcule o erro absoluto e o erro relativo com o valor exato determinado com pelo menos cinco algarismos.

a. 133 0,921 b. 133 0,499

c. (121 0,327) 119 d. (121 119) 0,327

7. Use a aritmética de arredondamento, com três algarismos, para efetuar os seguintes cálculos. Calcule o erro absoluto e o erro relativo com o valor exato determinado com pelo menos cinco algarismos.

a.1314 − 6

7

2e − 5,4b. −10π + 6e −

362

c.29

·97 d.

√13 +

√11√

13 −√

11

8. Repita o Exercício 7 usando a aritmética de arredondamento, com quatro algarismos.9. Repita o Exercício 7 usando a aritmética de truncamento, com três algarismos.10. Repita o Exercício 7 usando a aritmética de truncamento, com quatro algarismos.11. Os primeiros três termos diferentes de zero na série de Maclaurin para a função arco-tangente são x 2

(1/3)x3 1 (1/5)x5. Calcule o erro absoluto e o erro relativo nas seguintes aproximações de π usando o poli-nômio em vez do arco-tangente:

a. 4[arctg ! 12@ arctg ! @] b. 16 arctg ! @ 4 arctg ! @1

51

23913

EXERCÍCIOS 1.2

Analise.indb 28 15/12/2015 08:40:02

Page 45: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 29

12. O número e pode ser definido por e 5 ∑∞n5 0 (1/n!), em que n! 5 n(n − 1) · · · 2 · 1 para n 0 e 0! 5 1. Cal-

cule o erro absoluto e o erro relativo nas seguintes aproximações de e:

a. ∑5

n 0 b. ∑

10

n 0

1n!

1n!

13. Seja

f (x) .x cos x sen xx sen x

a. Determine limxr0 f (x).b. Use a aritmética de arredondamento, com quatro algarismos, para calcular f (0,1).c. Substitua cada função trigonométrica por seu polinômio de Maclaurin de ordem três e repita o item (b).d. O valor real é f (0,1) 5 21,99899998. Determine o erro relativo para os valores obtidos nos itens (b) e (c).

14. Sejaf (x) .ex e x

x

a. Determine limxr0(ex 2 e2x)/x.

b. Use a aritmética de arredondamento, com três algarismos, para calcular f (0,1).c. Substitua cada função exponencial por seu polinômio de Maclaurin de ordem três e repita o item (b).d. O valor real é f (0,1) 5 2,003335000. Determine o erro relativo para os valores obtidos nos itens (b) e (c).

15. Use a aritmética de arredondamento, com quatro algarismos, e as fórmulas (1.1), (1.2) e (1.3) para deter-minar a aproximação mais precisa para as raízes das seguintes equações quadráticas. Calcule os erros absolutos e relativos.

a. x2 x 0 b. x2 x 016

1234

13

16

1234

13

c. 1,002x2 2 11,01x 1 0,01265 5 0 d. 1,002x2 1 11,01x 1 0,01265 5 016. Use a aritmética de arredondamento, com quatro algarismos, e as Fórmulas (1.1), (1.2) e (1.3) para en-

contrar as aproximações mais precisas para as raízes das seguintes equações quadráticas. Calcule os erros absolutos e relativos.a. x 2 − œw7x 1 œw2 5 0b. π x 2 1 13x 1 1 5 0c. x 2 1 x − e 5 0d. x 2 − œw35x − 2 5 0

17. Repita o Exercício 15 usando a aritmética de truncamento, com quatro algarismos.18. Repita o Exercício 16 usando a aritmética de truncamento, com quatro algarismos.19. Use o formato real longo de 64 bits para determinar o equivalente decimal dos seguintes números de má-

quina em ponto flutuante.a. 0 10000001010 1001001100000000000000000000000000000000000000000000b. 1 10000001010 1001001100000000000000000000000000000000000000000000c. 0 01111111111 0101001100000000000000000000000000000000000000000000d. 0 01111111111 0101001100000000000000000000000000000000000000000001

Analise.indb 29 15/12/2015 08:40:03

Page 46: Análise Numérica - tradução da 10a edição norte-americana

30 Análise numérica

20. Determine os próximos maior e menor números de máquina na forma decimal para os números fornecidos no Exercício 19.

21. Suponha que dois pontos (x0, y0) e (x1, y1) estejam em uma reta, com y1 y0. Há duas fórmulas disponíveis para determinar a intersecção da reta com o eixo x:

x e x x0 .(x1 x0)y0

y1 y0

x0y1 x1y0

y1 y0

a. Mostre que ambas as fórmulas são algebricamente corretas.b. Use os dados (x0, y0) 5 (1,31, 3,24) e (x1, y1) 5 (1,93, 4,76) e a aritmética de arredondamento, com três

algarismos para calcular a intersecção com o eixo x das duas maneiras. Qual método é melhor e por quê?

22. O polinômio de Taylor de ordem n para f (x) 5 ex é ∑n

i50(xi/i!). Use o polinômio de grau nove e a aritmética

de truncamento, com três algarismos, para determinar uma aproximação de e25 por cada um dos seguintes métodos.

a. e 5 ∑9

i 0∑

9

i 0

b. e 5 1 .

∑9i 0

5i

i!

1e5

( 1)i5i

i!( 5)i

i!

c. Um valor aproximado de e25 correto até três algarismos é 6,74 3 1023. Qual fórmula, (a) ou (b), fornece o resultado mais preciso e por quê?

23. O sistema linear dois por dois ax 1 by 5 e, cx 1 dy 5 f,

onde a, b, c, d, e, f são dados, pode ser resolvido para x e y como segue:

faça m , desde que a ≠ 0;

d1 d mb;f1 f me;

y ;

x .e bya

f1

d1

ca

Resolva os seguintes sistemas lineares usando a aritmética de arredondamento, com quatro algarismos.a. 1,130x 2 6,990y 5 14,20 b. 8,110x 1 12,20y 5 20,1370

1,013x 2 6,099y 5 14,22 218,11x 1 112,2y 5 20,137624. Repita o Exercício 23 usando a aritmética de truncamento, com quatro algarismos.25. a. Mostre que a técnica de estruturação de polinômio descrita no Exemplo 6 pode também ser aplicada

ao cálculo de

f (x) 5 1,01e4x 2 4,62e3x 2 3,11e2x 1 12,2ex 21,99.

b. Use a aritmética de arredondamento, com três algarismos, considerando que e1,53 5 4,62 e o fato de que enx 5 (ex)n para calcular f (1,53) como dado no item (a).

c. Refaça o cálculo no item (b) primeiro estruturando os cálculos.

Analise.indb 30 15/12/2015 08:40:04

Page 47: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 31

d. Compare as aproximações do item (b) e (c) com o resultado verdadeiro com três algarismos f (1,53) 5 27,61.

EXERCÍCIO APLICADO

26. O exemplo de abertura deste capítulo descrevia uma experiência física envolvendo a temperatura de um gás sob pressão. Nessa aplicação, foram fornecidos P 5 1,00 atm, V 5 0,100 m3, N 5 0,00420 mol e R 5 0,08206. Determinando T pela lei dos gases ideais, tem-se

T 290,15 K 17 °C.(1,00)(0,100)

(0,00420)(0,08206)PVNR

No laboratório, descobriu-se que T era 15 °C nessas condições e, quando a pressão era dobrada e o vo lume reduzido pela metade, T era 19 °C. Suponha que os dados fossem valores arredondados precisos até os algarismos dados e mostre que ambos os valores de laboratório estão dentro dos limites de precisão para a lei dos gases ideais.

EXERCÍCIOS TEÓRICOS

27. O coeficiente binomial

! @ m!k!(m k)!

mk

descreve o número de maneiras para se escolher um subconjunto com k objetos a partir de um conjunto com m elementos.a. Suponha que os números de máquina decimais sejam da forma

6 0,d1d2d3d4 3 10n, com 1 # d1 # 9, 0 # di # 9 se i 5 2, 3, 4 e unu # 15. Qual o maior valor de m para o qual o coeficiente binomial !

m k @ pode ser calculado para todo k pela defi-

nição sem causar overflow?b. Mostre que !

m k @ também pode ser calculado por

! @ ! @ ! @ . . . ! @m k 11

m 1k 1

mk

mk

c. Qual é o maior valor de m para o qual o coeficiente binomial ! m

3 @ pode ser calculado pela fórmula do item (b) sem causar overflow?

d. Use a equação em (b) e a aritmética de truncamento, com quatro algarismos, para calcular o número de mãos de 5 cartas em um baralho de 52 cartas. Calcule os erros real e relativo.

28. Suponha que f l ( y) seja uma aproximação por arredondamento, com k algarismos, de y. Mostre que

0,5 10 k 1.y f (y)

yl

#

[Sugestão: se dk11 , 5, então f l (y) 5 0,d1d2 . . . dk 3 10n. Se dk11 $ 5, então f l (y) 5 0,d1d2 . . . dk 3 10n 1 10n2k].

Analise.indb 31 15/12/2015 08:40:05

Page 48: Análise Numérica - tradução da 10a edição norte-americana

32 Análise numérica

29. Seja f ∈ C [a, b] uma função cuja derivada exista em (a, b). Suponha que f deva ser calculada em x0 em (a, b), mas em vez de calcular o valor real f (x0), o valor aproximado, f˜(x0) é o valor real de f em x0 1 e, isto é, f˜(x0) 5 f (x0 1 e).a. Use o teorema do valor médio 1.8 para estimar o erro absoluto u f (x0) 2 f˜(x0) u e o erro relativo

u f (x0) 2 f˜(x0) u / u f (x0) u, considerando que f (x0) 0.b. Se e 5 5 x 1026 e x0 5 1, determine limitantes para os erros absoluto e relativo, para

i. f (x) 5 ex ii. f (x) 5 sen x

c. Repita o item (b) com e 5 (5 3 1026)x0 e x0 5 10.

QUESTÕES PARA DISCUSSÃO

1. Discuta a diferença entre a aritmética executada por um computador e a aritmética tradicional. Por que é tão importante reconhecer a diferença?

2. Forneça diversos exemplos da vida real de erros catastróficos que ocorreram pelo uso da aritmética com um número finito de algarismos e explique o que deu errado.

3. Discuta as diversas maneiras diferentes de arredondar números.4. Discuta a diferença entre um número escrito na notação padrão e um escrito na forma normalizada de pon-

to flutuante decimal. Forneça diversos exemplos.

1.3 Algoritmos e convergência

Ao longo do texto examinaremos os procedimentos de aproximação, chamados al-goritmos, envolvendo sequências de cálculos. Um algoritmo é um procedimento que descreve, sem ambiguidades, uma sequência finita de passos a serem feitos em uma ordem específica. O objetivo do algoritmo é implementar um procedimento para resolver um problema ou aproximar uma solução do problema.

Usamos um pseudocódigo para descrever os algoritmos. Esse pseudocódigo es-pecifica a forma da entrada a ser fornecida e a forma de saída desejada. Nem todos os procedimentos numéricos fornecem saídas satisfatórias para entradas arbitrariamente escolhidas. Como consequência, uma técnica de parada independente da técnica nu-mérica é incorporada em cada algoritmo para evitar laços infinitos.

Dois símbolos de pontuação são usados nos algoritmos:• Um ponto final (.) indica o término de um passo.• Um ponto-e-vírgula (;) separa tarefas dentro de um passo.

A endentação é usada para indicar que grupos de instruções serão tratados como uma única entidade.

Técnicas de laços nos algoritmos são ou controladas por um contador, como em

Para i 5 1, 2, . . . , n

Faça xi 5 ai 1 i · h

ou controladas por uma condição, como em

Analise.indb 32 15/12/2015 08:40:06

Page 49: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 33

Quando i , N faça os Passos 326.

Para permitir a execução condicional, usamos as construções padrão.

Se . . . então ou Se . . . então senão

Os passos nos algoritmos seguem as regras de construção de programas estruturados. Eles foram organizados de maneira que haja dificuldade mínima na tradução do pseudo-código para qualquer linguagem de programação adequada a aplicações científicas.

Os algoritmos são amplamente mesclados com comentários. Esses são escritos em itálico, entre parênteses, para se distinguirem das instruções do algoritmo.

OBSERVAÇÃO ! Quando o término de certos passos estruturados for difícil de determinar, usaremos um comentário como (Fim do Passo 14) à direita ou abaixo da instrução final. Veja, por exemplo, o comentário no passo 5 do Exemplo 1.

O uso do algoritmo é tão antigo quanto a matemática formal, mas seu nome se deve ao matemático árabe Muhammad ibn-Msâ al-Khwarârizmî (c. 780-850). A tradução para o latim de seus trabalhos começa com as palavras “Dixit Algorismi”, que significam “al-Khwârizmî diz”.

Ilustração O seguinte algoritmo calcula x1 1 x2 1· · · 1 xN 5N

i=1

xi∑ , dados N e os números x1, x2, . . . , xN  .

ENTRADA N, x1, x2, . . . , xn .SAÍDA SOMA 5 ∑N

i51 xi.

Passo 1 Faça SOMA 5 0. (Inicializar acumulador.)Passo 2 Para i 5 1, 2, . . . , N faça SOMA 5 SOMA 1 xi. (Adicionar o próximo termo.)Passo 3 SAíDA (SOMA); PARE. n

O polinômio de Taylor de ordem N de f (x) 5 ln x expandido em torno de x0 5 1 é

PN (x) ∑N

i 1(x 1)i,( 1)i 1

i

e o valor de ln 1,5 com oito casas decimais é 0,40546511. Construa um algoritmo para determinar o míni mo valor de N necessário para que

u ln 1,5 2 PN (1,5) u , 1025

sem usar o termo de resto do polinômio de Taylor.

Solução A partir do cálculo, sabemos que se ∑ ∞n51 an é uma série alternada com limite A cujos termos decrescem em módulo, então A e a enésima soma parcial AN 5 ∑ Nn51 an diferem por menos do que o módulo do termo (N 1 1); isto é

u A 2 AN u # uaN11u.

ExEmplO 1EXS

P P

Analise.indb 33 15/12/2015 08:40:06

Page 50: Análise Numérica - tradução da 10a edição norte-americana

34 Análise numérica

O seguinte algoritmo usa esse limitante.

ENTRADA valor x, tolerância TOL, número máximo de iterações M.SAÍDA grau N do polinômio ou uma mensagem de erro.Passo 1 Faça N 5 1; y 5 x 2 1; SOMA 5 0; POTÊNCIA 5 y; TERMO 5 y; SINAL 5 21. (Usado para implementar a alternância de sinais.)Passo 2 Enquanto N # M execute Passos 3 a 5. Passo 3 Faça SINAL 5 2 SINAL; (Alternar os sinais.) SOMA 5 SOMA 1 SINAL · TERMO; (Acumula os termos.) POTÊNCIA 5 POTÊNCIA · y; TERMO 5 POTÊNCIA / (N 1 1). (Calcula o próximo termo.)Passo 4 Se uTERMOu , TOL então (Teste de precisão.) SAíDA (N); PARE. (O procedimento foi bem-sucedido.)Passo 5 Faça N 5 N 1 1. (Preparar para a próxima iteração. (Fim do Passo 2))Passo 6 Saída (‘O método falhou’); (O procedimento foi malsucedido.) PARE.

A entrada de nosso problema é x 5 1,5, TOL 5 1025 e talvez M 5 15. Essa escolha de M fornece um limitante superior para a quantidade de cálculos que estamos dispos-tos a efetuar, reco nhecendo que é provável que o algoritmo falhe se esse limitante for ultrapassado. Se a saída será um valor de N ou uma mensagem de erro, depende da precisão do dispositivo de cálculo. n

Caracterizando algoritmosConsideraremos uma variedade de problemas de aproximação ao longo do texto e em cada caso precisaremos determinar métodos de aproximação que produzam resultados confiáveis para uma vasta classe de problemas. Em razão das diversas maneiras pelas quais os métodos de aproximação são originados, necessitamos de uma variedade de condições para categorizar sua precisão. Nem todas essas condições serão apropriadas para um problema particular.

Um critério que imporemos a um algoritmo, sempre que possível, é o de que pe-quenas alterações nos dados iniciais produzam alterações correspondentemente peque-nas nos resultados finais. Um algoritmo que satisfaça essa propriedade é dito estável; caso contrário, é instável. Alguns algoritmos são estáveis apenas para certas escolhas de dados iniciais. Esses são chamados condicionalmente estáveis. Caracterizaremos as propriedades de estabilidade de algoritmos sempre que possível.

A palavra stable (estável) tem a mesma raiz que stand (permanecer, resistir) e standard (normal, usual). Na matemática, o termo estável aplicado a um problema indica que uma pequena mudança nos dados ou nas condi-ções iniciais não resulta em uma mudança dramática na solução do problema.

Para mais considerações sobre o crescimento do erro de arredondamento e sua co-nexão com a estabilidade do algoritmo, suponha que um erro com módulo E0 . 0 seja introduzido em algum estágio do cálculo e que o módulo do erro após n operações subsequentes seja denotado por En. Os dois casos que surgem com mais frequência na prática são definidos como segue.

Analise.indb 34 15/12/2015 08:40:06

Page 51: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 35

Definição 1.17 Suponha que E0 . 0 denote um erro introduzido em algum estágio dos cálculos e En represente o módulo do erro após n operações subsequentes.

• Se En < CnE0, onde C é uma constante independente de n, então o crescimento do erro é dito linear.

• Se En < C nE0, para algum C . 1, então o crescimento do erro é exponencial. n

O crescimento linear do erro é normalmente inevitável e, quando C e E0 são peque-nos, os resultados são geralmente aceitáveis. O crescimento exponencial do erro deve ser evitado, visto que o termo Cn se torna grande mesmo para valores de n relativa-mente pequenos. Isso leva a imprecisões inaceitáveis, independentemente do tamanho de E0. Consequentemente, um algoritmo que exiba um crescimento linear de erro é estável e um algoritmo que apresente um crescimento de erro exponencial é instável. (Veja a Figura 1.10.)

En

E0

n

Crescimento de erro exponencial instávelEn 5 CnE0

Crescimento de erro linear estávelEn 5 CnE0

1 2 3 4 5 6 7 8

Ilustração Para quaisquer constantes c1 e c2 ,

pn c1! @n

c23n,1

3 (1.4)

é uma solução da equação recursiva

pn pn 1 pn 2, para n 2, 3, . . .103

Isto pode ser visto observando que

10

3pn−1 − pn−2 =

10

3c1

1

3

n−1

+ c23n−1 − c11

3

n−2

+ c23n−2

= c11

3

n−2 10

1

3− 1 + c23n−2 10

3· 3 − 1

= c11

3

n−2 1

9+ c23n−2(9) = c1

1

3

n

+ c23n = pn.

Figura 1.10

Analise.indb 35 15/12/2015 08:40:07

Page 52: Análise Numérica - tradução da 10a edição norte-americana

36 Análise numérica

Suponha que nos tenham sido dados p0 5 1 e p1 5 }13

. Usando estes valores e a Eq. (1.4) podemos determinar valores únicos para as constantes, como c1 5 1 e c2 5 0. Assim, pn 5 (}

13 ) n para todo n.

Se for usada aritmética de arredondamento, com cinco algarismos, para o cálculo dos termos da sequência dada por esta equação, então, p0 5 1,0000 e p1 5 0,33333, o que requer a modificação das constantes para c1 5 1,0000 e c2 5 20,12500 3 1025. A sequência de aproximação {pn}

∞n50 gerada é então determinada por

pn 1,0000! @n

0,12500 10 5(3)n,13

que tem erro de arredondamento,

pn 2 pn 5 0,12500 3 1025(3n).

Este procedimento é instável porque o erro cresce exponencialmente com n, o que se reflete na extrema imprecisão depois dos primeiros termos, como mostra a Tabela 1.5.

Tabela 1.5 n pn calculado pn correto Erro relativo

0 0,10000 3 101 0,10000 3 101

1 0,33333 3 100 0,33333 3 100

2 0,11110 3 100 0,11111 3 100 9 3 1025

3 0,37000 3 1021 0,37037 3 1021 1 3 1023

4 0,12230 3 1021 0,12346 3 1021 9 3 1023

5 0,37660 3 1022 0,41152 3 1022 8 3 1022

6 0,32300 3 1023 0,13717 3 1022 8 3 1021

7 20,26893 3 1022 0,45725 3 1023 7 3 100

8 20,92872 3 1022 0,15242 3 1023 6 3 101

Considere agora esta equação recursiva:

pn 5 2pn21 2 pn22, para n 5 2, 3, . . .

Ela tem a solução pn 5 c1 1 c2n para quaisquer constantes c1 e c2, pois

2pn21 2 pn22 5 2(c1 1 c2(n 2 1)) 2 (c1 1 c2(n 2 2)) 5 c1(2 2 1) 1 c2(2n 2 2 2 n 1 2) 5 c1 1 c2n 5 pn.

Se nos forem dados p0 5 1 e p1 5 }13

, então as constantes nesta equação estão univocamente determinadas, e são c1 5 1 e c2 5 − }

23 . Isto implica que pn 5 1 − }

23

n.Se for usada aritmética de arredondamento, com cinco algarismos, para o cálculo

dos termos da sequência dada por esta equação, então p 0 5 1,0000 e p 1 5 0,33333. Consequentemente, as constantes arredondadas para cinco algarismos são c1 5 1,0000 e c2 5 20,66667. Desse modo,

pn 5 1,0000 2 0,66667n,

Analise.indb 36 15/12/2015 08:40:08

Page 53: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 37

cujo erro de arredondamento é

pn pn (0,66667 23)n,

Este procedimento é estável porque o erro cresce linearmente com n, o que se reflete nas aproximações mostradas na Tabela 1.6. n

Tabela 1.6 n pn calculado pn correto Erro relativo

0 0,10000 3 101 0,10000 3 101

1 0,33333 3 100 0,33333 3 100

2 20,33330 3 100 20,33330 3 100 9 3 1025

3 20,10000 3 101 20,10000 3 101 0

4 20,16667 3 101 20,16667 3 101 0

5 20,23334 3 101 20,23333 3 101 4 3 1025

6 20,30000 3 101 20,30000 3 101 0

7 20,36667 3 101 20,36667 3 101 0

8 20,43334 3 101 20,43333 3 101 2 3 1025

Os efeitos do erro de arredondamento podem ser reduzidos usando-se uma aritmé-tica de mais algarismos, tal como a opção de precisão dupla ou múltipla disponível na maioria dos computadores. As desvantagens de se usar a aritmética de precisão dupla são o maior gasto de tempo de computação e a não eliminação do crescimento do erro de arredondamento.

Uma abordagem para estimar o erro de arredondamento é usar a aritmética de in-tervalo (isto é, manter o maior e o menor valores possíveis em cada passo), de maneira que, no final, obtenhamos um intervalo que contenha o valor real. Infelizmente, um intervalo muito pequeno pode ser neces sário para uma implementação razoável.

Taxas de convergênciaComo frequentemente usamos técnicas iterativas envolvendo sequências, esta se-

ção é concluída com uma breve discussão sobre um pouco da terminologia que descre-ve a taxa na qual ocorre a convergência. Em geral, gostaríamos que a técnica conver-gisse tão rapidamente quanto possível. Usamos a seguinte definição para comparar as taxas de convergência dos diversos métodos.

Definição 1.18 Suponha que se saiba que a sequência {bn}∞n51 convirja para zero e que {an}

∞n51 convirja

para um número a. Se existir uma constante K positiva tal que

uan 2 au # K ubnu, para n grande,

então dizemos que {an}∞n51 converge para a com taxa ou ordem de convergência

O (bn). (lê-se essa expressão como “O grande de bn”.) É indicado na escrita por an 5 a 1 O (bn). n

Embora a Definição 1.18 permita que {an}∞n51 seja comparada com uma sequência

arbitrária {bn}∞n51, em quase todas as situações usamos

Analise.indb 37 15/12/2015 08:40:08

Page 54: Análise Numérica - tradução da 10a edição norte-americana

38 Análise numérica

n ,1np

para algum número p . 0. Estamos geralmente interessados no maior valor de p com an 5 a 1 O (1/n  p).

U Suponha que, para n $ 1,

n e ˆn .n 1

n2n 3

n3

Embora tanto limnr` an 5 0 quanto limnr`

an 5 0, a sequência {an} converge para esse limite muito mais rapidamente que a sequência {an}. Utilizando-se a aritmética de arredondamento, com cinco algarismos, temos os valores mostrados na Tabela 1.7. Determine as taxas de convergência para estas duas sequências.

Tabela 1.7 n 1 2 3 4 5 6 7

an 2,00000 0,75000 0,44444 0,31250 0,24000 0,19444 0,16327

an 4,00000 0,62500 0,22222 0,10938 0,064000 0,041667 0,029155

Solução Defina as sequências bn 5 1/n e bn 5 1/n2. Então

n 0 2 . 2 n

ˆn 0 4 . 4 ˆn.

1n2

n 3nn3

n 3n3

1n

n nn2

n 1n2 #

#

en 0 2 . 2 n

ˆn 0 4 . 4 ˆn.

1n2

n 3nn3

n 3n3

1n

n nn2

n 1n2 #

#

Portanto, a taxa de convergência de {an} a zero é parecida com a convergência de {1/n} a zero, enquanto {an} converge a zero, a uma taxa parecida com a sequência mais ra-pidamente convergente {1/n2}. Expressamos isto escrevendo

n 0 O ! @ e ˆ n 0 O ! @.1n

1n2 n

Nós também usamos a notação do “O grande” para descrever a taxa na qual as funções convirjam.

Definição 1.19 Suponha que lim hr0 G(h)5 0 e lim hr0 F (h) 5 L. Se existir uma constante positiva K tal que

uF  (h) 2 Lu # K u G  (h)u, para h suficientemente pequeno, então escrevemos F(h) 5 L 1 O (G(h)). n

As funções que usamos para comparação geralmente têm a forma G(h) 5 h p, onde p . 0. Estamos interessados no maior valor de p para o qual F(h) 5 L 1 O (h p).

ExEmplO 2EXS

P P

Analise.indb 38 15/12/2015 08:40:09

Page 55: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 39

Use o terceiro polinômio de Taylor, em h = 0, para mostrar que cos h + }12 h

2 = 1 1 O (h4).

Solução No Exemplo 3(b) da Seção 1.1, descobrimos que esse polinômio é

cos h 1 h2 h4 cos ˜(h),12

124

para algum número j(h) entre zero e h. Consequentemente,

cos h +12

h2 = 1 +124

h4 cos ξ (h).

Portanto,

cos h +12

h2 − 1 =124

cos ξ (h) h4 ≤1

24h4,

de modo que, quando h r 0, h 1 }12 h2 converge para seu limite, 1, tão rapidamente

quanto h4 converge para 0. Ou seja,

cos h +12

h2 = 1 + O(h4). n

1. Use a aritmética de truncamento, com três algarismos, para calcular as seguintes somas. Para cada parte, qual método é mais preciso e por quê?

10i=1(1/ i2) primeiro por 1

1 + 14 + · · · + 1

100 e então por 1100 + 1

81 + · · · + 11 .

10i=1(1/ i3) primeiro por 1

1 + 18 + 1

27 + · · · + 11.000 e então por 1

1.000 + 1729 + · · · + 1

1 .

a.

b.

2. O número e é definido por e 5 ∑∞n50(1/n!), em que n! 5 n(n − 1) · · · 2 · 1 para n 0 e 0! 5 1. Use a arit-

mética de truncamento, com quatro algarismos, para calcular as seguintes aproximações de e e determine os erros absoluto e relativo.

a. e ∑5

n 0 b. e ∑

5

j 0

c. e ∑10

n 0 d. e ∑

10

j 0

1(10 j)!

1n!

1(5 j)!

1n!

3. A série de Maclaurin para a função arco-tangente converge para 21 , x # 1 e é determinada por

arctg x limn ∞

Pn(x) limn ∞

∑n

i 1 ( 1)i 1 . x2i 1

2i 1

a. Use o fato de que tg π/4 5 1 para determinar o número n de termos da série que precisam ser somados para garantir que u4Pn(1) 2 πu , 1023.

b. A linguagem de programação C11 exige que o valor de π seja conhecido com precisão de 10210. Quantos termos da série seriam necessários somar para obter essa ordem de precisão?

EXERCÍCIOS 1.3

ExEmplO 3EXS

P P

Analise.indb 39 15/12/2015 08:40:11

Page 56: Análise Numérica - tradução da 10a edição norte-americana

40 Análise numérica

4. O Exercício 3 detalha um meio bem ineficiente de obter uma aproximação de π. O método pode ser subs-tancialmente melhorado observando que π/4 5 arctg }1

2 1 arctg }1

3 e calculando a série para o arco-tangente

em }12 e em }1

3 . Determine o número de termos que devem ser somados para garantir uma aproximação de π

com precisão de 1023.5. Outra fórmula para calcular π pode ser deduzida da identidade π/4 5 4 arctg }1

5 2 arctg }1

239 . Determine

o número de termos que devem ser somados para garantir uma aproximação de π com precisão de 1023.6. Determine as taxas de convergência das seguintes sequências quando n r ∞.

a. limn ∞

sen 0 b. limn ∞

sen 0

c. limn ∞

(sen )20 d. lim

n ∞[ln(n 1) ln(n)] 0

1n

1n2

1n

7. Determine as taxas de convergência das seguintes sequências quando h r 0.

a. limh 0

1 b. limh 0

0

c. limh 0

0 d. limh 0

1sen h h cos hh

1 eh

h

1 cos hh

sen hh

EXERCÍCIOS TEÓRICOS

8. Suponha que 0 , q , p e que an 5 a 1 O(n2p). a. Mostre que an 5 a 1 O(n2q).b. Faça uma tabela listando 1/n, 1/n2, 1/n3 e 1/n4 para n 5 5, 10, 100 e 1.000 e discuta as diferentes taxas

de convergência dessas sequências quando n se torna grande.9. Suponha que 0 , q , p e que F(h) 5 L 1 O(h  p).

a Mostre que F(h) 5 L 1 O(h  q).b. Faça uma tabela listando h, h2, h3 e h4 para h 5 0,5, 0,1, 0,01 e 0,001 e discuta as diferentes taxas de

convergência dessas potências de h quando h tende a zero.10. Suponha que quando x tenda a zero, F1(x) 5 L1 1 O(x a) e F2(x) 5 L2 1 O(x b). Sejam c1 e c2 constantes diferentes de zero e defina F(x) 5 c1F1(x) 1 c2F2(x) e G(x) 5 F1(c1x) 1 F2(c2x). Mostre que se g 5 mínimo [a, b], então, quando x tende a zero,

a. F(x) 5 c1L1 1 c2L2 1 O(xg)b. G(x) 5 L1 1 L2 1 O(xg).

11. A sequência {Fn}, descrita por F0 5 1, F1 5 1 e Fn12 5 Fn 1 Fn11 se n ≥ 0, é chamada sequência de Fi-bonacci. Seus termos ocorrem naturalmente em muitas espécies botânicas, particularmente naquelas com pétalas ou escalas arranjadas na forma de uma espiral logarítmica. Considere a sequência {xn}, onde xn = Fn+1/Fn . Supondo que limn→∞ xn 5 x exista, mostre que x 5 (1 1 œ5w)/2. Esse número é chamado de razão áurea.

12. Mostre que a sequência Fibonacci também satisfaz a equação

Fn ≡ Fn =1√5

1 +√

52

n

−1 −

√5

2

n

.

Analise.indb 40 15/12/2015 08:40:13

Page 57: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 41

13. Descreva a saída do seguinte algoritmo. Como este algoritmo se compara com a ilustração na página 32?

ENTRADA n, x1 , x2 , . . . , xn . SAÍDA SOMA.

Passo 1 Faça SOMA = x1 . Passo 2 Para i 5 2, 3, . . . , n execute Passo 3. Passo 3 SOMA = SOMA 1 xi .

Passo 4 SAíDA SOMA; PARE.14. Compare os três algoritmos a seguir. Quando o algoritmo da parte (a) está correto?

a. ENTRADA n, x1 , x2 , . . . , xn . SAÍDA PRODUTO. Passo 1 Faça PRODUTO = 0. Passo 2 Para i 5 1, 2, . . . , n execute Faça PRODUTO = PRODUTO ∗ xi .

Passo 3 SAÍDA PRODUTO; PARE.

b. ENTRADA n, x1 , x2 , . . . , xn . SAÍDA PRODUTO. Passo 1 Faça PRODUTO = 1. Passo 2 Para i 5 1, 2, . . . , n execute Faça PRODUTO = PRODUTO ∗ xi .

Passo 3 SAíDA PRODUTO; PARE.

c. ENTRADA n, x1 , x2 , . . . , xn . SAÍDA PRODUTO. Passo 1 Faça PRODUTO = 1. Passo 2 Para i 5 1, 2, . . . , n execute se xi 5 0 então faça PRODUTO = 0;

SAíDA PRODUTO; PARE senão faça PRODUTO = PRODUTO ∗ xi .

Passo 3 SAíDA PRODUTO; PARE.15. a. Quantas multiplicações e adições são necessárias para determinar uma soma da forma

n

i=1

i

j=1

ai b j ?

b. Modifique a soma na parte (a) para uma forma equivalente que reduza o número de cálculos.

Analise.indb 41 15/12/2015 08:40:13

Page 58: Análise Numérica - tradução da 10a edição norte-americana

42 Análise numérica

QUESTÕES PARA DISCUSSÃO

1. Escreva um algoritmo para somar a série finita ∑n

i51 xi na ordem inversa.

2. Construa um algoritmo que tenha como entradas um inteiro n ≥ 1, números x0 , x1 , . . . , xn e um número x e que produza como saída o produto (x − x0 )(x − x1 ) · · · (x − xn).

3. Seja P (x ) 5 an x n 1 an − 1 x n−1 1 · · · 1 a1x 1 a0 um polinômio e x0 um número dado. Construa um algo-ritmo para calcular P (x0 ) usando multiplicação estruturada.

4. As Equações (1.2) e (1.3) da Seção 1.2 dão fórmulas alternativas para as raízes x1 e x2 de ax 2 1 bx 1 c 5 0. Construa um algoritmo com entradas a, b, c e saídas x1 , x2 que calcule as raízes x1 e x2 (as quais também podem ser iguais ou complexas conjugadas) usando a melhor fórmula para cada raiz.

5. Suponha que1 − 2x

1 − x + x2+

2x − 4x3

1 − x2 + x4+

4x3 − 8x7

1 − x4 + x8+ · · · =

1 + 2x1 + x + x2

,

para x < 1 e seja x 5 0,25. Escreva e execute um algoritmo que determine o número de termos necessá-rios no lado esquerdo da equação de modo que o lado esquerdo difira do lado direito por menos de 10−6.

6. O que os algoritmos na parte (a) e na parte (b) calculam?a. ENTRADA a0 , a1 , x0 , x1 .

SAÍDA S. Passo 1 Para i 5 0, 1 execute faça si 5 ai . Passo 2 Para i 5 0, 1 execute para j 5 0, 1 execute

para i j faça si =(x − x j )

(xi − x j )∗ si .�

Passo 3 Faça S 5 s0 1 s1 . Passo 4 SAíDA S; PARE.

b. ENTRADA a0 , a1 , a2 , x0 , x1 , x2 . SAÍDA S.

Passo 1 Para i 5 0, . . . , 2 execute faça si 5 ai . Passo 2 Para i 5 0, 1, 2 execute para j 5 0, 1 execute se i j então faça si =

(x − x j )

(xi − x j )∗ si .

Passo 3 Faça S 5 s0 1 s1 1 s2 . Passo 4 SAíDA S; PARE. c. Generalize os algoritmos para que tenham entradas n, a0, . . . , an, x0, . . . , xn. Qual é o valor de saída de S?

1.4 Software numérico

Os pacotes de software para computador para a aproximação de soluções numéricas de problemas estão disponíveis em muitas formas. Em nosso website para este livro

https://sites.google.com/site/numericalanalysis1burden/

Analise.indb 42 15/12/2015 08:40:14

Page 59: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 43

fornecemos programas escritos em C, FORTRAN, Maple, Mathematica, MATLAB, Pascal e Java que podem ser usados para resolver os pro blemas dados nos exemplos e exercícios. Esses programas fornecerão resultados satisfatórios para a maioria dos pro-blemas que você poderá precisar resolver, mas eles são o que chamamos de programas de propósito especial. Usamos esse termo para distinguir esses programas dos que se encontram disponíveis nas bibliotecas padrão de sub-rotinas matemáticas. Os programas nesses pacotes serão chamados de propósito geral.

Os programas nos pacotes de software de propósito geral diferem em sua intenção dos algoritmos e programas fornecidos neste livro. Os pacotes de software de propósi-to geral consideram maneiras de reduzir erros devidos a arredondamento da máquina, underflow e overflow. Eles também descrevem o intervalo de entrada que levará a re-sultados de certa precisão especificada.Como essas características são dependentes de máquina, os pacotes de software de propósito geral usam parâmetros que descrevem as características de ponto flutuante da máquina que esteja sendo usada para os cálculos.

Ilustração Para ilustrar algumas diferenças entre os programas incluídos em um pacote de propósito geral e um programa que forneceríamos para uso neste livro, considere um algoritmo que calcule a norma euclidiana de um vetor n-dimensional x 5 (x1, x2, . . . , xn)

t. Essa norma é frequentemente necessária dentro de programas maiores e é definida por

||x||2 =n

i=1

x2i

1/2

.

A norma fornece uma medida da distância do vetor x ao vetor 0. Por exemplo, o vetor x 5 (2, 1, 3, 22, 21)t tem

uuxuu2 5 [22 1 12 1 32 1 (22)2 1 (21)2]1/2 5 œ_19,

então sua distância a 0 5 (0, 0, 0, 0, 0)t é œ_19 < 4,36.Um algoritmo do tipo que apresentaríamos para esse problema é fornecido aqui.

Ele não inclui nenhum parâmetro dependente da máquina nem fornece garantia de precisão, mas fornecerá resultados precisos “na maioria das vezes”.

ENTRADA n, x1, x2, . . . , xn.SAÍDA NORMA.Passo 1 Faça SOMA 5 0.Passo 2 Para i 5 1, 2, . . . , n faça SOMA 5 SOMA 1 x2

i.

Passo 3 Faça NORMA 5 SOMA1/2.Passo 4 SAíDA (NORMA); PARE. n

Um programa com base nesse algoritmo é fácil de escrever e entender. Entretanto, o programa poderia falhar em fornecer precisão suficiente por várias razões. Por exem-plo, o módulo de alguns dos números pode ser muito grande ou muito pequeno para ser precisamente representado no sistema de ponto flutuante do computador. Além dis-so, a ordem normal para efetuar os cálculos poderia não produzir os resultados mais precisos ou a rotina padrão de raiz quadrada do software poderia não ser a melhor disponível para o problema. Questões desse tipo são consideradas por projetistas de al-goritmos ao escrever programas para software de propósito geral. Esses programas são frequentemente usados como subprogramas para resolver problemas maiores, assim, eles devem incorporar controles dos quais não precisaremos.

Analise.indb 43 15/12/2015 08:40:14

Page 60: Análise Numérica - tradução da 10a edição norte-americana

44 Análise numérica

Algoritmos de propósito geral

Agora, considere um algoritmo para um programa de software de propósito geral para calcular a norma euclidiana. Primeiro, é possível que, embora uma componente xi do vetor esteja dentro do intervalo da máquina, o quadrado da componente não esteja. Isso pode ocorrer quando algum uxiu é tão pequeno que x2

i causa underflow ou quando algum uxiu é tão grande que x2

i causa overflow. Também é possível que todos esses termos estejam dentro do intervalo da máquina, mas que o overflow ocorra pela adição de um quadrado de um dos termos à soma previamente calculada.

Como os critérios de precisão dependem da máquina na qual os cálculos estão sen-do efetuados, os parâmetros dependentes de máquina são incorporados ao algoritmo. Suponha que estejamos trabalhando em um computador hipotético com base 10, tendo t ≥ 4 algarismos de precisão, um expoente mínimo emin e um expoente máximo emax. Então, o conjunto de números em ponto flutuante nessa máquina consiste em 0 e nos números da forma

x 5 f · 10e, onde f 5 ± (f11021 1 f21022 1 . . . 1 ft102t),

onde 1 # f1 # 9 e 0 # fi # 9, para cada i 5 2, . . . , t e onde emin # e # emax. Essas restrições implicam que o menor número positivo representado na máquina seja s 5 10emin21, de forma que qualquer número calculado x com uxu , s cause underflow e resulte em x sendo igualado a 0. O maior número positivo será l 5 (1 2 102t)10emax e qualquer número calculado x com uxu . l causará overflow. Quando ocorrer underflow, o programa continuará, muitas vezes sem perda significativa de precisão. Se ocorrer overflow, o programa falhará.

O algoritmo pressupõe que as características de ponto flutuante da máquina são descritas usando parâmetros N, s, S, y e Y. O número máximo de entradas que podem ser somadas com pelo menos t/2 algarismos de precisão é dado por N. Isso implica que o algoritmo continue a determinar a norma de um vetor x 5 (x1, x2, . . . , xn)

t somente se n # N. Para resolver o problema de underflow-overflow, os números em ponto flu-tuante diferentes de zero devem ser divididos em três grupos:

• números x de módulo pequeno, aqueles que satisfaçam 0 , uxu , y;• números x de módulo médio, em que y # uxu , Y;• números x de módulo grande, em que Y # uxu..

Os parâmetros y e Y são escolhidos de maneira que não haja problema de under-flow-overflow no quadrado e na soma de números de grandeza média. O quadrado de números de pequena grandeza pode causar underflow, então um fator de escala S muito maior que 1 é usado com o resultado que (Sx)2 evite o underflow, mesmo quan-do x2 não o faça. A soma e o quadrado de números de módulo grande podem causar overflow, então, nesse caso, um fator de escala positivo s muito menor que 1 é usado para garantir que (sx)2 não cause overflow quando calculado ou incorporado em uma soma, mesmo que x2 pudesse causar.

Para evitar mudanças de escala desnecessárias, y e Y são escolhidos de maneira que o intervalo de números de módulo médio seja o maior possível. O algoritmo que segue é uma modificação de um descrito em [Brow, W.], p. 471. Ele incorpora um procedimento para mudar a escala das componentes do vetor que são pequenas em módulo até que uma componente de módulo médio seja encontrada. Então, ele desfaz a mudança de escala da soma anterior e continua a calcular o quadrado e a soma de números pequenos e médios até que uma componente de módulo grande seja encontrada. Uma vez que uma

Analise.indb 44 15/12/2015 08:40:14

Page 61: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 45

componente de módulo grande apareça, o algoritmo muda a escala da soma anterior e continua a mudar a escala, calcular o quadrado e a soma dos números restantes.

O algoritmo supõe que, na transição de números pequenos a médios, números pe-quenos sem mudança de escala são desprezíveis quando comparados a números mé-dios. De maneira análoga, na transição de números médios a grandes, números médios sem mudança de escala são desprezíveis quando comparados a números grandes. Por-tanto, a escolha dos parâmetros de mudança de escala deve ser feita de maneira que os números sejam igualados a 0 somente quando forem realmente desprezíveis. As relações típicas entre as características de máquina descritas por t, s, l, emin, emax e os parâmetros do algoritmo N, s, S, y e Y são fornecidos depois do algoritmo.

O algoritmo usa três marcadores para indicar os vários estágios no processo de soma. Esses marcadores são valores iniciais fornecidos no Passo 3 do algoritmo. O MARCADOR 1 é 1 até que uma componente média ou grande seja encontrada; então, ele é alterado para 0. O MARCADOR 2 é 0 enquanto números pequenos estão sendo somados, muda para 1 quando um número médio é encontrado pela primeira vez e muda novamente para 0 quando um número grande é encontrado. O MARCADOR 3 é inicialmente 0 e muda para 1 quando um número grande é encontrado pela primeira vez. O Passo 3 também introduz o marcador FEITO, o qual é 0 até que os cálculos sejam concluídos e depois muda para 1.

ENTRADA N, s, S, y, Y, l, n, x1, x2, . . . , xn.SAÍDA NORMA ou uma mensagem de erro apropriada.

Passo 1 Se n # 0 então SAíDA (‘O inteiro n deve ser positivo’); PARE.Passo 2 Se n ≥ N então SAíDA (‘O inteiro n é muito grande’); PARE.Passo 3 Faça SOMA 5 0; MARCADOR1 5 1; (Os números pequenos estão sendo somados.) MARCADOR2 5 0; MARCADOR3 5 0; FEITO 5 0; i 5 1.Passo 4 Enquanto (i # n e MARCADOR15 1) execute o Passo 5. Passo 5 Se uxiu , y então faça SOMA 5 SOMA 1 (Sxi)

2; i 5 i 1 1 senão faça MARCADOR15 0. (Um número não pequeno encontrado.)Passo 6 Se i . n então faça NORMA 5 (SOMA) 1/2/ S; FEITO 5 1 senão faça SOMA 5 (SOMA/S)/S; (Escala para números maiores.) MARCADOR2 5 1.Passo 7 Enquanto (i # n e MARCADOR2 5 1) execute Passo 8. (Soma dos números de tamanho médio.) Passo 8 Se uxiu , Y então faça SOMA 5 SOMA 1 x2

i ; i 5 i 1 1 senão faça MARCADOR2 5 0. (Um número grande foi encontrado.)

Analise.indb 45 15/12/2015 08:40:14

Page 62: Análise Numérica - tradução da 10a edição norte-americana

46 Análise numérica

Passo 9 Se FEITO 5 0 então se i . n então faça NORMA 5 (SOMA)1/2; FEITO 5 1 senão faça SOMA 5 ((SOMA)s)s; (Mudança de escala para os números grandes.) MARCADOR3 5 1.Passo 10 Enquanto (i # n e MARCADOR3 5 1) execute Passo 11. Passo 11 Faça SOMA 5 SOMA 1 (sxi)

2; (Somar os números grandes.) i5i11.Passo 12 Se FEITO 5 0 então se SOMA1/2 , ls então faça NORMA 5 (SOMA)1/2/s; FEITO 5 1 senão faça SOMA 5 l. (A norma é muito grande.)Passo 13 Se FEITO 5 1 então SAíDA (‘A norma é’, NORMA) senão SAíDA (‘Norma ≥’, NORMA, ‘ocorreu overflow’).Passo 14 PARE.

As relações entre as características da máquina t, s, l, emin, emax e os parâmetros do algoritmo N, s, S, y, e Y foram escolhidos em [Brow, W.], p. 471 como sendo:

N 5 10eN, onde eN 5 [(t 2 2)/2], o maior inteiro menor ou igual a (t 2 2)/2;s 5 10eS, onde es 5 [2 (emax 1 eN )/2];S 5 10eS, onde eS 5 [( 1 2 emin )/2], o menor inteiro maior ou igual a (1 2 emin)/2;y 510ey, onde ey 5 [(emin 1 t 2 2)/2];Y 5 10eY, onde eY 5 [(emax 2 eN)/2].

O primeiro computador portátil foi o Osborne I, produzido em 1981, embora fosse muito maior e pesado do que consideraríamos atualmente como portátil.

A confiabilidade incorporada neste algoritmo aumentou muito a complexidade em com-paração com o algoritmo apresentado antes na seção. Na maioria dos casos, os algoritmos de propósito especial e os de propósito geral dão resultados idênticos. A vantagem do algoritmo de propósito geral é que ele fornece segurança para seus resultados.

Muitas formas de software numérico de propósito geral estão disponíveis comer-cialmente e em domínio público. Muitos dos primeiros softwares foram escritos para computadores de grande porte e uma boa referência para eles é Sources and Develop-ment of Mathematical Software, editado por Wayne Cowell [Co].

Agora que o computador pessoal se tornou suficientemente poderoso, softwares numéricos padrão estão disponíveis para eles. A maioria desses softwares numéricos está escrita em FORTRAN, embora alguns pacotes estejam escritos em C, C11 e FOR TRAN 90.

O sistema FORTRAN (FORmula TRANslator) foi a linguagem de programação científica de propósito geral original. Ela ainda é amplamente usada em situações que exigem cálculos científicos intensivos.

Analise.indb 46 15/12/2015 08:40:14

Page 63: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 47

Procedimentos AlGOl foram apresentados para cálculos com matrizes em 1971 em [WR]. Um pacote de sub-rotinas FORTRAN com base principalmente em procedi-mentos ALGOL foi então desenvolvido nas rotinas EISPACK. Essas rotinas estão do-cumentadas nos manuais, publicados pela Springer-Verlag como parte de série lecture Notes in Computer Science, [Sm,B] e [Gar]. As sub-rotinas FORTRAN são usadas para calcular autovalores e autovetores para diversos tipos de matrizes.

O LINPACK é um pacote de sub-rotinas FORTRAN para analisar e resolver sis-temas de equa ções lineares e resolver problemas de mínimos quadrados lineares. A documentação desse pacote está contida em [DBMS]. Uma introdução passo a passo ao LINPACK, EISPACK e BLAS (Basic Linear Algebra Subprograms) é fornecida em [CV].

O projeto EISPACK foi o primeiro pacote de software numérico de larga escala a tornar-se disponível em domí-nio público e abriu caminho para muitos outros pacotes fazerem o mesmo.

O pacote LAPACK, disponível pela primeira vez em 1992, é uma biblioteca de sub--rotinas FORTRAN que suplantou o LINPACK e o EISPACK, integrando esses dois conjuntos de algoritmos em um pacote unificado e atualizado. O software foi reestrutu-rado para atingir grande eficiência em processadores vetoriais e outros multiprocessado-res de alto desempenho ou de memória compartilhada. O LAPACK foi expandido em profundidade e alcance na versão 3.0, a qual está disponível em FORTRAN, FORTRAN 90, C, C11 e JAVA. C e JAVA estão disponíveis apenas como interfaces de linguagem ou tradutores de bibliotecas FORTRAN de LAPACK. O pacote BLAS não faz parte do LAPACK, mas o código para o BLAS é distribuído com o LAPACK.

Outros pacotes para a resolução de tipos específicos de problemas também estão em domínio público. Como alternativa para o netlib, você pode usar o Xnetlib para pesqui-sar os bancos de dados e recuperar software. Podem-se encontrar mais informações no artigo Software Distribution Using Netlib de Dongarra, Roman e Wade [DRW].

A engenharia de software foi estabelecida como uma disciplina de laboratório durante os anos 1970 e 1980. O EISPACK foi desenvolvido no Argonne Labs e o LINPACK, logo depois. No início dos anos 1980, Argon-ne foi reconhecido internacionalmente como líder mundial, não apenas no cálculo simbólico como também no numérico.

Esses pacotes de software são altamente eficientes, precisos e confiáveis. Eles são cuidadosamente testados, e a documentação está prontamente disponível. Embora os pacotes sejam portáteis, é aconselhável investigar a dependência da máquina e ler toda a documentação. Os programas são testados para quase todas as contingências espe-ciais que possam levar a erros e falhas. No final de cada capítulo, discutiremos alguns dos pacotes apropriados de propósito geral.

Os pacotes comercialmente disponíveis também representam a tecnologia de ponta em métodos numéricos. Seus conteúdos frequentemente baseiam-se nos pacotes de domínio público, mas incluem métodos em bibliotecas para quase todos os tipos de problemas.

A IMSl (International Mathematical and Statistical libraries) consiste nas biblio-tecas MATH, STAT e SFUN para matemática numérica, estatística e funções especiais, respectivamente. Essas bibliotecas contêm mais de 900 sub-rotinas originalmente dis-poníveis em FORTRAN 77 e agora disponíveis em C, FORTRAN, 90 e JAVA. Essas

Analise.indb 47 15/12/2015 08:40:14

Page 64: Análise Numérica - tradução da 10a edição norte-americana

48 Análise numérica

sub-rotinas resolvem os problemas mais comuns de análise numérica. As bibliotecas estão comercialmente disponíveis a partir de Visual Numerics.

Os pacotes são entregues na forma compilada com documentação extensa. Há um programa-exemplo para cada rotina, bem como informações de referência. A IMSl contém métodos para sistemas li neares, análise de autossistemas, interpolação e apro-ximação, integração e diferenciação, equações diferenciais, transformadas, equações não lineares, otimização e operações básicas de matriz/vetor. A biblioteca também contém rotinas estatísticas extensas.

Em 1970, a IMSL tornou-se a primeira biblioteca científica em larga escala para computadores de grande porte. Desde então, as bibliotecas tornaram-se disponíveis para sistemas computacionais, variando desde supercom-putadores a computadores pessoais.

O Numerical Algorithms Group (NAG) existe no Reino Unido desde 1970 e ofe-rece mais de mil sub-rotinas em uma biblioteca de FORTRAN 77, cerca de 400 sub--rotinas em uma biblioteca de C, mais de 200 sub-rotinas em uma biblioteca de FOR-TRAN 90 e uma biblioteca númerica MPI FORTRAN para máquinas paralelas e redes de estações de trabalho ou computadores pessoais. Uma introdução útil às rotinas NAG pode ser vista em [Ph]. A biblioteca NAG contém rotinas para realizar a maioria das tarefas padrão de análise numérica de maneira similar às da IMSl. Ela também inclui algumas rotinas estatísticas e um conjunto de rotinas gráficas.

O Numerical Algorithms Group (NAG) foi instituído no Reino Unido em 1971 e desenvolveu a primeira bi-blioteca de software matemático. Ela conta agora com mais de 10 mil usuários no mundo todo e contém mais de mil funções matemáticas e estatísticas que vão desde software em estatística, simbólico, de visualização e de simulação numérica a compiladores e ferramentas de desenvolvimento de aplicações.

Os pacotes IMSL e NAG são desenvolvidos para matemáticos, cientistas ou en-genheiros que desejem chamar sub-rotinas C, Java ou FORTRAN de alta qualidade a partir de um programa. A documentação disponível com os pacotes comerciais ilustra um programa principal típico neces sário para usar as rotinas da biblioteca. Os próxi-mos três pacotes software são ambientes isolados. Quando ativados, o usuário insere comandos para fazer que o software resolva um problema. Entretanto, cada pacote permite a programação dentro da linguagem de comando.

O MATlAB é um laboratório de matrizes que foi originalmente um programa em FORTRAN publicado por Cleve Moler [Mo] na década de 1980. O laboratório baseia--se principalmente nas sub-rotinas EISPACK e LINPACK, embora funções tais como sistemas não lineares, integração numérica, splines cúbicos, ajuste de curvas, otimiza-ção, equações diferenciais ordinárias e ferramentas gráficas te nham sido incorporadas. O MATlAB está escrito atualmente em C e assembler, e a versão para PC deste pacote requer um coprocessador numérico. A estrutura básica é para executar operações com matrizes, como encontrar os autovalores de uma matriz inserida na linha de comando ou a partir de um arquivo externo via chamada de funções. Esse poderoso sistema autocontido é especialmente útil para ensino em um curso de álgebra linear aplicada.

Analise.indb 48 15/12/2015 08:40:14

Page 65: Análise Numérica - tradução da 10a edição norte-americana

Preliminares matemáticos e análise de erros 49

O MATlAB foi originalmente escrito para fornecer acesso fácil ao software matricial desenvolvido nos proje-tos LINPACK e EISPACK. A primeira versão foi escrita no final dos anos 1970 para uso em cursos de teoria de matrizes, álgebra linear e análise numérica. Há atualmente mais de 500 mil usuários do MATlAB em mais de 100 países.

O segundo pacote é GAUSS, um sistema matemático e estatístico produzido por Lee E. Ediefson e Samuel D. Jones em 1985. Ele está codificado principalmente em assembler e tem base essencialmente no EISPACK e LINPACK. Como no caso do MATlAB, estão disponíveis integração, derivação, sistemas não lineares, transforma-da rápida de Fourier e gráficos. GAUSS é menos orientado em direção a ensino em álgebra linear e mais em direção à análise estatística de dados. Este pacote também usa um coprocessador numérico, se este estiver disponível.

O terceiro pacote é o Maple, um sistema de computação algébrica desenvolvido em 1980 pelo Symbolic Computational Group, na Universidade de Waterloo. O proje-to do sistema Maple original foi apresentado no trabalho de B.W. Char, K.O. Geddes, W.M. Gentlemen e G.H. Gonnet [CGGG].

O Maple, que é escrito em C, tem a capacidade de manipular informações de ma-neira simbólica. Essa manipulação simbólica permite que o usuário obtenha respostas exatas em vez de valores numéricos. O Maple pode fornecer respostas exatas a pro-blemas matemáticos, tais como integrais, equações diferenciais e sistemas lineares. Ele contém uma estrutura de programação e permite que textos, bem como comandos, sejam salvos em planilha. Essas planilhas podem então ser carregadas no Maple e os comandos executados.

As rotinas NAG são compatíveis com Maple a partir da versão 9.0.

O igualmente popular Mathematica, lançado em 1988, é parecido com o Maple.Estão disponíveis diversos pacotes que podem ser classificados como pacotes de

supercalculadoras para PC. Entretanto, estes não devem ser confundidos com os sof-twares de propósito geral listados aqui. Se você tiver interesse em um desses pacotes, deveria ler Supercalculators on the PC, de B. Simon e R. M. Wilson [SW].

Informações adicionais sobre software e bibliotecas de software podem ser encontra-das nos livros de Cody e Waite [CW] e de Kockler [Ko], e no artigo de 1995 de Dongarra e Walker [DW]. Mais informações sobre computação em ponto flutuante podem ser encon-tradas no livro de Chaitini-Chatelin e Frayse [CF] e no artigo de Goldberg [Goldb].

Os livros que tratam da aplicação de técnicas numéricas em computadores para-lelos incluem os de autoria de Schendell [Sche], Phillips e Freeman [PF] e Golub e Ortega [GO].

1. Discuta as diferenças entre alguns dos pacotes de software disponíveis para cálculos numéricos.

QUESTÃO PARA DISCUSSÃO

Analise.indb 49 15/12/2015 08:40:14

Page 66: Análise Numérica - tradução da 10a edição norte-americana

50 Análise numérica

AlgoritmosAritmética com um número finito

de algarismosConvergênciaDiferenciaçãoErros de arredondamentoEstabilidade

IntegraçãoIntegral de RiemannLimitesRepresentação por um número

finito de algarismosSoftware numéricoTeorema de Rolle

Teorema de Rolle generalizadoTeorema de TaylorTeorema do valor extremoTeorema do valor intermediárioTeorema do valor médio com

peso

CONCEITOS-CHAVE

REVISÃO DO CAPÍTULO

Vamos revisar o Capítulo 1 em termos das habilidades que você precisará nos capítulos subsequentes.Na Seção 1.1 você deve ser capaz de usar o Teorema de Rolle, o teorema do valor intermediá-

rio e o teorema do valor extremo para:

i. Determinar se uma equação tem pelo menos uma solução em um intervalo dado.ii. Encontrar um intervalo que contenha uma solução de uma equação dada.iii. Mostrar que f 9(x ) 5 0 em algum ponto de um intervalo dado.iv. Maximizar uma função em um intervalo dado.

Você deve ser ainda capaz de usar o Teorema de Taylor para encontrar o polinômio de Taylor Pn (x ) de ordem enésimo para uma função dada f, em x0 . Além disso, você deve ser capaz de usar o teorema do valor extremo para maximizar o resto (erro) para esta expansão. Os estudantes de-vem observar que, ao calcular um limitante superior para o resto Rn (x ), usualmente minimizamos o limitante do erro. Conseguimos isso encontrando o máximo do valor absoluto de uma derivada particular em um intervalo apropriado.

Na Seção 1.2 você deve ser capaz de converter números para a forma de máquina decimal, com k algarismos. Você também deve ser capaz de usar de modo competente a aritmética de arredondamen-to ou de truncamento, conforme necessário. Você deve ser capaz de calcular o erro real, o erro abso-luto e o erro relativo em aproximações de p por p∗ e ser capaz de encontrar o maior intervalo no qual p∗ deve ficar para aproximar p com um erro relativo que esteja dentro de uma tolerância especificada. Os estudantes devem estar cientes de que, ao efetuar aritmética com um número finito de algarismos, cada cálculo individual deve ser arredondado ou truncado antes de efetuar qualquer outro passo.

Na Seção 1.3, sempre que possível, você deve ser capaz de determinar o número n de termos de uma série que precisam ser somados para garantir que o erro absoluto caia dentro de uma tole-rância especificada. Ao tratar séries com termos de sinais alternados e de módulos decrescentes, o erro produzido pelo truncamento da série em qualquer termo é menor do que o módulo do próximo termo. Sempre que possível, você deve ser capaz de determinar a taxa de convergência de uma se-quência. Você deve ser capaz de seguir os passos de um algoritmo e descrever a saída.

A Seção 1.4 destaca algumas das diferenças entre os pacotes de software de propósito geral e os algoritmos fornecidos no texto. O que se deve levar desta seção, principalmente, é ser exposto ao fato de que os pacotes de software de propósito geral consideram maneiras de reduzir os erros devidos ao arredondamento de máquina, underflow e overflow. Eles também descrevem os interva-los de variação da entrada que levarão a resultados de certa precisão especificada.

Page 67: Análise Numérica - tradução da 10a edição norte-americana
Page 68: Análise Numérica - tradução da 10a edição norte-americana

análise numéricaRichaRd L. BuRden | dougLas J. FaiRes | annette M. BuRden

T r a d u ç ão da 1 0 -a e d i ç ão n o rT e -a m e r i c a n a

Outras Obras

CálCulO VOlumes 1 e 2Tradução da 7a edição norte-americanaJames Stewart

Pré-CálCulO 3a edição revista e ampliadaAndré Machado Caldeira, Luiza Maria Oliveira da Silva, Maria Augusta Soares Machado e Valéria Zuma Medeiros (coord.)

CálCulO numériCO: aPrendizagem COm aPOiO de sOftware2a edição revista e ampliadaSelma Arenales e Artur Darezzo

matemátiCa aPliCada a administraçãO e eCOnOmiaTradução da 9a edição norte-americanaS. T. Tan

PrObabilidade e estatístiCa Para engenharia e CiênCias Tradução da 8a edição norte-americanaJay L. Devore

ISBN 13 978-85-221-2340-7ISBN 10 85-221-2340-3

9 7 8 8 5 2 2 1 2 3 4 0 7

Este livro apresenta a teoria e a aplicação de técnicas modernas de aproximação numérica. Fornece uma base sólida para estudos futuros de maior profundidade em análise numérica e computação científica.

Todos os conceitos são desenvolvidos de forma clara e cuidadosa e posteriormente ilus-trados com exemplos que demonstram, de forma concisa, como as técnicas numéricas podem ser aplicadas em situações concretas das diversas áreas das ciências exatas.

Nesta nova edição, diversos exemplos foram reescritos para ter maior clareza. Os exercícios foram organizados em computacionais, aplicados e teóricos, sendo que muitos dos aplicados são novos. Os conjuntos de exercícios incluem numerosos pro-blemas aplicados de diversas áreas da engenharia, bem como das ciências físicas, computacionais, biológicas e sociais. Alguns dos exemplos no livro foram reescri-tos para enfatizar melhor o problema a ser resolvido antes de apresentar a solução. Também foram acrescentados alguns passos a alguns dos exemplos, para mostrar explicitamente os cálculos necessários. Além disso, cada capítulo, agora, possui questões para discussão, muitas delas direcionam o estudante para áreas modernas de pesquisa em desenvolvimento de software. O material bibliográfico também foi atualizado para apresentar novas edições de obras que são referências.

análise numérica pode ser utilizado como livro-texto para as disciplinas cálculo nu-mérico e análise numérica nos cursos de Engenharia, Matemática, Ciência da Com-putação e em cursos introdutórios que abordem resolução numérica de equações diferenciais ordinárias e parciais.

Tradução da 10-a edição norTe-americana

análise numéricaRichaRd L. BuRden | dougLas J. FaiRes | annette M. BuRden

Para suas soluções de curso e aprendizado, visite www.cengage.com.br

Richard L. Burden | Douglas J. Faires | Annette M. Burden

análise numérica

analise_numericaOK.indd 1 1/14/16 11:46 AM