[Digite o título do documento] [Ano

]
Apostila de
Complementos de Cálculo
Numérico
2002
Marcelo Gameiro Munhoz
Apostila de Complementos de Cálculo Numérico 1
[Digite o título do documento] [Ano]
Antonio Cesar Germano Martins
Apostila de Complementos de Cálculo Numérico 2
[Digite o título do documento] [Ano]
1. Introdução: O que é o cálculo numérico, sua
importância e os objetivos do curso
1.1 O que é o Cálculo Numérico?
O Cálculo Numérico corresponde a um conjunto de ferramentas ou métodos usados
para se obter a solução de problemas matemáticos de forma aproximada. Esses métodos se
aplicam principalmente a problemas que não apresentam uma solução exata, portanto
precisam ser resolvidos numericamente.
O que isso quer dizer? Vamos tomar um exemplo para entender melhor os objetivos
do Cálculo Numérico.
Seja um circuito elétrico composto de uma fonte de tensão (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 tensão V e da resistência R. O primeiro passo é formular
um modelo matemático para o nosso sistema físico (o circuito), e encontrar a solução do
problema representado por esse modelo.
R
V
Figura 1.1: Circuito elétrico composto de uma fonte de tensão e um resistor.
No caso do circuito da Figura 1.1, o modelo matemático também é bastante simples.
Utilizando-se a Lei de Kirchoff (não se preocupe com essa lei caso você não a conheça),
teremos a seguinte equação para o circuito:
V R i − ⋅ · 0 (1.1)
Esse é o nosso modelo matemático para o circuito (sistema físico). O modelo
apresenta uma equação bastante simples que tem uma solução exata. Portanto, nosso
problema (encontrar a corrente elétrica do circuito) pode ser resolvido de maneira exata,
cuja solução é 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 solução exata, não é preciso utilizar os métodos do
cálculo numérico para resolve-lo. Porém, digamos que um outro componente eletrônico seja
Apostila de Complementos de Cálculo Numérico 3
[Digite o título do documento] [Ano]
incluído no circuito: um diodo semicondutor. Esse dispositivo tem uma curva característica,
isto é, a tensão nesse componente em função da corrente, que é dada por:
( ) v i
kT
q
i
I
s
· +
|
.

`
,
ln 1
(1.3)
onde k e I
s
são constantes, q é a carga do elétron e T a temperatura do dispositivo. Essa
equação corresponde ao modelo matemático do diodo (não se preocupe em entender esta
equação, pois isto é só um exemplo).
Portanto, ao se incluir o diodo no circuito da Figura 1.1, tem-se a seguinte equação
descrevendo o comportamento da corrente elétrica no circuito:
V R i
kT
q
i
I
s
− ⋅ − +
|
.

`
,
· ln 1 0
(1.4)
A inclusão desse novo componente no circuito tornou nosso problema mais
complicado e de difícil solução analítica. O que isso quer dizer? Tornou-se difícil se obter
uma expressão para i, principalmente quando comparado ao caso anterior, quando tínhamos
simplesmente i=V/R.
Como resolver esse problema então? Como obter o valor de i? A solução está na
utilização de métodos numéricos que serão aprendidos neste curso.
1. 2 A importância do curso de Cálculo Numérico
Ao resolver um problema matemático numericamente, o mais comum é o profissional
utilizar um pacote computacional. Porém, ele terá que tomar uma série de decisões antes de
resolver o problema. E para tomar essas decisões, é preciso ter conhecimento de métodos
numéricos. O profissional terá que decidir:
 Pela utilização ou não de um método numérico (existem métodos numéricos
para se resolver este problema?);
 Escolher o método a ser utilizado, procurando aquele que é mais adequado
para o seu problema. Que vantagens cada método oferece e que limitações eles
apresentam;
 Saber avaliar a qualidade da solução obtida. Para isso, é importante ele saber
exatamente o que está sendo feito pelo computador ou calculadora, isto é, como
determinado método é aplicado.
1.3 Objetivos do Curso:
Os principais objetivos do curso são:
• Apresentar diversos métodos numéricos para a resolução de diferentes problemas
matemáticos. Pretende-se deixar bem claro a importância desses métodos, mostrando:
 a essência de um método numérico;
 a diferença em relação a soluções analíticas;
Apostila de Complementos de Cálculo Numérico 4
[Digite o título do documento] [Ano]
 as situações em que eles devem ser aplicados;
 as vantagens de se utilizar um método numérico;
 e as limitações na sua aplicação e confiabilidade na solução obtida.
• Melhorar a familiarização e “intimidade” do aluno com a matemática, mostrando seu
lado prático e sua utilidade no dia-a-dia de um engenheiro. Rever conceitos já vistos,
exercitá-los e utilizá-los de maneira prática;
• Apresentar ao aluno maneiras práticas de se desenvolver e utilizar métodos
numéricos. Isso significa mostrar como usar esses métodos numéricos na calculadora e
em um computador;
• Treinar o aluno a aprender outros métodos numéricos por conta própria. No seu dia-
a-dia profissional, ele pode se deparar com um problema cuja solução depende de um
método numérico que não foi visto no curso. Portanto, ele deverá ser capaz de encontrar
a literatura pertinente, estudar o método e aprender a sua utilização de maneira
conceitual e prática (usando um aplicativo computacional) por conta própria.
Apostila de Complementos de Cálculo Numérico 5
[Digite o título do documento] [Ano]
2. Representação Numérica
2.1 Introdução
A fim se realizarmos de maneira prática qualquer operação com números, nós
precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos
tomar como exemplo o número 2 . A fim de calcularmos, por exemplo, o valor de 2 -
1, nós precisamos escrever o número 2 de alguma outra forma, caso contrário não é
possível realizar essa operação. Podemos escreve-lo na base decimal, por exemplo, que é a
base mais usada na história da humanidade (graças 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
diferença entre essas várias formas de representar 2 ? A diferença é a quantidade de
algarismos significativos usados em cada representação. Agora podemos realizar a
operação proposta: 2 -1=0.41 ou 0.4142 ou ainda 0.41421356237, conforme o número de
algarismos significativos adotados na nossa representação.
Em uma máquina digital, como uma calculadora ou um computador, os
números não são representados na base decimal. Eles são representados na base binária, ou
seja, usam o número 2 como base ao invés do número 10. Como na base decimal existem
10 algarismos diferentes (0, 1, 2 ,3, 4, 5, 6, 7, 8, 9), na base binária existem somente 2
números: 0 e 1. Portanto, a base binária é usada porque essas máquinas utilizam-se de sinais
elétricos, sendo o 0 correspondente a ausência de sinal e o número 1 a presença do sinal
elétrico.
2.2 Ponto fixo e Ponto Flutuante
A princípio, toda vez que escrevemos um número, deveríamos mencionar a base
numérica a qual estamos nos referindo. Obviamente, isso não se faz necessário na prática,
pois estamos sempre representando os números na base decimal, portanto sabemos
exatamente o seu significado. Por exemplo, quando escrevemos o número 1532, o que
realmente queremos dizer? Estamos dizendo que esse número 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 representação posicional de números.
Na base binária, o mecanismo é o mesmo, porém, ao invés de potências de 10,
utilizamos potências de 2. Portanto, um número binário como 1011 (lembre-se que na base
binária 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 Cálculo Numérico 6
[Digite o título do documento] [Ano]
Essa idéia que está por trás da representação dos números em bases numéricas
é utilizada para representar números no computador. A fim de tornar a manipulação de
números mais eficiente, os computadores fazem a distinção entre números inteiros e
números reais. Um número inteiro apresenta a chamada representação de ponto fixo, onde a
posição do ponto “decimal” está fixa e todos os dígitos são usados para representar o número em si, com exceção do
primeiro dígito usado para representar o sinal desse número. A figura 2.1 ilustra essa representação.
Sinal Dígitos
Figura 2.1 - Representação de números inteiros.
Para um número real qualquer (inteiro ou não inteiro) é utilizada a representação de ponto flutuante, que é dada pela
expressão:
t (0.d1d2d3...dt) × b
e
onde:
0.d1d2d3...dt é uma fração na base b, também chamada de mantissa, com 0 ≤ di ≤ b-1, para todo i = 1,2,3,...,t, sendo t o número
máximo de dígitos da mantissa que é determinado pelo comprimento de palavra do computador; e é um expoente que varia em
um intervalo dado pelos limites da máquina utilizada.
Esse tipo de representação é chamada de ponto flutuante pois o ponto da fração “flutua” conforme o número a ser
representado e sua posição é expressa pelo expoente e. A figura 2.1 ilustra essa representação.
Sinal posição do ponto = expoente e dígitos = mantissa
Figura 2.2 - Representação de números reais.
Alguns exemplos da representação de ponto flutuante pode ser visto na tabela a seguir:
Número na base decimal Representação 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
2.3 Aplicação à Linguagem de Programação C
Na linguagem C é possível especificar a representação que deve ser usada para os números a serem armazenados em
uma dada variável. Para números inteiros (representação de ponto fixo) existem duas palavras chaves para declarar uma variável:
int e long. A diferença entre essas duas representações é o número de dígitos a ser usado. No caso do int, utiliza-se 15 dígitos
binários e mais um dígito para o sinal, ou seja, 16 bits que é igual a 2 bytes. Portanto, uma variável declarada com int pode
armazenar números de –32768 (=-2
15
) a +32767 (=2
15
-1).
Apostila de Complementos de Cálculo Numérico 7
[Digite o título do documento] [Ano]
Já a palavra chave long corresponde a representação de ponto fixo com 32 bits (31 dígitos binários para o número mais
um dígito para o sinal), ou seja, 4 bytes. Neste caso, uma variável declarada como long pode armazenar números de –
2.147.483.648 (= -2
31
) a 2.147.483.647 (=2
31
-1).
No caso da representação de ponto flutuante, também existem duas palavras: float e double. A palavra float corresponde
a representação com base binária (b=2), número máximo de dígitos igual a 24 (t=24) e expoente entre –126 e 127. Portanto,
uma variável declarada como float pode armazenar números reais entre ~10
-38
e ~10
38
. Já a palavra chave double apresenta um
número máximo de dígitos igual a 53 (t=53) e expoente entre –1022 e 1023, ou seja, varáveis declaradas como double podem
armazenar números entre ~10
-307
a ~10
307
.
Apostila de Complementos de Cálculo Numérico 8
[Digite o título do documento] [Ano]
3. Erros Numéricos
3.1 Introdução
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 século XX será: utilizando uma calculadora ou um computador. Indiscutivelmente, essa
é a resposta mais sensata e prática. Porém, um profissional que utilizará o resultado fornecido pela calculadora para projetar,
construir ou manter pontes, edifícios, máquinas, sistemas, dispositivos eletrônicos, etc., não 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 número irracional, isto é, não existe uma forma de representa-lo com um
número finito de algarismos. Portanto, o número apresentado pela calculadora é uma aproximação do valor real de
2
, já
que ela não pode mostrar infinitos algarismos. E quão próximo do valor real está o resultado mostrado?
Podemos criar algumas definições a fim de facilitar as discussões e trocas de informação sobre esse problema. Vamos
definir a diferença 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 operação. Essa definição corresponde ao erro absoluto de
um cálculo.
Porém, se estivermos trabalhando com números muito grandes, o erro pode ser grande em termos absolutos, mas o
resultado ainda será preciso. E o caso inverso também pode ocorrer: um erro absoluto pequeno, mas um resultado impreciso. Por
exemplo, digamos que o resultado de uma operação nos forneça o valor 2.123.542,7 enquanto o valor real que deveríamos obter
é 2.123.544,5. O erro absoluto neste caso é 1,8. Comparada com o valor real, essa diferença (o erro) é bem pequena, portanto,
podemos considerar o resultado preciso. Em um outro caso, digamos que o resultado da operação seja 0,234 e o resultado
esperado era 0,128. Desta vez o erro será igual a 0,106 , porém o resultado é bastante impreciso.
A fim de evitar esse tipo de ambigüidade, podemos criar uma nova definição. 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 precisão de um cálculo 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 Cálculo Numérico 9
[Digite o título do documento] [Ano]
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 também podem aparecer devido a outros tipos de problemas ou limitações.
A solução matemática de um determinado problema envolve diversas etapas, como discutido na introdução desta
apostila. A solução do problema se inicia com a criação de um modelo matemático do sistema em questão. Esse modelo sempre
apresentará aproximações e limitações. Além disso, na grande maioria das vezes, dados experimentais serão utilizados para se
obter a solução. Como toda medida experimental apresenta uma incerteza, a solução do problema será influenciada pelas
mesmas. Portanto, logo de início, existem diversos fatores que introduzem incertezas na solução numérica do problema. Esse
tipo de erro é chamado de erro inicial.
O problema discutido na introdução deste capítulo para o cálculo de
2
, que se refere a inevitável limitação na
representação de números irracionais (por exemplo), introduz erros no resultado. Esse tipo de erro é chamado de erro de
arredondamento.
Vamos considerar um outro tipo de problema prático que pode surgir ao realizarmos determinadas operações. Digamos
que precisamos calcular o valor de e
x
. Mais uma vez, iremos utilizar uma máquina digital (calculadora ou computador). Como
esse equipamento irá realizar essa operação? Sabemos que a exponencial é uma função que pode ser representada por uma série
infinita dada por:
  + + + + + + ·
! ! 3 ! 2
1
3 2
n
x x x
x e
n
x
(3.3)
e na prática é impossível calcular seu valor exato. Portanto, mais uma vez, teremos que fazer uma aproximação, que levará a um
erro no resultado final de e
x
. Neste caso, faremos um truncamento dessa série, e o erro gerado no valor de e
x
é chamado de erro
de truncamento.
3.3 Propagação e Condicionamento de Erros Numéricos
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 também irá gerar
um erro no resultado obtido. Portanto, o resultado da operação de subtração 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 então que, ao se resolver um problema numericamente, a cada etapa
e a cada operação 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 Cálculo Numérico 10
[Digite o título do documento] [Ano]
A propagação de erros é muito importante pois, além de determinar o erro final de uma operação numérica, ela também
determina a sensibilidade de um determinado problema ou método numérico. Se uma pequena variação nos dados de entrada de
um problema levar a uma grande diferença no resultado final, considera-se que essa operação é mal-condicionada, ou seja,
existe uma grande propagação de erros nessa operação. Por outro lado, se uma pequena variação nos dados de entrada leva a
apenas uma pequena diferença no resultado final, então essa operação é bem-condicionada.

3.4 Erros na Aritmética de Ponto Flutuante
Nós vimos nas seções anteriores que ao manipularmos os números de maneira prática, estaremos sempre trabalhando
com erros, devido a diversos fatores. Vamos agora examinar os erros mais comuns que aparecem quando um computador
manipula os números.
O primeiro tipo de erro que está presente na forma como computadores trabalham com números corresponde aos erros
de arredondamento e truncamento. Como citado anteriormente, esses erros estão presentes pois os computadores precisam
representar os números com uma quantidade finita de algarismos.
Vamos supor, para simplificação, um computador com uma representação 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 número
734,68, teríamos que trunca-lo para 0,7346× 10
3
ou arredonda-lo para 0,7347× 10
3
. Portanto, no truncamento, estaríamos
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 representação de ponto flutuante na base b e mantissa de t algarismos, os erros de truncamento serão dados por:
t e
b erro

<
(3.4)
onde o número em questão foi representado na forma x=fx× b
e
. E os erros de arredondamento serão dados por:
t e
b erro

× <
2
1
(3.5)
Portanto, para uma representação numérica 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 operações aritméticas realizadas pelo computador.
Vamos tomar como exemplo a soma dos números 6563 (= 0,6563× 10
4
) e 3,375 (= 0,3375× 10
1
) no nosso computador fictício
de mantissa com 4 algarismos. A soma desses dois números corresponde a 6566,375. Como nosso computador pode representar
com apenas 4 algarismos, o resultado dessa operação será 0,6566× 10
4
= 6566. Ou seja, apesar de partirmos de dois números
exatos, o resultado da soma não será exata. Mais uma vez, para um computador real, esse erro será pequeno, porém, se um
número muito grande de operações for realizado e se existir a necessidade de se obter um resultado bastante preciso, será
necessário se levar em consideração esse tipo de erro para avaliar o resultado obtido.
Existe mais um tipo de erro que aparece quando computadores manipulam números. Esse erro se refere à conversão de
números de uma base para a outra. O tipo de conversão mais comum é da base decimal (usada por humanos) para a base binária
(usada por computadores) e vice-versa. Um exemplo bastante peculiar é o número 0,1. Ao convertermos esse número da base
Apostila de Complementos de Cálculo Numérico 11
[Digite o título do documento] [Ano]
decimal para a base binária (existem diversos algoritmos para se realizar essa conversão, mas não 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 número está escrito.
Portanto, notamos que, ao se converter o número 0,1 da base decimal para a base binária, obtemos um número com
infinitos algarismos! Como esse número não pode ser representado pelo computador, ele será truncado, introduzindo um erro na
sua representação. 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 número não é igual a 100!
Apostila de Complementos de Cálculo Numérico 12
[Digite o título do documento] [Ano]
4. Resolução Numérica de Equações (Zero de
Funções)
4.1 Introdução
No exemplo usado na introdução desta apostila, vimos que ao tentar calcularmos a corrente elétrica de um circuito
simples contendo apenas uma bateria, um resistor e um diodo, já nos deparamos com um problema matemático de difícil
solução. Esse problema corresponde ao cálculo do valor da corrente i que satisfaz a equação
V R i
kT
q
i
I
s
− ⋅ − +
|
.

`
,
· ln 1 0 (4.1)
Em outras palavras, precisamos resolver ou encontrar o zero da função acima.
Neste capítulo iniciaremos o estudo de métodos numéricos que nos permitirão resolver problemas como esse.
4.2 Zeros ou Raízes de Funções
Dada uma função f(x), dizemos que α é raiz, ou zero de f se e somente f(α )=0.
Graficamente, os zeros de uma função f(x) correspondem aos valores de x em que a função intercepta o eixo horizontal
do gráfico, como mostrado na figura 4.1.
Figura 4.1 - Interpretação gráfica do zero de uma função.
Apostila de Complementos de Cálculo Numérico 13
g(x)
x b x x x x x a
1 2 3
4
5
[Digite o título do documento] [Ano]
A função g(x) da figura 4.1 tem 5 raízes no intervalo [a,b]: x1, x2, x3, x4, x5.
As raízes de uma função podem ser encontradas analiticamente, ou seja, resolvendo a equação f(x)=0 de maneira exata,
como mostrado nos exemplos a seguir:
0 3 3 ) 3 (
: pois ) ( de raíz é 3
3 ) ( ) 1
· − ·
·
− · −
f
x f x
x x f
0 4
2
3
.
3
8
2
3

: pois ) ( de raíz 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 soluções são 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
· · · − ·
+ · + − ·
· ·
·
·
t
·
· − · ∆
· + −
+ − · −
h h
) h( h
x h x x
x
x
x
x x
x x x h
Porém, nem sempre é possível se encontrar analiticamente a raiz de uma função, como nos casos a seguir:
Nestes casos precisamos de um método numérico para encontrar uma estimativa para a raiz da função estudada, ou
seja, um valor tão aproximado quando se deseje.
Tais métodos devem envolver as seguintes etapas:
(a) Determinação de um intervalo em x que contenha pelo menos uma raiz da função f(x), ou seja, isolamento das raízes;
(b) Calculo da raiz aproximada através de um processo iterativo até a precisão desejada.
Apostila de Complementos de Cálculo Numérico 14
) ln( ) ( ) 3
) sen( ) ( ) 2
1 2 ) ( ) 1
2 3
x x x h
e x x g
x x x x f
x
+ · −
+ · −
+ − + · −
[Digite o título do documento] [Ano]
4.3 Processos Iterativos
Existe um grande número de métodos numéricos que são processos iterativos. Como o próprio nome já diz (consulte
um dicionário para verificar o significado de iterativo), esses processos se caracterizam pela repetição de uma determinada
operação. A idéia nesse tipo de processo é repetir um determinado cálculo várias vezes, obtendo-se a cada repetição ou iteração
um resultado mais preciso que aquele obtido na iteração anterior. E, a cada iteração utiliza-se o resultado da iteração anterior
como parâmetro de entrada para o cálculo seguinte.
Alguns aspectos comuns a qualquer processo iterativo, são:
 Estimativa inicial: como um processo iterativo se caracteriza pela utilização do resultado da iteração anterior para o
cálculo 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;
 Convergência: a fim de se obter um resultado próximo do resultado real, é preciso que a cada passo ou iteração, o
resultado esteja mais próximo daquele esperado, isto é, é preciso que o método convirja para o resultado real. Essa
convergência nem sempre é garantida em um processo numérico. Portanto, é muito importante se estar atento a isso e
realizar a verificação da convergência do método para um determinado problema antes de tentar resolvê-lo;
 Critério de Parada: obviamente não podemos repetir um processo numérico infinitamente. É preciso pará-lo em um
determinado instante. Para isso, devemos utilizar um certo critério, que vai depender do problema a ser resolvido e da
precisão que precisamos obter na solução. O critério adotado para parar as iterações de um processo numérico é
chamado de critério de parada.
Para encontrarmos as raízes ou zeros de uma função iremos utilizar métodos numéricos iterativos. Como já
mencionado, o primeiro passo para se resolver um processo iterativo corresponde a obtenção de uma estimativa inicial para o
resultado do problema. No caso de zeros de funções, usamos a operação chamada de isolamento de raízes, que veremos na
seção seguinte.
4.4 Isolamento de Raízes
Para determinarmos o número e a localização aproximada de raízes de uma função, a fim de obtermos uma estimativa
inicial a ser usada nos processo iterativos, podemos examinar o comportamento dessa função através de um esboço gráfico.
Por exemplo, seja uma função f(x) tal que:
f( x ) = g( x ) - h( x ) (4.2)
As raízes de f(x), são tais que:
g( x ) – h (x ) = 0 (4.3)
ou ainda:
g( x ) = h (x ) (4.4)
Apostila de Complementos de Cálculo Numérico 15
+1
0
- 1
x
sen x
- cos x
1ª r aiz
2ª raiz
[Digite o título do documento] [Ano]
Assim, os valores de x em que o gráfico g(x) intercepta o gráfico de h(x) é a raiz de f(x).
Exemplo:
Dada a função f(x) = sen(x) - [-cos( x )], encontrar os intervalos que contenham raízes entre 0 e π 2 .
Partindo de f(x)=0, segue que:
sen( x ) – [-cos( x )] = 0
e que
sen( x ) = -cos( x )
Fazendo os gráficos de sen(x) e -cos(x) temos:

2
π
π
2

π 2
Pelo gráfico, vemos que a função g(x) irá interceptar a função 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 esboço gráfico é a forma mais prática de se obter um intervalo que contém pelo menos uma raiz da
função f(x). Muitas vezes é preciso se utilizar um método algébrico. Para isso, vamos recorrer ao teorema de Bolzano.
4.4.1 Teorema de Bolzano.
Seja uma função f(x) contínua em um intervalo [a,b], tal que, f(a).f(b)<0. Então a função f(x) possui pelo menos uma
raiz no intervalo [a,b].
Podemos verificar este teorema graficamente:
Apostila de Complementos de Cálculo Numérico 16
[Digite o título do documento] [Ano]
Exemplo: Seja a função f(x)=x⋅ ln(x)-3.2. Podemos calcular o valor de f(x) para valores arbitrários 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, concluímos que existe pelo menos uma raiz real no intervalo [2,3].
4.5 Método da Dicotomia ou Bissecção.
O método da dicotomia ou bissecção é a forma mais intuitiva de se obter a raiz de uma função. Seja uma função f(x)
contínua em um intervalo [a,b], e α uma raiz de f(x) isolada neste intervalo através de um dos métodos descritos no item
anterior.
Inicialmente, subdividimos este intervalo em suas duas metades, ou seja:
Apostila de Complementos de Cálculo Numérico 17
y
x
f ( b )
b a
f ( a )
y
x
f ( b )
f ( a )
a b
a b
x
y
]
]
]

+
]
]
]

+
b
b a
e
b a
a ;
2

2
;
[Digite o título do documento] [Ano]
Verificamos se a raiz está contida na primeira ou na segunda metade do intervalo inicial, usando o teorema de Bolzano.
Ou seja, se a função 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 função 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 contém 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 médio do intervalo em estudo onde sabemos que existe uma raiz. E,
como todo processo numérico, é importante estimarmos o erro nesse resultado obtido. No caso do método da bissecção, o erro
na estimativa será dado pela metade do comprimento do intervalo em estudo.
A seguir, uma ilustração desse processo, onde os sinais acima do eixo horizontal representam o sinal da função:
Exemplo: Encontre uma estimativa para a raiz de:

com um erro menor ou igual a 0,050.
Os gráficos de e
x
e de -x são:
Apostila de Complementos de Cálculo Numérico 18
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
+ · ) (
[Digite o título do documento] [Ano]
Através da interseção mostrada no grafíco, podemos concluir que a raiz de f(x) ∈ [-1,0].
Utilizando o método da dicotomia, temos:
Apostila de Complementos de Cálculo Numérico 19
-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
+
[Digite o título do documento] [Ano]
Portanto, a raiz da função f(x)=e
x
+x é igual a –0,594 t 0,032.
4.6 Critérios de Parada em um Processo Iterativo
Foi usado, até o momento, o seguinte critério de parada:
estipulado erro
2


k k
a b
(4.5)
onde [ ] ,
k k
b a é o intervalo que contêm a raiz da função após k iterações.
No entanto, se tivermos uma função 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 condição:
) f(x
0
≤ erro estipulado (4.6)
Apostila de Complementos de Cálculo Numérico 20
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 raíz
α é a raiz de f(x)
[Digite o título do documento] [Ano]
Tanto o critério (4.5), quanto o critério (4.6), podem levar a um número muito grande de iterações. Uma maneira de se
contornar este problema é tomar como um critério de parada adicional, um certo número de iterações máximo.
4.6.1 Estimativa do número de iterações no método da bisseção.
Como, no método da bisseção, em cada passo, dividimos o intervalo por 2, temos:

2
k
o o
k k
a b
a b

· − (4.7)

onde k é o número de iterações e [ao,bo] é o intervalo inicial que isola a raiz da função.
Dado o seguinte critério de parada:
ε
2


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 Cálculo Numérico 21
[Digite o título do documento] [Ano]
( )
( )
1 -
2 log
log log
k
ε − −

o o
a b
(4.13)
A expressão (4.13) dá o número de iterações necessárias para que o critério de parada, definido em (4.8), seja satisfeito.
4.7 Método das Aproximações Sucessivas ou Método de
Iteração Linear (MIL)
O método da iteração linear é um processo iterativo que apresenta vantagens e desvantagens em relação ao método da
bissecção.
Seja uma função f(x) contínua em um intervalo [a,b] que contenha uma raiz de f(x). O Método de Iteração Linear inicia-
se reescrevendo a função 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 função ϕ (x), teremos como resultado o
próprio valor de x. Portanto, a raiz de f(x) será o ponto fixo de ϕ (x), ou seja, o valor que ao ser substituído em ϕ (x) retorna o
próprio valor de x.
Por exemplo, a função
f(x) = x
2
- x – 2
pode ser reescrita como,
f(x) = x
2
– 2 – x = ϕ (x) – x ,
onde ϕ (x) = x
2
– 2. Essa função 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 numérico que ao substituirmos em ϕ (x) retorna o
próprio valor de x. Para encontrarmos esse valor de x, vamos utilizar um processo iterativo, onde começamos 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
iteração como a nova estimativa de x, ou seja, fazendo:
) (
1 k k
x x ϕ ·
+
(4.17)
Apostila de Complementos de Cálculo Numérico 22
[Digite o título do documento] [Ano]
onde, k é a ordem da iteração em que estamos (k = 0, 1, 2, 3, 4, ...). A função ϕ (x) é chamada de função de iteração. Pode-se
notar que dada uma função f(x) existem diversas funções de iteração que podem ser usadas no processo.
Exemplo: Encontre algumas funções de iteração a partir de f (x) = x
2
+ ln(x) - x +1.
ou então,
ou ainda,
Mais um exemplo,
Exemplo: Encontre uma estimativa para a raiz de :
usando o método da iteração linear.
Vamos iniciar a solução encontrando uma boa estimativa inicial para o valor da raiz de f(x). Para isso, vamos usar o
método gráfico para o isolamento de raízes. Escrevendo:
f(x) = g(x) – h(x) ⇒g(x) = x
2
e h(x) = e
x
temos:
Apostila de Complementos de Cálculo Numérico 23
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
) (
-4
-2
0
2
4
-4 -2 0 2 4
x*x
exp(x)
[Digite o título do documento] [Ano]
A partir do esboço gráfico acima, conclui-se que a raiz encontra-se no intervalo [-1,0].
Devemos agora escolher uma função de iteração ϕ (x). Para isso, escrevemos:
x
x
e x
e x
x f
t ·
· −
·
0
0 ) (
2
Ou seja, podemos ter como função iteração, 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 iteração k, vemos que a cada etapa nos aproximamos mais da raiz de
f(x), pois o valor dessa função fica mais próximo de zero a cada iteração, como mostrado na tabela abaixo:
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
Apostila de Complementos de Cálculo Numérico 24
1
-1
[Digite o título do documento] [Ano]
4.7.1 O problema da convergência no Método da Iteração Linear
Como já discutido, para se obter um resultado coerente e preciso com um processo iterativo, é necessário que a cada
iteração a resposta se aproxime mais e mais da solução real, ou seja, que o método convirja para o valor real. No caso do
método da bissecção, nós não precisamos nos preocupar com a convergência, pois com esse método ela está sempre garantida, já
que isolamos a raiz em um dado intervalo e nunca deixamos esse intervalo inicial. Já no método da iteração linear, a
convergência não é garantida a priori. A cada iteração podemos nos aproximar ou nos afastar da solução real. Portanto, antes de
resolver um problema através desse método é preciso se verificar se haverá ou não a convergência.
O seguinte Teorema coloca condições suficientes, porém não necessárias para que o método de iteração linear seja
convergente.
Teorema:
Seja uma função f(x) contínua em um intervalo [a,b] e α uma raiz de f(x) contida em [a,b].
Seja ϕ (x) uma função de iteração obtida a partir de f(x).
Se:
i) ϕ (x) e ϕ ’(x) forem contínuas em [a,b];
ii) |ϕ ’(x)| < 1 (para todo) ∀ x ∈ [a,b];
iii) x0 ∈ [a,b].
Então:
Exemplo: Deseja-se encontrar a raiz de . Para isto, pretende-se usar uma das seguintes funções de
iteração:
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 condições (i) e (ii) do Teorema de convergência no intervalo [1,2].
Vamos iniciar verificando a condição (i) para a função ϕ 1(x).
Apostila de Complementos de Cálculo Numérico 25
α ·
+∞ → n n
x lim
08 , 2 96 , 0 ) (
2
− + · x x x f
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
·
− ·
·
t −
·
· ∆
· − +
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
[Digite o título do documento] [Ano]
Ambas as funções ϕ 1(x) e ϕ 1‘(x) são contínuas (para todo) ∀ x ∈ R com x ≠ -0,96.
Em seguida, vamos verificar a condição (ii) para ϕ 1(x).
Portanto, para os valores de x que satisfazem a equação acima, teremos |ϕ 1(x)| < 1, ou seja , a condição (ii) do teorema
da convergência é satisfeita. Vamos encontrar as raízes da função acima (x
2
+ 1.92x – 1,1584) e, como ela se trata de uma
parábola com concavidade para cima, sabemos que a função 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 raízes dessa função são:
Portanto:
| ϕ 1‘(x) | < 1 para x< –2,40 ou x > 0,48.
Finalmente, concluímos que as condições (i) e (ii) do Teorema de Convergência são satisfeitas por:
Apostila de Complementos de Cálculo Numérico 26
[Digite o título do documento] [Ano]
no intervalo [1,2].
Vamos verificar se essas condições são satisfeitas para a função ϕ 2(x). Para a condição (i), temos:
Portanto, ϕ 2 (x) e ϕ 2‘(x) são contínuas para ∀ x ∈ R . Para a condição (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) não satisfaz a condição (ii) do Teorema de Convergência, no intervalo [1,2].
Exemplo: Já calculamos o valor da raiz da função f(x) = x
2
– e
x
, utilizando:
( )
x
e x − · ϕ
Vamos verificar se essa função satisfaz as condições do teorema da convergência. Para a condição (i), temos:
( )
( )
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) são contínuas para ∀ x ∈ R.
Para a condição (ii), devemos ter |ϕ ’(x)| < 1, ou seja:
Apostila de Complementos de Cálculo Numérico 27
96 , 0
08 , 2
) (
1
+
·
x
x ϕ
96 , 1 2 ) ( '
08 , 2 96 , 1 ) (
2
2
2
+ ·
− + ·
x x
x x x
ϕ
ϕ
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
[Digite o título do documento] [Ano]
Finalmente, para a condição (iii), devemos ter x0 < 1,386, que é satisfeita para x0 = -0.5, que foi o valor usado.
Ainda nesse exemplo, vimos que a função ( )
x
e x · ϕ , a princípio, também poderia ser usada. Mas, será que ela
satisfaz todas as condições do teorema da convergência?
Devido sua semelhança com a função ( )
x
e x − · ϕ , podemos concluir que ela satisfaz o teorema da convergência
também para valores de x < 1,386.
Ao tentarmos resolver este problema usando a função ( )
x
e x − · ϕ , notamos que essa condição não é 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 iterações que estamos (i), o valor de ϕ (xi) e de f(xi) para cada iteração:
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
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. Também podemos notar que isso acontece devido ao fato de usarmos valores de x > 1,386 a partir da iteração
i=2. Portanto, essa função não satisfaz o teorema da convergência em todas as iterações.
4.7.2 Critérios de Parada no método da iteração linear
No caso do método da iteração linear, podemos usar qualquer uma (ou todas simultaneamente) das condições abaixo como
critério de parada:
1. Variação de xk :
Conforme avançamos no número de iterações, se as estimativas da raiz de f(x) começam a variar muito pouco, podemos
concluir que estamos bem próximos da raiz de f(x) e o processo iterativo pode ser parado.
2. Valor de f(xk):
3. Número de Iterações.
Apostila de Complementos de Cálculo Numérico 28
ε <


k
k k
x
x x
1
( ) ε <
k
x f
[Digite o título do documento] [Ano]
4.8 Método de Newton-Raphson
O Método de Newton-Raphson é um caso particular do método de iteração linear.
O método de iteração linear consiste em estimar a raiz de uma função f(x) usando o processo iterativo:
) (
1 n n
x x ϕ ·
+
(4.18)
Podemos escrever uma forma geral para a função de iteração:
) ( ). ( ) ( 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 convergência no método da iteração linear é preciso que |ϕ ’(x)|<1 em um intervalo [a,b] que contém a
raiz de f(x). Portanto, a idéia no método de Newton-Raphson é escolher uma função ϕ (x) tal que ϕ ’(α )=0 onde α é a
raiz de f(x) e α ∈ [a,b]. Com isso, teremos |ϕ ’(x)|<1 desde que não nos afastemos muito do valor de α durante o processo
de resolução do problema.
Derivando ϕ (x) dada pela expressão (2) em relação 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:

) ( '
1
) (
x f
x A − ·
(4.25)
em (4.19) segue que:
Apostila de Complementos de Cálculo Numérico 29
[Digite o título do documento] [Ano]
( )
) ( '
) (
x f
x f
x x − · ϕ
(4.26)
O Método de Newton-Raphson consiste em usar o processo iterativo xn+1 = ϕ (xn) e como função de iteração a
expressão (4.26).
4.8.1 Convergência do Método de Newton-Raphson
Apesar de obtermos a forma da função ϕ (x) procurando garantir a convergência do processo iterativo, esta não esta
sempre garantida para este método (mas quase sempre). A convergência no método de Newton-Raphson esta sempre garantida
para um certo intervalo [a,b] que contém a raiz de f(x), desde que f(x) e f’(x) sejam contínuas 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 convergência estará
garantida. Em outras palavras, para o método de Newton-Raphson convergir, é preciso que nossa estimativa inicial esteja
próxima da raiz de f(x). A proximidade exigida para a convergência vai depender de caso a caso e nem sempre é simples de
determinar.
4.8.2 Interpretação Geométrica
Dado xn, o ponto xn+1 será obtido pela intercessão 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 expressão, obtemos a fórmula de Newton-Raphson, ou seja:
) ( '
) (
1
n
n
n n
x f
x f
x x − ·
+
(4.28)
Portanto, a cada iteração do nosso processo, nos aproximamos cada vez mais da raiz de f(x) através da tangente (ou seja,
da derivada) da função f(x).
A figura a seguir ilustra essa interpretação geométrica do Método de Newton-Raphson.
Apostila de Complementos de Cálculo Numérico 30
[Digite o título do documento] [Ano]
Exemplo:
Calcule a raiz de , usando o método de Newton-Raphson, x0 = 3 como estimativa inicial e como
critério de parada |f(xn)| ≤ 0,020.
Para encontrar a raiz de f(x) usando o método 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 Cálculo Numérico 31
x x
n+1 n
( x , f(x ) ) n n
x
f(x )
n
α
6 ) (
2
− + · x x x f
0039 , 2 · x
[Digite o título do documento] [Ano]
4.9 Lista de Exercícios
1. Quais são as 3 causas mais importantes de erros numéricos em operações realizadas em
computadores e calculadoras?
2. Cite as características básicas de todo processo iterativo.
3. O que é um zero ou raiz de função?
4. Como você poderia usar o método da bissecção para estimar o valor de 7 ? Estime esse
valor com uma precisão de (ou erro menor que) 0,1.
5. Dada a função ( ) ( ) 4 sen
2
+ − · x x x f :
(a) Determine o intervalo em x que contém pelo menos uma raiz de f(x) (graficamente ou aritmeticamente usando o
Teorema de Bolzano);
(b) Partindo-se desse intervalo, utilize o método da bissecção para determinar o valor dessa raiz após 4 iterações.
(c) Qual é o erro no seu resultado final?
6. Dada a função ( ) 2
2
− + ·

x e x f
x
:
(a) Determine graficamente o intervalo em x que contém pelo menos uma raiz de f(x);
(b) Faça a mesma estimativa, mas desta vez aritmeticamente usando o Teorema de Bolzano;
(c) Partindo-se desse intervalo, utilize o método da bissecção para determinar o valor dessa raiz com uma precisão de 0,05.
7. O que significa a convergência de um método iterativo? Que condições garantem a
convergência no método da iteração linear? O que fazer caso seja constatado que o método
da iteração linear não irá convergir para um dado problema?
8. Dada a função f(x)=ln(x) –x
2
+ 4, mostre 3 formas para a função ϕ (x) que poderiam ser
usadas para se estimar a raiz de f(x).
9. Mostre que as seguintes funções de interação satisfazem as condições (i) e (ii) do teorema de
convergência:
(a) ( )
3
1
9
3
+ ·
x
x ϕ
(b) ( )
2
) cos( x
x · ϕ
(c) ( )
2
) 2 / exp( x
x · ϕ
Apostila de Complementos de Cálculo Numérico 32
[Digite o título do documento] [Ano]
(d) ( )
3 / 1
) 1 ( + · x x ϕ
10. Estime as raízes positivas das seguintes funções pelo método de iteração linear, usando o
critério 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 funções de interação do exercício anterior.
11. Seja a seguinte função:
1
1
) (
2
3
+ − · x
x
x f
Use o método de Newton-Raphson para encontrar uma estimativa da raíz de f(x) tal que |f(x)| < 10
-4
. Parta de xo=1.
12. Deseja-se resolver a seguinte equação usando o Método de Newton-Raphson:
0 6
5
· − x
qual o valor da raiz tal que:
5 1
10
− −
<

n
n n
x
x x
?
Quantas iterações são necessárias para se encontrar a raiz, atingindo o critério acima, com
(a) xo= -15
(b) xo= 2
(c) xo= 20
13. Seja a função 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) Faça a mesma estimativa usando o método de Newton-Raphson. Qual dos dois métodos converge mais rapidamente?
(d) Um outro critério de parada que poderia ser usado corresponde à verificação se o valor de f(x) está próximo de zero.
Qual resultado para a raiz de f(x) se obteria caso se usasse como critério de parada a condição |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 possível função de iteração obtida a partir de f(x).
(c) Verifique se ϕ (x) satisfaz as condições (i) e (ii) do Teorema de Convergência.
Apostila de Complementos de Cálculo Numérico 33
[Digite o título do documento] [Ano]
(d) Encontre uma estimativa para a raiz de f(x) através do método da iteração linear e usando a função ϕ (x) do item (c),
tal que |f(x)| < 0,0070.
(e) Faça a mesma estimativa, mas desta vez ao invés de utilizar a função ϕ (x) do item (c), utilize o método de Newton-
Raphson.
5. Interpolação Polinomial
5.1 Introdução
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 não 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 analítica de f(x).
A interpolação polinomial consiste em se obter um polinômio 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 começa em zero, portanto temos n+1 pontos na expressão acima).
O polinômio p(x) é chamado de polinômio interpolador. É possível se demonstrar que existe um único polinômio 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 Noções de Cálculo
Numérico para uma demonstração dessa proposição).
5.2 Forma de Lagrange
Seja um conjunto de n+1 dados {xi,f(xi)}. Queremos encontrar um polinômio interpolador p(x) que satisfaça a condição (1), isto
é, passe por todos os pontos.
Uma possível forma para p(x) que satisfaça (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) são polinômios tais que:
( ) L x
k i ki
·δ (5.3)
sendo que:
Apostila de Complementos de Cálculo Numérico 34
[Digite o título do documento] [Ano]
δ
ki
se k i
se k i
·

·
¹
'
¹
0
1
,
,
(5.4)
Portanto,
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 polinômio interpolador p(x) passa exatamente sobre os pontos {xi,f(xi)} da tabela dada.
Temos agora que encontrar os polinômios Lk(x), que satisfaçam (3). Uma função que satisfaz a condição (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 é fácil verificar, pois:
( )
( )
L x e
L x se i k
k k
k i
·
· ≠
1
0 ,
De maneira compacta, podemos escrever o polinômio 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 Interpolação 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 Cálculo Numérico 35

·
+ · ·
1
0
1 1 0 0
) ( ). ( ) ( ). ( ) ( ). ( ) (
i
i i
x f x L x f x L x f x L x p
[Digite o título do documento] [Ano]
As funções 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)
É fácil verificar que, as seguintes funções, 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 Interpolação para 3 pontos (n+1=3) - ajuste de parábolas (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 construção:
( ) ( )
( ) ( )
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 Cálculo Numérico 36
1 0
1
0
) (
x x
x x
x L


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


·
[Digite o título do documento] [Ano]
( ) ( )
( ) ( )
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 Diferenças Divididas.
Para que possamos discutir a Forma de Newton temos que antes nos familiarizar com a construção da chamada “Tabela
de Diferenças 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 Cálculo Numérico 37
[Digite o título do documento] [Ano]
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 diferenças divididas é:
xi f(xi) f[xi , xi+1] f[xi , xi+1, xi+2] f[xi , xi+1 , xi+2 ,xi+3]
Apostila de Complementos de Cálculo Numérico 38
[Digite o título do documento] [Ano]
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 Polinômio Interpolador
Para calcularmos o polinômio interpolador da Forma de Newton, vamos começar com o caso mais simples: encontrar
um polinômio de grau 0, p0(x), que interpola f(x) no ponto x0. Vamos partir da diferença 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 expressão acima, tem-se:
( ) ( ) [ ] ( )
0 0 0
, x x x x f x f x f − ⋅ + · (5.11)
Da própria definição de polinômio interpolador, sabe-se que:
p0(x)=f(x0) (5.12)
Portanto, a expressão (5.3) pode ser escrita como:
( ) ( ) [ ] ( )
0 0 0
, x x x x f x p x f − ⋅ + · (5.13)
Apostila de Complementos de Cálculo Numérico 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
·


( )
350 , 2
1 , 0 7 , 0
923 , 0 487 , 0
·

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


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


008 , 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
·

− −
[Digite o título do documento] [Ano]
A expressão acima não pode ser usada diretamente, pois não podemos calcular o valor f[x0,x], já que não conhecemos o
de f(x) em qualquer ponto x (veja expressão (5.1) acima). Fora do ponto x0, sabemos que o polinômio interpolador é apenas uma
aproximação de f(x), caso contrário teríamos uma resposta exata e não precisaríamos da interpolação. Em outras palavras, tem-se
que:
p0(x)≈ f(x), para x≠ x0 (5.14)
Portanto, da expressão (5.4), concluímos que f[x,x0]⋅ (x-x0) é simplesmente a diferença entre o valor de f(x) (valor real
da função) e o valor p0(x) que obtivemos com a interpolação. Em outras palavras, esse termo é o erro no processo de
interpolação, isto é:
( ) ( ) ( ) [ ] ( )
0 0 0 0
, x x x x f x p x f x E − ⋅ · − · (5.15)
Podemos realizar o mesmo exercício, partindo de uma diferença 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 polinômio 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 Cálculo Numérico 40
[Digite o título do documento] [Ano]
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 são as condições fundamentais para se encontrar tal polinômio.
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 polinômio interpolador de uma ordem n qualquer, aplicando
sempre o mesmo raciocínio. A expressão geral para um polinômio interpolador de ordem n será então:
( ) ( ) ( ) [ ] ( ) ( ) [ ]
( ) ( ) ( ) [ ]
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 polinômio 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
Apostila de Complementos de Cálculo Numérico 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
[Digite o título do documento] [Ano]
Usando (5.9):
Note que usando a forma de Newton, p(xi) = f(xi)
5.4 Exercícios
1. Qual é a condição básica para se obter o polinômio interpolador?
2. Qual a relação entre o número de pontos usados na interpolação e o grau do polinômio 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 interpolação linear,
isto é, encontrar uma reta que lhe permita obter o valor de f(x′ ), onde x1<x′ <x2:
a) Qual seria o grau do polinômio que você calcularia, isto é, quantos pontos você utilizaria?
b) E quais pontos da tabela você usaria?
4. A seguinte tabela informa o número de carros que passam por um determinado pedágio em um determinado dia:
Horário 10:00 10:30 11:00 11:30 12:00 12:30
Número (em mil) 2.69 1.64 1.09 1.04 1.49 2.44
a) Faça um gráfico de horário vs. número de carros para verificar qual a tendência da curva.
b) Estime o número de carros que passariam pelo pedágio às 11:10, usando a forma de Lagrange para encontrar um
polinômio interpolador p(x) que estima o número de carros em função do tempo. Use uma reta como função
interpoladora.
c) Agora, faça a mesma estimativa, mas utilizando uma parábola como polinômio interpolador.
5. Na fabricação de determinadas cerâmicas é muito importante saber as condições de temperatura em que o produto foi assado
no forno. Como não é possível medir a temperatura do forno a todo instante, ela é medida em intervalos periódicos de tempo e
esses dados são interpolados para o instante em que cada peça 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:
Horário 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 diferenças divididas para esses pontos.
b) Estime a temperatura do forno ás 14:30 usando a forma de Newton para apenas dois pontos.
c) Faça essa estimativa novamente, desta vez usando 3 pontos.
Apostila de Complementos de Cálculo Numérico 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

[Digite o título do documento] [Ano]

Antonio Cesar Germano Martins

Apostila de Complementos de Cálculo Numérico

2

[Digite o título do documento] [Ano]

1. Introdução: O que é o cálculo numérico, sua importância e os objetivos do curso
1.1 O que é o Cálculo Numérico?
O Cálculo Numérico corresponde a um conjunto de ferramentas ou métodos usados para se obter a solução de problemas matemáticos de forma aproximada. Esses métodos se aplicam principalmente a problemas que não apresentam uma solução exata, portanto precisam ser resolvidos numericamente. O que isso quer dizer? Vamos tomar um exemplo para entender melhor os objetivos do Cálculo Numérico. Seja um circuito elétrico composto de uma fonte de tensão (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 tensão V e da resistência R. O primeiro passo é formular um modelo matemático para o nosso sistema físico (o circuito), e encontrar a solução do problema representado por esse modelo.
R V

Figura 1.1: Circuito elétrico composto de uma fonte de tensão e um resistor.

No caso do circuito da Figura 1.1, o modelo matemático também é bastante simples. Utilizando-se a Lei de Kirchoff (não se preocupe com essa lei caso você não a conheça), teremos a seguinte equação para o circuito: V − R⋅i = 0 (1.1) Esse é o nosso modelo matemático para o circuito (sistema físico). O modelo apresenta uma equação bastante simples que tem uma solução exata. Portanto, nosso problema (encontrar a corrente elétrica do circuito) pode ser resolvido de maneira exata, cuja solução é dada por:
i=

Por exemplo, se V=10 V e R=100 Ω , teremos que i=0,1 ª Como esse problema tem uma solução exata, não é preciso utilizar os métodos do cálculo numérico para resolve-lo. Porém, digamos que um outro componente eletrônico seja
Apostila de Complementos de Cálculo Numérico 3

V R

(1.2)

[Digite o título do documento] [Ano]
incluído no circuito: um diodo semicondutor. Esse dispositivo tem uma curva característica, isto é, a tensão nesse componente em função da corrente, que é dada por:
v( i ) =  kT  i ln  + 1 q  Is 

(1.3)

onde k e Is são constantes, q é a carga do elétron e T a temperatura do dispositivo. Essa equação corresponde ao modelo matemático do diodo (não se preocupe em entender esta equação, pois isto é só um exemplo). Portanto, ao se incluir o diodo no circuito da Figura 1.1, tem-se a seguinte equação descrevendo o comportamento da corrente elétrica no circuito:
V − R ⋅i −  kT  i ln  + 1 = 0 q  Is 

(1.4)

A inclusão desse novo componente no circuito tornou nosso problema mais complicado e de difícil solução analítica. O que isso quer dizer? Tornou-se difícil se obter uma expressão para i, principalmente quando comparado ao caso anterior, quando tínhamos simplesmente i=V/R. Como resolver esse problema então? Como obter o valor de i? A solução está na utilização de métodos numéricos que serão aprendidos neste curso.

1. 2 A importância do curso de Cálculo Numérico
Ao resolver um problema matemático numericamente, o mais comum é o profissional utilizar um pacote computacional. Porém, ele terá que tomar uma série de decisões antes de resolver o problema. E para tomar essas decisões, é preciso ter conhecimento de métodos numéricos. O profissional terá que decidir:  Pela utilização ou não de um método numérico (existem métodos numéricos para se resolver este problema?);  Escolher o método a ser utilizado, procurando aquele que é mais adequado para o seu problema. Que vantagens cada método oferece e que limitações eles apresentam;  Saber avaliar a qualidade da solução obtida. Para isso, é importante ele saber exatamente o que está sendo feito pelo computador ou calculadora, isto é, como determinado método é aplicado.

1.3 Objetivos do Curso:
Os principais objetivos do curso são: • Apresentar diversos métodos numéricos para a resolução de diferentes problemas matemáticos. Pretende-se deixar bem claro a importância desses métodos, mostrando:  a essência de um método numérico;  a diferença em relação a soluções analíticas;
Apostila de Complementos de Cálculo Numérico 4

[Digite o título do documento] [Ano]  as situações em que eles devem ser aplicados.  e as limitações na sua aplicação e confiabilidade na solução obtida. • Treinar o aluno a aprender outros métodos numéricos por conta própria.  as vantagens de se utilizar um método numérico. No seu diaa-dia profissional. • Apresentar ao aluno maneiras práticas de se desenvolver e utilizar métodos numéricos. Isso significa mostrar como usar esses métodos numéricos na calculadora e em um computador. mostrando seu lado prático e sua utilidade no dia-a-dia de um engenheiro. Rever conceitos já vistos. ele pode se deparar com um problema cuja solução depende de um método numérico que não foi visto no curso. estudar o método e aprender a sua utilização de maneira conceitual e prática (usando um aplicativo computacional) por conta própria. Portanto. • Melhorar a familiarização e “intimidade” do aluno com a matemática. Apostila de Complementos de Cálculo Numérico 5 . exercitá-los e utilizá-los de maneira prática. ele deverá ser capaz de encontrar a literatura pertinente.

isso não se faz necessário na prática.41421356237. Na base binária. Eles são representados na base binária. nós precisamos escrever o número 2 de alguma outra forma. 1. ao invés de potências de 10. 2 . pois estamos sempre representando os números na base decimal. Representação Numérica 2. O valor de 2 na base decimal pode ser escrito como 1. como uma calculadora ou um computador. por exemplo.4142 ou ainda 1. porém. O que isso significa? Vamos tomar como exemplo o número 2 . escrevendo a base de outra forma. Portanto. 1× 103 + 5× 102 + 3× 101 + 2× 100. 4.2 Ponto fixo e Ponto Flutuante A princípio. na base binária existem somente 2 números: 0 e 1. Obviamente. Por exemplo. nós precisamos representa-los em uma determinada base numérica. deveríamos mencionar a base numérica a qual estamos nos referindo. por exemplo.41 ou 1. sendo o 0 correspondente a ausência de sinal e o número 1 a presença do sinal elétrico. Em uma máquina digital.41 ou 0. 6. que é a base mais usada na história da humanidade (graças a nossa anatomia). caso contrário não é possível realizar essa operação. toda vez que escrevemos um número. os números não são representados na base decimal. 2. Como na base decimal existem 10 algarismos diferentes (0. usam o número 2 como base ao invés do número 10. utilizamos potências de 2. Apostila de Complementos de Cálculo Numérico 6 . portanto sabemos exatamente o seu significado. conforme o número de algarismos significativos adotados na nossa representação. Portanto. ou seja. o mecanismo é o mesmo. Podemos escreve-lo na base decimal. 8.4142 ou ainda 0. Essa é a chamada representação posicional de números.3.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números. A fim de calcularmos. 5. ou. a base binária é usada porque essas máquinas utilizam-se de sinais elétricos. o valor de 2 1.[Digite o título do documento] [Ano] 2. um número binário como 1011 (lembre-se que na base binária só existem os algarismos 0 e 1) significa 1× 23 + 0× 22 + 1× 21 + 1× 20 que na base 10 seria 8+2+1=11. 7.41421356237. o que realmente queremos dizer? Estamos dizendo que esse número representa uma quantidade equivalente a 1× 1000 + 5× 100 + 3× 10 + 2. Qual é a diferença entre essas várias formas de representar 2 ? A diferença é a quantidade de algarismos significativos usados em cada representação. 9). Agora podemos realizar a operação proposta: 2 -1=0. quando escrevemos o número 1532.

. A diferença entre essas duas representações é o número de dígitos a ser usado. Um número inteiro apresenta a chamada representação de ponto fixo.1532 0.[Digite o título do documento] [Ano] Essa idéia que está por trás da representação dos números em bases numéricas é utilizada para representar números no computador.t.1532× 102 0.3. Sinal Dígitos Figura 2.d1d2d3. os computadores fazem a distinção entre números inteiros e números reais.1 .32 0. No caso do int.Representação de números inteiros.Representação de números reais.. que é dada pela expressão: ± (0.1010 base 10 10 10 10 2 Expoente 4 2 -2 1 4 2.. A figura 2. Sinal posição do ponto = expoente e dígitos = mantissa Figura 2.2 . ou seja.1 ilustra essa representação. utiliza-se 15 dígitos binários e mais um dígito para o sinal. Esse tipo de representação é chamada de ponto flutuante pois o ponto da fração “flutua” conforme o número a ser representado e sua posição é expressa pelo expoente e.10× 102 0. para todo i = 1.d1d2d3.. A figura 2.2. com 0 ≤ di ≤ b-1. Apostila de Complementos de Cálculo Numérico 7 . Alguns exemplos da representação de ponto flutuante pode ser visto na tabela a seguir: Número na base decimal 1532 15. sendo t o número máximo de dígitos da mantissa que é determinado pelo comprimento de palavra do computador. onde a posição do ponto “decimal” está fixa e todos os dígitos são usados para representar o número em si.255× 10-2 0.1 ilustra essa representação.1532 0.dt) × be onde: 0.3 Aplicação à Linguagem de Programação C Na linguagem C é possível especificar a representação que deve ser usada para os números a serem armazenados em uma dada variável. A fim de tornar a manipulação de números mais eficiente. 16 bits que é igual a 2 bytes. Para um número real qualquer (inteiro ou não inteiro) é utilizada a representação de ponto flutuante..dt é uma fração na base b..00255 10 10 Representação em ponto flutuante 0.255 0. com exceção do primeiro dígito usado para representar o sinal desse número. Portanto. uma variável declarada com int pode armazenar números de –32768 (=-215) a +32767 (=215-1). também chamada de mantissa. Para números inteiros (representação de ponto fixo) existem duas palavras chaves para declarar uma variável: int e long. e é um expoente que varia em um intervalo dado pelos limites da máquina utilizada.1532× 104 0.10 0...1010× 24 mantissa 0.

uma variável declarada como long pode armazenar números de – 2. número máximo de dígitos igual a 24 (t=24) e expoente entre –126 e 127. Neste caso. A palavra float corresponde a representação com base binária (b=2). ou seja.483. Apostila de Complementos de Cálculo Numérico 8 . Já a palavra chave double apresenta um número máximo de dígitos igual a 53 (t=53) e expoente entre –1022 e 1023.147. varáveis declaradas como double podem armazenar números entre ~10-307 a ~10307. Portanto.147. também existem duas palavras: float e double.648 (= -231) a 2. ou seja.[Digite o título do documento] [Ano] Já a palavra chave long corresponde a representação de ponto fixo com 32 bits (31 dígitos binários para o número mais um dígito para o sinal).483. No caso da representação de ponto flutuante. uma variável declarada como float pode armazenar números reais entre ~10-38 e ~1038.647 (=231-1). 4 bytes.

teremos um erro relativo de 0. ainda mais importante é a pergunta: qual é a confiabilidade do resultado que obtemos? Essa pergunta faz sentido pois 2 é um número irracional. podemos considerar o resultado preciso. não pode aceitar o valor obtido antes de fazer alguns questionamentos (pelo menos uma vez na sua vida profissional).0000008 ou 0. máquinas. Porém. Comparada com o valor real. Por exemplo. construir ou manter pontes. essa diferença (o erro) é bem pequena. o que realmente estamos fazendo? Em outras palavras.123. o erro pode ser grande em termos absolutos. O erro absoluto neste caso é 1. Porém. digamos que o resultado de uma operação nos forneça o valor 2. edifícios. sistemas.1) Quanto menor for esse erro.[Digite o título do documento] [Ano] 3. porém o resultado é bastante impreciso. não existe uma forma de representa-lo com um 2 .5.00008% no primeiro caso e um erro relativo igual a 0. um profissional que utilizará o resultado fornecido pela calculadora para projetar.106 . o que a calculadora fez para obter o resultado? Para um engenheiro. digamos que o resultado da operação seja 0. Apostila de Complementos de Cálculo Numérico 9 . mas um resultado impreciso. ou seja: errorelativo= valor_ real− valor_ aproxim ado valor_ real (3. E quão próximo do valor real está o resultado mostrado? Podemos criar algumas definições a fim de facilitar as discussões e trocas de informação sobre esse problema. podemos criar uma nova definição.7 enquanto o valor real que deveríamos obter é 2.. Quando calculamos. Podemos definir o erro relativo. No exemplo acima. dispositivos eletrônicos. Vamos definir a diferença entre o valor real da grandeza que queremos calcular e o valor aproximado que efetivamente calculamos como sendo o erro. Indiscutivelmente. E o caso inverso também pode ocorrer: um erro absoluto pequeno. o valor de 2 em uma calculadora ou em um computador. Em um outro caso. essa é a resposta mais sensata e prática.234 e o resultado esperado era 0. o número apresentado pela calculadora é uma aproximação do valor real de que ela não pode mostrar infinitos algarismos.1 Introdução Vamos supor o seguinte problema: como calcular o valor de 2 ? Provavelmente. Erros Numéricos 3.2) O erro relativo é uma forma mais interessante de se avaliar a precisão de um cálculo efetuado. já número finito de algarismos. se estivermos trabalhando com números muito grandes.123. ou seja: Erro = valor real – valor aproximado (3. mais preciso será o resultado da operação.542. A fim de evitar esse tipo de ambigüidade. a primeira resposta que vem a mente de qualquer pessoa que nasceu no século XX será: utilizando uma calculadora ou um computador. etc. Desta vez o erro será igual a 0. portanto. isto é. por exemplo.128. Portanto.544. que corresponde ao quociente entre o erro absoluto e o valor real da grandeza a ser calculada.83 ou 83% no segundo caso. Essa definição corresponde ao erro absoluto de um cálculo.8. mas o resultado ainda será preciso.

Apostila de Complementos de Cálculo Numérico 10 . O problema discutido na introdução deste capítulo para o cálculo de arredondamento.3) e na prática é impossível calcular seu valor exato. é apenas um tipo de erro que pode surgir ao se resolver um problema real. A solução matemática de um determinado problema envolve diversas etapas.2 Tipos de Erros O erro cometido ao se calcular o valor de 2 . o resultado da operação de subtração entre proveniente dos erros nos valores de propagam para o resultado de 2 e e3 apresentará um erro que é 2 e e3 separadamente. teremos que realizar um arredondamento. que leva ao um resultado aproximado de 2 . faremos um truncamento dessa série. ao calcularmos o valor de 2. introduz erros no resultado. Podemos concluir então que. que levará a um erro no resultado final de ex. teremos que fazer uma aproximação. Além disso. Neste caso. dados experimentais serão utilizados para se obter a solução. e o erro gerado no valor de ex é chamado de erro de truncamento.e3. Como toda medida experimental apresenta uma incerteza. existe um erro de arredondamento associado ao resultado. mais uma vez. a solução do problema será influenciada pelas mesmas. iremos utilizar uma máquina digital (calculadora ou computador). 3. Para calcularmos o valor de e3 teremos que fazer um truncamento. logo de início. existem diversos fatores que introduzem incertezas na solução numérica do problema. Como vimos anteriormente. na grande maioria das vezes. os erros nos valores de 2 e e3 se 2 . Outros tipos de erros também podem aparecer devido a outros tipos de problemas ou limitações. Portanto. Esse tipo de erro é chamado de erro inicial. Esse tipo de erro é chamado de erro de ex =1+ x + x2 x3 xn + + + + 2! 3! n! (3. Vamos considerar um outro tipo de problema prático que pode surgir ao realizarmos determinadas operações. devem surgir diferentes tipos de erros gerados das mais variadas maneiras. Em outras palavras. ao se resolver um problema numericamente.[Digite o título do documento] [Ano] 3. Mais uma vez. como discutido na introdução desta apostila. ou seja.e3. Digamos que precisamos calcular o valor de ex. por exemplo. e estes erros se propagam e determinam o erro no resultado final obtido. a cada etapa e a cada operação realizada. Esse modelo sempre apresentará aproximações e limitações. Como esse equipamento irá realizar essa operação? Sabemos que a exponencial é uma função que pode ser representada por uma série infinita dada por: 2 . que se refere a inevitável limitação na representação de números irracionais (por exemplo). Portanto. Portanto. que também irá gerar um erro no resultado obtido.3 Propagação e Condicionamento de Erros Numéricos Vamos supor que queremos calcular o valor de 2 . A solução do problema se inicia com a criação de um modelo matemático do sistema em questão.

Mais uma vez. Vamos supor. ela também determina a sensibilidade de um determinado problema ou método numérico. Vamos agora examinar os erros mais comuns que aparecem quando um computador manipula os números.7346× 103 ou arredonda-lo para 0. ou seja.68. para uma representação numérica com t=24 ou t=53 (como no caso da maioria dos computadores) esse erro é muito pequeno. Podemos generalizar esse exemplo e dizer que. então essa operação é bem-condicionada. Um exemplo bastante peculiar é o número 0. o resultado dessa operação será 0. um computador com uma representação de ponto flutuante na base decimal (b=10) e uma mantissa de 4 algarismos (t=4). Ou seja. Vamos tomar como exemplo a soma dos números 6563 (= 0.6563× 104) e 3. em uma representação de ponto flutuante na base b e mantissa de t algarismos. Ao convertermos esse número da base Apostila de Complementos de Cálculo Numérico 11 .[Digite o título do documento] [Ano] A propagação de erros é muito importante pois. teríamos que trunca-lo para 0. O primeiro tipo de erro que está presente na forma como computadores trabalham com números corresponde aos erros de arredondamento e truncamento. o resultado da soma não será exata. por exemplo.4 Erros na Aritmética de Ponto Flutuante Nós vimos nas seções anteriores que ao manipularmos os números de maneira prática. existe uma grande propagação de erros nessa operação. porém. estaríamos cometendo um erro de 0.1. se uma pequena variação nos dados de entrada leva a apenas uma pequena diferença no resultado final. considera-se que essa operação é mal-condicionada. A fim de representarmos em ponto flutuante nesse computador. para simplificação. será necessário se levar em consideração esse tipo de erro para avaliar o resultado obtido. para um computador real. os erros de truncamento serão dados por: erro < b e −t onde o número em questão foi representado na forma x=fx× be. Apesar de pequeno.375. Portanto. O tipo de conversão mais comum é da base decimal (usada por humanos) para a base binária (usada por computadores) e vice-versa. apesar de partirmos de dois números exatos. além de determinar o erro final de uma operação numérica. Esse erro se refere à conversão de números de uma base para a outra.3375× 101) no nosso computador fictício de mantissa com 4 algarismos. o número 734.375 (= 0. se um número muito grande de operações for realizado e se existir a necessidade de se obter um resultado bastante preciso. estaremos sempre trabalhando com erros.7347× 103.6566× 104 = 6566. esses erros estão presentes pois os computadores precisam representar os números com uma quantidade finita de algarismos.2× 10-1. Como nosso computador pode representar com apenas 4 algarismos.4) erro < 1 × b e −t 2 (3. E os erros de arredondamento serão dados por: (3. A soma desses dois números corresponde a 6566. Se uma pequena variação nos dados de entrada de um problema levar a uma grande diferença no resultado final. 3.5) Portanto.8× 10-1 e no arredondamento. no truncamento. Como citado anteriormente. Por outro lado. esse erro será pequeno. é importante lembrar que ele se propagará nas operações aritméticas realizadas pelo computador. devido a diversos fatores. Existe mais um tipo de erro que aparece quando computadores manipulam números. um erro de 0.

Uma forma interessante de constatar esse problema é escrevendo um pequeno programa que calcule o valor 1000 (3. obtemos um número com infinitos algarismos! Como esse número não pode ser representado pelo computador.[Digite o título do documento] [Ano] decimal para a base binária (existem diversos algoritmos para se realizar essa conversão. Portanto.6) de ∑0. ao se converter o número 0..0001100110011. Você verá que esse número não é igual a 100! i= 1 Apostila de Complementos de Cálculo Numérico 12 . ele será truncado.1)10 = (0. obtemos como resposta: (0. notamos que.1 da base decimal para a base binária. introduzindo um erro na sua representação.1 ..)2 onde representamos com um subscrito a base em que esse número está escrito. mas não vamos entrar nesse detalhe aqui).

g(x) a x1 x2 x3 x4 x5 b x Figura 4. Graficamente. como mostrado na figura 4. Resolução Numérica de Equações (Zero de Funções) 4.[Digite o título do documento] [Ano] 4. 4.1) Em outras palavras.1 .2 Zeros ou Raízes de Funções Dada uma função f(x).Interpretação gráfica do zero de uma função. Neste capítulo iniciaremos o estudo de métodos numéricos que nos permitirão resolver problemas como esse. um resistor e um diodo. ou zero de f se e somente f(α )=0. Apostila de Complementos de Cálculo Numérico 13 . precisamos resolver ou encontrar o zero da função acima. Esse problema corresponde ao cálculo do valor da corrente i que satisfaz a equação V − R ⋅i −  kT  i ln  + 1 = 0 q  Is  (4. vimos que ao tentar calcularmos a corrente elétrica de um circuito simples contendo apenas uma bateria.1 Introdução No exemplo usado na introdução desta apostila. já nos deparamos com um problema matemático de difícil solução. os zeros de uma função f(x) correspondem aos valores de x em que a função intercepta o eixo horizontal do gráfico.1. dizemos que α é raiz.

nem sempre é possível se encontrar analiticamente a raiz de uma função. Apostila de Complementos de Cálculo Numérico 14 . ou seja. As raízes de uma função podem ser encontradas analiticamente.b]: x1. x3. um valor tão aproximado quando se deseje.2 + 6 h(2) = 10 . como nos casos a seguir: 1−) f ( x) = x 3 + 2 x 2 − x + 1 2−) g ( x ) = sen( x ) + e x 3−) h( x ) = x + ln( x ) Nestes casos precisamos de um método numérico para encontrar uma estimativa para a raiz da função estudada.5. x2.10 = 0 5± 1 2 Porém. ou seja. x5. como mostrado nos exemplos a seguir: 1− ) f ( x ) = x −3 x =3 é raíz de f ( x ) pois : f (3) =3 −3 =0 2−) g ( x) = 8 x −4 3 8 8 12 3 x −4 =0 ⇒ x = 4 ⇒ x = = 3 3 8 2 3 x = é a raíz de g ( x) pois : 2 3 8 3 g  = . Tais métodos devem envolver as seguintes etapas: (a) Determinação de um intervalo em x que contenha pelo menos uma raiz da função f(x).1 tem 5 raízes no intervalo [a. ou seja. resolvendo a equação f(x)=0 de maneira exata. (b) Calculo da raiz aproximada através de um processo iterativo até a precisão desejada. − 4 = 0 2 3 2 3−) h ( x ) = x 2 −5 x + 6 x 2 −5 x + 6 = 0 ∆ = 25 − 24 =1 x= x1 = 3 x2 = 2 t anto x = 2 quanto x = 3 são soluções de h( x ) pois : h(3) = 3 2 −5. isolamento das raízes.[Digite o título do documento] [Ano] A função g(x) da figura 4.3 + 6 h(3) =15 −15 = 0 h( 2 ) = 2 2 . x4.

a cada iteração utiliza-se o resultado da iteração anterior como parâmetro de entrada para o cálculo seguinte. seja uma função f(x) tal que: f( x ) = g( x ) . que vai depender do problema a ser resolvido e da precisão que precisamos obter na solução.[Digite o título do documento] [Ano] 4.4) (4. Essa estimativa pode ser conseguida de diferentes formas. O critério adotado para parar as iterações de um processo numérico é chamado de critério de parada. devemos utilizar um certo critério. No caso de zeros de funções. Para isso. é preciso que a cada passo ou iteração. conforme o problema que se deseja resolver. a fim de obtermos uma estimativa inicial a ser usada nos processo iterativos. são:  Estimativa inicial: como um processo iterativo se caracteriza pela utilização do resultado da iteração anterior para o cálculo seguinte. o resultado esteja mais próximo daquele esperado.2) Apostila de Complementos de Cálculo Numérico 15 . isto é. é preciso que o método convirja para o resultado real.4 Isolamento de Raízes Para determinarmos o número e a localização aproximada de raízes de uma função. Essa convergência nem sempre é garantida em um processo numérico. É preciso pará-lo em um determinado instante. é muito importante se estar atento a isso e realizar a verificação da convergência do método para um determinado problema antes de tentar resolvê-lo. são tais que: g( x ) – h (x ) = 0 ou ainda: g( x ) = h (x ) (4. é preciso que se tenha uma estimativa inicial do resultado do problema. Como já mencionado. o primeiro passo para se resolver um processo iterativo corresponde a obtenção de uma estimativa inicial para o resultado do problema. Para encontrarmos as raízes ou zeros de uma função iremos utilizar métodos numéricos iterativos. Como o próprio nome já diz (consulte um dicionário para verificar o significado de iterativo). usamos a operação chamada de isolamento de raízes. Por exemplo. esses processos se caracterizam pela repetição de uma determinada operação. Portanto.h( x ) As raízes de f(x). podemos examinar o comportamento dessa função através de um esboço gráfico. E. a fim de se iniciar um processo iterativo. Alguns aspectos comuns a qualquer processo iterativo.3) (4. obtendo-se a cada repetição ou iteração um resultado mais preciso que aquele obtido na iteração anterior. que veremos na seção seguinte.  Critério de Parada: obviamente não podemos repetir um processo numérico infinitamente.3 Processos Iterativos Existe um grande número de métodos numéricos que são processos iterativos. 4.  Convergência: a fim de se obter um resultado próximo do resultado real. A idéia nesse tipo de processo é repetir um determinado cálculo várias vezes.

Portanto.[-cos( x )]. Para isso. os valores de x em que o gráfico g(x) intercepta o gráfico de h(x) é a raiz de f(x).4. f(a). segue que: sen( x ) – [-cos( x )] = 0 e que sen( x ) = -cos( x ) Fazendo os gráficos de sen(x) e -cos(x) temos: 1 ª raiz +1 se n x π 0 2 -1 π 3π x 2 2π co s x 2 ª ra iz Pelo gráfico. encontrar os intervalos que contenham raízes entre 0 e 2π .b].2π ].1 Teorema de Bolzano. 4. vemos que a função g(x) irá interceptar a função h(x) entre π /2 e π e entre 3π /2 e 2π . π ] e no intervalo [3π /2. Muitas vezes é preciso se utilizar um método algébrico. Seja uma função f(x) contínua em um intervalo [a. Nem sempre o esboço gráfico é a forma mais prática de se obter um intervalo que contém pelo menos uma raiz da função f(x).b]. Exemplo: Dada a função f(x) = sen(x) .[Digite o título do documento] [Ano] Assim. Então a função f(x) possui pelo menos uma raiz no intervalo [a. tal que. vamos recorrer ao teorema de Bolzano. Partindo de f(x)=0. podemos afirmar que existe uma raiz de f(x) no intervalo [π /2. Podemos verificar este teorema graficamente: Apostila de Complementos de Cálculo Numérico 16 .f(b)<0.

subdividimos este intervalo em suas duas metades. Inicialmente.36 Pelo teorema de Bolzano. ou seja:  a +b  a + b  a. Podemos calcular o valor de f(x) para valores arbitrários de x. concluímos que existe pelo menos uma raiz real no intervalo [2. Seja uma função f(x) contínua em um intervalo [a. como mostrado na tabela abaixo: x f(x) 1 -3.b].81 3 0. e α uma raiz de f(x) isolada neste intervalo através de um dos métodos descritos no item anterior.[Digite o título do documento] [Ano] y y f( b ) f(a ) a b x a b x f( a ) f( b ) y a b x Exemplo: Seja a função f(x)=x⋅ ln(x)-3.10 4 2. 2  e  2 .5 Método da Dicotomia ou Bissecção.20 2 -1. b      Apostila de Complementos de Cálculo Numérico 17 . 4.3]. O método da dicotomia ou bissecção é a forma mais intuitiva de se obter a raiz de uma função.2.

[Digite o título do documento] [Ano] Verificamos se a raiz está contida na primeira ou na segunda metade do intervalo inicial. E. usando o teorema de Bolzano. uma ilustração desse processo. No caso do método da bissecção. 2 Em seguida repetimos o processo para aquela metade que contém a raiz de f(x): dividimos o intervalo ao meio e verificamos em qual metade está a raiz. Podemos continuar repetindo esse processo indefinidamente. 2 Caso a função f(x) mude de sinal entre a +b e b. Ou seja. o erro na estimativa será dado pela metade do comprimento do intervalo em estudo. Os gráficos de ex e de -x são: Apostila de Complementos de Cálculo Numérico 18 . onde os sinais acima do eixo horizontal representam o sinal da função: + a + x1 b b−a  a +b  x1 =   ± 2  2  + x1 - b x2 b − x1  x +b  x2 =  1  ± 2  2  + x1 + x3 x2  x + x2  x3 =  1  ± 2   x2 − x1 2 Exemplo: Encontre uma estimativa para a raiz de: f ( x) = e x + x com um erro menor ou igual a 0. é importante estimarmos o erro nesse resultado obtido. A seguir. a raiz deverá estar na segunda metade do intervalo original. A estimativa da raiz α em cada etapa será o ponto médio do intervalo em estudo onde sabemos que existe uma raiz.050.b]. como todo processo numérico. se a função f(x) mudar de sinal entre a e a +b saberemos que a raiz está nessa primeira metade do intervalo [a.

5 + -1 -0.5 ± 0.[Digite o título do documento] [Ano] 4 exp(x) -x 2 1 0 -1 -2 -4 -4 -2 0 2 4 Através da interseção mostrada no grafíco. podemos concluir que a raiz de f(x) ∈ [-1.5) = 0. temos: - + -1 + -0.75 -0.625 ± 0.63 f (0) = 1 f (−0.11 x1 = −0.563) = 0.125 + -0.5 f (−0.5 + 0 f (−1) = −0.01 19 4 Apostila de Complementos de Cálculo Numérico x = −0.09 x3 = −0.28 x2 = −0.5 f (−0.625 + -0. Utilizando o método da dicotomia.625) = −0.5 f (−0.75) = −0.563 ± 0.563 + -0.625 + -0.75 + -0.25 - + -0.0].063 .75 ± 0.

594 ± 0.625 + -0. bk [ ] é o intervalo que contêm a raiz da função após k iterações.6 Critérios de Parada em um Processo Iterativo Foi usado. o seguinte critério de parada: bk − a k ≤ erro estipulado 2 (4.594) = −0.5) onde a k . Assim.[Digite o título do documento] [Ano] + -0. até o momento.04 x5 = −0.594 ± 0. se tivermos uma função do seguinte tipo: f(x0) x0 é a estimativa da raíz α é a raiz de f(x) x a x0 α b Podemos estar satisfazendo (1) e.6) Apostila de Complementos de Cálculo Numérico 20 . 4. f(x0) pode ser muito maior que zero.032.563 f (−0.594 + -0. em certos casos pode-se usar a seguinte condição: fx ( ) 0 ≤ erro estipulado (4.032 Portanto. entretanto. No entanto. a raiz da função f(x)=ex+x é igual a –0.

quanto o critério (4.6). em cada passo. 4. temos que: ≤ε (4. um certo número de iterações máximo. Uma maneira de se contornar este problema é tomar como um critério de parada adicional.9) em (4.7): 2ε ≥ bo − a o 2k (4.6.12) Apostila de Complementos de Cálculo Numérico 21 .[Digite o título do documento] [Ano] Tanto o critério (4.5).7) onde k é o número de iterações e [ao. no método da bisseção. Como.11):  bo − ao log 2 k +1 ≥ log   ε  e usando as propriedades do log segue que: ( )     (4. dividimos o intervalo por 2. Dado o seguinte critério de parada: bk −a k 2 onde ε é o erro estipulado.11) Tomando o log de ambos os lados de (4. podem levar a um número muito grande de iterações.1 Estimativa do número de iterações no método da bisseção.10): 2 k +1 ≥ bo − a o ε (4.bo] é o intervalo inicial que isola a raiz da função.10) Re-arranjando os termos em (4.8) 2ε ≥ bk −a k (4.9) De (4. temos: bk − a k = bo − ao 2k (4.

f(x) = 0. para encontrarmos a raiz de f(x).14) ϕ (x) = x ou seja. seja satisfeito.7 Método das Aproximações Sucessivas ou Método de Iteração Linear (MIL) O método da iteração linear é um processo iterativo que apresenta vantagens e desvantagens em relação ao método da bissecção. no ponto x que corresponde à raiz de f(x).[Digite o título do documento] [Ano] k≥ log ( bo − ao ) − log ε log ( 2 ) -1 (4. ou seja. pois ϕ (2) = 22 – 2 = 2. Por exemplo.x – 2 pode ser reescrita como.16) (4. Portanto. definido em (4. Essa função tem como ponto fixo o valor x=2.13) A expressão (4. ou seja. f(x) = ϕ (x) – x Essa forma de escrever f(x) é bastante útil. e recalculamos repetidamente o valor de ϕ (x) sempre usando o resultado de uma dada iteração como a nova estimativa de x. isto é. vamos utilizar um processo iterativo.15) (4. Para encontrarmos esse valor de x. No ponto x que corresponde à raiz de f(x). pois f(2) = 22 – 2 – 2 = 0. ao substituirmos o valor de x na função ϕ (x). teremos como resultado o próprio valor de x. E esse é exatamente o valor da raiz de f(x). 4. onde começamos a calcular o valor de ϕ (x) com um valor inicial de x. Portanto.13) dá o número de iterações necessárias para que o critério de parada. O Método de Iteração Linear iniciase reescrevendo a função f(x) como. onde ϕ (x) = x2 – 2.17) Apostila de Complementos de Cálculo Numérico 22 . Seja uma função f(x) contínua em um intervalo [a. f(x) = x2 – 2 – x = ϕ (x) – x .b] que contenha uma raiz de f(x). fazendo: xk +1 =ϕ( xk ) (4. a raiz de f(x) será o ponto fixo de ϕ (x). a função f(x) = x2 . teremos que: f(x) = ϕ (x) – x =0 (4. podemos encontrar o valor numérico que ao substituirmos em ϕ (x) retorna o próprio valor de x.8). o valor que ao ser substituído em ϕ (x) retorna o próprio valor de x.

). −) 1 x 2 + ln( x ) − x +1 = 0 x.x +1.. x 2 + ln( x ) − x +1 + cos x − cos x = 0 cos x = cos x − x 2 − ln( x ) + x −1 f ( x) = x 2 − e x x = arc cos(cos x − x 2 − ln( x ) + x −1) ∴ ( x ) = arc cos(cos x − x 2 − ln( x ) + x −1) ϕ Exemplo: Encontre uma estimativa para a raiz de : usando o método da iteração linear. 4. 3.. f ( x ) = x 2 + ln( x ) − x +1 f ( x) = 0 x 2 + ln( x ) − x +1 = 0 x = x 2 + ln( x) +1 ∴ ( x ) = x 2 + ln( x ) +1 ϕ ou então. 4 x*x exp(x) Vamos iniciar a solução encontrando uma boa estimativa inicial para o valor da raiz de f(x). . vamos usar o método gráfico para o isolamento de raízes. Pode-se notar que dada uma função f(x) existem diversas funções de iteração que podem ser usadas no processo.x = x −ln( x ) −1 ÷x x −ln( x ) −1 x= x x −ln( x ) −1 ∴ ( x) = ϕ x Mais um exemplo. Escrevendo: 2 f(x) = g(x) – h(x) ⇒ g(x) = x2 e h(x) = ex temos: 0 -2 Apostila de Complementos de Cálculo Numérico -4 -4 -2 0 2 4 23 . 1. k é a ordem da iteração em que estamos (k = 0.[Digite o título do documento] [Ano] onde. Exemplo: Encontre algumas funções de iteração a partir de f (x) = x2 + ln(x) . 2. A função ϕ (x) é chamada de função de iteração. Para isso. x 2 + ln( x ) − x +1 = 0 ln( x ) = x − x 2 −1 x = e ( x −x 2 −) 1 2 ∴ϕ( x ) = e ( x −x ou ainda.

738 = −0.606 = −0.0]. podemos ter como função iteração.6 6 0 0 x 2 =− . conclui-se que a raiz encontra-se no intervalo [-1. 1 te o ms : 1 x 0 =− → ϕ x 0 ) = ϕ − ) =− e − = −0.691 -0.7 8 ) = − e − . escrevemos: f ( x) = 0 x 2 −e x = 0 x =± ex Ou seja. Para isso.178 0.606 -0.738 -0. como mostrado na tabela abaixo: x -1 -0.6 1 ( ( 0 3 9 0 →ϕ x3 ) = ϕ − . vemos que a cada etapa nos aproximamos mais da raiz de f(x). os dois casos abaixo: ϕ( x) = e x ϕ( x) = − e x U d san o ϕ( x ) =− e x e x 0 =− .707 f ( x ) = x 2 −e x 0.6 1 ) = − e − .067 -0.024 0.632 -0.6 ) = − e − .70 0 7 0 →ϕ x1 ) = ϕ − .7 ( ( 0 06 38 0 →ϕ x 2 ) = ϕ − . Devemos agora escolher uma função de iteração ϕ (x).[Digite o título do documento] [Ano] 1 -1 A partir do esboço gráfico acima.73 0 8 x 3 =− .6 1 ( ( 1 06 x 1 =− .007 Apostila de Complementos de Cálculo Numérico 24 .70 ( ( 0 9 7 Substituindo os valores de xk em f(x) para cada iteração k. pois o valor dessa função fica mais próximo de zero a cada iteração.6 0 91 x 4 =− .691 = −0.

b].96 x −2.( x +0. |ϕ ’(x)| < 1 (para todo) ∀ x ∈ [a. O seguinte Teorema coloca condições suficientes. é necessário que a cada iteração a resposta se aproxime mais e mais da solução real.2]. para se obter um resultado coerente e preciso com um processo iterativo. Portanto.( x +0. Seja ϕ (x) uma função de iteração obtida a partir de f(x).( x +0. x0 ∈ [a. antes de resolver um problema através desse método é preciso se verificar se haverá ou não a convergência. que o método convirja para o valor real.96 ϕ2 ( x ) = x 2 +1.08 .08 Verifique se ϕ 1(x) e ϕ 2(x) satisfazem as condições (i) e (ii) do Teorema de convergência no intervalo [1. No caso do método da bissecção.b].b]. Se: i) ii) iii) Então: ϕ (x) e ϕ ’(x) forem contínuas em [a. iteração: ϕ1 ( x ) = 2. ou seja.96 ) 2 25 Apostila de Complementos de Cálculo Numérico . já que isolamos a raiz em um dado intervalo e nunca deixamos esse intervalo inicial. Já no método da iteração linear. nós não precisamos nos preocupar com a convergência. ϕ1 ( x) = 2.08 .b]. A cada iteração podemos nos aproximar ou nos afastar da solução real.96 x − 2.[Digite o título do documento] [Ano] 4.96 ) −2 .08 x +0.b] e α uma raiz de f(x) contida em [a.96 ) −1 −2. lim n →+∞ x n = α 2 Exemplo: Deseja-se encontrar a raiz de f ( x ) = x + 0. pois com esse método ela está sempre garantida.7.1 ϕ1 ' ( x) = − 2.96 ϕ1 ( x) = 2.1 O problema da convergência no Método da Iteração Linear Como já discutido.96 ) −1 ϕ1 ' ( x) = 0. pretende-se usar uma das seguintes funções de .08 ( x +0. a convergência não é garantida a priori. Teorema: Seja uma função f(x) contínua em um intervalo [a.08 x +0. porém não necessárias para que o método de iteração linear seja convergente.08Para isto. Vamos iniciar verificando a condição (i) para a função ϕ 1(x).

48.0 < ( x +0.[Digite o título do documento] [Ano] Ambas as funções ϕ 1(x) e ϕ 1‘(x) são contínuas (para todo) ∀ x ∈ R com x ≠ -0.9 ) 2 6 2.9 x +0.96.9 1 8 1 2 26 x 2 +1. + x1 _ x2 + As raízes dessa função são: x 2 +1.1584 = 0 ∆ =8. como ilustrado a seguir.1 8 >0 2 1 54 Portanto. como ela se trata de uma parábola com concavidade para cima.92 x −1.9 ) 2 6 −2. concluímos que as condições (i) e (ii) do Teorema de Convergência são satisfeitas por: Apostila de Complementos de Cálculo Numérico 26 . vamos verificar a condição (ii) para ϕ 1(x). Finalmente. para os valores de x que satisfazem a equação acima. Vamos encontrar as raízes da função acima (x2 + 1.40 ou x > 0.9 1 >2.0 8 ( x +0.92 ± 8. Em seguida.32 = 2 x1 = − .9 x − .1584) e.48 Portanto: | ϕ 1‘(x) | <1 para x< –2.40 2 x= x2 = 0 .0 8 ( x +0.0 2 26 8 x 2 +1.9 x +0. sabemos que a função será positiva para valores menores que a raiz de menor valor (x1) e valores maiores que a raiz de maior valor (x2) . a condição (ii) do teorema da convergência é satisfeita.92x – 1.0 < x 2 + .0 8 <1 ( x +0.9 ) 2 8 6 2. | ϕ ' ( x) | < 1 1 − 2.9 ) 2 6 <1 <1 2.32 −1. ou seja . teremos |ϕ 1(x)| < 1.

9 − . Vamos verificar se essas condições são satisfeitas para a função ϕ 2(x). Exemplo: Já calculamos o valor da raiz da função f(x) = x2 – ex.9 < 2 x + .96 Portanto.e = − .9 1 1 6 1 6 1 6 1 6 − .9 < 2 x < − . devemos ter: ϕ ' ( x) 2 2 x + . utilizando: ϕ( x ) = − e x Vamos verificar se essa função satisfaz as condições do teorema da convergência. temos: 2. no intervalo [1. Para a condição (i).[Digite o título do documento] [Ano] ϕ1 ( x ) = no intervalo [1.4 Ou seja: ϕ 2 ‘(x) < 1 para –1. Para a condição (ii) ser satisfeita. portanto.e 2 .2].e 2 2 2 Portanto. Para a condição (i).96 ϕ2 ( x) = x 2 +1.08 ϕ2 ' ( x) = 2 x +1.9 2 6 0 6 ( ÷) 2 -1 8 . Para a condição (ii).2]. ϕ 2 (x) e ϕ 2 ‘(x) são contínuas para ∀ x ∈ R .4 <x < -0 8 .9 <1 − . ln 2 < 1. temos: ϕ ( x) = − e x = − e x ϕ ′( x) = − 1 x e 2 ( ) x 1 2 x 1 ( ) − 1 2 1 − 1 x .96 x − 2. ou seja: - 1 2 x x e2 < 1 1 e2 2 x < 1 e2 x 2 x x < 2 < ln 2 < 2 .48 < x < -0.e x = − . ϕ (x) e ϕ ’(x) são contínuas para ∀ x ∈ R. devemos ter | ϕ ’(x)| < 1.9 1 6 <1 <1 − < 2 x + .48. que ϕ 2(x) não satisfaz a condição (ii) do Teorema de Convergência. Temos.08 x + 0.3 6 8 Apostila de Complementos de Cálculo Numérico 27 .9 <1 1 1 6 − − .

2. Apostila de Complementos de Cálculo Numérico 28 .386. A tabela apresenta o índice das iterações que estamos (i).962976 f(xi) -0. podemos usar qualquer uma (ou todas simultaneamente) das condições abaixo como critério de parada: 1. será que ela satisfaz todas as condições do teorema da convergência? Devido sua semelhança com a função ϕ( x ) = − e x . o valor de ϕ (xi) e de f(xi) para cada iteração: I 0 1 2 3 4 5 xi -0.19697 -3.091848 2.149606 7.778801 1.5. que foi o valor usado.476095 2.11936 -46.386 a partir da iteração i=2. também poderia ser usada.2 Critérios de Parada no método da iteração linear No caso do método da iteração linear.091848 2.778801 1. para a condição (iii). essa função não satisfaz o teorema da convergência em todas as iterações.7. notamos que essa condição não é satisfeita em todas as etapas do problema.35653 -1. se as estimativas da raiz de f(x) começam a variar muito pouco.5 0.149606 ϕ (xi) 0. vimos que a função ϕ( x ) = e x .57233 -2. a princípio. podemos concluir que ela satisfaz o teorema da convergência também para valores de x < 1.386. devemos ter x0 < 1. Também podemos notar que isso acontece devido ao fato de usarmos valores de x > 1. que é satisfeita para x0 = -0.1898 Notamos que o processo está divergindo. Ainda nesse exemplo. Ao tentarmos resolver este problema usando a função ϕ( x ) = − e x .846027 4. Portanto.72404 -9.476095 2. já que o valor de f(x) é cada vez mais distante de zero.[Digite o título do documento] [Ano] Finalmente. A tabela abaixo mostra o que acontece ao tentarmos encontrar a raiz de f(x) usando ϕ( x ) = e x . Número de Iterações. 4. se afastando da raiz de f(x). podemos concluir que estamos bem próximos da raiz de f(x) e o processo iterativo pode ser parado. Mas. Variação de xk : x k − x k −1 <ε xk Conforme avançamos no número de iterações. Valor de f(xk): f ( xk ) < ε 3. isto é.846027 4.

a idéia no método de Newton-Raphson é escolher uma função ϕ (x) tal que ϕ ’(α )=0 onde α é a raiz de f(x) e α ∈ [a.8 Método de Newton-Raphson O Método de Newton-Raphson é um caso particular do método de iteração linear. temos: ϕ( x ) = +A' ( x ). f ( x ) +A( x ).21) Portanto: 1 +A' ( x ). tem-se: 0 = +A' ( x ). Com isso.24) Escolhendo: 1 f ' ( x) A( x) = − (4. f ' ( x ) =0 (4. para x igual à raiz de f(x). ou seja x=ϕ (x) para qualquer A(x)≠ 0. f ' ( x ) 1 (4. ) 1 (4.22) em x=α . Derivando ϕ (x) dada pela expressão (2) em relação a x. Portanto.25) em (4.b].20) (4. teremos |ϕ ’(x)|<1 desde que não nos afastemos muito do valor de α durante o processo de resolução do problema.23) ou seja: A(α) = − 1 f ' (α) (4. segue que: A(α f ' (α =− ).19) segue que: Apostila de Complementos de Cálculo Numérico 29 .22) Calculando (4.18) ϕ( x ) = x + A( x ). (4.19) Para haver a convergência no método da iteração linear é preciso que |ϕ ’(x)|<1 em um intervalo [a. f ' ( x ) ' 1 Exigindo que ϕ ’(x)=0. f ( x ) +A( x ).[Digite o título do documento] [Ano] 4. f ( x ) +A( x ). O método de iteração linear consiste em estimar a raiz de uma função f(x) usando o processo iterativo: xn +1 = ϕ( x n ) Podemos escrever uma forma geral para a função de iteração: (4.b] que contém a raiz de f(x). tem-se f(x)=0. f ( x ) pois.

2 Interpretação Geométrica Dado xn.26).b] que contém a raiz de f(x). A convergência no método de Newton-Raphson esta sempre garantida para um certo intervalo [a. desde que f(x) e f’(x) sejam contínuas nesse intervalo e que f’(α )≠ 0.1 Convergência do Método de Newton-Raphson Apesar de obtermos a forma da função ϕ (x) procurando garantir a convergência do processo iterativo. da derivada) da função f(x).8.8. se utilizarmos uma estimativa inicial x0 tal que x0 ∈ [a. A figura a seguir ilustra essa interpretação geométrica do Método de Newton-Raphson. Em outras palavras. nos aproximamos cada vez mais da raiz de f(x) através da tangente (ou seja. para o método de Newton-Raphson convergir. ou seja: xn +1 = xn − f ( xn ) f ' ( xn ) (4. onde α é a raiz de f(x) (f(α )=0).26) O Método de Newton-Raphson consiste em usar o processo iterativo xn+1 = ϕ (xn) e como função de iteração a expressão (4. a convergência estará garantida. 4.28) Portanto. 4. o ponto xn+1 será obtido pela intercessão da reta tangente a f(x) em xn com o eixo x (a abscissa). é preciso que nossa estimativa inicial esteja próxima da raiz de f(x). A reta tangente a f(x) em xn é dada por: f ' ( xn ) = f ( xn ) − 0 xn − xn +1 (4. esta não esta sempre garantida para este método (mas quase sempre). a cada iteração do nosso processo.[Digite o título do documento] [Ano] ϕ( x) = x − f ( x) f ' ( x) (4. Portanto.27) A partir dessa expressão. obtemos a fórmula de Newton-Raphson.b]. A proximidade exigida para a convergência vai depender de caso a caso e nem sempre é simples de determinar. Podemos ilustrar isso matematicamente. Apostila de Complementos de Cálculo Numérico 30 .

usando o método de Newton-Raphson.[Digite o título do documento] [Ano] f(x n) ( x n. devemos ter: x n +1 = ϕ( x n ) onde.0039 A estimativa da raiz de f(x) é: x = 2.0039 f(xn) 6 0.1429 2.0195 ϕ (xn) 2.1429 2.7349 0. x0 = 3 como estimativa inicial e como critério de parada |f(xn)| ≤ 0.0039 Apostila de Complementos de Cálculo Numérico 31 .020. temos que: xn 3 2. ϕ( x) = x − ϕ( x) = x − f ( x) f ′( x ) x2 + x − 6 2 ⋅ x2 + x − x2 − x + 6 x2 + 6 = = 2 ⋅ x +1 2 ⋅ x +1 2 ⋅ x +1 Portanto. Para encontrar a raiz de f(x) usando o método de Newton-Raphson. f(x ) ) n α xn+1 xn x Exemplo: 2 Calcule a raiz de f ( x) = x + x − 6 .

Dada a função f ( x ) = sen ( x ) − x 2 + 4 : 7 ? Estime esse 5. (a) Determine graficamente o intervalo em x que contém pelo menos uma raiz de f(x). Cite as características básicas de todo processo iterativo. 7. (c) Qual é o erro no seu resultado final? Dada a função f ( x ) = e −x + x 2 − 2 : 6. O que significa a convergência de um método iterativo? Que condições garantem a convergência no método da iteração linear? O que fazer caso seja constatado que o método da iteração linear não irá convergir para um dado problema? 8. (c) Partindo-se desse intervalo. mostre 3 formas para a função ϕ (x) que poderiam ser usadas para se estimar a raiz de f(x). utilize o método da bissecção para determinar o valor dessa raiz com uma precisão de 0. Dada a função f(x)=ln(x) –x2 + 4.9 Lista de Exercícios 1. O que é um zero ou raiz de função? Como você poderia usar o método da bissecção para estimar o valor de valor com uma precisão de (ou erro menor que) 0.05. (a) Determine o intervalo em x que contém pelo menos uma raiz de f(x) (graficamente ou aritmeticamente usando o Teorema de Bolzano). mas desta vez aritmeticamente usando o Teorema de Bolzano. 9. (b) Faça a mesma estimativa. 3. utilize o método da bissecção para determinar o valor dessa raiz após 4 iterações. Mostre que as seguintes funções de interação satisfazem as condições (i) e (ii) do teorema de convergência: (a) ϕ( x ) = (b) ϕ( x ) = (c) ϕ( x ) = x3 1 + 9 3 cos( x ) 2 exp( x / 2) 2 32 Apostila de Complementos de Cálculo Numérico . (b) Partindo-se desse intervalo. 4.[Digite o título do documento] [Ano] 4.1. Quais são as 3 causas mais importantes de erros numéricos em operações realizadas em computadores e calculadoras? 2.

Qual dos dois métodos converge mais rapidamente? (d) Um outro critério de parada que poderia ser usado corresponde à verificação se o valor de f(x) está próximo de zero. (b) Mostre que ϕ( x) = x 3 +1 é uma possível função de iteração obtida a partir de f(x). atingindo o critério acima.1]. 11. com (a) xo= -15 (b) xo= 2 (c) xo= 20 13. Seja a seguinte função: f ( x) = 1 − x2 +1 3 x Use o método de Newton-Raphson para encontrar uma estimativa da raíz de f(x) tal que |f(x)| < 10-4. Estime as raízes positivas das seguintes funções pelo método de iteração linear. Qual resultado para a raiz de f(x) se obteria caso se usasse como critério de parada a condição |f(x)| < 0. Apostila de Complementos de Cálculo Numérico 33 . Deseja-se resolver a seguinte equação usando o Método de Newton-Raphson: x5 − 6 = 0 qual o valor da raiz tal que: xn − xn −1 < 10 −5 ? xn Quantas iterações são necessárias para se encontrar a raiz. (a) Encontre o intervalo que deva possuir pelo menos uma raiz de f(x). 3 (c) Verifique se ϕ (x) satisfaz as condições (i) e (ii) do Teorema de Convergência. usando o critério de parada dado: (a) f ( x ) = x 3 −9 x + 3 (b) f ( x ) = 2 x − cos( x) (c) f ( x ) = exp( x ) − 4 x 2 (d) f ( x ) = x 3 − x −1 Use as funções de interação do exercício anterior. estime a raiz de f(x) com |xn-xn-1| < 0.001? 14. 12. Seja a função f(x) = ex – 4x2.[Digite o título do documento] [Ano] (d) ϕ( x ) = ( x +1)1 / 3 10. (b) Usando ϕ( x ) = 1 x2 e . Parta de xo=1. 2 (c) Faça a mesma estimativa usando o método de Newton-Raphson. Seja: f ( x ) = x 3 −3 x +1 (a) Mostre que f(x) possui uma raiz em [0.001.

0 0. Interpolação Polinomial 5. Uma possível forma para p(x) que satisfaça (1) é: p( x ) = L0 ( x ) ⋅ f ( x 0 ) + L1 ( x ) ⋅ f ( x1 ) ++ Ln ( x ) ⋅ f ( x n ) onde os Lk(x) são polinômios tais que: Lk ( xi ) = δki sendo que: (5..1) 5. (5. ϕ (x) do item (c).. interpolar um ponto x a um conjunto de n+1 dados {xi.046 6.2 Forma de Lagrange Seja um conjunto de n+1 dados {xi.f(xi)} (ver o livro texto Noções de Cálculo Numérico para uma demonstração dessa proposição).028 4. sem conhecer a forma analítica de f(x). < 0. x=2. passe por todos os pontos.2) (5.0070. mas desta vez ao invés de utilizar a função Raphson. É possível se demonstrar que existe um único polinômio p(x) de grau menor ou igual a n que passa por todos os (n+1) pontos do conjunto {xi.f(xi)}. 5. significa simplesmente. como por exemplo.0 0. calcular o valor de f(x). utilize o método de Newton- (e) Faça a mesma estimativa. A interpolação polinomial consiste em se obter um polinômio p(x) que passe por todos os pontos do conjunto de (n+1) dados {xi.001 1.f(xi)}.5 0.0. isto é. Queremos encontrar um polinômio interpolador p(x) que satisfaça a condição (1). O polinômio p(x) é chamado de polinômio interpolador.016 3.057 Nosso problema é estimar o valor de f(x) para um valor de x que não tenha sido medido.f(xi)} tal como na tabela abaixo: xi f(xi) 0 0. portanto temos n+1 pontos na expressão acima).f(xi)}. p(xn)=f(xn) (note que a contagem começa em zero.[Digite o título do documento] [Ano] (d) Encontre uma estimativa para a raiz de f(x) através do método da iteração linear e usando a função tal que |f(x)| ϕ (x) do item (c). Portanto. isto é: p(x0)=f(x0) p(x1)=f(x1) .3) Apostila de Complementos de Cálculo Numérico 34 .5 0.1 Introdução Vamos supor que temos um conjunto de dados {xi.

∏( x − x n Li ( x ) = ∏( x j =0 j ≠i j =0 j ≠i n j ) ) i −xj 5. f ( xi ) = L0 ( x). Uma função que satisfaz a condição (3) é: Lk ( x ) = ( x − x ) ⋅ ( x − x ) ⋅⋅( x − x ) ⋅ ( x − x ) ⋅⋅( x − x ) ( x − x ) ⋅ ( x − x ) ⋅⋅( x − x ) ⋅ ( x − x ) ⋅⋅( x − x ) 0 1 k −1 k +1 n k 0 k 1 k ki −1 k ki +1 k n que é fácil verificar. pois: Lk ( x k ) = 1 e Lk ( x i ) = 0 n se . i ≠ k De maneira compacta.1 Interpolação para 2 pontos (n+1=2) . p( x 0 ) = L0 ( x 0 ) ⋅ f ( x 0 ) + L1 ( x 0 ) ⋅ f ( x1 ) ++ Ln ( x 0 ) ⋅ f ( x n ) p( x 0 ) = 1 ⋅ f ( x 0 ) + 0 ⋅ f ( x1 ) ++0 ⋅ f ( x n ) p( x 0 ) = f ( x 0 ) e. k = i (5.[Digite o título do documento] [Ano] δki =  0 1 se . como: pn ( x ) = ∑ Li ( x ) ⋅ f ( xi ) i =0 (5. f ( x1 ) i =0 1 Apostila de Complementos de Cálculo Numérico 35 . p( x1 ) = L0 ( x1 ) ⋅ f ( x 0 ) + L1 ( x1 ) ⋅ f ( x1 ) ++ Ln ( x1 ) ⋅ f ( x n ) p( x1 ) = 0 ⋅ f ( x 0 ) + 1 ⋅ f ( x1 ) ++0 ⋅ f ( x n ) p( x1 ) = f ( x1 ) ou seja: p( x i ) = f ( xi ) o que mostra que o polinômio interpolador p(x) passa exatamente sobre os pontos {xi. k ≠ i se . podemos escrever o polinômio interpolador na Forma de Lagrange. f ( x 0 ) + L1 ( x).ajuste de retas (n=1) xi x0 x1 f(x1) f(xi) f(x0) De (5) : (5. Temos agora que encontrar os polinômios Lk(x). que satisfaçam (3).4) Portanto.5) e.f(xi)} da tabela dada.6) p ( x) = ∑ Li ( x).2.

9) onde: L0 (x0) =1 L0 (x1) =0 L0 (x2) =0 L1 (x0) =0 L1 (x1) =1 L1 (x2) =0 L2 (x0) =0 L2 (x1) =0 L2 (x2) =1 Por construção: L0 = ( x − x1 ) ⋅ ( x − x2 ) ( x0 − x1 ) ⋅ ( x0 − x2 ) ( x − x0 ) ⋅ ( x − x 2 ) ( x1 − x0 ) ⋅ ( x1 − x2 ) L1 = Apostila de Complementos de Cálculo Numérico 36 .ajuste de parábolas (n=2) xi x0 x1 x2 f(xi) f(x0) f(x1) f(x2) De (5): p( x ) = ∑ Li ⋅ f ( xi ) = L0 ⋅ f ( x 0 ) + L1 ⋅ f ( x1 ) + L2 ⋅ f ( x 2 ) i=0 2 (5. ou seja: L0 (x0) =1 L0 (x1) =0 L1 (x0) =0 L1 (x1) =1 (5.7) É fácil verificar que.8)  x − x1   x − x0   ⋅ f ( x0 ) +  p( x ) =  x −x   x − x  ⋅ f ( x1 )  1  0   0  1 5. as seguintes funções.2.2 Interpolação para 3 pontos (n+1=3) .[Digite o título do documento] [Ano] As funções Li (x) devem satisfazer (3). satisfazem (7) : L0 ( x) = De (8) em (6) : x − x1 x0 − x1 L1 ( x) = x − x0 x1 − x0 (5.

55 ⋅ ( x − 4 ) + 2.6 5.3.1 +   ⋅ 5.3 Forma de Newton 5.6 = −1.8 ⋅ ( x − 2 ) 2−4 4−2 p ( x ) = 1. Para que possamos discutir a Forma de Newton temos que antes nos familiarizar com a construção da chamada “Tabela de Diferenças Divididas” Dada a tabela de valores: x f(x) podemos construir a seguinte tabela: x0 f(x0) x1 f(x1) x2 f(x2) x3 f(x3) Apostila de Complementos de Cálculo Numérico 37 .1 Tabela de Diferenças Divididas.[Digite o título do documento] [Ano] L2 = ( x − x0 ) ⋅ ( x − x1 ) ( x2 − x0 ) ⋅ ( x2 − x1 ) Portanto: p( x) = ( x − x1 ) ⋅ ( x − x2 ) ( ) ( x − x0 ) ⋅ ( x − x2 ) ( ) ( x − x0 ) ⋅ ( x − x1 ) ( ) ⋅ f x0 + ⋅f x + ⋅ f x2 ( x0 − x1 ) ⋅ ( x0 − x2 ) ( x1 − x0 ) ⋅ ( x1 − x2 ) 1 ( x2 − x0 ) ⋅ ( x2 − x1 ) Exemplo: Ajuste uma reta aos seguintes pontos: x f(x) 2 3.25 ⋅ x + 0.6  x − x1   x − x0  p( x ) =   x − x  ⋅ f ( x 0 ) +  x − x  ⋅ f ( x1 )    1  0   0  1  x −4  x −2 p( x ) =   ⋅ 3.1 4 5.

x 3 = [ ] [ ] [ ] ] [ ] [ ] [ ] [ f x 0 .x1. xi+1 . xi+1. x 2 .x2. xi+2] f[xi. xi+1] f[xi . xi+2] f[xi . xi+1] f[xi.x3] x2 f(x2) x3 f(x3) onde: f x 0 .25 1. xi+2. x1 .1 0.682 1 1.4 0.x2] x1 f(x1) f[x1. x 2 − f x 0 . x 3 = [ ] f x1 . xi+3] x0 f(x0) f[x0. x 2 . x 2 x3 − x0 [ ] Exemplo: Dados os seguintes valores: xi f(xi) 0. x 3 − f x 0 .x1.xi+3] Apostila de Complementos de Cálculo Numérico 38 . x 2 [ ] [ ] f x 0 .813 0. x1 = f x1 . x 2 . x 3 − f x1 .536 0. x1 x2 − x0 x 3 − x1 f x 2 . x1 .x3] f[x1. x 2 = f x2 .2 1. x 2 = f x1 .x2. xi+2 .x3] f[x2.x1] f[x0.x2] f[x0. xi+1. xi+1. x3 = [ ] f ( x1 ) − f ( x 0 ) x1 − x 0 f ( x 2 ) − f ( x1 ) x 2 − x1 f ( x3 ) − f ( x2 ) x3 − x2 f x1 .864 a tabela de diferenças divididas é: xi f(xi) f[xi .7 0. x1 .[Digite o título do documento] [Ano] x f(xi) f[xi.

Vamos partir da diferença dividida f[x0.13) Apostila de Complementos de Cálculo Numérico 39 .x]. xi+4 ] = 0.1 = − . 4 = 0.923 0.864 1. x ] ⋅ ( x − x0 ) Da própria definição de polinômio interpolador. 2 −1 f[xi .893 1 1.536 0.10) Isolando-se f(x) da expressão acima.014 1. x ] ⋅ ( x − x0 ) (5.2 1.354 − 2.3.813 0.1 = − . 4 − 0.4 0.864 −1.3) pode ser escrita como: (5.893 1.2 Forma de Newton para o Polinômio Interpolador Para calcularmos o polinômio interpolador da Forma de Newton.1 5.014 − (−0. p0(x). 2 − 0.02 1.682 1 − 0. 7 − 0. 25 − 0.1 ) = 2.350 2.536 − 0.11) (5.7 = 1.343 1. xi+1 .682 1.[Digite o título do documento] [Ano] 0. 4 = 0.7 = 3.7 − 0.354 2. que é dada por: f x0 .343 0. xi+2 . xi+3 .07 = 2. x = [ ] f ( x) − f ( x0 ) x − x0 (5. que interpola f(x) no ponto x0.008 0 0.250 3.350 1 −0. tem-se: f ( x ) = f ( x0 ) + f [ x0 .2 − 0.343 − 2. 487 − ( − 0.536 0 .923 0 0.07 −1. vamos começar com o caso mais simples: encontrar um polinômio de grau 0.813 0. a expressão (5.7 0. 4 = 2.1 0. 487 1 − 0.12) f ( x ) = p 0 ( x ) + f [ x0 .008 ) = 0.682 − 0. 25 1. 487 1. sabe-se que: p0(x)=f(x0) Portanto. 2 − 0.893 − 0.

(5. que é dada por: f [ x 0 . caso contrário teríamos uma resposta exata e não precisaríamos da interpolação. x1 ] pois. x1 . x1 ] = f ( x0 ) Apostila de Complementos de Cálculo Numérico (5.15) Podemos realizar o mesmo exercício. x ] Podemos verificar que o polinômio interpolador de ordem 1. x 0 ] x − x0 = x − x1 (5.x]. já que não conhecemos o de f(x) em qualquer ponto x (veja expressão (5. x ] = f ( x ) − f ( x 0 ) − ( x − x 0 ) ⋅ f [ x1 . x1 ] + ( x − x1 ) ⋅ ( x − x0 ) ⋅ f [ x0 . x1 . x ] ⋅ ( x − x0 ) (5.17) f ( x ) = f ( x0 ) + ( x − x0 ) ⋅ f [ x0 . x ] = f [ x 0 . é dado por: (5.16) Portanto. para x≠ x0 (5.x]. p1(x).14) Portanto.x0]⋅ (x-x0) é simplesmente a diferença entre o valor de f(x) (valor real da função) e o valor p0(x) que obtivemos com a interpolação.x1. Em outras palavras.19) p1 ( x0 ) = f ( x0 ) + ( x0 − x0 ) ⋅ f [ x0 . concluímos que f[x. x1 . x1 . partindo de uma diferença dividia de ordem maior. x 0 ] x − x1 f ( x ) − f ( x0 ) − f [ x1 . x0 ] = ( x − x1 ) ⋅ ( x − x0 ) ⋅ f [ x0 .20) 40 . pois não podemos calcular o valor f[x0. ou seja f[x0. Em outras palavras. tem-se que: p0(x)≈ f(x).18) p1 ( x ) = f ( x0 ) + ( x − x0 ) ⋅ f [ x0 . x ] − f [ x1 . da expressão (5. x ] e (5. tem-se que: f ( x ) − f ( x0 ) − ( x − x0 ) ⋅ f [ x1 . Fora do ponto x0. isto é: E0 ( x ) = f ( x ) − p0 ( x ) = f [ x0 . x 0 . x 0 ] ( x − x1 ) ⋅ ( x − x0 ) f [ x 0 . sabemos que o polinômio interpolador é apenas uma aproximação de f(x).1) acima). esse termo é o erro no processo de interpolação. x ] = f [ x1 .[Digite o título do documento] [Ano] A expressão acima não pode ser usada diretamente.4).

o erro cometido ao se aproximar f(x) por p1(x) é: E1 ( x ) = ( x − x0 ) ⋅ ( x − x1 ) ⋅ f [ x0 .8 2.5 0. 4 1.0 − 1.72 1.0 f(xi) 4.00 11.0 − 0.00 encontre o polinômio interpolador p(x) usando a forma de Newton: xi 0.00 11. xi+1. A expressão geral para um polinômio interpolador de ordem n será então: + ( x − x0 ) ⋅ ( x − x1 ) ⋅  ⋅ ( x − xn−1 ) ⋅ f [ x0 .2 0.5 = 1.8 − 1. Portanto. 2 = 2 0 5. x1 .88 5.00 − 8. xn ] e o erro é dado por: pn ( x ) = f ( x0 ) + ( x − x0 ) ⋅ f [ x0 .9 = 6.9 1.5 2.8 1.2 0.00 (5.5 0.5 2. 5 − 0. xn .[Digite o título do documento] [Ano] e p1 ( x1 ) = f ( x0 ) + ( x1 − x0 ) ⋅ f [ x0 .72 8. x1 ] + ( x − x0 ) ⋅ ( x − x1 ) ⋅ f [ x0 .9 11. x ] Exemplo: Dado: x 0. x1 . até encontrarmos o polinômio interpolador de uma ordem n qualquer.88 5.5 = 2 = 3. 4 0.5 8.9 − 0. x1 .88 0.23) En ( x ) = ( x − x0 ) ⋅ ( x − x1 ) ⋅  ⋅ ( x − xn ) ⋅ f [ x0 .00 − 5.0 − 3. .8 3. x ] (5.21) que são as condições fundamentais para se encontrar tal polinômio. xi+1] f[xi .5 − 0.72 − 5. xi+2] 5.24) f[xi .8 − 0. x1 . x2 ] +  + (5.00 − 4. x1 ] = f ( x0 ) + ( x1 − x0 ) ⋅ f ( x1 ) − f ( x0 ) = f ( x1 ) x1 − x0 (5.72 8.0 F(x) 4.00 5. .22) Podemos continuar indefinidamente.00 0.9 1.00 5.00 2. 0 = 2 0 Apostila de Complementos de Cálculo Numérico 41 . aplicando sempre o mesmo raciocínio.9 − 0.5 − 0.8 6. 2 = 0.

88 + 0. isto é.2 x + 0.}.f(x0). Na fabricação de determinadas cerâmicas é muito importante saber as condições de temperatura em que o produto foi assado no forno.41 21:00 2.f(x4).44 a) Faça um gráfico de horário vs. encontrar uma reta que lhe permita obter o valor de f(x′ ).( x − 0. e deseja fazer uma interpolação linear.4 x − 0. faça a mesma estimativa.2).55 19:00 2.28 b) Estime a temperatura do forno ás 14:30 usando a forma de Newton para apenas dois pontos.08 + 2 x 2 − x − 0. quantos pontos você utilizaria? b) E quais pontos da tabela você usaria? 4.09 11:30 1.2). mas utilizando uma parábola como polinômio interpolador. Apostila de Complementos de Cálculo Numérico 42 . 04 + ( x − 0.f(x2). Como não é possível medir a temperatura do forno a todo instante. onde x1<x′ <x2: a) Qual seria o grau do polinômio que você calcularia.69 10:30 1.f(x1).88 + ( x − 0. 16:00 2.f(x3). número de carros para verificar qual a tendência da curva. ela é medida em intervalos periódicos de tempo e esses dados são interpolados para o instante em que cada peça foi “queimada” a fim de se conhecer a temperatura do forno nesse instante.1).32 2.4 x − 0. (x3.88 + 0. 2 p ( x) = 4. 5. usando a forma de Lagrange para encontrar um polinômio interpolador p(x) que estima o número de carros em função do tempo. (x4. 2 p ( x) = 4. Qual a relação entre o número de pontos usados na interpolação e o grau do polinômio interpolador que pode ser calculado? 3. c) Faça essa estimativa novamente.08 + ( x 2 − 0. Se você tiver um conjunto de 5 dados {(x0. Use uma reta como função interpoladora.9): p ( x) = 4. (x1. p(xi) = f(xi) 5. os seguintes dados foram coletados: Horário 7:00 10:00 13:00 Temperatura (102 oC) 2.5 x − 0.4 x + 0. desta vez usando 3 pontos.04 12:00 1.49 12:30 2.64 11:00 1. isto é.51 2. A seguinte tabela informa o número de carros que passam por um determinado pedágio em um determinado dia: Horário Número (em mil) 10:00 2.63 a) Construa a tabela de diferenças divididas para esses pontos.5). (x2. b) Estime o número de carros que passariam pelo pedágio às 11:10.[Digite o título do documento] [Ano] Usando (5. Em um dia de funcionamento do forno. c) Agora.4 Exercícios 1.2 p ( x) = 2 x 2 − x + 5 Note que usando a forma de Newton. Qual é a condição básica para se obter o polinômio interpolador? 2.

Sign up to vote on this title
UsefulNot useful