• Nenhum resultado encontrado

Matemática Superior para Engenharia - Volume 3 - Ed. 9 -Kreyszig, Erwin.pdf

N/A
N/A
Protected

Academic year: 2021

Share "Matemática Superior para Engenharia - Volume 3 - Ed. 9 -Kreyszig, Erwin.pdf"

Copied!
281
0
0

Texto

(1)
(2)

Análise

Numérica

Programa Computacional

Programa Computacional

CCA

APÍ

PÍ TU

TU LLO

O 19

19 Mé

Méto

todos

dos Nu

Numé

méri

rico

cos e

s em G

m Ger

eral

al

CAPÍTULO 20 Métodos Numéricos de Álgebra Linear

CAPÍTULO 20 Métodos Numéricos de Álgebra Linear

CAPÍTULO 21 Métodos Numéricos para EDOs e EDPs

CAPÍTULO 21 Métodos Numéricos para EDOs e EDPs

A análise numéricaanálise numérica preocupa-se com os métodos numéricosmétodos numéricos, ou seja, os métodos para resolver problemas em termos de números ou de representações gráficas correspondentes. Ela também inclui a investigação da extensão da aplicabilidade, bem como a precisão e a estabilidade desses métodos.

Tarefas usuais em análise numérica são o cálculo de valores de integrais definidas, a obtenção de solução de equações e sistemas lineares, a solução de equações diferenciais ou integrais para as quais inexistem fórmulas de solução e o cálculo de valores de dados experimentais para os quais desejamos obter, por exemplo, um polinômio de aproximação.

Os métodos numéricos fornecem, portanto, uma transição de um modelo matemático para um algoritmoalgoritmo, ou seja, uma detalhada receita para se resolver um determinado problema a ser resolvido por programação em seu computador, utilizando um sistema de álgebra computacional (SAC) ou algum outro programa, ou mesmo uma calculadora programável.

Neste e nos dois capítulos seguintes, explicamos e ilustramos os métodos numéricos fundamentais mais freqüentemente utilizados em forma algorítmica. O Capítulo 19 trata dos métodos numéricos em geral; o Capítulo 20, da álgebra linear numérica e, em particular, dos métodos empregados na solução de sistemas lineares e de problemas de autovalores de matrizes; e o Capítulo 21 trata dos métodos numéricos aplicados às EDOs e EDPs.

Os algoritmos são fornecidos de modo a mostrar da melhor forma possível o funcionamento de cada método. Sugerimos que você também faça uso dos programas comerciais ou de domínio público que estão listados ao final deste texto ou que podem ser obtidos na Internet.

Os métodos numéricos vêm cada vez mais ganhando importância em engenharia, mais do que em qualquer outro campo da matemática, em virtude do contínuo desenvolvimento de poderosas técnicas de programa-ção resultantes de uma extensa atividade de pesquisa nessa área, através da invenprograma-ção de novos métodos, do aperfeiçoamento e adaptação de métodos já existentes e também da redescoberta de outros métodos antigos, que não tinham praticidade na era pré-digital. Um dos principais objetivos dessas atividades é o

PARTE

(3)

22 Parte E • Análise Numérica

desenvolvimento de programas bem estruturados de computador. E, em situações de trabalho de grande escala — com milhões de equações ou etapas de iteração — mesmo pequenos aperfeiçoamentos algorítmicos podem exercer um grande efeito no tempo de computação, da demanda de armazenamento, na precisão e na estabilidade.

Em média, isto tem feito com que os algoritmos utilizados na prática venham ficando cada vez mais compli-cados. Entretanto, quanto mais sof Entretanto, quanto mais sofisticados os modisticados os modernos programaernos programas se tornam, maior fica s se tornam, maior fica a importânciaa importância de termos uma compreensão básica dos conceitos e algoritmos, a fim de conhecermos idéias srcinais, de termos uma compreensão básica dos conceitos e algoritmos, a fim de conhecermos idéias srcinais, motivadora

motivadoras e s e de recente de recente desenvolvimentodesenvolvimento..

Para evitar mal-entendidos: há diversos métodos clássicos e simples que ainda são bastante úteis em várias situações rotineiras e que produzem resultados satisfatórios. Em outras palavras, nemtudo tem-se tornado mais sofisticado.

Programa Computacional

Programa Computacional

Veja também www.ltceditora.com.br

A lista a seguir ser-lhe-á útil caso você deseje encontrar programas de computador. Também é possível obter informações sobre programas, tanto os novos como os já conhecidos, por meio de revistas, como a Byte Magazine ou aPC Magazine, de artigos publicados pela American Mathematical Society(veja também seu site na web em www.ams.org), pelaSociety for Industrial and Applied Mathematics(SIAM, em www. siam.org), Association for Computing Machinery(ACM, em www.acm.org) ou pelo Institute of Electrical and Electronics Engineers(IEEE, em www.ieee.org). Consulte também sua biblioteca, o departamento de ciências da computação ou ainda o departamento de matemática de sua instituição.

Derive.

Derive. Texas Instruments, Inc., Dallas, TX. Tel.: 1-800-842-2737 ou (972) 917-8324, site na web em www. derive.com ou www.education.ti.com.

EISPACK.

EISPACK. Veja LAPACK. GAMS

GAMS (Guide to Available Mathematical Software). Site na web em http://www.gams.nist.gov. Índice cruzadoon-linede desenvolvimento de programas da NIST, comlinkscom o IMSL, NAG e NETLIB. IMSL

IMSL (International Mathematical and Statistical Library). Visual Numerics, Inc., Houston, TX. Tel.: 1-800-222-4675 ou (713) 784-3131, site na web em www.vni.com. Rotinas Fortran com gráficos para matemática e estatística.

LAPACK

LAPACK. Rotinas de Fortran 77 para álgebra linear. Este pacote de programas é posterior ao LINPACK e ao EISPACK. Pode-se baixar as rotinas ou solicitá-los diretamente à NAG. Há um LAPACK User’s Guide disponível em http://netles.sandia.gov/master/readme.html

LINPACK.

LINPACK. VejaLAPACK.

Maple.

Maple. Waterloo Maple, Inc., Waterloo, ON, Canadá. Tel.: 1-800-267-6583 ou (519) 747-2373, site na web em www.maplesoft.com.

Maple Computer Guide.

Maple Computer Guide. Para este livro — Matemática Avançada para Engenharia —, 9a Ed., de E. Kreyszig

e E. J. Norminton. J. Wiley and Sons, Inc., Hoboken, NJ. Tel.: 1-800-225-5945 ou (201)748-6000, site na web www.wiley.com/wileyCDA.

MathCad.

MathCad. MathSoft, Inc., Cambridge, M.A., Tel.: 1-800-628-4223 ou (617) 444-8000, site na web em http://www.ptc.com/appserver/mkt/products/resource/mathcad/index.jsp?

Mathematica.

Mathematica. Wolfram Research, Inc., Champaign, IL. Tel.: 1-800-965-3726 ou (217) 398-0700, site na web em www.wolframresearch.com.

(4)

Capítulo 19: Métodos Numéricos em Geral 33

Mathematica Computer Guide.

Mathematica Computer Guide. Para Matemática Avançada para Engenharia, 9a edição, de E. Kreyszig e E. J. Norminton. J. Wiley and Sons, Inc., Hoboken, NJ. Tel.: 1-800-225-5945 ou (201) 748-6000, site na web em www.wiley.com/wileyCDA.

Matlab.

Matlab. The Matlab Works, Inc., Natick, MA. Tel.: (508) 647-7000, site na web em www.mathworks. com.

NAG.

NAG. Numerical Algorithms Group, Inc., Downders Grove, IL. Tel.: (630) 971-2337, site na web em www. nag.com. Rotinas numéricas em Fortran 77, Fortran 90 eC .

NETLIB.

NETLIB. Extensa biblioteca de software de domínio público. Veja em www.netlib.org e http://netlib.sendia. gov/master/readme.html.

NIST.

NIST. National Institute of Standards and Technology, Gaithersburg, MD. Tel.: (301) 975-2000, site na web em www.nist.gov. Contatos com a Mathematical and Computational Science Division, tel.: (301) 975-3800. Veja também http://math.nist.gov.

Numerical Recipes.

Numerical Recipes. Cambridge University Press, New York, NY. Tel.: (212) 924-3900, site na web em www.cambridge.org/us. Livros (e também códigos-fonte em CD-ROM) contendo rotinas numéricas emC , C ++, Fortran 77 e Fortran 90. Pedidos no escritório de West Nyack, NY, em 1-800-872-7423 ou (845) 353-7500 ouon-line em www.numerical-recipes.com.

OUTROS PROGRAMAS COMPUTACIONAIS DE ESTATÍSTICA

(5)

CAPÍTULO

11 99

Métodos Numéricos em Geral

O primeiro capítulo sobre métodos numéricos começa com uma explicação de alguns conceitos gerais, como ponto de flutuação, erros de arredondamento e erros numéricos em geral e sua propagação. Na Seção 19.2, discutiremos métodos para resolver equações. Os métodos de interpolação, incluindo o dossplines, seguem-se nas Seções 19.3 e 19.4. A última seguem-seção (19.5) refere-seguem-se à integração e à derivação numéricas.

O propósito deste capítulo é duplo. Primeiro, para todas estas tarefas, o aluno deverá familiarizar-se com os métodos numéricos de solução mais básicos (embora não por demais complicados). Eles são indis-pensáveis ao engenheiro porque, para muitos problemas, não existe uma fórmula de solução (imagine, por exemplo, uma integral complicada, ou um polinômio de alto grau ou a interpolação de valores obtidos através de medições). Em outros casos, uma fórmula complicada de solução pode existir, porém não pode ser utilizada na prática.

O segundo propósito deste capítulo é fazer com que a aprendizagem dos alunos lhes permita compreender algumas idéias e conceitos básicos que se constituem em importantes métodos completos, como a forma prática de algoritmos, a estimativa de erros e a ordem de convergência.

Pré-requisito: Cálculo elementar

Referências e Respostas dos Problemas: Parte E do Apêndice 1 e Apêndice 2

19.1

Introdução

Os métodos numéricosmétodos numéricos são utilizados para resolver problemas em computadores e calculadoras através de cálculos numéricos, resultando em uma tabela de números e/ou representações gráficas (figuras). As fases que vão de uma dada situação (em engenharia, economia etc.) até a resposta final são geralmente as seguintes:

1. Modelagem.

1. Modelagem. Estabelecemos um modelo matemático para nosso problema, como uma integral, um sistema de equações, ou uma equação diferencial.

2. Escolha de um método numérico

2. Escolha de um método numérico e de parâmetros (p. ex., tamanho do passo de iteração), talvez com uma estimativa preliminar de erro.

3. Programação.

3. Programação. Usamos o algoritmo para escrever um programa correspondente em um SAC, como Maple, Mathematica, Matlab ou Mathcad, ou, digamos, em Fortran,C , ouC++, selecionando rotinas compatíveis de um sistema de software conforme o necessário.

4. Realização do cálculo. 4. Realização do cálculo. 5. Interpretação dos resultados

5. Interpretação dos resultados em termos físicos ou outros, também decidindo reexecutar o programa caso se necessitem de resultados posteriores.

As Etapas 1 e 2 estão relacionadas. Uma leve mudança do modelo pode muitas vezes permitir o uso de um método mais eficiente. Mas, para escolher os métodos, precisamos antes conhecê-los. Os Capítulos 19–21 contêm algoritmos eficientes para as classes mais importantes de problemas que ocorrem com freqüência na prática.

Na Etapa 3, o programa consiste em dados fornecidos e em uma seqüência de instruções a serem executadas pelo computador em determinada ordem para produzir a resposta em forma numérica ou gráfica.

Para criar uma boa compreensão da natureza do trabalho numérico, continuaremos nesta seção com algumas observações gerais simples.

Números em Forma de Ponto Flutuante

Sabemos que, na notação decimal, cada número real é representado por uma seqüência finita ou infinita de dígitos decimais. Hoje, a maioria dos computadores tem duas maneiras de representar os números, chamadas de ponto fixo e ponto flutuante. Em um sistema de ponto fixoponto fixo, todos os números são expressos com um número fixo de

(6)

Capítulo 19: Métodos Numéricos em Geral 55

decimais à direita da vírgula decimal; por exemplo: números expressos com 3 decimais são 62,358; 0,014; 1,000. Em um texto, escreveríamos, digamos, 3 decimais como 3D. As representações de ponto fixo não são práticas na maioria das computações científicas por causa de seu alcance limitado (explique!) e não nos interessarão.

Em um sistema de ponto flutuanteponto flutuante, escrevemos, por exemplo: 0,6247 10 3, 0,1735  10 13, 0,2000  10 1 ou, às vezes, também

6,247 102, 1,735 10

14, 2,000 10 2.

Vemos que, neste sistema, o número de dígitos significativos é mantido fixo, ao passo que a vírgula decimal é “flutuante”. Aqui, o dígito significativodígito significativo de um númeroc é qualquer dígito dado dec, exceto, possivelmente, para zeros à esquerda do primeiro dígito não-zero; esses zeros servem apenas para fixar a posição da vírgula decimal. (Assim, qualquer outro zero é um dígito significativo dec.) Por exemplo: cada um dos números

1360, 1,360, 0,001360

tem 4 dígitos significativos. Em um texto, indicamos, por exemplo, 4 dígitos significativos por 4S.

O uso de expoentes permite-nos representar números muito grandes e números muito pequenos. De fato, teoricamente qualquer número não-zeroa pode ser escrito como

(1) am 10

n, 0,1m  1, n inteiro.

No computador,m limita-se ak dígitos (p. ex.:k = 8) ené limitado, dando as representações (apenas para uma quantidade finita de números!)

(2) am 10

n, m

  0.d 1d 2•••d k, d 1 0.

Esses númerosā são freqüentemente chamados denúmeros de máquina decimais de k dígitos. Sua parte fra-cionáriam (ou ) é chamada dem mantissa. Isto nada tem a ver com a “mantissa” que se usa em logaritmos.n é chamado deexpoente deā .

Underflow

Underflow ee OverflowOverflow. O intervalo de expoentes com que um computador típico pode lidar é muito grande. O ponto flutuante padrão do IEEE ( Institute of Electrical and Electronics Engineers) para a precisão simplesprecisão simples (o número usual de dígitos nos cálculos) é cerca de –38 <n < 38 (cerca de –125 <n* < 125 para o expoente em representações binárias

representações binárias, ou seja, representações de base 2). [Para a chamada precisão duplaprecisão dupla, é cerca de –308 < n < 308 (cerca de –1020 <n* < 1020 para representações binárias)]. Se, em um cálculo ocorrer um número fora desse intervalo faixa, isto é chamado deunderflowunderflow quando o número é menor e deoverflowoverflow quando ele é maior. No caso deunderflow, o resultado é normalmente arredondado para zero e o cálculo prossegue. Ooverflow faz o computador parar. Os códigos-padrão (de IMSL, NAG etc.) são escritos de modo a se evitar ooverflow. As men-sagens de erro sobreoverflow podem então indicar erros de programação (dados incorretos de entrada etc.).

Arredondamento

Provocam-se erros por causa do cortecorte (= o descarte de todos os números decimais de uma certa casa em diante) ou do arredondamentoarredondamento (aproximação)(aproximação). Esses erros são chamados de erros de arredondamentoerros de arredondamento, independente-mente de terem sido causados pelo corte ou pelo arredondamento propriaindependente-mente dito. A regra para se arredondar um número parak decimais é a seguinte. (A regra de arredondamento parak dígitos significativos é a mesma, bastando-se substituir a expressão “decimal” por “dígito significativo”.)

Regra de

Regra de Arredondamento.Arredondamento. Descarte o (k+ 1)-ésimo decimal e todos os decimais subseqüentes. (a) Se a parte assim descartada for inferior à metade da unidade situada nak -ésima casa, deixe o k -ésimo decimal inalterado (“arredondamento para baixo”). (b) Se a parte descartada for maior que a metade da unidade situada nak -ésima casa, aumente de uma unidade ak -ésima casa (“arredondamento para cima”). (c) Se a parte descartada for exatamente igual à meia unidade, arredonde para o decimal par mais próximo. (Exemplo: no arredondamento de 3,45 e 3,55 para uma casa decimal, obtemos 3,4 e 3,6, respectivamente.)

O propósito da última parte desta regra é garantir que, nos casos onde a parte descartada vale exatamente a metade de um decimal, os arredondamentos para mais e para menos venham, em média, a ser feitos com apro-ximadamente a mesma freqüência.

Se arredondamos 1,2535 para 3, 2, 1 casas decimais, teremos 1,254; 1,25 e 1,3, mas se 1,25 for arredondado para uma casa decimal, sem informações adicionais, teremos 1,2.

(7)

66 Parte E • Análise Numérica

Simplesmente cortar os números à direita de uma certa casa não é recomendável, pois o erro correspondente pode ser maior do que o ocorrido no arredondamento, além de ser sistemático. (Não obstante, alguns computadores utilizam tal procedimento, pelo fato de ele ser mais simples e mais rápido. Por outro lado, alguns computadores e calculadoras aumentam a precisão de seus resultados fazendo cálculos intermediários que utilizam um ou mais dígitos extras, chamados dedígitosde guarda.)

Erro de Arredondamento.

Erro de Arredondamento. Em (2), chamemos de  = fl(a)a a aproximação de ponto flutuante que o computador faz dea em (1) utilizando o arredondamento, onde fl sugere flutuanteflutuante. Então a aplicação da regra do arredondamento fornece (eliminando-se os expoentes)m  m1

2 10

k. Comom 0,1, isto implica que (sendo a 0)

(3)

a a a

mm

m

1 2  10 1k.

O lado direitou12 101k desta equação é chamado de unidade de arredondamentounidade de arredondamento. Se escrevermosa= a(1 +d), teremos, usando álgebra, que (aa)/ad, logo,d u por (3). Isto mostra que a unidade de arre-dondamento u é um limite de erro do arrearre-dondamento.

Os erros de arredondamento podem arruinar completamente um cálculo, mesmo quando ele for pequeno. Em geral, esses erros vão se tornando cada vez mais perigosos à medida que se aumenta o número de operações arit-méticas a serem executadas (com esse número chegando às vezes a vários milhões!). Portanto, é importante que analisemos os programas computacionais com o propósito de descobrir erros esperados de arredondamento e de encontrar para os cálculos um arranjo que permita que os erros de arredondamento sejam os menores possíveis. Tampouco a aritmética dos computadores é exata e ela provoca outros erros; contudo, esses erros não serão relevantes à nossa discussão.

Precisão nas Tabelas.

Precisão nas Tabelas. Embora os programas disponíveis hoje em dia tenham tornado supérfluas diversas tabelas de valores de funções, algumas tabelas (de funções superiores, de coeficientes de fórmulas de integração etc.) ainda continuarão sendo de uso ocasional. Se uma tabela apresentak dígitos significativos, presume-se, por convenção, que qualquer valora na tabela se desvia do valor exatoa por, no máximo,1

2 unidade dok -ésimo dígito.

Algoritmo. Estabilidade

Os métodos numéricos podem ser formulados como algoritmos. Um algoritmoalgoritmo é um processamento passo a passo que apresenta um método numérico sob uma forma (um “pseudocódigo”“pseudocódigo”) compreensível aos seres humanos. (Vire algumas páginas para ver a aparência que tem um algoritmo.) Os algoritmos são então utilizados para se escreverem programas em uma linguagem de programação que seja compreendida pelo computador, de modo que este possa executar o método numérico. As seções a seguir apresentam alguns algoritmos importantes. Para as tarefas de rotina, pode ocorrer que seu sistema de álgebra computacional ou algum outro aplicativo contenha programas que você possa utilizar ou incluir como partes de programas que você mesmo criar.

Estabilidade.

Estabilidade. Para ser útil, um algoritmo deve ser estável;estável; ou seja, pequenas alterações nos dados iniciais devem causar apenas pequenas alterações nos resultados finais. Entretanto, se pequenas alterações nos dados iniciais provocarem grandes alterações nos resultados finais, chamaremos o algoritmo de instável.instável.

É preciso distinguir essa“instabilidade numérica”, que na maioria dos casos pode ser evitada com a escolha de um algoritmo melhor, da“instabilidade matemática” de um problema, a qual é também chamada de“mau condicionamento”, um conceito que discutiremos na próxima seção.

Alguns algoritmos são estáveis somente para certos dados iniciais, de modo que é preciso que se tome cuidado em casos assim.

Erros de Resultados Numéricos

Os resultados finais de cálculos de quantidades desconhecidas geralmente são aproximações;aproximações; ou seja, não são exatos, mas envolvem erros, os quais podem resultar de uma combinação dos seguintes efeitos: os erros de arre-erros de arre-dondamento

dondamento, resultantes dos procedimentos de arredondamento, conforme já discutimos; os erros experimentaiserros experimentais, encontrados nos dados fornecidos (provavelmente surgindo das medições); os erros de truncamento, resultantes dos procedimentos de truncamento (interrupção prematura), por exemplo, quando substituímos uma série de Taylor pela soma de seus primeiros termos. Esses erros dependem do método computacional empregado e devem ser tratados individualmente, dependendo de cada método. [Às vezes, o termo “truncar” é usado como um sinônimo de “cortar” (ver o que já dissemos deste último), uma terminologia que não recomendamos.]

(8)

Capítulo 19: Métodos Numéricos em Geral 77

Fórmulas para Erros.

Fórmulas para Erros. Sea é um valor aproximado de uma quantidade cujo valor exato éa, chamamos a

diferença (4)

(4) e =a –a

de erroerro dea. Logo,

(4*)

(4*) aae, Valor verdadeiro Aproximação Erro.

Por exemplo: sea = 10,5 for uma aproximação dea = 10,2, seu erro seráe = –0,3. Já para uma aproximação

a

 = 1,60 dea = 1,82, o erro ée = 0,22.

CUIDADO!

CUIDADO! Na literatura, as expressõesa –a (“erro absoluto”) oua –a também são às vezes utilizadas como

definições de erro.

O erro relativoerro relativo er dea é definido como

(5) (5) er  e  a aa

a



Erro Valor verdadeiro (a 0).

Isso parece inútil, visto quea é desconhecido. Mas, see for muito menor do que a, então podemos usaraem

vez dea e obter (5 (5)) er  e  a  .

Isso ainda parece problemático, poise é desconhecido — se conhecêssemose, de (4) obteríamosa =a +e e o problema estaria resolvido. Mas o que podemos com freqüência obter na prática é um limite de errolimite de erro paraa, ou

seja, um número b tal que

e  b, logo, aa  b.

Isto nos mostra o quanto oa desconhecido pode ficar longe do nossoa calculado. De modo semelhante, para o

erro relativo, um limite de erro é um número br tal que

er   br , logo,

aa

a

 br .

Propagação de Erros

Este é um assunto importante e refere-se à maneira como os erros ocorridos na etapa inicial e em etapas poste-riores (os de arredondamento, por exemplo) vão se propagando pelos cálculos e afetando a exatidão, às vezes de modo bastante drástico. Podemos dizer que os limites deerro se somam na adição e na subtração, ao passo que os limites deerro relativo se somam na multiplicação e na divisão. É bastante aconselhável ter isso em mente.

TEOREMA 1

TEOREMA 1 Propagação de ErrosPropagação de Erros

(a)

(a) Na adição e na subtração, um limite de erro para os resultados é dado pela soma dos limites de erro para os termos.

(b)

(b) Na multiplicação e na divisão, um limite de erro para o erro relativo dos resultados é dado (aproxima-damente) pela soma dos limites para os erros relativos dos números dados.

PROVA

PROVA (a) Utilizemos as notações(a) x xe

1, y ye

2, e1  b1, e2  b2. Então, para o erroe dadiferença, obtemos e x y ( x y)

  x x ( y y)

e1e2  e1  e2  b1 b2. A prova para asoma é semelhante e deixamo-la a cargo do aluno.

(9)

88 Parte E • Análise Numérica (b)

(b) Para o erro relativoer de x y, obtemos dos erros relativose

r 1 eer 2 de x, y e dos limites b r 1, br 2 er  

xy x y

xy

xy



 ( xe1)( ye2) x y

e1 ye2 xe1e2



x y



e1 ye2 x x y

e1  x

e2  y

 er 1  er 2  br 1 br 2.

Esta prova mostra o que o termo “aproximadamente” significa: desprezamos o produtoe1e2 como tendo um pequeno valor absoluto comparado ae1 e e2. A prova para o quociente é semelhante, embora ligeiramente mais

complicada (veja o Problema 15). 

Princípio Básico do Erro

Todo método numérico deve ser acompanhado de uma estimativa de erro. Se uma fórmula para isto não estiver disponível, for extremamente complicada ou não puder ter seu valor calculado por envolver informações não disponíveis (nas derivadas, por exemplo), o que se segue pode ajudar.

Estimativa de Erro por Comparação.

Estimativa de Erro por Comparação. Faça um mesmo cálculo duas vezes, porém com exatidões diferentes. Considere a diferença a

2a

1 dos resultados a

1, a

2 como uma estimativa a(talvez grosseira) do erro e1 do

resultado inferior a

1. De fato,a

1e1 =a

2e2 pela fórmula (4*). Isto implicaa

2a

1e1e2  e1, visto quea

2 é geralmente um valor mais preciso do que a

1, de modo quee2 é pequeno em comparação com e1.

Perda de Dígitos Significativos

Isto significa que o resultado de um cálculo tem menos dígitos corretos do que os números a partir dos quais ele foi obtido, por exemplo, 0,1439 – 0,1426 (“cancelamento subtrativo”). Ele pode ocorrer em problemas simples, mas pode ser evitado na maioria dos casos por meio de uma simples troca no algoritmo — desde que se esteja ciente disto! Ilustremos isto com o seguinte problema básico:

EXEMPLO 1

EXEMPLO 1 Equação Quadrática. Perda de DígiEquação Quadrática. Perda de Dígitos Significativostos Significativos

Encontre as raízes da equação

x2 40

x 2 0, usando no cálculo 4 dígitos significativos (abreviados como 4S).

Solução.

Solução. Uma fórmula para as raízes x1, x2 de uma equação quadráticaax2 +bx +c = 0 é

(6) x1 1 2 a ( b

b2 4

a c), x2 1 2 a ( b

b2 4

ac). Além disso, como x1 x2 =c/a, uma outra fórmula para essas raízes é

(7) x1 como antes, x2

c

ax 1

.

De (6), obtemos x 20  398 20,00 19,95. Isto fornece x1 20,00 19,95 39,95, o que não envolve qualquer dificuldade, ao

passo que x2 20,00 19,95 0,05 é um resultado ruim porque envolve a perda de dígitos significativos.

Por outro lado, (7) fornece x1 39,95, x2 2,000/39,95 0,05006, com o erro sendo menor que a unidade situada no último dígito,

conforme um cálculo envolvendo mais dígitos pode mostrar. (O valor 10S é 0,05006265674.) Comentário.

Comentário. Para evitar equívocos, usou-se 4S por conveniência; (7) é melhor do que (6), independentemente do número de dígitos usado. Por exemplo: por (6), o cálculo 8S é x1 = 39,949 937, x2 = 0,050 063, o que é um resultado ruim, ao passo que, em (7), x1 é como

antes e x2 = 2/ x1 = 0,050 062 657.

Em uma equação quadrática com raízes reais, se x2 tiver um valor absoluto máximo (porqueb > 0), use (6) no lugar de x2 e então x1 =

c/(ax2). 

PROBLEMAS PROPOSTOS 19.1

PROBLEMAS PROPOSTOS 19.1

1. (Ponto flutuante)

1. (Ponto flutuante) Escreva 98,17; –100,987; 0,0057869; –13600 em forma de ponto flutuante e arredondando para 4S (4 dígitos significativos).

2.2.Escreva –0,0286403; 11,25845; –31681,55 em forma de ponto flutuante e arredondando para 6S.

3. Pequenas diferenças entre números grandes

3. Pequenas diferenças entre números grandes podem ser bas-tante afetadas particularmente por erros de arredondamento. Ilustre isso computando 0,36443/(17,862 – 17,798) conforme dado com 5S, e depois arredondando paulatinamente para 4S, 3S e 2S, onde “paulatinamente” significa que se devem

(10)

arre-Capítulo 19: Métodos Numéricos em Geral 99

dondar os números arredondados e não os números srcinal-mente dados.

4.4. Repita o Problema 3 com números de sua própria escolha e que forneçam resultados com diferenças ainda mais drásticas. Como pode você evitar essas dificuldades?

5.5. O quociente do Problema 3 está na formaa/(b – c). Escreva-o como

a(b+ c)/(b2 c2). Calcule-o primeiro com 5S, depois arredondando o numerador 12,996 e o denominador 2,28 paulatinamente como no Problema 3. Compare e comente.

6. (Equação 6. (Equação quadrática)quadrática) Resolva x2 – 20 x + 1 = 0 por (6) e por (7), usando 6S no cálculo. Compare e comente.

7.7.Faça os cálculos do Problema 6 com 4S e 2S.

8.8. Resolva: x2 – 100 x + 2 = 0 por (6) e (7) com 5S e compare. 9.9.Calcule: 1/e = 0,367879 (6S) usando as somas parciais de 5 a 10

termos da série de Maclaurin: (a) dee –xcom x = 1, (b) deex com x = 1 e calculando depois o recíproco. Qual é o resultado mais

preciso? 10.

10. A adição com um número fixo de dígitos significativos depende da ordem em que os números são somados. Ilustre esse fato com um exemplo. Descubra uma regra empírica para a melhor ordem. 11. As aproximações de

11. As aproximações de = 3,141 592 653 589 79••• são 22/7 e

355/113. Determine com 3 dígitos significativos os erros corres-pondentes e os erros relativos.

12.

12.Computep usando a aproximação de Machinaproximação de Machin

16 arctan (1/5) – 4 arctan (1/239) para 10S (que é um resultado correto). (Em 1986, D. H. Barley calculou quase 30 milhões de decimais dep em um CRAY-2 em menos de 30 horas. E a corrida para encontrar cada vez mais decimais ainda continua.) 13.

13.(Arredondamento e somaArredondamento e soma). Consideremos quea1,•••,an sejam números com osa j arredondados corretamente até D j decimais. Ao calcularmos a somaa1 +••• +an, retendo D = min D j deci-mais, qual opção é essencial: primeiro somar e depois arredondar o resultado, ou primeiro arredondar cada número para D decimais e depois somar?

14.

14. (Teoremas sobre errosTeoremas sobre erros) Prove o Teorema 1(a) para a adição. 15.

15. Prove o Teorema 1(b) para a divisão. 16.

16. No Exemplo 1, mostre que o valor absoluto do erro de x2 = 2,000/39,95 = 0,05006 é inferior a 0,00001.

17.

17.OverflowOverflow eeunderflowunderflow podem às vezes ser evitados por meio de simples mudanças em uma fórmula. Explique isso em termos de 

x2 y 2 x

1 ( y  / x)2 com x2 y2 e um x tão grande que x2 causariaoverflow. Crie seus próprios exemplos.

18.

18. (FormaForma aninhadaaninhada) Calcule o valor de: ƒ( x) x3 7,5 x2 11,2 x 2,8

 (( x 7,5) x 11,2) x 2,8

em x = 3,94 usando uma aritmética de 3S e arredondando, nas duas formas dadas. A última forma, chamada deaninhada, é geralmente preferível, visto que ela minimiza o número de operações e, con-seqüentemente, o efeito do arredondamento.

19.

19. EXPERIMENTO DE EXPERIMENTO DE ÁLGEBRA ÁLGEBRA COMPUTACIONAL. CorteCOMPUTACIONAL. Corte e Arredondamento. (a)

e Arredondamento. (a) Considere x = 4/7 e y = 1/3. Encontre os errosecorte,earred e os erros relativoser,cor,er,arredocorridos devido aos cortes e aos arredondamentos para 5S em x y, x y, xy,

x/ y. Experimente com outras frações de sua escolha. (b)

(b)Represente em um mesmo gráficoecorte eearred (até 5S) dek /21 como funções dek = 1, 2,•••21. A partir do gráfico, que valor

médio se pode perceber paraecorte? E paraearred? Experimente com outros números inteiros que forneçam gráficos similares. Idem para os que forneçam diferentes tipos de gráficos. Você poderia caracterizar os diferentes tipos em termos de fatores primos? (c)(c) Como muda a situação em (b) se você escolher 4S em vez de

5S?

(d)(d) Escreva programas para os trabalhos em (a)–(c). 20. PROJETO ESCRITO. Métodos numéricos.

20. PROJETO ESCRITO. Métodos numéricos. Usando suas pró-prias palavras, escreva, sobre o papel geral dos métodos numéricos na matemática aplicada, o motivo pelo qual eles são importantes, onde e quando precisam ou podem ser usados, e como o uso do computador os influencia na engenharia e em outras áreas.

19.2

Solução de Equações por Iteração

Daqui em diante, cada seção será dedicada a algum tipo básico de problema e aos métodos correspondentes de solução. Começaremos com os métodos que permitem encontrar soluções de uma equação única

(1) f ( x) = 0

onde f é uma função dada. Para esta tarefa, praticamente não existem fórmulas (exceto em alguns casos simples), de modo que dependemos quase inteiramente dos algoritmos numéricos. Uma soluçãosolução de (1) é um número x = s, tal que f (s) = 0. Aqui,s sugere “solução”, embora também utilizaremos outras letras.

Exemplos de equações assim são x3 + x = 1, sen x = 0,5 x, tan x = x, cosh x = sec x, cosh x cos x = –1, que podem ser todas escritas na forma (1). O primeiro desses exemplos refere-se a uma equação algébricaequação algébrica, visto que a função f correspondente é um polinômio e, neste caso, as soluções são também chamadas de raízesraízes da equação. Os demais exemplos são equações transcendentais,equações transcendentais, pois envolvem funções transcendentais. Resolver as equa-ções (1) é uma tarefa de fundamental importância, visto que elas são abundantes nas aplicaequa-ções em engenharia: algumas ocorrem nos Capítulos 2, 4, 8 (equações características), 6 (frações parciais), 12 (autovalores, zeros das funções de Bessel) e 16 (integração), embora haja também muitas e muitas mais.

Para resolvermos (1) quando não há nenhuma fórmula capaz de fornecer a solução exata, podemos usar um método de aproximação, em particular, um método de iteraçãométodo de iteração, ou seja, um método em que partimos de um palpite inicial x0 (que pode ser ruim) e passo a passo calculamos aproximações x1, x2,••• (que, de modo geral,

(11)

10

10 Parte E • Análise Numérica

são progressivamente melhores) de uma solução desconhecida de (1). Discutiremos aqui três desses métodos que são particularmente importantes do ponto de vista prático e mencionaremos dois outros no conjunto de problemas propostos. Esses métodos e os princípios a eles subjacentes são fundamentais para a compreensão dos diversos métodos empregados nos aplicativos computacionais.

De modo geral, os métodos iterativos são fáceis de programar porque as operações computacionais são as mesmas em cada etapa — apenas os dados mudam de uma etapa para outra — e, o que é mais importante, se em um caso concreto um método converge, ele geralmente é estável (veja a Seção 19.1).

Iteração de Ponto Fixo para a Resolução de Equações

f

(

x

) = 0

O uso que agora estamos fazendo da expressão “ponto fixo” não tem absolutamente nada a ver com o sentido adotado na última seção.

De um modo qualquer, transformamos (1)algebricamente na forma

(2) x =g( x).

Então, escolhemos um x0 e calculamos x1 =g( x0), x2 =g( x1) e, de maneira geral, (3)

(3) xn1g( xn) (n 0, 1,•••),

Chamamos uma solução de (2) de um ponto fixoponto fixo deg, o que justifica o nome do método. Esta é também uma solução de (1), visto que, de x =g( x), podemos retornar à forma srcinal f ( x) = 0. A partir de (1), podemos obter diferentes formas de (2). O comportamento das seqüências iterativas correspondentes x0, x1,••• pode diferir,

em particular, com respeito à sua velocidade de convergência. De fato, algumas delas podem simplesmente não convergir. Ilustremos esses fatos com um exemplo simples.

EXEMPLO 1

EXEMPLO 1 Um Processo Iterativo (Iteração dUm Processo Iterativo (Iteração de Ponto Fixo)e Ponto Fixo)

Monte um processo de iteração para a equação f ( x) = x2 – 3 x + 1 = 0. Como conhecemos as soluções

x 1,5   1,25, portanto, 2,618 034 e 0,381 966, podemos observar o comportamento do erro à medida que a iteração prossegue.

Solução.

Solução. A equação pode ser escrita como (4a) xg1( x)13( x

21), portanto,

xn113( xn2 1),

Se escolhermos x0 = 1, obteremos a seqüência (Fig. 423a; calculada com 6S e depois arredondada)

x0 1,000, x1 0,667, x2 0,481, x3 0,411, x4 0,390,•••

que parece se aproximar da solução menor. Se escolhermos x0 = 2, a situação será semelhante. Se escolhermos x0 = 3, obteremos a seqüência

(Fig. 423a; parte superior)

x0 3,000, x1 3,333, x2 4,037, x3 5,766, x4 11,415,••• que diverge. 0 0 5 5 x 0 0 5 5 x g 1(x ) g 2(x ) (a) (b) Fig. 423.

(12)

Capítulo 19: Métodos Numéricos em Geral 1111

Nossa equação também pode ser escrita (dividindo-se por x) como

(4b) xg2( x) 3 1  x, portanto, xn1 3 1  xn , e, se escolhermos x0 = 1, obteremos a seqüência (Fig. 423b)

x0 1,000, x1 2,000, x2 2,500, x3 2,600, x4 2,615,•••

que parece se aproximar da solução maior. De modo semelhante, se escolhermos x0 = 3, obteremos a seqüência (Fig. 423b)

x0 3,000, x1 2,667, x2 2,625, x3 2,619, x4 2,618,••• .

Nossos gráficos mostram o seguinte: na parte inferior da Fig. 423a, a inclinação deg1( x) é menor que a inclinação de y = x, a qual vale 1;

portanto,g1( x)  1 e constatamos que há convergência. Na parte superior,g1( x) é mais inclinada (g1( x) 1) e ocorre divergência. Na Fig.

423b, a inclinação de g2( x) é menor próxima ao ponto de intersecção ( x = 2,618, ponto fixo deg2, solução de f ( x) = 0) e ambas as seqüências

parecem convergir. De tudo isso, concluímos que a convergência parece depender do fato de a curva deg( x) ser menos inclinada que a reta y = x na vizinhança de uma solução, e veremos agora que esta condiçãog( x) < 1 (= inclinação de y = x) é suficiente para a convergência. 

Dizemos que um processo de iteração definido por (3) é convergenteconvergente para um x0 se a seqüência correspondente

x0, x1,••• for convergente.

Uma condição suficiente para a convergência é dada no seguinte teorema, que possui diversas aplicações práticas.

TEOREMA 1

TEOREMA 1 Convergência da Iteração de Ponto FixoConvergência da Iteração de Ponto Fixo

Consideremos que x =s seja uma solução de x=g( x)e suponhamos que g tenha uma derivada contínua em algum intervalo J contendo s. Então, se g( x) K  1 em J, o processo de iteração definido por (3) converge para qualquer x0em J e o limite da seqüência { xn}é s.

PROVA

PROVA Pelo teorema do valor médio no cálculo diferencial, existe umt entre x es tal que

g( x)g(s)g(t ) ( xs) ( x em J ). Comog(s) =s e x1 =g( x0), x2 =g( x1),•••, obtemos disso e da condição parag( x) no teorema:

xns  g( xn1)g(s)  g(t ) xn1s K xn1s. Aplicando esta desigualdaden vezes, paran,n – 1,•••, 1 obtemos

 xns K  xn1s K 2 xn2s •••K n x 0s. ComoK  1, temosK n → 0; logo, xns → 0 quandon→. 

Mencionemos que uma funçãog que satisfaz à condição no Teorema 1 é chamada de contraçãocontração, visto queg( x)

g(vv) K  xvv, ondeK  1. Além disso,K fornece informações sobre a velocidade da convergência. Por exem-plo, seK = 0,5, então em apenas 7 iterações a precisão aumenta pelo menos em 2 dígitos, pois 0,57 < 0,01.

EXEMPLO 2

EXEMPLO 2 Um Processo Iterativo. IluUm Processo Iterativo. Ilustração do Teorema 1stração do Teorema 1

Encontre uma solução de f ( x) = x3 + x = 0 por iteração.

Solução.

Solução. Um esboço mostra que há uma solução próxima de x = 1. Podemos escrever a equação como ( x2 + 1) x = 1 ou

xg1( x) 1

1 x2 , de modo que xn1 

1 1 xn2 . Também g 1( x)  2 x

(1 x2)2 1

para qualquer x, pois 4 x2/(1 x2)4 4 x2/(1 4 x2•••) 1, de modo que, pelo Teorema 1, temos a convergência para qualquer x0.

Escolhendo x0 = 1, obtemos (Fig. 424)

x1 0,500, x2 0,800, x3 0,610, x4 0,729, x5 0,653, x6 0,701,••• .

A solução exata para 6S és = 0,682 328. A equação dada também pode ser escrita como

xg2( x) 1 x3. Então, g2( x)  3 x2

e isso é maior do que 1 próximo da solução, de modo que não podemos aplicar o Teorema 1 e assegurar a convergência. Experimente com

x0 = 1; x0 = 0,5; x0 = 2 e veja o que acontece.

Este exemplo mostra que a transformação de uma dada f ( x) = 0 para a forma x =g( x) comg satisfazendo ag( x) K  1 pode precisar

(13)

12

12 Parte E • Análise Numérica

Método de Newton para a Resolução de Equações

f

(

x

) = 0

O método de Newton,método de Newton, também conhecido como método de Newton–Raphsonmétodo de Newton–Raphson1,, é outro método iterativo emprega-do na resolução de equações f ( x) = 0, onde se supõe que f tenha uma derivada contínua f . Este método é bastante utilizado por causa de sua simplicidade e grande rapidez. Sua idéia subjacente é a obtenção de aproximações gráficas de f por meio de tangentes adequadas. Usando um valor aproximado x0 obtido do gráfico de f , fazemos

x1 ser o ponto de interseção entre o eixo x e a tangente à curva de f em x0 (veja a Fig. 425). Então, tan b ƒ( x0) ƒ( x0)

x0 x1 , logo, x1 x0 ƒ( x0)

ƒ( x 0) .

Na segunda iteração, calculamos x2 x1 ƒ( x1)/ƒ( x1); na terceira iteração, calculamos x3 a partir de x2 usando de novo a mesma fórmula, e assim por diante. Temos então o algoritmo mostrado na Tabela 19.1. A fórmula (5) neste algoritmo também pode ser obtida se resolvermos algebricamente a fórmula de Taylor

(5*) ƒ( xn1)  ƒ( xn) ( xn1 xn)ƒ( xn) 0. 0 0 1,0 0,5 1,0 0,5 x g 1(x ) x 1 x 2 Fig. 424.

Fig. 424. Iteração do Exemplo 2

1JOSEPH RAPHSON (1648–1715), matemático inglês que publicou um método semelhante ao de Newton. Sobre detalhes históricos, veja

a Ref. [GR2] no Apêndice 1. y x f (x 0) y= f (x ) x 2 x 1 x 0 β Fig. 425.

Fig. 425. Método de Newton

Tabela 19.1

Tabela 19.1 Método de Método de Newton para Newton para Resolver EquaçõesResolver Equaçõesf (( x ) = ) = 00

ALGORITMO NEWTON ( f , f , x0,e, N )

Este algoritmo calcula uma solução de f ( x) = 0 a partir de uma dada aproximação inicial x0 (valor inicial da iteração). Aqui, a função f ( x) é contínua e tem uma derivada f ( x) contínua.

ENTRADA: f , f , aproximação inicial x0, tolerânciae > 0, número máximo de iterações N . SAÍDA: Solução aproximada xn (n N ) ou mensagem de erro.

(14)

Capítulo 19: Métodos Numéricos em Geral 1313

1 Calcule f ( xn).

2 Se f ( xn) = 0 então SAÍDA “Erro”. Pare.

[Procedimento concluído sem sucesso]

3 Senão calcule (5) (5) xn1 xn ƒ( xn)

ƒ( x n) . 4 Se xn+1 – xn e xn então SAÍDA xn+1. Pare.

[Procedimento concluído com sucesso] Fim

5 SAÍDA “Erro”. Pare.

[Procedimento concluído sem sucessoapós N iterações] Fim NEWTON

Se acontecer que, para algumn, f ( xn) = 0 (veja a linha 2 do algoritmo), tente então usar um outro valor inicial x0. A linha 3 é o cerne do método de Newton.

A desigualdade na linha 4 é um critério de terminaçãocritério de terminação. Se a seqüência de xn convergir e o critério se verificar,

teremos alcançado a precisão desejada e paramos. Nesta linha, o fator xn é necessário para o caso da ocorrência

de pontos de zero de módulo muito pequeno (ou muito grande) devido à elevada densidade (ou escassez) de números de máquina para esses x.

CUIDADO!

CUIDADO!O critério em si não implica convergência. Exemplo. A série harmônica diverge, embora suas somas parciais xnnk1 1/k satisfaçam ao critério, porque lim ( xn1 xn) lim (1/(n 1)) 0.

A linha 5 fornece um outro critério de terminação e é necessária porque o método de Newton pode divergir ou, devido a uma escolha ruim de x0, pode não alcançar a precisão desejada com um número razoável de itera-ções. Em casos assim, podemos tentar um outro x0. Se f ( x) = 0 tiver mais de uma solução, escolhas diferentes de

x0 podem produzir soluções diferentes. Além disso, uma seqüência iterativa pode às vezes convergir para uma solução diferente da esperada.

EXEMPLO 3

EXEMPLO 3 Raiz Quadrada Raiz Quadrada

Elabore uma iteração de Newton para calcular a raiz quadrada x de um dado número positivoc e aplique-a ac = 2. Solução.

Solução. Temos que x  c, logo, ƒ( x) x2c 0, ƒ( x) 2 x e (5) assume a forma

xn1 xn x

n2c 2 xn 1 2

xn c  xn

. Parac = 2, escolhendo x0 = 1, obtemos

x1 1,500 000, x2 1,416 667, x3 1,414 216, x4 1,414 214,••• .

x4 é exato em 6D. 

EXEMPLO 4

EXEMPLO 4 Iteração para uma Iteração para uma Equação TranscendentalEquação Transcendental

Encontre a solução positiva de 2 sen x = x. Solução.

Solução. Fazendo ƒ( x) x 2 sen x, temos ƒ( x) 1 2 cos x e (5) fornece

xn1 xn x



n 2 sen xn 1 2 cos xn 2(sen xn  xn cos xn)



1 2 cos xn  N n Dn . Pelo gráfico de f , concluímos que a solução é próxima de x0 = 2. Calculamos:

n xn N n Dn xn1

0 2,00000 3,48318 1,83229 1,90100

1 1,90100 3,12470 1,64847 1,89552

2 1,89552 3,10500 1,63809 1,89550

3 1,89550 3,10493 1,63806 1,89549

(15)

14

14 Parte E • Análise Numérica

EXEMPLO 5

EXEMPLO 5 Método de Newton AplMétodo de Newton Aplicado a uma Equação Algébricaicado a uma Equação Algébrica

Aplique o método de Newton à equação f ( x) = x3+ x – 1 = 0.

Solução. Solução. De (5), temos xn1 xn xn3 xn 1



3 xn2 1 2 xn 3 1

3 xn2 1 , Começando de x0 = 1, obtemos x1 0,750 000, x2 0,686 047, x3 0,682 340, x4 0,682 328,•••

onde x4 tem o erro –1 10–6. Uma comparação com o Exemplo 2 mostra que a convergência que temos agora é muito mais rápida. Isso pode

motivar o conceito deordem de um processo iterativo, que discutiremos a seguir. 

Ordem de um Método Iterativo. Rapidez da Convergência

A qualidade de um método iterativo pode ser caracterizada pela rapidez da convergência, como se segue.

Consideremos que xn+1 =g( xn) defina um método de iteração e que xn seja uma aproximação da soluçãos de x =g( x). Então, xn =s –en, ondeen é o erro de xn. Suponha queg seja derivável várias vezes, de modo que a

fórmula de Taylor forneça (6)

xn1g( xn)g(s)g(s)( xns)12g(s)( xns)2•••

g(s)g(s)e

n12g(s)en2••• .

O expoente deen no primeiro termo apósg(s) que não desaparece é chamado de ordemordem do processo iterativo

definido porg. A ordem mede a velocidade da convergência.

Para ver isso, subtraiag(s) =s de ambos os lados de (6). Então, no lado direito, faça xn+1 –s = –en+1, ondeen+1 é o erro de xn+1, e, no lado direito, a expressão restante é aproximadamente igual ao seu primeiro termo não-nulo, visto queen é pequeno no caso de haver convergência. Portanto,

(7) (a) en1  g(s)en

(b) en1  21g(s)en2

no caso de primeira ordem, no caso de segunda ordem, etc. Assim, seen = 10

–k

em alguma iteração, então para a segunda ordem,en1

 c (10 k ) 2 c 10 2k , de modo que o número de dígitos significativos é aproximadamente duplicado em cada iteração.

Convergência do Método de Newton

No método de Newton,g( x) x ƒ( x)/ƒ( x). Por derivação,

(8) g( x) 1ƒ ( x)2 ƒ( x( x)



ƒ( x)2 ƒ( x)ƒ ( x)

ƒ( x)2 .

Como f (s) = 0, isto mostra que tambémg(s) = 0. Logo, o método de Newton é pelo menos de segunda ordem. Se derivarmos novamente e fizermos x =s, descobrimos que

(8*) g(s)ƒ

(s)

ƒ(

s) que não será zero em geral. Isto prova o

TEOREMA 2

TEOREMA 2 Convergência de Segunda Ordem do Método de NewtonConvergência de Segunda Ordem do Método de Newton

Se f(x) é três vezes derivável e f  e f não são nulas numa solução s de f ( x) = 0, então, para x 0

suficiente-mente próximo de s, o método de Newton é de segunda ordem.

Comentários.

(16)

Capítulo 19: Métodos Numéricos em Geral 1515

(9) en1  

ƒ(s)

(s)en 2.

Para que o método indicado no Teorema 2 apresente uma rápida convergência, é importante ques seja um zero simples de f ( x0) (assim, f (s) 0) e que x0 esteja próximo des, visto que, na fórmula de Taylor, tomamos apenas o termo linear [veja (5*)], supondo que o termo quadrático seja desprezivelmente pequeno. (Com um valor ruim para x0, este método pode até mesmo divergir!)

EXEMPLO 6

EXEMPLO 6 Estimativa Estimativaa Priori do Erro para o Número de Etapas da Iteração de Newton do Erro para o Número de Etapas da Iteração de Newton

Use x0 = 2 e x1 = 1,901 no Exemplo 4 para estimar quantas etapas de iteração são necessárias para se produzir uma solução com uma

pre-cisão de 5D. Esta é umaestimativa a prioriestimativa a priori ou umaestimativa préviaestimativa prévia, porque só podemos calculá-la depois de uma iteração e antes das demais iterações.

Solução.

Solução. Temos f ( x) = x – 2 sen x = 0. Derivando, obtemos ƒ(s)

(s)  ƒ( x1)

( x1) 



2 sen x1 2(1 2 cos x1)  0,57. Logo, (9) fornece en1  0,57en2  0,57(0,57e2n1)2 0,573e4n1  •••  0,57 Me 0M 1 5 10 6 onde M  2n 2n1••• 2 1 2

n1 1. Mostramos a seguir quee0 ≈ –0,11. Conseqüentemente, nossa condição passa a ser

0,57M0,11M1 5 10

6.

Logo, segundo essa estimativa grosseira,n = 2 é o menorn possível, o que está em boa concordância com o Exemplo 4.

O valore0 ≈ –0,11 é obtido dee1e0 (e1s) (e0s) x1 x0  0,10, dondee1e0 0,10  0,57e02 ou 0,57e02

e0 0,10  0, que dáe0  0,11. 

Dificuldades no Método de Newton.

Dificuldades no Método de Newton. As dificuldades podem surgir se f ( x) for muito pequeno próximo a uma soluçãos de f ( x) = 0, por exemplo, ses for um zero de f ( x) de segunda ordem (ou de ordem mais elevada) (de modo que o método de Newton converge apenas linearmente, como se mostra aplicando-se a regra de l’Hôpital (8)). Geometricamente, um pequeno valor de f ( x) significa que a tangente a f ( x) próximo as quase coincide com o eixo x (de modo que se possa precisar de uma precisão dupla para se obterem f ( x) e f ( x) com precisão suficiente). Então, para valores xs afastados des, ainda podemos ter pequenos valores de função

R(s) ƒ(s).

Neste caso, dizemos que a equação f ( x) = 0 é mal-condicionadamal-condicionada. R(s) é chamado de resíduo de f ( x) = 0 ems.

Assim, um resíduo pequeno garante um erro pequeno des somente se a equaçãonãonão for mal-condicionada.

EXEMPLO 7

EXEMPLO 7 Uma Equação Mal-condicionada Uma Equação Mal-condicionada

ƒ( x) x5 104 x 0 é mal-condicionada. x = 0 é uma solução. f (0) = 10–4 é pequeno. Ems = 0,1, o resíduo f (0,1) = 2

 10–5 é pequeno,

porém o erro –0,1 é maior por um fator de 5000 em módulo; conceba você mesmo um exemplo ainda mais drástico. 

Método da Secante para a Resolução de

f

(

x

) = 0

O método de Newton é muito poderoso, mas tem a desvantagem de que a derivada f  pode às vezes ser uma expressão muito mais difícil do que a própria função f , tornando o cálculo do seu valor computacionalmente exigente. Essa situação sugere a idéia de se substituir a derivada pelo quociente de diferença

ƒ( xn) 

ƒ( xn) ƒ( xn1)



xn xn1 . Então, ao invés de (5), temos a fórmula do popular método da secante

y x P n –1 x n –1 y= f (x ) Secante P n x n s x n +1 Fig. 426.

(17)

16

16 Parte E • Análise Numérica

(10)

(10) xn1 xn ƒ( xn)

xn xn1



ƒ( xn) ƒ( xn1)

.

Geometricamente, na Fig. 426, obtemos uma intersecção entre o eixo x em xn+1 e a secante a f ( x) passando pelos pontosPn–1 ePn. Precisamos de valores iniciais, x0 e x1. Dessa forma, evitamos o cálculo de derivadas. Pode-se mostrar que a convergência é superlinearsuperlinear (ou seja, mais rápida do que a linear,en1  const  en1,62; veja [E5]

no Apêndice 1]), sendo quase quadrática, como o método de Newton. O algoritmo é semelhante ao do método de Newton, como o aluno pode mostrar.

CUIDADO!

CUIDADO! Não Não é bom escrever (10) como

xn1

xn1ƒ( xn) xnƒ( xn1)



ƒ( xn) ƒ( xn1) ,

pois isso pode causar uma perda de dígitos significativa se xn e xn-1 forem aproximadamente iguais entre si. (Você consegue ver isso a partir da fórmula?)

EXEMPLO 8

EXEMPLO 8 Método da SecanteMétodo da Secante

Encontre a solução positiva de f ( x) = x – 2 sen x = 0 pelo método da secante, começando de x0 = 2, x1 = 1,9.

Solução. Solução. Aqui, (10) é xn1 xn ( xn 2 sen xn)( xn xn1)



xn xn1 2(sen xn1 sen xn)  xn N n Dn . Os valores numéricos são:

n xn1 xn N n Dn xn1 xn

1 2,000 000 1,900 000 0,000 7400,174 0050,004 253

2 1,900 000 1,895 747 0,000 002 0,006 986 0,000 252

3 1,895 747 1,895 494  00

x3 = 1,895 494 é exato em 6D. Veja o Exemplo 4. 

Resumo dos Métodos.

Resumo dos Métodos. Os métodos para calcular soluçõess de f ( x) = 0 com funções f ( x) contínuas (ou deriváveis) dadas começam com uma aproximação inicial x0 des e geram uma seqüência x1, x2,••• por iteraçãoiteração. Os métodosmétodos

de ponto fixo

de ponto fixo resolvem f ( x) = 0 escrita como x =g( x), de modo ques é um ponto fixo deg, ou seja,s =g(s). Para g( x) = x – f ( x)/ f ( x), este é o método de Newtonmétodo de Newton, o qual, para um bom valor de x0 e zeros simples da função, converge quadraticamente (e converge linearmente quando há múltiplos zeros). O método da secantemétodo da secante decorre do de Newton substituindo-se f ( x) por um quociente de diferenças. O método da bissecçãométodo da bissecção e o método de falsamétodo de falsa posição

posição, apresentados em Problemas Propostos 19.2, sempre convergem, embora freqüentemente devagar.

PROBLEMAS PROPOSTOS 19.2

PROBLEMAS PROPOSTOS 19.2

1–7

1–7 ITERAÇÃO ITERAÇÃO DE DE PONTO PONTO FIXOFIXO

Aplique a iteração de ponto fixo e responda às perguntas relacionadas quando indicado. Mostre os detalhes do que fizer.

1.

1. x = 1,4 sen x, x0 = 1,4 2.

2. Faça as iterações indicadas no final do Exemplo 2. Esboce uma figura semelhante à Fig. 424.

3.

3. Por que obtemos uma seqüência monótona no Exemplo 1, mas não no Exemplo 2?

4.

4. f = x4 x + 0,2 = 0, raiz próxima de 1, x 0 = 1 5.

5. f como no Problema 4, raiz próxima de 0, x0 = 0 6.

6. Encontre a menor solução positiva de sen x =e–0,5x, x 0 = 1. 7.

7. (Funções (Funções de Bede Bessel, ssel, batida do batida do tambor)tambor) Uma soma parcial da série de Maclaurin de J 0( x) (Seção 5.5) é ƒ( x)  1 14 x

2 1

64 x 4 1

2304 x

6. Conclua, a partir de um esboço, que, próximo de

x = 2, f ( x) = 0. Escreva f ( x) = 0 como x=g( x) (dividindo f ( x) por1 4 x e passando o termo em x resultante para o outro lado). Encontre o

zero. (Veja na Seção 12.9 a importância desses zeros.) 8.

8. PROJETO PROJETO DE DE ÁLGEBRA ÁLGEBRA COMPUTACIONAL. Iteração COMPUTACIONAL. Iteração dede Ponto Fixo. (a) Existência.

Ponto Fixo. (a) Existência. Prove que seg é contínua em um intervalo fechado I e seu intervalo de definição se situa em I , então a equação x =g( x) tem pelo menos uma solução em I . Ilustre o fato de que ela pode ter mais de uma solução em I .

b) b) Convergência.Convergência. Considere que ƒ( x) x3 2 x2 3 x 4 0. Escreva isto como x =g( x), escolhendog como (1) ( x3 ƒ)1/3, (2) ( x21 2ƒ) 1/2, (3) x1 3ƒ, (4) x(1 1 4ƒ), (5) ( x 3 ƒ)/ x2, (6) (2 x2 ƒ)/2 x, (7) x ƒ/ ƒ e, em cada caso, usando x

0 = 1,5. Investigue a convergência e a divergência, bem como o número de iterações necessárias para se alcançarem valores exatos em 6S para raízes.

(18)

Capítulo 19: Métodos Numéricos em Geral 1717

9–18

9–18 MÉTODO MÉTODO DE DE NEWTONNEWTON

Aplique o método de Newton (com uma precisão de 6D). Primeiro faça um esboço da(s) função(ões) para ver o que está acontecendo. 9. 9. sen x = cot x, x0 = 1 10. 10. x = cos x, x0 = 1 11. 11. x3 – 5 x + 3 = 0, x 0 = 2 12. 12. x + ln x = 2, x0 = 2 13.

13. (Viga (Viga vibrando)vibrando) Encontre a solução de cos x cosh x = 1 próximo de

x =3

2p . (Isto determina uma freqüência de uma viga em vibração; veja em Problemas Propostos 12.3.)

14.

14. (Aquecimento, (Aquecimento, resfriameresfriamento)nto) Em que instante x (com uma exati-dão de 4S apenas) os processos governados por ƒ1( x) 100(1 e0,2x) e ƒ2( x) 40e0,01x atingirão a mesma temperatura? Encontre também o valor desta.

15.

15. (Funções associadas (Funções associadas de Legendrde Legendre)e) Descubra o menor zero positi-vo deP42 (1 x2)P4

15 2(7 x

4 8 x2 1) (Seção 5.3) (a) pelo método de Newton e (b) exatamente resolvendo uma equação quadrática.

16. (Polinômios de Legendre)

16. (Polinômios de Legendre) Descubra a maior raiz do polinômio de LegendreP5( x) dado porP5( x) 18(63 x

5 70 x3 15 x) (Seção 5.3) (que será necessário na integração de Gauss a ser vista na Seção 19.5) (a) pelo método de Newton e (b) a partir de uma equação quadrática.

17.

17.Elabore uma iteração de Newton para raízes cúbicas e calcule 37

(6D, x0 = 2). 18.

18.Elabore uma iteração de Newton para k c

 (c > 0). Utilize-a para calcular  2 ,  32,  42,  52 (6D,

x0 = 1). 19. PROJETO DE EQUIPE. Método da Bissecção.

19. PROJETO DE EQUIPE. Método da Bissecção. Este método simples, porém de convergência lenta, para encontrar uma solução de f ( x) = 0 com f contínua baseia-se noteorema do valor médioteorema do valor médio, que afirma que, se uma função contínua f possui sinais opostos em algum x =a e x =b (>a), ou seja, ou f (a) < 0, f (b) > 0, ou f (a) > 0, f (b) < 0, então f deve valer 0 em algum ponto do intervalo [a,

b]. A solução é encontrada bisseccionando-se repetidas vezes o intervalo e, em cada iteração, ficando-se com a metade do intervalo que também satisfaça à condição do sinal.

(a) (a) Algoritmo.Algoritmo. Escreva um algoritmo para este método. (b) (b) ComparaçãoComparação . Resolva x = cos xpelo método de Newton e

pelo da bissecção. Compare.

(c)(c) Resolvae–x = ln x e tambémex + x4 + x = 2, usando o método da bissecção.

20. PROJETO DE EQUIPE. Método da Falsa Posição ( 20. PROJETO DE EQUIPE. Método da Falsa Posição ( Regula Regula

falsi

falsi ).). A Fig. 427 mostra esta idéia. Supomos que f seja contínua. Calculamos a interseçãoc0 entre o eixo x e a reta passando pelos pontos (a0, f (a0)), (b0, f (b0)). Se f (c0) = 0, o problema está resolvido. Se f (a0) f (c0) < 0 (como na Fig. 427), fazemosa1=a0,b1=c0, e repetimos para obterc1 etc. Se f (a0) f (c0) > 0, então f (c0) f (b0) < 0 e fazemosa1=c0,b1=b0 etc.

(a) (a) Algoritmo.Algoritmo. Mostre que

c0

a0ƒ(b0)b0ƒ(a0)



ƒ(b0) ƒ(a0) e escreva um algoritmo para este método. (b) (b) ComparaçãoComparação . Resolva x

3

= 5 x + 6 pelo método de Newton, pelo método da secante e pelo método da falsa posição. Com-pare-os.

(c)(c) Resolva x4 = 2, cos x=  x e x+ ln x= 2 pelo método da falsa posição. y x y= f (x ) b0 a0 c0 c1 Fig. 427.

Fig. 427. Método da falsa posição

21–24

21–24 MÉTODO MÉTODO DA DA SECANTESECANTE

Resolva, utilizando x0 e x1, conforme indicado. 21. 21.Problema 11, x0 = 0,5; x1 = 2,0 22. 22.e–x – tan x = 0; x 0 = 1; x1 = 0,7 23. 23. Problema 9, x0 = 1; x1 = 0,5 24. 24.Problema 10, x0 = 0,5; x1 = 1 25.

25. PROJETO ESCRIPROJETO ESCRITO. Solução de TO. Solução de Equações.Equações. Compare os méto-dos vistos nesta seção e nos problemas propostos, discutindo suas vantagens e desvantagens e utilizando exemplos que você mesmo criar.

19.3

Interpolação

Interpolar

Interpolar significa encontrar (por aproximação) valores de uma função f ( x) para um x situado entrediferentesdiferentes valores de x: x0, x1,•••, xn, nos quais os valores de f ( x) são dados. Esses valores podem vir de uma função

“matemática”, como um logaritmo ou uma função de Bessel, ou talvez, e com mais freqüência, podem ser medidos ou serem valores automaticamente registrados de uma função “empírica”, como a resistência do ar à passagem de um automóvel ou de um avião a diferentes velocidades, ou o rendimento de um processo químico em temperaturas diferentes, ou ainda o tamanho da população dos Estados Unidos conforme aparece em censos realizados em intervalos de 10 anos. Escrevemos esses valores dados de uma função f na forma

ƒ0 ƒ( x0), ƒ1 ƒ( x1), ••• , ƒn ƒ( xn)

ou como pares ordenados

(19)

18

18 Parte E • Análise Numérica

Uma idéia-padrão da interpolação é agora encontrar um polinômio pn( x) de graun (ou menor) que assuma os

valores dados; assim, (1)

(1) pn( x0) ƒ0, pn( x1) ƒ1, ••• , pn( xn) ƒn.

Chamamos este pn de polinômio de interpolaçãopolinômio de interpolação e x0,..., xn, de nósnós. E se f ( x) for uma função matemática, dizemos

que pn é uma aproximaçãoaproximação de f (ou uma aproximação polinomialaproximação polinomial, visto existirem outros tipos de aproximação,

como veremos mais tarde). Usamos pn para obter valores (aproximados) de f para os xs situados entre x0 e xn

(“interpolação”“interpolação”) ou, às vezes, situados fora desse intervalo x0 x xn (“extrapolação”“extrapolação”).

Justificativa.

Justificativa. É conveniente trabalhar com polinômios, pois eles são prontamente deriváveis e integráveis, e o resultado dessas operações fornece, de novo, polinômios. Além disso, eles constituem aproximações de funções contínuas com qualquer precisão que se deseje. Ou seja: para qualquer f ( x) contínua em um intervalo J:a x

b e um limite de erro b > 0), existe um polinômio pn ( x) (de graun suficientemente alto), tal que

ƒ( x) pn( x)  b para todo x em J .

Este é o famosoteorema de aproximação de Weierstrassteorema de aproximação de Weierstrass (para uma prova, veja a Ref. [RG7], no Apêndice 1). Existência e Unicidade.

Existência e Unicidade. Existe pn que satisfaz a (1) para dados fornecidos e damos a seguir fórmulas para ele. pn

é único. De fato, se outro polinômioqn também satisfizesse aqn( x0) ƒ0,••• ,qn( xn) ƒn, então pn( x)qn( x)

 0 em x0,••• , xn, porém um polinômio pn –qn de graun (ou menos) comn + 1 raízes deve ser identicamente

nulo, conforme aprendemos na álgebra; portanto, pn( x) =qn( x) para todo x, o que significa unicidade. 

Como Encontrar

Como Encontrar p pnn?? Esta é a questão prática importante. Respondemos a ela explicando diversos

métodos-padrão. Para dados fornecidos, esses métodos dão o mesmo polinômio, devido à unicidade que acabamos de provar (a qual é, assim, de interesse prático!), embora tal resultado possa ser expresso de diversas formas adequadas a diferentes propósitos.

Interpolação de Lagrange

Dados ( x0, ƒ0), ( x1, ƒ1),••• , ( xn, ƒn) com os x j arbitrariamente espaçados, Lagrange teve a idéia de multiplicar

cada f j por um polinômio valendo 1 em x j e 0 nos outrosn nós, fazendo depois a soma dessesn + 1 polinômios.

Obviamente, isso fornece o único polinômio de interpolação de graun ou menos. Começando com o caso mais simples, vejamos como funciona:

A interpolação linear interpolação linear é uma interpolação que usa a reta passando pelos pontos ( x0, f 0), ( x1, f 1); veja a Fig. 428. Portanto, o polinômio linear de Lagrange p1 é uma soma p1 = L0 f 0 + L1 f 1, onde L0 é o polinômio linear valendo 1 em x0 e 0 em x1; similarmente, L1 vale 0 em x0 e 1 em x1. Obviamente,

L0( x) x x1

x0 x1 , L1( x) x x0

x1 x0 . Isso fornece o polinômio linear de Lagrange

(2) (2) p1( x) L0( x)ƒ0 L1( x)ƒ1 x x1

x0 x1  ƒ0 x x0

x1 x0  ƒ1. y x y= f (x ) Erro p1(x ) x 0 x x 1 f 1 f 0 Fig. 428.

Fig. 428. Interpolação linear

EXEMPLO 1

EXEMPLO 1 Interpolação Linear Interpolação Linear de Lagrangede Lagrange

Calcule um valor em 4D de ln 9,2 a partir de ln 9,0 = 2,1972; ln 9,5 = 2,2513 pela interpolação linear de Lagrange e determine o erro usando ln 9,2 = 2,2192 (4D).

Solução.

(20)

Capítulo 19: Métodos Numéricos em Geral 1919 L0( x) x

 9,5 0,5 2,0( x 9,5), L0(9,2)2,0(0,3) 0,6 L1( x) x

 9,0 0,5  2,0( x 9,0), L1(9,2) 2 0,2 0,4

(veja a Fig. 429) e obtemos a resposta

ln 9,2  p1(9,2) L0(9,2)ƒ0 L1(9,2)ƒ1 0,6 2,1972 0,4 2,2513 2,2188.

O erro éeaa 2,2192 2,2188 0,0004. Logo, a interpolação linear não é aqui suficiente para obtermos uma precisão de 4D; ela

teria sido suficiente para uma precisão de 3D. 

9 9,2 9,5 10 1 1 x 0 1 y L0 L1 Fig. 429. Fig. 429. L0 eL1 do Exemplo 1

A interpolação quadráticainterpolação quadrática é a calculada para os pontos dados: ( x0, f 0), ( x1, f 1), ( x2, f 2), usando-se um polinômio de segundo grau p2( x), o qual, pela idéia de Lagrange, corresponde a

(3a)

(3a) p2( x) L0( x)ƒ0 L1( x)ƒ1 L2( x)ƒ2

com L0( x0) 1, L1( x1) 1, L2( x2) 1, e L0( x1) L0( x2) 0 etc. Estabelecemos que

L0( x) l0( x)

l 0( x0)  ( x  x1)( x x2)



( x0 x1)( x0 x2) (3b) (3b) L1( x) l1( x)

l 1( x1)  ( x  x0)( x x2)



( x1 x0)( x1 x2) L2( x) l2( x)

l 2( x2)  ( x  x0)( x x1)



( x2 x0)( x2 x1) .

Como obtivemos este resultado? Ora, o numerador faz Lk( x j) = 0 se jk . E o denominador faz Lk( xk) = 1, porque

é igual ao numerador em x = xk.

EXEMPLO 2

EXEMPLO 2 Interpolação Quadrática Interpolação Quadrática de Lagrangede Lagrange

Calcule ln 9,2 por (3), usando os dados fornecidos no Exemplo 1 e um terceiro valor adicional ln 11,0 = 2,3979. Solução. Solução. Em (3), L0( x) ( x 9,5)( x 11,0)



(9,0 9,5)(9,0 11,0) x2 20,5 x 104,5, L0(9,2) 0,5400, L1( x) ( x 9,0)( x 11,0)



(9,5 9,0)(9,5 11,0) 1 0,75 ( x2 20 x 99), L1(9,2) 0,4800, L2( x) ( x 9,0)( x 9,5)



(11,0 9,0)(11,0 9,5) 13 ( x 2 18,5 x 85,5), L2(9,2)0,0200,

(veja a Fig. 430), de modo que (3a) fornece, com um valor exato em 4D,

ln 9,2  p2(9,2) 0,5400 2,1972 0,4800 2,2513 0,0200 2,3979 2,2192.  0 1 9 9,5 10 11 x y L0 L 2 L1 Fig. 430. Fig. 430. L0,L1,L2 do Exemplo 2

Referências

Documentos relacionados

Percebo que um objetivo esteve sempre presente desde o princípio, sendo notadamente insistente em muitos momentos do desenvolvimento do trabalho, destacável não só porque faz parte

O modelo matemático que representa o comportamento físico do VSA é composto por equações diferenciais ordinárias cujos principais coeficientes representam parâmetros

Para estudar as obras de José de Albuquerque e saber como e quais foram as influências na construção de seu discurso sobre a necessidade da educação sexual, vimos necessário

Com base na investigação prévia do TC em homens com sobrepeso na meia- idade (LIBARDI et al., 2011) e outras que utilizaram o treinamento aeróbio ou de força de moderada

elas expressam por excelência o espaço do sujeito na sua relação com alteridade, lutando para interpretar, entender e construir o mundo (JOVCHELOVITCH, 2002, p.82). Nesse processo

Los alumnos a los que convencionalmente se dirige la educación especial son los niños y jóvenes con retraso mental, dificultades de aprendizaje, trastornos emocionales y

As ramificações foram mais freqüentes na região apical (17%), menos freqüente no corpo da raiz (8,8%) e ainda menor na base radicular (1,6%). Canais laterais foram encontrados

All of the studied protocols are then introduced to a new omission fault model where temporary node failures occur. This model helps extend simulation scenarios to represent not