Vous êtes sur la page 1sur 42

UFERSA-Universidade Federal Rural do Semi-rido

Apostila de Clculo
Numrico
2007
Walter Martins Rodrigues
Apostila de Complementos de Clculo Numrico 1
1. Introduo: O que o clculo numrico, sua
importncia e os objetivos do curso
1.1 O que o Clculo Numrico?
O Clculo Numrico corresponde a um conjunto de ferramentas ou mtodos usados
para se obter a soluo de problemas matemticos de forma aproximada. Esses mtodos se
aplicam principalmente a problemas que no apresentam uma soluo exata, portanto
precisam ser resolvidos numericamente.
O que isso quer dizer? Vamos tomar um exemplo para entender melhor os objetivos
do Clculo Numrico.
Seja um circuito eltrico composto de uma fonte de tenso (uma pilha, por exemplo)
e um resistor, como ilustrado na Figura 1.1. Digamos que desejamos obter a corrente que
circula no circuito, dado o valor da tenso V e da resistncia R. O primeiro passo formular
um modelo matemtico para o nosso sistema fsico (o circuito), e encontrar a soluo do
problema representado por esse modelo.
R
V
Figura 1.1: Circuito eltrico composto de uma fonte de tenso e um resistor.
No caso do circuito da Figura 1.1, o modelo matemtico tambm bastante simples.
Utilizando-se a Lei de Kirchoff (no se preocupe com essa lei caso voc no a conhea),
teremos a seguinte equao para o circuito:
V R i 0
(1.1)
Esse o nosso modelo matemtico para o circuito (sistema fsico). O modelo
apresenta uma equao bastante simples que tem uma soluo exata. Portanto, nosso
problema (encontrar a corrente eltrica do circuito) pode ser resolvido de maneira exata,
cuja soluo dada por:
i
V
R
(1.2)
Por exemplo, se V=10 V e R=100 , teremos que i=0,1
Como esse problema tem uma soluo exata, no preciso utilizar os mtodos do
clculo numrico para resolve-lo. Porm, digamos que um outro componente eletrnico seja
Apostila de Complementos de Clculo Numrico 2
includo no circuito: um diodo semicondutor. Esse dispositivo tem uma curva caracterstica,
isto , a tenso nesse componente em funo da corrente, que dada por:
( ) v i
kT
q
i
I
s
+

_
,
ln 1
(1.3)
onde k e I
s
so constantes, q a carga do eltron e T a temperatura do dispositivo. Essa
equao corresponde ao modelo matemtico do diodo (no se preocupe em entender esta
equao, pois isto s um exemplo).
Portanto, ao se incluir o diodo no circuito da Figura 1.1, tem-se a seguinte equao
descrevendo o comportamento da corrente eltrica no circuito:
V R i
kT
q
i
I
s
+

_
,
ln 1 0
(1.4)
A incluso desse novo componente no circuito tornou nosso problema mais
complicado e de difcil soluo analtica. O que isso quer dizer? Tornou-se difcil se obter
uma expresso para i, principalmente quando comparado ao caso anterior, quando tnhamos
simplesmente i=V/R.
Como resolver esse problema ento? Como obter o valor de i? A soluo est na
utilizao de mtodos numricos que sero aprendidos neste curso.
1. 2 A importncia do curso de Clculo Numrico
Ao resolver um problema matemtico numericamente, o mais comum o profissional
utilizar um pacote computacional. Porm, ele ter que tomar uma srie de decises antes de
resolver o problema. E para tomar essas decises, preciso ter conhecimento de mtodos
numricos. O profissional ter que decidir:
Pela utilizao ou no de um mtodo numrico (existem mtodos numricos
para se resolver este problema?);
Escolher o mtodo a ser utilizado, procurando aquele que mais adequado
para o seu problema. Que vantagens cada mtodo oferece e que limitaes eles
apresentam;
Saber avaliar a qualidade da soluo obtida. Para isso, importante ele saber
exatamente o que est sendo feito pelo computador ou calculadora, isto , como
determinado mtodo aplicado.
1.3 Objetivos do Curso:
Os principais objetivos do curso so:
Apresentar diversos mtodos numricos para a resoluo de diferentes problemas
matemticos. Pretende-se deixar bem claro a importncia desses mtodos, mostrando:
a essncia de um mtodo numrico;
a diferena em relao a solues analticas;
Apostila de Complementos de Clculo Numrico 3
as situaes em que eles devem ser aplicados;
as vantagens de se utilizar um mtodo numrico;
e as limitaes na sua aplicao e confiabilidade na soluo obtida.
Melhorar a familiarizao e intimidade do aluno com a matemtica, mostrando seu
lado prtico e sua utilidade no dia-a-dia de um engenheiro. Rever conceitos j vistos,
exercit-los e utiliz-los de maneira prtica;
Apresentar ao aluno maneiras prticas de se desenvolver e utilizar mtodos
numricos. Isso significa mostrar como usar esses mtodos numricos na calculadora e
em um computador;
Treinar o aluno a aprender outros mtodos numricos por conta prpria. No seu dia-
a-dia profissional, ele pode se deparar com um problema cuja soluo depende de um
mtodo numrico que no foi visto no curso. Portanto, ele dever ser capaz de encontrar
a literatura pertinente, estudar o mtodo e aprender a sua utilizao de maneira
conceitual e prtica (usando um aplicativo computacional) por conta prpria.
Apostila de Complementos de Clculo Numrico 4
2. Representao Numrica
2.1 Introduo
A fim se realizarmos de maneira prtica qualquer operao com nmeros, ns
precisamos representa-los em uma determinada base numrica. O que isso significa? Vamos
tomar como exemplo o nmero 2 . A fim de calcularmos, por exemplo, o valor de 2 - 1,
ns precisamos escrever o nmero 2 de alguma outra forma, caso contrrio no possvel
realizar essa operao. Podemos escreve-lo na base decimal, por exemplo, que a base
mais usada na histria da humanidade (graas a nossa anatomia). O valor de 2 na base
decimal pode ser escrito como 1,41 ou 1,4142 ou ainda 1,41421356237. Qual a diferena
entre essas vrias formas de representar 2 ? A diferena a quantidade de algarismos
significativos usados em cada representao. Agora podemos realizar a operao proposta:
2 -1=0.41 ou 0.4142 ou ainda 0.41421356237, conforme o nmero de algarismos
significativos adotados na nossa representao.
Em uma mquina digital, como uma calculadora ou um computador, os
nmeros no so representados na base decimal. Eles so representados na base binria, ou
seja, usam o nmero 2 como base ao invs do nmero 10. Como na base decimal existem
10 algarismos diferentes (0, 1, 2 ,3, 4, 5, 6, 7, 8, 9), na base binria existem somente 2
nmeros: 0 e 1. Portanto, a base binria usada porque essas mquinas utilizam-se de sinais
eltricos, sendo o 0 correspondente a ausncia de sinal e o nmero 1 a presena do sinal
eltrico.
2.2 Ponto fixo e Ponto Flutuante
A princpio, toda vez que escrevemos um nmero, deveramos mencionar a base
numrica a qual estamos nos referindo. Obviamente, isso no se faz necessrio na prtica,
pois estamos sempre representando os nmeros na base decimal, portanto sabemos
exatamente o seu significado. Por exemplo, quando escrevemos o nmero 1532, o que
realmente queremos dizer? Estamos dizendo que esse nmero representa uma quantidade
equivalente a 1 1000 + 5 100 + 3 10 + 2, ou, escrevendo a base de outra forma, 1 10
3
+
5 10
2
+ 3 10
1
+ 2 10
0
. Essa a chamada representao posicional de nmeros.
Na base binria, o mecanismo o mesmo, porm, ao invs de potncias de 10,
utilizamos potncias de 2. Portanto, um nmero binrio como 1011 (lembre-se que na base
binria s existem os algarismos 0 e 1) significa 1 2
3
+ 0 2
2
+ 1 2
1
+ 1 2
0
que na base
10 seria 8+2+1=11.
Apostila de Complementos de Clculo Numrico 5
Essa idia que est por trs da representao dos nmeros em bases numricas
utilizada para representar nmeros no computador. A fim de tornar a manipulao de
nmeros mais eficiente, os computadores fazem a distino entre nmeros inteiros e
nmeros reais. Um nmero inteiro apresenta a chamada representao de ponto fixo, onde a
posio do ponto decimal est fixa e todos os dgitos so usados para representar o nmero em si, com exceo do
primeiro dgito usado para representar o sinal desse nmero. A figura 2.1 ilustra essa representao.
Sinal Dgitos
Figura 2.1 - Representao de nmeros inteiros.
Para um nmero real qualquer (inteiro ou no inteiro) utilizada a representao de ponto flutuante, que dada pela
expresso:
t (0.d1d2d3...dt) b
e
onde:
0.d1d2d3...dt uma frao na base b, tambm chamada de mantissa, com 0 di b-1, para todo i = 1,2,3,...,t, sendo t o nmero
mximo de dgitos da mantissa que determinado pelo comprimento de palavra do computador; e um expoente que varia em
um intervalo dado pelos limites da mquina utilizada.
Esse tipo de representao chamada de ponto flutuante pois o ponto da frao flutua conforme o nmero a ser
representado e sua posio expressa pelo expoente e. A figura 2.1 ilustra essa representao.
Sinal posio do ponto = expoente e dgitos = mantissa
Figura 2.2 - Representao de nmeros reais.
Alguns exemplos da representao de ponto flutuante pode ser visto na tabela a seguir:
Nmero na base decimal Representao em ponto flutuante mantissa base Expoente
1532 0.1532 10
4
0.1532 10 4
15.32 0.1532 10
2
0.1532 10 2
0.00255 0.255 10
-2
0.255 10 -2
10 0.10 10
2
0.10 10 1
10 0.1010 2
4
0.1010 2 4
Apostila de Complementos de Clculo Numrico 6
2.3 Aplicao Linguagem de Programao C
Na linguagem C possvel especificar a representao que deve ser usada para os nmeros a serem armazenados em
uma dada varivel. Para nmeros inteiros (representao de ponto fixo) existem duas palavras chaves para declarar uma varivel:
int e long. A diferena entre essas duas representaes o nmero de dgitos a ser usado. No caso do int, utiliza-se 15 dgitos
binrios e mais um dgito para o sinal, ou seja, 16 bits que igual a 2 bytes. Portanto, uma varivel declarada com int pode
armazenar nmeros de 32768 (=-2
15
) a +32767 (=2
15
-1).
J a palavra chave long corresponde a representao de ponto fixo com 32 bits (31 dgitos binrios para o nmero mais
um dgito para o sinal), ou seja, 4 bytes. Neste caso, uma varivel declarada como long pode armazenar nmeros de
2.147.483.648 (= -2
31
) a 2.147.483.647 (=2
31
-1).
No caso da representao de ponto flutuante, tambm existem duas palavras: float e double. A palavra float corresponde
a representao com base binria (b=2), nmero mximo de dgitos igual a 24 (t=24) e expoente entre 126 e 127. Portanto, uma
varivel declarada como float pode armazenar nmeros reais entre ~10
-38
e ~10
38
. J a palavra chave double apresenta um nmero
mximo de dgitos igual a 53 (t=53) e expoente entre 1022 e 1023, ou seja, varveis declaradas como double podem armazenar
nmeros entre ~10
-307
a ~10
307
.
Apostila de Complementos de Clculo Numrico 7
3. Erros Numricos
3.1 Introduo
Vamos supor o seguinte problema: como calcular o valor de
2
? Provavelmente, a primeira resposta que vem a mente
de qualquer pessoa que nasceu no sculo XX ser: utilizando uma calculadora ou um computador. Indiscutivelmente, essa a
resposta mais sensata e prtica. Porm, um profissional que utilizar o resultado fornecido pela calculadora para projetar,
construir ou manter pontes, edifcios, mquinas, sistemas, dispositivos eletrnicos, etc., no pode aceitar o valor obtido antes de
fazer alguns questionamentos (pelo menos uma vez na sua vida profissional).
Quando calculamos, por exemplo, o valor de
2
em uma calculadora ou em um computador, o que realmente estamos
fazendo? Em outras palavras, o que a calculadora fez para obter o resultado? Para um engenheiro, ainda mais importante a
pergunta: qual a confiabilidade do resultado que obtemos?
Essa pergunta faz sentido pois
2
um nmero irracional, isto , no existe uma forma de representa-lo com um
nmero finito de algarismos. Portanto, o nmero apresentado pela calculadora uma aproximao do valor real de
2
, j que
ela no pode mostrar infinitos algarismos. E quo prximo do valor real est o resultado mostrado?
Podemos criar algumas definies a fim de facilitar as discusses e trocas de informao sobre esse problema. Vamos
definir a diferena entre o valor real da grandeza que queremos calcular e o valor aproximado que efetivamente calculamos
como sendo o erro, ou seja:
Erro = valor real valor aproximado (3.1)
Quanto menor for esse erro, mais preciso ser o resultado da operao. Essa definio corresponde ao erro absoluto de
um clculo.
Porm, se estivermos trabalhando com nmeros muito grandes, o erro pode ser grande em termos absolutos, mas o
resultado ainda ser preciso. E o caso inverso tambm pode ocorrer: um erro absoluto pequeno, mas um resultado impreciso. Por
exemplo, digamos que o resultado de uma operao nos fornea o valor 2.123.542,7 enquanto o valor real que deveramos obter
2.123.544,5. O erro absoluto neste caso 1,8. Comparada com o valor real, essa diferena (o erro) bem pequena, portanto,
podemos considerar o resultado preciso. Em um outro caso, digamos que o resultado da operao seja 0,234 e o resultado
esperado era 0,128. Desta vez o erro ser igual a 0,106 , porm o resultado bastante impreciso.
A fim de evitar esse tipo de ambigidade, podemos criar uma nova definio. Podemos definir o erro relativo, que
corresponde ao quociente entre o erro absoluto e o valor real da grandeza a ser calculada, ou seja:
real valor
aproximado valor real valor
relativo erro
_
_ _

(3.2)
O erro relativo uma forma mais interessante de se avaliar a preciso de um clculo efetuado. No exemplo acima,
teremos um erro relativo de 0,0000008 ou 0,00008% no primeiro caso e um erro relativo igual a 0,83 ou 83% no segundo caso.
Apostila de Complementos de Clculo Numrico 8
3.2 Tipos de Erros
O erro cometido ao se calcular o valor de
2
, por exemplo, apenas um tipo de erro que pode surgir ao se resolver
um problema real. Outros tipos de erros tambm podem aparecer devido a outros tipos de problemas ou limitaes.
A soluo matemtica de um determinado problema envolve diversas etapas, como discutido na introduo desta
apostila. A soluo do problema se inicia com a criao de um modelo matemtico do sistema em questo. Esse modelo sempre
apresentar aproximaes e limitaes. Alm disso, na grande maioria das vezes, dados experimentais sero utilizados para se
obter a soluo. Como toda medida experimental apresenta uma incerteza, a soluo do problema ser influenciada pelas
mesmas. Portanto, logo de incio, existem diversos fatores que introduzem incertezas na soluo numrica do problema. Esse
tipo de erro chamado de erro inicial.
O problema discutido na introduo deste captulo para o clculo de
2
, que se refere a inevitvel limitao na
representao de nmeros irracionais (por exemplo), introduz erros no resultado. Esse tipo de erro chamado de erro de
arredondamento.
Vamos considerar um outro tipo de problema prtico que pode surgir ao realizarmos determinadas operaes. Digamos
que precisamos calcular o valor de e
x
. Mais uma vez, iremos utilizar uma mquina digital (calculadora ou computador). Como
esse equipamento ir realizar essa operao? Sabemos que a exponencial uma funo que pode ser representada por uma srie
infinita dada por:
+ + + + + +
! ! 3 ! 2
1
3 2
n
x x x
x e
n
x
(3.3)
e na prtica impossvel calcular seu valor exato. Portanto, mais uma vez, teremos que fazer uma aproximao, que levar a um
erro no resultado final de e
x
. Neste caso, faremos um truncamento dessa srie, e o erro gerado no valor de e
x
chamado de erro
de truncamento.
3.3 Propagao e Condicionamento de Erros Numricos
Vamos supor que queremos calcular o valor de
2
- e
3
. Como vimos anteriormente, ao calcularmos o valor de
2
,
teremos que realizar um arredondamento, que leva ao um resultado aproximado de
2
, ou seja, existe um erro de
arredondamento associado ao resultado. Para calcularmos o valor de e
3
teremos que fazer um truncamento, que tambm ir gerar
um erro no resultado obtido. Portanto, o resultado da operao de subtrao entre
2
e e
3
apresentar um erro que
proveniente dos erros nos valores de
2
e e
3
separadamente. Em outras palavras, os erros nos valores de
2
e e
3
se
propagam para o resultado de
2
- e
3
. Podemos concluir ento que, ao se resolver um problema numericamente, a cada etapa e
a cada operao realizada, devem surgir diferentes tipos de erros gerados das mais variadas maneiras, e estes erros se propagam
e determinam o erro no resultado final obtido.
Apostila de Complementos de Clculo Numrico 9
A propagao de erros muito importante pois, alm de determinar o erro final de uma operao numrica, ela tambm
determina a sensibilidade de um determinado problema ou mtodo numrico. Se uma pequena variao nos dados de entrada de
um problema levar a uma grande diferena no resultado final, considera-se que essa operao mal-condicionada, ou seja,
existe uma grande propagao de erros nessa operao. Por outro lado, se uma pequena variao nos dados de entrada leva a
apenas uma pequena diferena no resultado final, ento essa operao bem-condicionada.

3.4 Erros na Aritmtica de Ponto Flutuante
Ns vimos nas sees anteriores que ao manipularmos os nmeros de maneira prtica, estaremos sempre trabalhando
com erros, devido a diversos fatores. Vamos agora examinar os erros mais comuns que aparecem quando um computador
manipula os nmeros.
O primeiro tipo de erro que est presente na forma como computadores trabalham com nmeros corresponde aos erros
de arredondamento e truncamento. Como citado anteriormente, esses erros esto presentes pois os computadores precisam
representar os nmeros com uma quantidade finita de algarismos.
Vamos supor, para simplificao, um computador com uma representao de ponto flutuante na base decimal (b=10) e
uma mantissa de 4 algarismos (t=4). A fim de representarmos em ponto flutuante nesse computador, por exemplo, o nmero
734,68, teramos que trunca-lo para 0,7346 10
3
ou arredonda-lo para 0,7347 10
3
. Portanto, no truncamento, estaramos
cometendo um erro de 0,8 10
-1
e no arredondamento, um erro de 0,2 10
-1
. Podemos generalizar esse exemplo e dizer que, em
uma representao de ponto flutuante na base b e mantissa de t algarismos, os erros de truncamento sero dados por:
t e
b erro

<
(3.4)
onde o nmero em questo foi representado na forma x=fx b
e
. E os erros de arredondamento sero dados por:
t e
b erro

<
2
1
(3.5)
Portanto, para uma representao numrica com t=24 ou t=53 (como no caso da maioria dos computadores) esse erro
muito pequeno.
Apesar de pequeno, importante lembrar que ele se propagar nas operaes aritmticas realizadas pelo computador.
Vamos tomar como exemplo a soma dos nmeros 6563 (= 0,6563 10
4
) e 3,375 (= 0,3375 10
1
) no nosso computador fictcio
de mantissa com 4 algarismos. A soma desses dois nmeros corresponde a 6566,375. Como nosso computador pode representar
com apenas 4 algarismos, o resultado dessa operao ser 0,6566 10
4
= 6566. Ou seja, apesar de partirmos de dois nmeros
exatos, o resultado da soma no ser exata. Mais uma vez, para um computador real, esse erro ser pequeno, porm, se um
nmero muito grande de operaes for realizado e se existir a necessidade de se obter um resultado bastante preciso, ser
necessrio se levar em considerao esse tipo de erro para avaliar o resultado obtido.
Existe mais um tipo de erro que aparece quando computadores manipulam nmeros. Esse erro se refere converso de
nmeros de uma base para a outra. O tipo de converso mais comum da base decimal (usada por humanos) para a base binria
(usada por computadores) e vice-versa. Um exemplo bastante peculiar o nmero 0,1. Ao convertermos esse nmero da base
Apostila de Complementos de Clculo Numrico 10
decimal para a base binria (existem diversos algoritmos para se realizar essa converso, mas no vamos entrar nesse detalhe
aqui), obtemos como resposta:
(0,1)10 = (0,0001100110011...)2 (3.6)
onde representamos com um subscrito a base em que esse nmero est escrito.
Portanto, notamos que, ao se converter o nmero 0,1 da base decimal para a base binria, obtemos um nmero com
infinitos algarismos! Como esse nmero no pode ser representado pelo computador, ele ser truncado, introduzindo um erro na
sua representao. Uma forma interessante de constatar esse problema escrevendo um pequeno programa que calcule o valor
de

1000
1
1 , 0
i
. Voc ver que esse nmero no igual a 100!
Apostila de Complementos de Clculo Numrico 11
4. Resoluo Numrica de Equaes (Zero de
Funes)
4.1 Introduo
No exemplo usado na introduo desta apostila, vimos que ao tentar calcularmos a corrente eltrica de um circuito
simples contendo apenas uma bateria, um resistor e um diodo, j nos deparamos com um problema matemtico de difcil
soluo. Esse problema corresponde ao clculo do valor da corrente i que satisfaz a equao
V R i
kT
q
i
I
s
+

_
,
ln 1 0 (4.1)
Em outras palavras, precisamos resolver ou encontrar o zero da funo acima.
Neste captulo iniciaremos o estudo de mtodos numricos que nos permitiro resolver problemas como esse.
4.2 Zeros ou Razes de Funes
Dada uma funo f(x), dizemos que raiz, ou zero de f se e somente f()=0.
Graficamente, os zeros de uma funo f(x) correspondem aos valores de x em que a funo intercepta o eixo horizontal
do grfico, como mostrado na figura 4.1.
Figura 4.1 - Interpretao grfica do zero de uma funo.
Apostila de Complementos de Clculo Numrico 12
g(x)
x b x x x x x a
1 2 3
4
5
A funo g(x) da figura 4.1 tem 5 razes no intervalo [a,b]: x1, x2, x3, x4, x5.
As razes de uma funo podem ser encontradas analiticamente, ou seja, resolvendo a equao f(x)=0 de maneira exata,
como mostrado nos exemplos a seguir:
0 3 3 ) 3 (
: pois ) ( de raz 3
3 ) ( ) 1


f
x f x
x x f
0 4
2
3
.
3
8
2
3

: pois ) ( de raz a
2
3

2
3
8
12
4
3
8
0 4
3
8

4
3
8
) ( ) 2

,
_



g
x g x
x x x
x x g
0 10 - 10 ) 2 ( 0 15 15 ) 3 (
6 5.2 - 2 2 6 3 . 5 3 ) 3 (
: pois ) ( de solues so 3 quanto 2 anto t
2
3
2
1 5

1 24 25
0 6 5
6 5 ) ( ) 3
2 2
2
1
2
2

+ +


+
+
h h
) h( h
x h x x
x
x
x
x x
x x x h
Porm, nem sempre possvel se encontrar analiticamente a raiz de uma funo, como nos casos a seguir:
Nestes casos precisamos de um mtodo numrico para encontrar uma estimativa para a raiz da funo estudada, ou seja,
um valor to aproximado quando se deseje.
Apostila de Complementos de Clculo Numrico 13
) ln( ) ( ) 3
) sen( ) ( ) 2
1 2 ) ( ) 1
2 3
x x x h
e x x g
x x x x f
x
+
+
+ +
Tais mtodos devem envolver as seguintes etapas:
(a) Determinao de um intervalo em x que contenha pelo menos uma raiz da funo f(x), ou seja, isolamento das razes;
(b) Calculo da raiz aproximada atravs de um processo iterativo at a preciso desejada.
4.3 Processos Iterativos
Existe um grande nmero de mtodos numricos que so processos iterativos. Como o prprio nome j diz (consulte um
dicionrio para verificar o significado de iterativo), esses processos se caracterizam pela repetio de uma determinada
operao. A idia nesse tipo de processo repetir um determinado clculo vrias vezes, obtendo-se a cada repetio ou iterao
um resultado mais preciso que aquele obtido na iterao anterior. E, a cada iterao utiliza-se o resultado da iterao anterior
como parmetro de entrada para o clculo seguinte.
Alguns aspectos comuns a qualquer processo iterativo, so:
Estimativa inicial: como um processo iterativo se caracteriza pela utilizao do resultado da iterao anterior para o
clculo seguinte, a fim de se iniciar um processo iterativo, preciso que se tenha uma estimativa inicial do resultado do
problema. Essa estimativa pode ser conseguida de diferentes formas, conforme o problema que se deseja resolver;
Convergncia: a fim de se obter um resultado prximo do resultado real, preciso que a cada passo ou iterao, o
resultado esteja mais prximo daquele esperado, isto , preciso que o mtodo convirja para o resultado real. Essa
convergncia nem sempre garantida em um processo numrico. Portanto, muito importante se estar atento a isso e
realizar a verificao da convergncia do mtodo para um determinado problema antes de tentar resolv-lo;
Critrio de Parada: obviamente no podemos repetir um processo numrico infinitamente. preciso par-lo em um
determinado instante. Para isso, devemos utilizar um certo critrio, que vai depender do problema a ser resolvido e da
preciso que precisamos obter na soluo. O critrio adotado para parar as iteraes de um processo numrico
chamado de critrio de parada.
Para encontrarmos as razes ou zeros de uma funo iremos utilizar mtodos numricos iterativos. Como j
mencionado, o primeiro passo para se resolver um processo iterativo corresponde a obteno de uma estimativa inicial para o
resultado do problema. No caso de zeros de funes, usamos a operao chamada de isolamento de razes, que veremos na
seo seguinte.
4.4 Isolamento de Razes
Para determinarmos o nmero e a localizao aproximada de razes de uma funo, a fim de obtermos uma estimativa
inicial a ser usada nos processo iterativos, podemos examinar o comportamento dessa funo atravs de um esboo grfico.
Por exemplo, seja uma funo f(x) tal que:
f( x ) = g( x ) - h( x ) (4.2)
As razes de f(x), so tais que:
Apostila de Complementos de Clculo Numrico 14
+1
0
- 1
x
sen x
- cos x
1 r aiz
2 raiz
g( x ) h (x ) = 0 (4.3)
ou ainda:
g( x ) = h (x ) (4.4)
Assim, os valores de x em que o grfico g(x) intercepta o grfico de h(x) a raiz de f(x).
Exemplo:
Dada a funo f(x) = sen(x) - [-cos( x )], encontrar os intervalos que contenham razes entre 0 e 2 .
Partindo de f(x)=0, segue que:
sen( x ) [-cos( x )] = 0
e que
sen( x ) = -cos( x )
Fazendo os grficos de sen(x) e -cos(x) temos:

2


2
3
2
Pelo grfico, vemos que a funo g(x) ir interceptar a funo h(x) entre /2 e e entre 3/2 e 2. Portanto, podemos
afirmar que existe uma raiz de f(x) no intervalo [/2, ] e no intervalo [3/2,2].
Nem sempre o esboo grfico a forma mais prtica de se obter um intervalo que contm pelo menos uma raiz da
funo f(x). Muitas vezes preciso se utilizar um mtodo algbrico. Para isso, vamos recorrer ao teorema de Bolzano.
Apostila de Complementos de Clculo Numrico 15
4.4.1 Teorema de Bolzano.
Seja uma funo f(x) contnua em um intervalo [a,b], tal que, f(a).f(b)<0. Ento a funo f(x) possui pelo menos uma
raiz no intervalo [a,b].
Podemos verificar este teorema graficamente:
Exemplo: Seja a funo f(x)=x ln(x)-3.2. Podemos calcular o valor de f(x) para valores arbitrrios de x, como mostrado na tabela
abaixo:
x 1 2 3 4
f(x) -3.20 -1.81 0.10 2.36
Pelo teorema de Bolzano, conclumos que existe pelo menos uma raiz real no intervalo [2,3].
4.5 Mtodo da Dicotomia ou Bisseco.
O mtodo da dicotomia ou bisseco a forma mais intuitiva de se obter a raiz de uma funo. Seja uma funo f(x)
contnua em um intervalo [a,b], e uma raiz de f(x) isolada neste intervalo atravs de um dos mtodos descritos no item anterior.
Inicialmente, subdividimos este intervalo em suas duas metades, ou seja:
Apostila de Complementos de Clculo Numrico 16
y
x
f ( b )
b a
f ( a )
y
x
f ( b )
f ( a )
a b
a b
x
y
1
]
1

+
1
]
1

+
b
b a
e
b a
a ;
2

2
;
Verificamos se a raiz est contida na primeira ou na segunda metade do intervalo inicial, usando o teorema de Bolzano.
Ou seja, se a funo f(x) mudar de sinal entre a e
2
b a +
saberemos que a raiz est nessa primeira metade do intervalo [a,b]. Caso
a funo f(x) mude de sinal entre
2
b a +
e b, a raiz dever estar na segunda metade do intervalo original.
Em seguida repetimos o processo para aquela metade que contm a raiz de f(x): dividimos o intervalo ao meio e
verificamos em qual metade est a raiz. Podemos continuar repetindo esse processo indefinidamente.
A estimativa da raiz em cada etapa ser o ponto mdio do intervalo em estudo onde sabemos que existe uma raiz. E,
como todo processo numrico, importante estimarmos o erro nesse resultado obtido. No caso do mtodo da bisseco, o erro
na estimativa ser dado pela metade do comprimento do intervalo em estudo.
A seguir, uma ilustrao desse processo, onde os sinais acima do eixo horizontal representam o sinal da funo:
Exemplo: Encontre uma estimativa para a raiz de:

com um erro menor ou igual a 0,050.
Os grficos de e
x
e de -x so:
Apostila de Complementos de Clculo Numrico 17
2


2


1
a b
b a
x

t
,
_

a b
-
+ +
x
1
x
1
b
-
+
x
2
2


2


1
1
2
x b
b x
x

t
,
_

-
2


2
1 2
2 1
3
x x
x x
x

t
,
_

-
+ +
x
3
x
1 x
2
x e x f
x
+ ) (
a x
0
b


f(x
0
)
x
0
a estimativa da raz
a raiz de f(x)
Atravs da interseo mostrada no grafco, podemos concluir que a raiz de f(x) [-1,0].
Utilizando o mtodo da dicotomia, temos:
Apostila de Complementos de Clculo Numrico 18
-4
-2
0
2
4
-4 -2 0 2 4
exp(x)
-x
1
-1
5 , 0 5 , 0
1
t x
+ +
-
+
-0,5
-1
0
11 , 0 ) 5 , 0 (
1 ) 0 (
63 , 0 ) 1 (


f
f
f
25 , 0 75 , 0
2
t x
+
-
-
+
-0,75
-1
-0,5 28 , 0 ) 75 , 0 ( f
125 , 0 625 , 0
3
t x
+
-
-
+
-0,625
-0,75
-0,5
09 , 0 ) 625 , 0 ( f
063 , 0 563 , 0
4
t x
+
-
+
-0,563
-0,625
-0,5
01 , 0 ) 563 , 0 ( f
+
a x
0
b


f(x
0
)
x
0
a estimativa da raz
a raiz de f(x)
Portanto, a raiz da funo f(x)=e
x
+x igual a 0,594 t 0,032.
4.6 Critrios de Parada em um Processo Iterativo
Foi usado, at o momento, o seguinte critrio de parada:
estipulado erro
2

k k
a b
(4.5)
onde [ ] ,
k k
b a o intervalo que contm a raiz da funo aps k iteraes.
No entanto, se tivermos uma funo do seguinte tipo:
Podemos estar satisfazendo (1) e, entretanto, f(x0) pode ser muito maior que zero. Assim, em certos casos pode-se usar a
seguinte condio:
) f(x
0
erro estipulado (4.6)
Apostila de Complementos de Clculo Numrico 19
032 , 0 594 , 0
5
t x
+
-
+
-0,594
-0,625
-0,563
04 , 0 ) 594 , 0 ( f
-
+
x
a x
0
b


f(x
0
)
x
0
a estimativa da raz
a raiz de f(x)
Tanto o critrio (4.5), quanto o critrio (4.6), podem levar a um nmero muito grande de iteraes. Uma maneira de se
contornar este problema tomar como um critrio de parada adicional, um certo nmero de iteraes mximo.
4.6.1 Estimativa do nmero de iteraes no mtodo da bisseo.
Como, no mtodo da bisseo, em cada passo, dividimos o intervalo por 2, temos:

2
k
o o
k k
a b
a b

(4.7)

onde k o nmero de iteraes e [ao,bo] o intervalo inicial que isola a raiz da funo.
Dado o seguinte critrio de parada:

k k
a b
(4.8)

onde o erro estipulado, temos que:
k k
a b 2 (4.9)
De (4.9) em (4.7):

2
2
k
o o
a b
(4.10)
Re-arranjando os termos em (4.10):
2
1

o o k
a b

+
(4.11)
Tomando o log de ambos os lados de (4.11):

( )

,
_

+
log 2 log
1

o o k
a b
(4.12)
e usando as propriedades do log segue que:
Apostila de Complementos de Clculo Numrico 20
( )
( )
1 -
2 log
log log
k

o o
a b
(4.13)
A expresso (4.13) d o nmero de iteraes necessrias para que o critrio de parada, definido em (4.8), seja satisfeito.
4.7 Mtodo das Aproximaes Sucessivas ou Mtodo de
Iterao Linear (MIL)
O mtodo da iterao linear um processo iterativo que apresenta vantagens e desvantagens em relao ao mtodo da
bisseco.
Seja uma funo f(x) contnua em um intervalo [a,b] que contenha uma raiz de f(x). O Mtodo de Iterao Linear inicia-
se reescrevendo a funo f(x) como,
f(x) = (x) x (4.14)
Essa forma de escrever f(x) bastante til. No ponto x que corresponde raiz de f(x), isto , f(x) = 0, teremos que:
f(x) = (x) x =0 (4.15)
(x) = x (4.16)
ou seja, no ponto x que corresponde raiz de f(x), ao substituirmos o valor de x na funo (x), teremos como resultado o
prprio valor de x. Portanto, a raiz de f(x) ser o ponto fixo de (x), ou seja, o valor que ao ser substitudo em (x) retorna o
prprio valor de x.
Por exemplo, a funo
f(x) = x
2
- x 2
pode ser reescrita como,
f(x) = x
2
2 x = (x) x ,
onde (x) = x
2
2. Essa funo tem como ponto fixo o valor x=2, pois (2) = 2
2
2 = 2. E esse exatamente o valor da raiz de
f(x), pois f(2) = 2
2
2 2 = 0.
Portanto, para encontrarmos a raiz de f(x), podemos encontrar o valor numrico que ao substituirmos em (x) retorna o
prprio valor de x. Para encontrarmos esse valor de x, vamos utilizar um processo iterativo, onde comeamos a calcular o valor
de (x) com um valor inicial de x, e recalculamos repetidamente o valor de (x) sempre usando o resultado de uma dada iterao
como a nova estimativa de x, ou seja, fazendo:
) (
1 k k
x x
+
(4.17)
Apostila de Complementos de Clculo Numrico 21
onde, k a ordem da iterao em que estamos (k = 0, 1, 2, 3, 4, ...). A funo (x) chamada de funo de iterao. Pode-se
notar que dada uma funo f(x) existem diversas funes de iterao que podem ser usadas no processo.
Exemplo: Encontre algumas funes de iterao a partir de f (x) = x
2
+ ln(x) - x +1.
ou ento,
ou ainda,
Mais um exemplo,
Exemplo: Encontre uma estimativa para a raiz de :
usando o mtodo da iterao linear.
Vamos iniciar a soluo encontrando uma boa estimativa inicial para o valor da raiz de f(x). Para isso, vamos usar o
mtodo grfico para o isolamento de razes. Escrevendo:
f(x) = g(x) h(x) g(x) = x
2
e h(x) = e
x
Apostila de Complementos de Clculo Numrico 22
1 ) ln( ) (
1 ) ln(
0 1 ) ln(
0 ) (
1 ) ln( ) (
2
2
2
2
+ +
+ +
+ +

+ +
x x x
x x x
x x x
x f
x x x x f

) 1 (
) 1 (
2
2
2
2
) (
1 ) ln(
0 1 ) ln(



+ +
x x
x x
e x
e x
x x x
x x x

x
x x
x
x
x x
x
x x x x x
x x x
1 ) ln(
) (
1 ) ln(
1 ) ln( .
0 1 ) ln(
2



+ +

) 1 ) ln( cos(cos ) (
) 1 ) ln( cos(cos
1 ) ln( cos cos
0 cos cos 1 ) ln(
2
2
2
2
+
+
+
+ + +
x x x x arc x
x x x x arc x
x x x x x
x x x x x

x
e x x f
2
) (
temos:
A partir do esboo grfico acima, conclui-se que a raiz encontra-se no intervalo [-1,0].
Devemos agora escolher uma funo de iterao (x). Para isso, escrevemos:
x
x
e x
e x
x f
t

0
0 ) (
2
Ou seja, podemos ter como funo iterao, os dois casos abaixo:
x
x
e x
e x

) (
) (

07 7 , 0
707 , 0 ) 691 , 0 ( ) ( 691 , 0
691 , 0 ) 738 , 0 ( ) ( 738 , 0
738 , 0 ) 606 , 0 ( ) ( 606 , 0
606 , 0 ) 1 ( ) ( 1
: , 1 e ) (
691 , 0
738 , 0
606 , 0
3
2
1
0
0
1
Usando





4
3
2
1
0
x
x
x
x
x
temos
e x
e x
e x
e x
x e x
x



Substituindo os valores de xk em f(x) para cada iterao k, vemos que a cada etapa nos aproximamos mais da raiz de f(x),
pois o valor dessa funo fica mais prximo de zero a cada iterao, como mostrado na tabela abaixo:
Apostila de Complementos de Clculo Numrico 23
-4
-2
0
2
4
-4 -2 0 2 4
x*x
exp(x)
1
-1
x
x
e x x f
2
) (
-1 0,632
-0,606 -0,178
-0,738 0,067
-0,691 -0,024
-0,707 0,007
4.7.1 O problema da convergncia no Mtodo da Iterao Linear
Como j discutido, para se obter um resultado coerente e preciso com um processo iterativo, necessrio que a cada
iterao a resposta se aproxime mais e mais da soluo real, ou seja, que o mtodo convirja para o valor real. No caso do
mtodo da bisseco, ns no precisamos nos preocupar com a convergncia, pois com esse mtodo ela est sempre garantida, j
que isolamos a raiz em um dado intervalo e nunca deixamos esse intervalo inicial. J no mtodo da iterao linear, a
convergncia no garantida a priori. A cada iterao podemos nos aproximar ou nos afastar da soluo real. Portanto, antes de
resolver um problema atravs desse mtodo preciso se verificar se haver ou no a convergncia.
O seguinte Teorema coloca condies suficientes, porm no necessrias para que o mtodo de iterao linear seja
convergente.
Teorema:
Seja uma funo f(x) contnua em um intervalo [a,b] e uma raiz de f(x) contida em [a,b].
Seja (x) uma funo de iterao obtida a partir de f(x).
Se:
i) (x) e (x) forem contnuas em [a,b];
ii) |(x)| < 1 (para todo) x [a,b];
iii) x0 [a,b].
Ento:
Exemplo: Deseja-se encontrar a raiz de . Para isto, pretende-se usar uma das seguintes funes de
iterao:
08 , 2 96 , 1 ) (
96 , 0
08 , 2
) (
2
2
1
+
+

x x x
x
x

Verifique se 1(x) e 2(x) satisfazem as condies (i) e (ii) do Teorema de convergncia no intervalo [1,2].
Apostila de Complementos de Clculo Numrico 24

+ n n
x lim
08 , 2 96 , 0 ) (
2
+ x x x f
1
) 96 , 0 (
08 , 2
1
) 96 , 0 (
08 , 2
1
) 96 , 0 (
08 , 2

1 | ) ( ' |
2
2
2
1
<
+
<
+

<
+

<
x
x
x
x
0 1584 , 1 92 , 1
08 , 2 9216 , 0 92 , 1
9216 , 0 92 , 1 08 , 2
) 96 , 0 ( 08 , 2
2
2
2
2
> +
> + +
+ + <
+ <
x x
x x
x x
x
Vamos iniciar verificando a condio (i) para a funo 1(x).
Ambas as funes 1(x) e 1(x) so contnuas (para todo) x R com x -0,96.
Em seguida, vamos verificar a condio (ii) para 1(x).
Portanto, para os valores de x que satisfazem a equao acima, teremos |1(x)| < 1, ou seja , a condio (ii) do teorema
da convergncia satisfeita. Vamos encontrar as razes da funo acima (x
2
+ 1.92x 1,1584) e, como ela se trata de uma
parbola com concavidade para cima, sabemos que a funo ser positiva para valores menores que a raiz de menor valor (x1) e
valores maiores que a raiz de maior valor (x2) , como ilustrado a seguir.
+ +
x1 _ x2
As razes dessa funo so:
Apostila de Complementos de Clculo Numrico 25
2
1
2 1
1
1
1
1
) 96 , 0 (
08 , 2
) ( '
1 . ) 96 , 0 .( 08 , 2 ) 96 , 0 .( 0 ) ( '
) 96 , 0 .( 08 , 2 ) (
96 , 0
08 , 2
) (
+

+ +
+
+

x
x
x x x
x x
x
x

48 0
40 2
2
32 , 8 92 , 1

8,32
0 1584 , 1 92 , 1
2
1
2
, x
, x
x
x x


+
Portanto:
| 1(x) | < 1 para x< 2,40 ou x > 0,48.
Finalmente, conclumos que as condies (i) e (ii) do Teorema de Convergncia so satisfeitas por:
no intervalo [1,2].
Vamos verificar se essas condies so satisfeitas para a funo 2(x). Para a condio (i), temos:
Portanto, 2 (x) e 2(x) so contnuas para x R . Para a condio (ii) ser satisfeita, devemos ter:
0,48 - x 1,48 -
2) ( 96 , 0 2 96 , 2
96 , 1 1 96 , 1 96 , 1 2 96 , 1 1
1 96 , 1 2 1
1 96 , 1 2
1 ) ( '
2
< <
< <
< + <
< + <
< +
<
x
x
x
x
x
Ou seja:
2(x) < 1 para 1,48 < x < -0,48.
Temos, portanto, que 2(x) no satisfaz a condio (ii) do Teorema de Convergncia, no intervalo [1,2].
Exemplo: J calculamos o valor da raiz da funo f(x) = x
2
e
x
, utilizando:
( )
x
e x
Vamos verificar se essa funo satisfaz as condies do teorema da convergncia. Para a condio (i), temos:
Apostila de Complementos de Clculo Numrico 26
96 , 0
08 , 2
) (
1
+

x
x
96 , 1 2 ) ( '
08 , 2 96 , 1 ) (
2
2
2
+
+
x x
x x x

( )
( )
x
x
x
x x
x x
e e e e e x
e e x
2
1
2
2
1
2
1
.
2
1
. .
2
1
.
2
1
) (
) (

Portanto, (x) e (x) so contnuas para x R.


Para a condio (ii), devemos ter |(x)| < 1, ou seja:
O Teorema de convergncia ser satisfeito se x < 1,386.
Finalmente, para a condio (iii), devemos ter x0 < 1,386, que satisfeita para x0 = -0.5, que foi o valor usado.
Ainda nesse exemplo, vimos que a funo
( )
x
e x
, a princpio, tambm poderia ser usada. Mas, ser que ela
satisfaz todas as condies do teorema da convergncia?
Devido sua semelhana com a funo
( )
x
e x
, podemos concluir que ela satisfaz o teorema da convergncia
tambm para valores de x < 1,386.
Ao tentarmos resolver este problema usando a funo
( )
x
e x
, notamos que essa condio no satisfeita em
todas as etapas do problema. A tabela abaixo mostra o que acontece ao tentarmos encontrar a raiz de f(x) usando
( )
x
e x
.
A tabela apresenta o ndice das iteraes que estamos (i), o valor de (xi) e de f(xi) para cada iterao:
I xi (xi) f(xi)
0 -0.5 0.778801 -0.35653
1 0.778801 1.476095 -1.57233
2 1.476095 2.091848 -2.19697
3 2.091848 2.846027 -3.72404
4 2.846027 4.149606 -9.11936
5 4.149606 7.962976 -46.1898
Apostila de Complementos de Clculo Numrico 27
386 , 1
2 ln . 2
2 ln
2
2
1
2
1
1
2
1
-

2

2

2
<
<
<
<
<
<
x
x
x
e
e
e
x
x
x
Notamos que o processo est divergindo, isto , se afastando da raiz de f(x), j que o valor de f(x) cada vez mais
distante de zero. Tambm podemos notar que isso acontece devido ao fato de usarmos valores de x > 1,386 a partir da iterao
i=2. Portanto, essa funo no satisfaz o teorema da convergncia em todas as iteraes.
4.7.2 Critrios de Parada no mtodo da iterao linear
No caso do mtodo da iterao linear, podemos usar qualquer uma (ou todas simultaneamente) das condies abaixo como
critrio de parada:
1. Variao de xk :
Conforme avanamos no nmero de iteraes, se as estimativas da raiz de f(x) comeam a variar muito pouco, podemos
concluir que estamos bem prximos da raiz de f(x) e o processo iterativo pode ser parado.
2. Valor de f(xk):
3. Nmero de Iteraes.
Apostila de Complementos de Clculo Numrico 28
<


k
k k
x
x x
1
( ) <
k
x f
4.8 Mtodo de Newton-Raphson
O Mtodo de Newton-Raphson um caso particular do mtodo de iterao linear.
O mtodo de iterao linear consiste em estimar a raiz de uma funo f(x) usando o processo iterativo:
) (
1 n n
x x
+
(4.18)
Podemos escrever uma forma geral para a funo de iterao:
) ( ). ( ) ( x f x A x x + (4.19)
pois, para x igual raiz de f(x), tem-se f(x)=0, ou seja x=(x) para qualquer A(x) 0.
Para haver a convergncia no mtodo da iterao linear preciso que |(x)|<1 em um intervalo [a,b] que contm a raiz
de f(x). Portanto, a idia no mtodo de Newton-Raphson escolher uma funo (x) tal que ()=0 onde a raiz de f(x) e
[a,b]. Com isso, teremos |(x)|<1 desde que no nos afastemos muito do valor de durante o processo de resoluo do
problema.
Derivando (x) dada pela expresso (2) em relao a x, temos:
) ( ' ). ( ) ( ). ( ' 1 ) ( ' x f x A x f x A x + + (4.20)
Exigindo que (x)=0, tem-se:
) ( ' ). ( ) ( ). ( ' 1 0 x f x A x f x A + + (4.21)

Portanto:
0 ) ( ' ). ( ) ( ). ( ' 1 + + x f x A x f x A (4.22)
Calculando (4.22) em x=, segue que:
1 ) ( ' ). ( f A (4.23)
ou seja:
) ( '
1
) (

f
A (4.24)
Escolhendo:
Apostila de Complementos de Clculo Numrico 29

) ( '
1
) (
x f
x A (4.25)
em (4.19) segue que:
( )
) ( '
) (
x f
x f
x x (4.26)
O Mtodo de Newton-Raphson consiste em usar o processo iterativo xn+1 = (xn) e como funo de iterao a
expresso (4.26).
4.8.1 Convergncia do Mtodo de Newton-Raphson
Apesar de obtermos a forma da funo (x) procurando garantir a convergncia do processo iterativo, esta no esta
sempre garantida para este mtodo (mas quase sempre). A convergncia no mtodo de Newton-Raphson esta sempre garantida
para um certo intervalo [a,b] que contm a raiz de f(x), desde que f(x) e f(x) sejam contnuas nesse intervalo e que f() 0,
onde a raiz de f(x) (f()=0). Portanto, se utilizarmos uma estimativa inicial x0 tal que x0 [a,b], a convergncia estar
garantida. Em outras palavras, para o mtodo de Newton-Raphson convergir, preciso que nossa estimativa inicial esteja
prxima da raiz de f(x). A proximidade exigida para a convergncia vai depender de caso a caso e nem sempre simples de
determinar.
4.8.2 Interpretao Geomtrica
Dado xn, o ponto xn+1 ser obtido pela intercesso da reta tangente a f(x) em xn com o eixo x (a abscissa). Podemos
ilustrar isso matematicamente. A reta tangente a f(x) em xn dada por:
1
0 ) (
) ( '
+

n n
n
n
x x
x f
x f
(4.27)
A partir dessa expresso, obtemos a frmula de Newton-Raphson, ou seja:
) ( '
) (
1
n
n
n n
x f
x f
x x
+
(4.28)
Portanto, a cada iterao do nosso processo, nos aproximamos cada vez mais da raiz de f(x) atravs da tangente (ou seja,
da derivada) da funo f(x).
A figura a seguir ilustra essa interpretao geomtrica do Mtodo de Newton-Raphson.
Apostila de Complementos de Clculo Numrico 30
Exemplo:
Calcule a raiz de , usando o mtodo de Newton-Raphson, x0 = 3 como estimativa inicial e como
critrio de parada |f(xn)| 0,020.
Para encontrar a raiz de f(x) usando o mtodo de Newton-Raphson, devemos ter:
( )
n n
x x
+1
onde,
( )
( )
( )
( )
1 2
6
1 2
6 2
1 2
6
2 2 2 2
+
+

+
+ +

+
+


x
x
x
x x x x
x
x x
x x
x f
x f
x x

Portanto, temos que:


xn f(xn) (xn)
3 6 2,1429
2,1429 0,7349 2,0039
2,0039 0,0195
A estimativa da raiz de f(x) :
Apostila de Complementos de Clculo Numrico 31
x x
n+1 n
( x , f(x ) ) n n
x
f(x )
n

6 ) (
2
+ x x x f
0039 , 2 x
4.9 Lista de Exerccios
1. Quais so as 3 causas mais importantes de erros numricos em operaes realizadas em
computadores e calculadoras?
2. Cite as caractersticas bsicas de todo processo iterativo.
3. O que um zero ou raiz de funo?
4. Como voc poderia usar o mtodo da bisseco para estimar o valor de
7
? Estime esse
valor com uma preciso de (ou erro menor que) 0,1.
5. Dada a funo ( ) ( ) 4 sen
2
+ x x x f :
(a) Determine o intervalo em x que contm pelo menos uma raiz de f(x) (graficamente ou aritmeticamente usando o
Teorema de Bolzano);
(b) Partindo-se desse intervalo, utilize o mtodo da bisseco para determinar o valor dessa raiz aps 4 iteraes.
(c) Qual o erro no seu resultado final?
6. Dada a funo ( ) 2
2
+

x e x f
x
:
(a) Determine graficamente o intervalo em x que contm pelo menos uma raiz de f(x);
(b) Faa a mesma estimativa, mas desta vez aritmeticamente usando o Teorema de Bolzano;
(c) Partindo-se desse intervalo, utilize o mtodo da bisseco para determinar o valor dessa raiz com uma preciso de 0,05.
7. O que significa a convergncia de um mtodo iterativo? Que condies garantem a
convergncia no mtodo da iterao linear? O que fazer caso seja constatado que o mtodo
da iterao linear no ir convergir para um dado problema?
8. Dada a funo f(x)=ln(x) x
2
+ 4, mostre 3 formas para a funo (x) que poderiam ser
usadas para se estimar a raiz de f(x).
9. Mostre que as seguintes funes de interao satisfazem as condies (i) e (ii) do teorema de
convergncia:
(a) ( )
3
1
9
3
+
x
x
(b) ( )
2
) cos(x
x
(c) ( )
2
) 2 / exp(x
x
Apostila de Complementos de Clculo Numrico 32
(d) ( )
3 / 1
) 1 ( + x x
10. Estime as razes positivas das seguintes funes pelo mtodo de iterao linear, usando o
critrio de parada dado:
(a) 3 9 ) (
3
+ x x x f
(b)
( ) ) cos( 2 x x x f
(c) ( )
2
4 ) exp( x x x f
(d) 1 ) (
3
x x x f
Use as funes de iterao do exerccio anterior.
11. Seja a seguinte funo:
1
1
) (
2
3
+ x
x
x f
Use o mtodo de Newton-Raphson para encontrar uma estimativa da raz de f(x) tal que |f(x)| < 10
-4
. Parta de xo=1.
12. Deseja-se resolver a seguinte equao usando o Mtodo de Newton-Raphson:
0 6
5
x
qual o valor da raiz tal que:
5 1
10

<

n
n n
x
x x
?
Quantas iteraes so necessrias para se encontrar a raiz, atingindo o critrio acima, com
(a) xo= -15
(b) xo= 2
(c) xo= 20
13. Seja a funo f(x) = e
x
4x
2
.
(a) Encontre o intervalo que deva possuir pelo menos uma raiz de f(x).
(b) Usando ( )
2
2
1
x
e x , estime a raiz de f(x) com |xn-xn-1| < 0,001.
(c) Faa a mesma estimativa usando o mtodo de Newton-Raphson. Qual dos dois mtodos converge mais rapidamente?
(d) Um outro critrio de parada que poderia ser usado corresponde verificao se o valor de f(x) est prximo de zero.
Qual resultado para a raiz de f(x) se obteria caso se usasse como critrio de parada a condio |f(x)| < 0.001?
14. Seja:
1 3 ) (
3
+ x x x f
(a) Mostre que f(x) possui uma raiz em [0,1].
(b) Mostre que
3
1
) (
3
+

x
x
uma possvel funo de iterao obtida a partir de f(x).
(c) Verifique se (x) satisfaz as condies (i) e (ii) do Teorema de Convergncia.
Apostila de Complementos de Clculo Numrico 33
(d) Encontre uma estimativa para a raiz de f(x) atravs do mtodo da iterao linear e usando a funo (x) do item (c), tal
que |f(x)| < 0,0070.
5. Interpolao Polinomial
5.1 Introduo
Vamos supor que temos um conjunto de dados {xi,f(xi)} tal como na tabela abaixo:
xi 0 1.5 3.0 4.5 6.0
f(xi) 0.001 0.016 0.028 0.046 0.057
Nosso problema estimar o valor de f(x) para um valor de x que no tenha sido medido, como por exemplo, x=2.0.
Portanto, interpolar um ponto x a um conjunto de n+1 dados {xi,f(xi)}, significa simplesmente, calcular o valor de f(x),
sem conhecer a forma analtica de f(x).
A interpolao polinomial consiste em se obter um polinmio p(x) que passe por todos os pontos do conjunto de (n+1)
dados {xi,f(xi)}, isto :
p(x0)=f(x0)
p(x1)=f(x1) (5.1)
...
p(xn)=f(xn)
(note que a contagem comea em zero, portanto temos n+1 pontos na expresso acima).
O polinmio p(x) chamado de polinmio interpolador. possvel se demonstrar que existe um nico polinmio p(x)
de grau menor ou igual a n que passa por todos os (n+1) pontos do conjunto {xi,f(xi)} (ver o livro texto Noes de Clculo
Numrico para uma demonstrao dessa proposio).
5.2 Forma de Lagrange
Seja um conjunto de n+1 dados {xi,f(xi)}. Queremos encontrar um polinmio interpolador p(x) que satisfaa a condio (1), isto
, passe por todos os pontos.
Uma possvel forma para p(x) que satisfaa (1) :
p x L x f x L x f x L x f x
n n
( ) ( ) ( ) ( ) ( ) ( ) ( ) + + +
0 0 1 1
(5.2)
onde os Lk(x) so polinmios tais que:
( ) L x
k i ki
(5.3)
sendo que:

ki
se k i
se k i

'

0
1
,
,
(5.4)
Portanto,
Apostila de Complementos de Clculo Numrico 34
p x L x f x L x f x L x f x
p x f x f x f x
p x f x
n n
n
( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( )
0 0 0 0 1 0 1 0
0 0 1
0 0
1 0 0
+ + +
+ + +

e,
p x L x f x L x f x L x f x
p x f x f x f x
p x f x
n n
n
( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( )
1 0 1 0 1 1 1 1
1 0 1
1 1
0 1 0
+ + +
+ + +

ou seja:
p x f x
i i
( ) ( )
o que mostra que o polinmio interpolador p(x) passa exatamente sobre os pontos {xi,f(xi)} da tabela dada.
Temos agora que encontrar os polinmios Lk(x), que satisfaam (3). Uma funo que satisfaz a condio (3) :
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
L x
x x x x x x x x x x
x x x x x x x x x x
k
k k n
k k k ki k ki k n
( )


+
+
0 1 1 1
0 1 1 1


que fcil verificar, pois:
( )
( )
L x e
L x se i k
k k
k i


1
0 ,
De maneira compacta, podemos escrever o polinmio interpolador na Forma de Lagrange, como:
( ) ( )
( ) p x L x f x
n i i
i
n

0
(5.5)
e,
( )
( )
( )
L x
x x
x x
i
j
j
j i
n
i j
j
j i
n

0
0
5.2.1 Interpolao para 2 pontos (n+1=2) - ajuste de retas (n=1)
x
i
x
0
x
1
f(x
i
) f(x
0
) f(x
1
)
De (5) :
(5.6)
Apostila de Complementos de Clculo Numrico 35

+
1
0
1 1 0 0
) ( ). ( ) ( ). ( ) ( ). ( ) (
i
i i
x f x L x f x L x f x L x p
As funes L
i
(x) devem satisfazer (3), ou seja:
L
0
(x
0
) =1 L
1
(x
0
) =0
L
0
(x
1
) =0 L
1
(x
1
) =1 (5.7)
fcil verificar que, as seguintes funes, satisfazem (7) :
(5.8)
De (8) em (6) :
( ) ( ) ( )
1
0 1
0
0
1 0
1
x f
x x
x x
x f
x x
x x
x p

,
_

,
_

5.2.2 Interpolao para 3 pontos (n+1=3) - ajuste de parbolas (n=2)


x
i
x
0
x
1
x
2
f(x
i
) f(x
0
) f(x
1
) f(x
2
)
De (5):
( ) ( ) ( ) ( ) ( )
2 2 1 1 0 0
2
0
x f L x f L x f L x f L x p
i
i i
+ +

(5.9)
onde:
L0 (x0) =1 L1 (x0) =0 L2 (x0) =0
L0 (x1) =0 L1 (x1) =1 L2 (x1) =0
L0 (x2) =0 L1 (x2) =0 L2 (x2) =1
Por construo:
( ) ( )
( ) ( )
2 0 1 0
2 1
0
x x x x
x x x x
L

( ) ( )
( ) ( )
2 1 0 1
2 0
1
x x x x
x x x x
L

Apostila de Complementos de Clculo Numrico 36


1 0
1
0
) (
x x
x x
x L

0 1
0
1
) (
x x
x x
x L

( ) ( )
( ) ( )
1 2 0 2
1 0
2
x x x x
x x x x
L

Portanto:
( ) ( )
( ) ( )
( )
( ) ( )
( ) ( )
( )
( ) ( )
( ) ( )
( )
2
1 2 0 2
1 0
1
2 1 0 1
2 0
0
2 0 1 0
2 1
) ( x f
x x x x
x x x x
x f
x x x x
x x x x
x f
x x x x
x x x x
x p


+


+

Exemplo:
Ajuste uma reta aos seguintes pontos:
x 2 4
f(x) 3,1 5,6
( ) ( ) ( )
1
0 1
0
0
1 0
1
x f
x x
x x
x f
x x
x x
x p

,
_

,
_

( ) ( ) ( ) 2 8 . 2 4 55 . 1 6 . 5
2 4
2
1 . 3
4 2
4
+

,
_

,
_

x x
x x
x p
( ) 6 . 0 25 . 1 + x x p
5.3 Forma de Newton
5.3.1 Tabela de Diferenas Divididas.
Para que possamos discutir a Forma de Newton temos que antes nos familiarizar com a construo da chamada Tabela
de Diferenas Divididas
Dada a tabela de valores:
x x0 x1 x2 x3
f(x) f(x0) f(x1) f(x2) f(x3)
podemos construir a seguinte tabela:
Apostila de Complementos de Clculo Numrico 37
x f(xi) f[xi, xi+1] f[xi, xi+1, xi+2] f[xi, xi+1, xi+2, xi+3]
x0 f(x0)
f[x0,x1]
f[x0,x1,x2]
x1 f(x1)
f[x1,x2] f[x0,x1,x2,x3]
x2 f(x2) f[x1,x2,x3]
f[x2,x3]
x3 f(x3)
onde:
[ ]
( ) ( )
f x x
f x f x
x x
0 1
1 0
1 0
,

[ ]
( ) ( )
f x x
f x f x
x x
1 2
2 1
2 1
,

[ ]
( ) ( )
f x x
f x f x
x x
2 3
3 2
3 2
,

[ ]
[ ] [ ]
f x x x
f x x f x x
x x
0 1 2
1 2 0 1
2 0
, ,
, ,

[ ]
[ ] [ ]
f x x x
f x x f x x
x x
1 2 3
2 3 1 2
3 1
, ,
, ,

[ ]
[ ] [ ]
f x x x x
f x x x f x x x
x x
0 1 2 3
1 2 3 0 1 2
3 0
, , ,
, , , ,

Exemplo: Dados os seguintes valores:


xi 0,1 0,4 0,7 1 1,2
f(xi) 0,813 0,536 0,682 1,25 1,864
a tabela de diferenas divididas :
Apostila de Complementos de Clculo Numrico 38
xi f(xi) f[xi , xi+1] f[xi , xi+1, xi+2] f[xi , xi+1 , xi+2 ,xi+3]
0,1 0,813
0,4 0,536
0,7 0,682
1 1,250
1,2 1,864
f[xi , xi+1 , xi+2 , xi+3 , xi+4 ] =
5.3.2 Forma de Newton para o Polinmio Interpolador
Para calcularmos o polinmio interpolador da Forma de Newton, vamos comear com o caso mais simples: encontrar
um polinmio de grau 0, p0(x), que interpola f(x) no ponto x0. Vamos partir da diferena dividida f[x0,x], que dada por:
[ ]
( )
( )
f x x
f x f x
x x
0
0
0
,

(5.10)
Isolando-se f(x) da expresso acima, tem-se:
( ) ( ) [ ] ( )
0 0 0
, x x x x f x f x f +
(5.11)
Da prpria definio de polinmio interpolador, sabe-se que:
p0(x)=f(x0) (5.12)
Portanto, a expresso (5.3) pode ser escrita como:
( ) ( ) [ ] ( )
0 0 0
, x x x x f x p x f +
(5.13)
Apostila de Complementos de Clculo Numrico 39
923 , 0
1 , 0 4 , 0
813 , 0 536 , 0

487 , 0
4 , 0 7 , 0
536 , 0 682 , 0

893 , 1
7 , 0 1
682 , 0 25 , 1

07 , 3
1 2 , 1
25 , 1 864 , 1

( )
35 0 , 2
1 , 0 7 , 0
923 , 0 4 87 , 0


354 , 2
7 , 0 2 , 1
893 , 1 07 , 3

343 , 2
4 , 0 1
487 , 0 893 , 1

00 8 , 0
1 , 0 1
350 , 2 343 , 2

014 , 0
4 , 0 2 , 1
343 , 2 354 , 2

02 , 0
1 , 0 2 , 1
) 008 , 0 ( 014 , 0


A expresso acima no pode ser usada diretamente, pois no podemos calcular o valor f[x0,x], j que no conhecemos o
de f(x) em qualquer ponto x (veja expresso (5.1) acima). Fora do ponto x0, sabemos que o polinmio interpolador apenas uma
aproximao de f(x), caso contrrio teramos uma resposta exata e no precisaramos da interpolao. Em outras palavras, tem-se
que:
p0(x) f(x), para x x0 (5.14)
Portanto, da expresso (5.4), conclumos que f[x,x0] (x-x0) simplesmente a diferena entre o valor de f(x) (valor real
da funo) e o valor p0(x) que obtivemos com a interpolao. Em outras palavras, esse termo o erro no processo de
interpolao, isto :
( ) ( ) ( ) [ ] ( )
0 0 0 0
, x x x x f x p x f x E
(5.15)
Podemos realizar o mesmo exerccio, partindo de uma diferena dividia de ordem maior, ou seja f[x0,x1,x], que dada
por:
[ ] [ ]
[ ] [ ]
( ) ( )
[ ]
[ ]
( ) ( ) ( ) [ ]
( ) ( )
0 1
0 1 0 0
1 0
1
0 1
0
0
1
0 1 0
0 1 1 0
,
, ,
,
, ,
, , , ,
x x x x
x x f x x x f x f
x x x f
x x
x x f
x x
x f x f
x x
x x f x x f
x x x f x x x f


(5.16)
Portanto, tem-se que:
( ) ( ) ( ) [ ] ( ) ( ) [ ] x x x f x x x x x x f x x x f x f , , ,
1 0 0 1 0 1 0 0

(5.17)
e
( ) ( ) ( ) [ ] ( ) ( ) [ ] x x x f x x x x x x f x x x f x f , , ,
1 0 0 1 1 0 0 0
+ +
(5.18)
Podemos verificar que o polinmio interpolador de ordem 1, p1(x), dado por:
( ) ( ) ( ) [ ]
1 0 0 0 1
, x x f x x x f x p +
(5.19)
pois,
( ) ( ) ( ) [ ] ( )
0 1 0 0 0 0 0 1
, x f x x f x x x f x p +
(5.20)
Apostila de Complementos de Clculo Numrico 40
e
( ) ( ) ( ) [ ] ( ) ( )
( ) ( )
( )
1
0 1
0 1
0 1 0 1 0 0 1 0 1 1
, x f
x x
x f x f
x x x f x x f x x x f x p

+ +
(5.21)
que so as condies fundamentais para se encontrar tal polinmio.
Portanto, o erro cometido ao se aproximar f(x) por p1(x) :
( ) ( ) ( ) [ ] x x x f x x x x x E , ,
1 0 1 0 1

(5.22)
Podemos continuar indefinidamente, at encontrarmos o polinmio interpolador de uma ordem n qualquer, aplicando
sempre o mesmo raciocnio. A expresso geral para um polinmio interpolador de ordem n ser ento:
( ) ( ) ( ) [ ] ( ) ( ) [ ]
( ) ( ) ( ) [ ]
n n
n
x x x f x x x x x x
x x x f x x x x x x f x x x f x p
, , ,
, , ,
1 0 1 1 0
2 1 0 1 0 1 0 0 0


+
+ + + +

(5.23)
e o erro dado por:
( ) ( ) ( ) ( ) [ ] x x x x f x x x x x x x E
n n n
, , , ,
1 0 1 0

(5.24)
Exemplo: Dado:
x 0,2 0,5 0,9 1,5 2,0
F(x) 4,88 5,00 5,72 8,00 11,00
encontre o polinmio interpolador p(x) usando a forma de Newton:
xi f(xi) f[xi , xi+1] f[xi , xi+1, xi+2]
0,2 4,88
0,5 5,00
0,9 5,72

1,5 8,00
2,0 11,00
Usando (5.9):
Apostila de Complementos de Clculo Numrico 41
4 , 0
2 , 0 5 , 0
88 , 4 00 , 5

8 , 1
5 , 0 9 , 0
00 , 5 72 , 5

8 , 3
9 , 0 5 , 1
72 , 5 00 , 8

0 , 6
5 , 1 0 , 2
00 , 8 00 , 11

2
2 , 0 9 , 0
4 , 0 8 , 1

2
5 , 0 5 , 1
8 , 1 8 , 3

0
2
9 , 0 0 , 2
8 , 3 0 , 6

0
Note que usando a forma de Newton, p(xi) = f(xi)
5.4 Exerccios
1. Qual a condio bsica para se obter o polinmio interpolador?
2. Qual a relao entre o nmero de pontos usados na interpolao e o grau do polinmio interpolador que pode ser calculado?
3. Se voc tiver um conjunto de 5 dados {(x0,f(x0), (x1,f(x1), (x2,f(x2), (x3,f(x3), (x4,f(x4),}, e deseja fazer uma interpolao linear, isto
, encontrar uma reta que lhe permita obter o valor de f(x ), onde x1<x <x2:
a) Qual seria o grau do polinmio que voc calcularia, isto , quantos pontos voc utilizaria?
b) E quais pontos da tabela voc usaria?
4. A seguinte tabela informa o nmero de carros que passam por um determinado pedgio em um determinado dia:
Horrio 10:00 10:30 11:00 11:30 12:00 12:30
Nmero (em mil) 2.69 1.64 1.09 1.04 1.49 2.44
a) Faa um grfico de horrio vs. nmero de carros para verificar qual a tendncia da curva.
b) Estime o nmero de carros que passariam pelo pedgio s 11:10, usando a forma de Lagrange para encontrar um
polinmio interpolador p(x) que estima o nmero de carros em funo do tempo. Use uma reta como funo
interpoladora.
c) Agora, faa a mesma estimativa, mas utilizando uma parbola como polinmio interpolador.
5. Na fabricao de determinadas cermicas muito importante saber as condies de temperatura em que o produto foi assado
no forno. Como no possvel medir a temperatura do forno a todo instante, ela medida em intervalos peridicos de tempo e
esses dados so interpolados para o instante em que cada pea foi queimada a fim de se conhecer a temperatura do forno nesse
instante. Em um dia de funcionamento do forno, os seguintes dados foram coletados:
Horrio 7:00 10:00 13:00 16:00 19:00 21:00
Temperatura (10
2

o
C) 2.32 2.51 2.63 2.55 2.41 2.28
a) Construa a tabela de diferenas divididas para esses pontos.
b) Estime a temperatura do forno s 14:30 usando a forma de Newton para apenas dois pontos.
c) Faa essa estimativa novamente, desta vez usando 3 pontos.
Apostila de Complementos de Clculo Numrico 42
5 2 ) (
2 , 0 4 , 0 2 08 , 0 4 , 0 88 , 4 ) (
2 ). 1 , 0 2 , 0 5 , 0 ( 08 , 0 4 , 0 88 , 4 ) (
2 ). 5 , 0 ).( 2 , 0 ( 04 ). 2 , 0 ( 88 , 4 ) (
2
2
2
+
+ + +
+ + +
+ +
x x x p
x x x x x p
x x x x x p
x x x x p

Vous aimerez peut-être aussi