| | | |

Matemática numérica I

Ajude a manter o site livre, gratuito e sem propagandas. Colabore!

2.5 Método de newton

Seja x∗ um zero de uma dada função f, i.e.

f⁢(x∗)=0. (2.130)

A expansão em polinômio de Taylor131313Brook Taylor, 1685 - 1731, matemático britânico. Fonte: Wikipédia: Brook Taylor. de f em um ponto x~ dado, é

f⁢(x∗)=f⁢(x~)+f′⁢(x~)⁢(x∗−x~)+O⁢(|x∗−x~|2). (2.131)

Como f⁢(x∗)=0, temos

0=f⁢(x~)+f′⁢(x~)⁢(x∗−x~)+O⁢(|x∗−x~|2) (2.132)
x∗=x~−f⁢(x~)f′⁢(x~)+O⁢(|x∗−x~|2) (2.133)

Esta última expressão nos indica que dada uma aproximação x~ do zero de f a expressão

x~−f⁢(x~)f′⁢(x~), (2.134)

aproxima x∗ com um erro da ordem de |x∗−x~|2.

Estas observações nos levam a iteração de Newton141414Isaac Newton, 1642 - 1727, matemático, físico, astrônomo, teólogo e autor inglês. Fonte: Wikipédia: Isaac Newton.

x(0)=aprox. inicial, (2.135)
x(k+1)=x(k)−f⁢(x(k))f′⁢(x(k)), (2.136)

com k=0,1,2,….

Exemplo 2.5.1.

Consideramos o problema de encontrar o zero da função

f⁢(x)=sen2⁡(x+π4)−x3 (2.137)
+π4⁢x2+5⁢π216⁢x+3⁢π364. (2.138)

no intervalo [2,3]. Consultemos a Figura 2.8.

Refer to caption
Figura 2.8: Função f do Exemplo 2.5.1.

Fazendo as iterações de Newton com aproximação inicial x(0)=2.6, obtemos os resultados apresentados na Tabela 2.9.

Tabela 2.9: Resultados referentes ao Exemplo 2.5.1.
k x(k) |x(k)−x(k−1)|
0 2.6000 -x-
1 2.3836 2.2⁢e−1
2 2.3566 2.7⁢e−2
3 2.3562 3.9⁢e−4
4 2.3562 8.3⁢e−8
1import numpy as np
2
3# fun obj
4f = lambda x: np.sin(x+np.pi/4)**2 \
5 - x**3 + np.pi/4*x**2 + 5*np.pi**2/16*x \
6 + 3*np.pi**3/64
7
8fl = lambda x: 2*np.sin(x+np.pi/4)*np.cos(x+np.pi/4) \
9 -3*x**2 + np.pi/2*x + 5*np.pi**2/16
10
11# aprox. inicial
12x0 = 2.6
13print(f'0: {x0:.4e}')
14
15# iterações
16for k in range(4):
17 x = x0 - f(x0)/fl(x0)
18 print(f'{k+1}: {x:.4e}')
19 x0 = x
Observação 2.5.1.

O método de Newton é uma iteração de ponto fixo ótima. Do teorema do ponto fixo (Teorema 2.3.1), a iteração

x(k+1)=g⁢(x(k)) (2.139)
:=x(k)−αf(x(k)) (2.140)

tem taxa de convergência151515Supondo verdadeiras as demais hipóteses do Teorema 2.3.1.

|x(k+1)−x(k)|≤K⁢|x(k)−x(k−1)|, (2.141)

com K tal que |g′⁢(x)|=|1−α⁢f′⁢(x)|<K<1. Isto nos indica que a melhor escolha para α é

α=1f′⁢(x), (2.142)

de forma que (2.140) coincide com a iteração de (2.136).

2.5.1 Interpretação geométrica

Dada uma aproximação x(k) de um zero de uma função f, obtemos a nova aproximação x(k+1) pela iteração de Newton, com

x(k+1)=x(k)−f⁢(x(k))f′⁢(x(k)). (2.143)

Subtraindo x(k+1) e multiplicando por −f′⁢(x(k)), obtemos

0=f′⁢(x(k))⁢(x(k+1)−x(k))+f⁢(x(k)), (2.144)

Observemos que o lado direito desta última equação corresponde a expressão da reta tangente ao gráfico de f pelo ponto (x(k),f⁢(x(k))), avaliada em x(k+1). Mais precisamente, a equação desta reta tangente é

y=f′⁢(x(k))⁢(x−x(k))+f⁢(x(k)) (2.145)

e a equação (2.144) nos informa que em x=x(k+1) a reta tangente cruza o eixo x.

Refer to caption
Figura 2.9: Interpretação geométrica das iterações de Newton.

Destas observações, concluímos que a iterada x(k+1) do método de Newton corresponde ao ponto de interseção da reta tangente ao gráfico da f pelo ponto (xk,f⁢(xk)) com o eixo das abscissas161616Eixo x.. Consultemos a Figura 2.9.

Exemplo 2.5.2.

Consideremos que o método de Newton seja usado para aproximarmos o zero de

f⁢(x)=(x−1)⁢e−x2. (2.146)

Observemos que esta função tem x=1 como seu único zero. Agora, se escolhermos x(0)=0.5 as iterações de Newton convergem para este zero, mas, se escolhermos x~(0)=1.5 não. Consultemos a Tabela 2.10.

Tabela 2.10: Resultados referentes ao Exemplo 2.5.2
k x(k) x~(k)
0 5.0000⁢e−1 1.5000⁢e+0
1 8.3333⁢e−1 2.5000⁢e+0
2 9.6377⁢e−1 2.7308⁢e+0
3 9.9763⁢e−1 2.9355⁢e+0
4 9.9999⁢e−1 3.1223⁢e+0
5 1.0000⁢e+0 3.2955⁢e+0
Refer to caption
Figura 2.10: Escolha da aproximação inicial para o método de Newton.

Embora ambas aproximações iniciais estão a mesma distância da solução x=1, quando tomamos x(0)=1.5 as iterações irão divergir, como podemos observar da interpretação geométrica dada na Figura 2.10.

2.5.2 Análise de convergência

Seja x∗ o zero de uma dada função f duas vezes continuamente diferenciável com f′⁢(x)≠0 para todo x∈[x∗−ε0,x∗+ε0] para algum ε0>0. Seja, também, (x(k))k=0∞ a sequência das iteradas de Newton

x(k+1)=x(k)−f⁢(x(k))f′⁢(x(k)),k=0,1,2,…, (2.147)

com aproximação inicial x(0)∈(x∗−ε0,x∗+ε0). Então, do polinômio de Taylor de grau 1 de f em torno de x(0), temos

f⁢(x∗)=f⁢(x(0))+f′⁢(x(0))⁢(x∗−x(0))+f′′⁢(ξ(0))2!⁢(x∗−x(0))2, (2.148)

onde ξ(0) está entre x(0) e x∗. Daí, rearranjamos os termos e notamos que f⁢(x∗)=0 para obtermos

x∗−[x(0)−f⁢(x(0))f′⁢(x(0))]=f′′⁢(ξ(0))2⁢f′⁢(x(0))⁢(x∗−x(0))2. (2.149)

Então, da iteração de Newton (2.147), temos

x∗−x(1)=f′′⁢(ξ(0))2⁢f′⁢(x(0))⁢(x∗−x(0))2 (2.150)

Logo,

|x∗−x(1)|≤C⁢|x∗−x(0)|2, (2.151)

com

C=supx,y∈[x∗−ε,x∗+ε]|f′′⁢(x)2⁢f′⁢(y)|. (2.152)

Segue, então, que se x(0)∈(x∗−ε,x∗+ε) para algum ε>0 tal que

C⁢ε<1, (2.153)

então x(1)∈(x∗−ε,x∗+ε).

Logo, por indução matemática171717Veja o E.2.5.6., temos que o método de Newton tem ordem de convergência quadrática

|x(k+1)−x∗|≤C⁢|x(k)−x∗|𝟐, (2.154)

para qualquer escolha de x(0) suficientemente próximo de x∗, i.e. x(0)∈(x∗−ε,x∗+ε).

Observação 2.5.2.

O intervalo (x∗−ε,x∗+ε) é chamado de bacia de atração do método de Newton.

Exemplo 2.5.3.

Retornamos ao problema de encontrar o zero da função

f⁢(x)=sen2⁡(x+π4)−x3
+π4⁢x2+5⁢π216⁢x+3⁢π364. (2.155)

no intervalo [2,3]. Este problema foi construído de forma que x∗=3⁢π/4 é um zero de f. Então, fazendo as iterações de Newton com aproximação inicial x(0)=2.6, obtemos os resultados apresentados na Tabela 2.11, os quais evidenciam a convergência quadrática das iterações computadas.

Tabela 2.11: Resultados referentes ao Exemplo 2.5.3.
k x(k) |x(k)−x∗|
0 2.6000 2.4⁢e−01
1 2.3836 2.7⁢e−02
2 2.3566 3.9⁢e−04
3 2.3562 8.3⁢e−08
4 2.3562 3.6⁢e−15

2.5.3 Zeros múltiplos

Na análise de convergência acima foi necessário assumir que f′⁢(x)≠0 para todo x em uma vizinha do zero x∗ da função f. Isto não é possível no caso de x∗ ser um zero duplo pois, então, f′⁢(x∗)=0. Neste caso, podemos aplicar o método de Newton a f′⁢(x), a qual tem x∗ como um zero simples.

Exemplo 2.5.4.

Consideremos o problema de aproximar o zero da função

f⁢(x)=sen2⁡(x+π4)−x3
+π4⁢x2+5⁢π216⁢x+3⁢π364. (2.156)

no intervalo [−1.0]. Este problema foi construído de forma que x∗=−π/4 é um zero duplo de f. Então, aplicamos o método de Newton a

f′⁢(x)=2⁢sen⁡(x+π4)⁢cos⁡(x+π4)
−3⁢x2+π2⁢x+5⁢π216. (2.157)

Ou seja, as iterações de Newton são

x(k+1)=x(k)−f′⁢(x(k))f′′⁢(x(k)),k=0,1,2,…, (2.158)

sendo x(1) uma aproximação inicial. Na Tabela 2.12, temos os resultados obtidos da computação destas iterações com x(1)=−0.5.

Tabela 2.12: Resultados referentes ao Exemplo 2.5.4.
k x(k) |x(k)−x∗|
0 -0.5000
1 -0.8341 3.3e-01
2 -0.7862 4.8e-02
3 -0.7854 7.9e-04
4 -0.7854 2.3e-07
5 -0.7854 1.9e-14
Observação 2.5.3.(Zeros múltiplos)

No caso de zeros de multiplicidade m>1 de uma dada função f, podemos aplicar o método de Newton à derivada m−1 de f, o que requer o cálculo de m derivadas de f. Alternativamente, consideramos aplicar o método à função auxiliar

μ⁢(x):=f⁢(x)f′⁢(x). (2.159)

De fato, se x∗ é zero de multiplicidade m≥1 de f, então existe uma função g tal que g⁢(x∗)≠0 e

f⁢(x)=(x−x∗)m⁢g⁢(x) (2.160)

Com isso, temos

μ⁢(x)=(x−x∗)m⁢g⁢(x)m⁢(x−x∗)m−1⁢g⁢(x)+(x−x∗)m⁢g′⁢(x) (2.161)
=(x−x∗)⁢g⁢(x)m⁢g⁢(x)+(x−x∗)⁢g′⁢(x) (2.162)

Como g⁢(x∗)≠0, temos que

g⁢(x∗)m⁢g⁢(x∗)+(x∗−x∗)⁢g′⁢(x∗)=1m≠0. (2.163)

Ou seja, x∗ é um zero simples de μ. A iteração do Método de Newton aplicado à μ fornece

x(k+1)=x(k)−μ⁢(x(k))μ′⁢(x(k)) (2.164)
=x(k)−f⁢(x(k))f′⁢(x(k))[f′⁢(x(k))]2−f⁢(x(k))⁢f′′⁢(x(k))[f′⁢(x(k))]2 (2.165)

Rearranjando os termos, obtemos a iteração modificada de Newton para zeros de multiplicidade maior que 1

x(k+1)=x(k)−f⁢(x(k))⁢f′⁢(x(k))[f′⁢(x(k))]2−f⁢(x(k))⁢f′′⁢(x(k)). (2.166)

Para uma aplicação, consulte o E.2.5.3.

2.5.4 Exercícios

E. 2.5.1.

Use o método de Newton para obter uma aproximação do zero de f⁢(x)=x3⁢sen⁡(x)−cos⁡(x) no intervalo [0.5,1] com precisão de 10−6.


9.15811⁢e−1

E. 2.5.2.

Use o método de Newton para obter uma aproximação do zero de

f⁢(x)=(−x2+1.154⁢x−0.332929)⁢cos⁡(x)
+x2−1.154⁢x+0.332929 (2.167)

no intervalo (0.55,0.65) com precisão de 10−5.


5.7700⁢e−1

E. 2.5.3.

A função (2.156) tem um zero de multiplicidade par em x=−π/4. Assumindo a aproximação inicial x(0)=−0.5, aplique a iteração modificada de Newton dada em (2.166) e compare os resultados com apresentados na Tabela 2.12.

E. 2.5.4.

Assumindo a aproximação inicial x(0)=1, aproxime o zero de

f⁢(x)=ex−x−1 (2.168)

usando:

  1. a)

    a iteração de Newton para f.

  2. b)

    a iteração de Newton para f′.

  3. c)

    a iteração modificada de Newton181818Equação (2.166). para f.

Qual a melhor abordagem? Justifique sua resposta.


Dica: Analise a convergência das iteradas para cada abordagem.

E. 2.5.5.

Use o Método de Newton para obter a aproximação do zero de

p⁢(x)=x3−3⁢π⁢x2+3⁢π2⁢x−π3. (2.169)

Dica: x=π é zero de multiplicidade 3.

Análise numérica

E. 2.5.6.

Complete a demonstração por indução matemática de que o método de Newton tem taxa de convergência quadrática.


Envie seu comentário

Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!

Opcional. Preencha seu nome para que eu possa lhe contatar.
Opcional. Preencha seu e-mail para que eu possa lhe contatar.
As informações preenchidas são enviadas por e-mail para o desenvolvedor do site e tratadas de forma privada. Consulte a política de uso de dados para mais informações.

Licença Creative Commons
Este texto é disponibilizado nos termos da Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional. Ícones e elementos gráficos podem estar sujeitos a condições adicionais.

Pedro H A Konzen
| | | |