You are on page 1of 51

Métodos Iterativos para Determinar Zeros de Funções

Prof. Júlio César S. Nascimento


julio.engpetro@gmail.com

MAT1527 - Métodos Numéricos I Unidade 01 1 / 47


Conteúdo

1 Introdução

2 Critério de Parada

3 Método da Bissecção

4 Método da Falsa Posição

5 Método do Ponto Fixo (MPF)

6 Método de Newton-Raphson

7 Método da Secante

MAT1527 - Métodos Numéricos I Unidade 01 2 / 47


Introdução

Definição
Um número real ξ é um zero da função f (x) ou uma raiz da equação
f (x) = 0 se f (ξ) = 0.

Observação
Em alguns casos, por exemplo, de equações polinomiais, os valores de x
que anulam f (x) podem ser reais ou complexos. No decorrer do conteúdo,
estaremos interessados somente nos zeros reais de f (x).

MAT1527 - Métodos Numéricos I Unidade 01 3 / 47


Introdução

Graficamente, os zeros reais são representados pelas abcissas dos pontos


~
onde a curva intercepta o eixo ox.

MAT1527 - Métodos Numéricos I Unidade 01 4 / 47


Introdução

A ideia central dos métodos que veremos é partir de uma aproximação


inicial para a raiz, e em seguida refinar essa aproximação através de um
processo iterativo.
Podemos dividir os métodos em duas fases:
1a fase: localização ou isolamento das raı́zes, que consiste em obter
um intervalo que contém a raiz.
2a fase: Refinamento, que consistem em, escolhidas aproximações
iniciais no intervalo encontrado na 1a fase, melhorá-las
sucessivamente até se obter uma aproximação para a raiz dentro de
uma precisão  prefixada.

MAT1527 - Métodos Numéricos I Unidade 01 5 / 47


1a Fase
Nesta fase é feita uma análise teórica e/ou gráfica da função f (x). É
importante ressaltar que o sucesso da 2a fase depende fortemente da
precisão desta análise.
Teorema
Seja f (x) uma função contı́nua num intervalo [a, b]. Se f (a)f (b) < 0
então existe pelo menos um ponto x = ξ entre a e b que é zero de f (x).

Observação: Sob as hipóteses do teorema acima, se f 0 (x) existir e


preservar sinal em (a, b), então este intervalo contém um único zero de
f (x).
MAT1527 - Métodos Numéricos I Unidade 01 6 / 47
1a Fase

Uma forma de se isolar as raı́zes de f (x) usando os resultados anteriores é


tabelar f (x) para vários valores de x e analisar as mudanças de sinal de
f (x) e o sinal da derivada nos intervalos em que f (x) mudou de sinal.

Exemplo
1) Dada a função f (x) = x 3 − 9x + 3, determine os intervalos que
contenham as raı́zes.

2) Dada a função f (x) = x − 5e −x , determine o intervalo que contem a
raiz.

MAT1527 - Métodos Numéricos I Unidade 01 7 / 47


1a Fase

A análise gráfica da função f (x) ou da equação f (x) = 0 é fundamental


para se obter boas aproximações para a raiz. Para tanto, é suficiente
utilizar um dos seguintes processos:
i) esboçar o gráfico da função f (x) e localizar as abcissas dos pontos
onde a curva intercepta o eixo ox; ~
ii) a partir da equação f (x) = 0, obter a equação equivalente
g (x) = h(x), esboçar os gráficos das funções g (x) e h(x) no mesmo
plano cartesiano e localizar os pontos x onde as duas curvas se
interceptam, pois neste caso f (ξ) = 0 ⇔ g (ξ) = h(ξ);
iii) usar os programas que traça, gráficos de funções, disponı́veis em
algumas calculadoras ou softwares matemáticos.

MAT1527 - Métodos Numéricos I Unidade 01 8 / 47


1a Fase

Exemplo
Utilizando a análise gráfica, determine os intervalos que contenhas os
zeros das funções.
1) f (x) = x 3 − 9x + 3

2) f (x) = x − 5e −x
3) f (x) = x log(x) − 1

MAT1527 - Métodos Numéricos I Unidade 01 9 / 47


Exercı́cio

Utilizando a análise gráfica, determine os intervalos que contenha os zeros


das funções:
1) f (x) = 4 cos(x) − e 2x
x
2) f (x) = 2 − tg (x)
3) f (x) = 1 − x ln(x)
4) f (x) = 2x − 3x
5) f (x) = x 3 + x − 1000

MAT1527 - Métodos Numéricos I Unidade 01 10 / 47


2a Fase: Refinamento

Estudaremos vários métodos numéricos de utilizados para refinar a raiz. A


forma como se efetua o refinamento é que diferencia cada um dos
métodos.
Definição
Um método iterativo consiste em uma sequência de instruções que são
executadas passo a passo, algumas das quais são repetidas em ciclos.
A execução de um ciclo recebe o nome de iteração. Cada iteração utiliza
resultados das iterações anteriores e efetua determinados testes que
permitem verificar se foi atingido um resultado próximo o suficiente do
resultado esperado.

MAT1527 - Métodos Numéricos I Unidade 01 11 / 47


MAT1527 - Métodos Numéricos I Unidade 01 12 / 47
Critério de Parada

Como saber se xk está suficiente próximo a raiz exata?


Definição
Dizemos que uma raiz aproximada x̄ tem precisão  se
i) |x̄ − ξ| < 
ii) |f (x̄)| < 

MAT1527 - Métodos Numéricos I Unidade 01 13 / 47


Critério de Parada

Como saber se xk está suficiente próximo a raiz exata?


Definição
Dizemos que uma raiz aproximada x̄ tem precisão  se
i) |x̄ − ξ| < 
ii) |f (x̄)| < 
Como efetuar o teste i) se não conhecemos ξ?

MAT1527 - Métodos Numéricos I Unidade 01 13 / 47


Critério de Parada

Como saber se xk está suficiente próximo a raiz exata?


Definição
Dizemos que uma raiz aproximada x̄ tem precisão  se
i) |x̄ − ξ| < 
ii) |f (x̄)| < 
Como efetuar o teste i) se não conhecemos ξ?
Uma forma é reduzir o intervalo que contém a raiz a cada iteração. Ao se
conseguir um intervalo [a, b] tal que

ξ ∈ [a, b] e b−a<

então ∀x ∈ [a, b], |x − ξ| < . Portanto ∀x ∈ [a, b] pode ser tomado como

MAT1527 - Métodos Numéricos I Unidade 01 13 / 47


Nem sempre é possı́vel atender os critérios (i) e (ii) simultaneamente. Os
gráficos a seguir ilustram algumas possibilidades:

MAT1527 - Métodos Numéricos I Unidade 01 14 / 47


Observações

Os métodos numéricos são desenvolvidos de forma a satisfazer pelo


menos um dos critérios.
Dependendo da ordem de grandeza dos números envolvidos, é
|xk+1 − xk |
aconselhável usar o erro relativo: < .
max(1, |xk+1 |)
Em programas computacionais, além do teste de parada usado para
cada método, deve-se ter cuidado e estipular um número máximo de
iterações para se evitar que o programa entre em ”looping”infinito,
devido a erros no próprio programa ou a inadequação do método
usado para o problema em questão.

MAT1527 - Métodos Numéricos I Unidade 01 15 / 47


Método da Bissecção

Definição
Seja a função f (x) contı́nua no intervalo [a, b] e tal que f (a)f (b) < 0.
Vamos supor, para simplificar, que o intervalo (a, b) contenha uma única
raiz da equação f (x) = 0.
O objetivo deste método é reduzir a amplitude do intervalo que contém a
raiz até se atingir a precisão requerida: (b − a) < , usando para isto
sucessivas divisões de [a, b] ao meio.

MAT1527 - Métodos Numéricos I Unidade 01 16 / 47


Método da Bissecção

As iterações são realizadas da seguinte forma


a+b
xk = , para k = 0, 1, 2..., (1)
2
(
< 0, b = xk
Se f (a) × f (xk ) (2)
> 0, a = xk

MAT1527 - Métodos Numéricos I Unidade 01 17 / 47


Método da Bissecção

Interpretação geométrica:

MAT1527 - Métodos Numéricos I Unidade 01 18 / 47


Exemplo
1) Sabendo que a função f (x) = x log(x) − 1 tem um zero no intervalo
(2, 3). Aplique o método da bissecção para determinar a raiz com
precisão  = 10−1 , use como criterio de parada (b − a) < .
2
2) Sabendo que a função f (x) = (x + 1)2 e (x −2) − 1 tem um zero no
intervalo (0, 1). Aplique o método da bissecção para determinar a raiz
com precisão  = 2x10−2

MAT1527 - Métodos Numéricos I Unidade 01 19 / 47


Método da Falsa Posição

Definição
Seja a função f (x) contı́nua no intervalo [a, b] e tal que f (a)f (b) < 0.
Podemos esperar conseguir a raiz aproximada x̄ usando as informações
sobre os valores de f (x) disponı́veis a cada iteração.
No método da falsa posição, tomaremos a média aritmética ponderada
entre a e b com pesos |f (b)| e |f (a)|, respectivamente

a|f (b)| + b|f (a)|


x=
|f (b)| + |f (a)|

visto que f (a) e f (b) tem sinais opostos, podemos escrever

af (b) − bf (a)
x=
f (b) − f (a)

MAT1527 - Métodos Numéricos I Unidade 01 20 / 47


Método da Falsa Posição
~ e a reta
Graficamente, o ponto x obtido é a interseção entre o eixo ox
r (x) que passa por (a, f (a)) e (b, f (b))

MAT1527 - Métodos Numéricos I Unidade 01 21 / 47


Método da Falsa Posição
Interpretação geométrica:

MAT1527 - Métodos Numéricos I Unidade 01 22 / 47


Exemplo
Sabendo que a função f (x) = x log(x) − 1 tem um zero no intervalo
(2, 3). Aplique o método da falsa posição para determinar a raiz com
precisão  = 10−2 .

MAT1527 - Métodos Numéricos I Unidade 01 23 / 47


Método do Ponto Fixo (MPF)

Definição
Seja a função f (x) contı́nua no intervalo [a, b], intervalo que contém uma
raiz da equação f (x) = 0.

O MPF consiste em transformar a equação f (x) = 0 em uma equação


equivalente x = ϕ(x) e a partir de uma aproximação inicial x0 gerar a
sequência {xk } de aproximações para ξ pela relação xk+1 = ϕ(xk ), pois a
função ϕ(x) é tal que f (ξ) = 0, se e somente se ϕ(ξ) = ξ. Transformamos
assim o problema de encontrar um zero de f (x) no problema de encontrar
um ponto fixo de ϕ(x).

Uma função ϕ(x) que satisfaz a condição acima é chamada de função de


iteração para a equação f (x) = 0.

MAT1527 - Métodos Numéricos I Unidade 01 24 / 47


Exemplo
Para a equação x 2 + x − 6 = 0 temos várias funções de iteração, entre as
quais:

MAT1527 - Métodos Numéricos I Unidade 01 25 / 47


Exemplo
Para a equação x 2 + x − 6 = 0 temos várias funções de iteração, entre as
quais:
a) ϕ1 (x) = 6 − x 2 ;

b) ϕ2 (x) = ± 6 − x;
6
c) ϕ3 (x) = − 1;
x
6
d) ϕ4 (x) = .
x +1

MAT1527 - Métodos Numéricos I Unidade 01 25 / 47


Método do Ponto Fixo (MPF)

A forma geral das funções de interação ϕ(x) é

ϕ(x) = x + A(x)f (x)

com a condição que em ξ, ponto fixo de ξ(x), se tenha A(ξ) 6= 0.


Mostraremos que f (ξ) = 0 ⇔ ϕ(ξ) = ξ.

MAT1527 - Métodos Numéricos I Unidade 01 26 / 47


Método do Ponto Fixo (MPF)

A forma geral das funções de interação ϕ(x) é

ϕ(x) = x + A(x)f (x)

com a condição que em ξ, ponto fixo de ξ(x), se tenha A(ξ) 6= 0.


Mostraremos que f (ξ) = 0 ⇔ ϕ(ξ) = ξ.
(⇒) seja ξ tal que f (ξ) = 0.
ϕ(ξ) = ξ + A(ξ)f (ξ) ⇒ ϕ(ξ) = ξ (porque f (ξ) = 0).
(⇐) se ϕ(ξ) = ξ ⇒ ξ + A(ξ)f (ξ) = ξ ⇒ A(ξ)f (ξ) = 0 ⇒ f (ξ) = 0
(porque A(ξ) 6= 0).
Com isto vemos que, dada uma equação f (x) = 0, existem infinitas
funções iteração ϕ(x) para a equação f (x) = 0.

MAT1527 - Métodos Numéricos I Unidade 01 26 / 47


Método do Ponto Fixo (MPF)
Graficamente, uma raiz da equação x = ϕ(x) é a abcissa do ponto de
intersecção da reta y = x e da curva y = ϕ(x).

MAT1527 - Métodos Numéricos I Unidade 01 27 / 47


Método do Ponto Fixo (MPF)

MAT1527 - Métodos Numéricos I Unidade 01 28 / 47


Método do Ponto Fixo (MPF)

MAT1527 - Métodos Numéricos I Unidade 01 29 / 47


Método do Ponto Fixo (MPF)

MAT1527 - Métodos Numéricos I Unidade 01 30 / 47


Método do Ponto Fixo (MPF)
Estudo da Convergência do MPF
Vimos que, dada uma equação f (x) = 0, existe mais de uma função ϕ(x),
tal que f (x) = 0 ⇔ x = ϕ(x).
O teorema a seguir nos da condições suficientes para garantir a
convergência do método.

Teorema
Seja ξ uma raiz da equação f (x) = 0, isolada num intervalo I centrado em
ξ.
Seja ϕ(x) uma função de iteração para a equação f (x) = 0. Se
i) ϕ(x) e ϕ0 (x) são contı́nuas em I ,
ii) |ϕ0 (x)| ≤ M < 1, ∀x ∈ I e
iii) x0 ∈ I ,
então a sequência {xk } gerada pelo processo iterativo xk+1 = ϕ(xk )
converge para ξ.
MAT1527 - Métodos Numéricos I Unidade 01 31 / 47
Exemplos
1) Sabendo que a função f (x) = x 2 + x − 6 tem zeros em ξ = −3 e
ξ = 2, calcule as primeiras cinco iterações do MPF, utilizando como
funções de iterações
a) 6 − x2
ϕ1 (x) = √
b) ϕ2 (x) = 6 − x
e chute inicial x0 = 1, 5.
2) Verifique as condições do Teorema para as funções de iterações
utilizadas no exercı́cio acima.

MAT1527 - Métodos Numéricos I Unidade 01 32 / 47


Exemplo
a)

MAT1527 - Métodos Numéricos I Unidade 01 33 / 47


Exemplo
b)

MAT1527 - Métodos Numéricos I Unidade 01 34 / 47


Critérios de Parada

No algoritmo do método do ponto fixo, escolhe-se xk como a raiz


aproximada de ξ se
i) |xk − xk−1 | = |ϕ(xk−1 ) − xk−1 | < , ou
ii) |f (xk )| < 

MAT1527 - Métodos Numéricos I Unidade 01 35 / 47


Critérios de Parada
Devemos observar que |xk − xk−1 | < , não implica necessariamente que
|xk − ξ| < , conforme pode ser observado na figura

MAT1527 - Métodos Numéricos I Unidade 01 36 / 47


Critérios de Parada
Por outro lado, se ϕ0 (x) < 0 em I (intervalo centrado em ξ), a sequência
{xk } será oscilante em torno de ξ e, neste caso, se
|xk − xk−1 | <  ⇒ |xk − ξ| < , pois |xk − ξ| < |xk − xk−1 |.

MAT1527 - Métodos Numéricos I Unidade 01 37 / 47


Método de Newton-Raphson

Definição
No estudo do método do ponto fixo, vimos que:
i) uma das condições de convergência é que |ϕ0 (x)| ≤ M < 1, ∀x ∈ I e,
onde I é um intervalo centrado na raiz;
ii) a convergência do método será mais rápida quanto menor for |ϕ0 (ξ)|.
O que o método de Newton faz, na tentativa de garantir e acelerar a
convergência do MPF, é escolher para função de iteração a função ϕ(x)
tal que ϕ0 (x) = 0.

MAT1527 - Métodos Numéricos I Unidade 01 38 / 47


Método de Newton-Raphson

Definição
Então, dada a equação f (x) = 0 e partindo da forma geral para ϕ(x),
queremos obter a função A(x) tal que ϕ0 (x) = 0.
ϕ(x) = x + A(x)f (x)
derivando em relação a x
ϕ0 (x) = 1 + A0 (x)f (x) + A(x)f 0 (x)
substituindo x pela raiz ξ
ϕ0 (ξ) = 1 + A0 (ξ)f (ξ) + A(ξ)f 0 (ξ)
utilizando o fato de que ξ é raiz (f (ξ) = 0)
ϕ0 (ξ) = 1 + A(ξ)f 0 (ξ).
−1 −1
Assim, ϕ0 (ξ) = 0 ⇔ A(ξ) = 0 , de onde tomamos A(x) = 0 e
f (ξ) f (x)
obtemos a seguinte equação de iteração

f (xk )
xk+1 = xk −
f 0 (xk )
MAT1527 - Métodos Numéricos I Unidade 01 39 / 47
Método de Newton-Raphson

O método de Newton é obtido geometricamente da seguinte forma: dado


o ponto (xk , f (xk )) traçamos a reta Lk (x) tangente à curva neste ponto

Lk (x) = f (xk ) + f 0 (xk )(x − xk ).

Lk (x) é um modelo linear que aproxima a função f (x) numa vizinhança de


xk .
Encontrando o zero deste modelo, obtemos
f (x)
Lk (x) = 0 ⇔ x = xk −
f 0 (xk )

Fazemos então xk+1 = x.

MAT1527 - Métodos Numéricos I Unidade 01 40 / 47


Método de Newton-Raphson

MAT1527 - Métodos Numéricos I Unidade 01 41 / 47


Estudo da Convergência

Teorema
Sejam f (x), f 0 (x) e f 00 (x) contı́nuas num intervalo I que contém a raiz
x = ξ de f (x) = O. Supondo que f 0 (ξ) 6= 0. Então, existe um intervalo
I¯ ⊂ I , contendo a raiz ξ, tal que se x0 ∈ I¯, a sequência {xk } gerada pela
f (x)
fórmula recursiva xk+1 = xk − 0 convergirá para a raiz.
f (xk )

MAT1527 - Métodos Numéricos I Unidade 01 42 / 47


Exemplo
1) Sabendo que a função f (x) = x 2 + x − 6 tem zeros em ξ = −3 e
ξ = 2, calcule as primeiras cinco iterações do método de
Newton-Raphson, com chute inicial x0 = 1, 5.
2) Sabendo que a função f (x) = x 3 − 9x + 3 possui três zeros:
ξ1 ∈ I1 = (−4, −3), ξ2 ∈ I2 = (0, 1) e ξ3 ∈ I3 = (2, 3) e seja x0 = 1, 5.
Calcule as primeiras dez aproximações pelo método de Newton.

MAT1527 - Métodos Numéricos I Unidade 01 43 / 47


Método da Secante

Definição
O método da secante substitui a derivada f 0 (xk ) pelo quociente das
diferenças:
f (xk + h) − f (xk )
f 0 (x) ≈ , h = O(10−5 )
h
ou, afim de facilitar os cálculos podemos utilizar

f (xk ) − f (xk−1 )
f 0 (x) ≈
xk − xk−1

onde xk e xk−1 são duas aproximações para a raiz. Neste ultimo caso a
função de iteração fica

xk−1 f (xk ) − xk f (xk−1 )


ϕ(xk ) =
f (xk ) − f (xk−1 )

MAT1527 - Métodos Numéricos I Unidade 01 44 / 47


Interpretação Geométrica
A partir de duas aproximações xk−1 e xk , o ponto xk+1 é obtido como
~ e da reta secante que
sendo a abcissa do ponto de intersecção do eixo ox
passa por (xk−1 , f (xk−1 )) e (xk , f (xk )).

MAT1527 - Métodos Numéricos I Unidade 01 45 / 47


Estudo da Convergência

Visto que o método da secante é uma aproximação para o método de


Newton, as condições para a convergência do método são praticamente as
mesmas, acrescente-se ainda que o método pode divergir se
f (xk ) ≈ f (xk−1 ).

MAT1527 - Métodos Numéricos I Unidade 01 46 / 47


Exemplo
1) Sabendo que a função f (x) = x 2 + x − 6 tem zeros em ξ = −3 e
ξ = 2, calcule as primeiras cinco iterações do método da secante, com
chutes iniciais x0 = 1, 5 e x1 = 1, 7.

MAT1527 - Métodos Numéricos I Unidade 01 47 / 47

You might also like