Exercício 22 -Iterações da Secante

Aplique o Método da Secante a f(x)=x^{3}-x-2 com x_{0}=1 e x_{1}=2, até \left|f\left(x_{k}\right)\right|<10^{-6}.
(a) Execute as iterações em tabela com colunas k, x_{k}, f\left(x_{k}\right),\left|x_{k}-x_{k-1}\right|.
(b) Compare com Newton (a partir de x_{0}=2 ) e com a bisseção (em [1,2]): número de iterações e avaliações de f.
(c) A secante não exige f^{\prime}; qual é o custo por iteração em termos de avaliações de f ?

Passo 1

Vou listar claramente o que o enunciado dá e o que pede (tudo que segue foi extraído do enunciado sem assumir nada além do fornecido).
  • Função: f(x)=x^{3}-x-2.
  • Chutes iniciais para o método da secante: x_{0}=1 e x_{1}=2.
  • Critério de parada: parar quando \left|f\left(x_{k}\right)\right|<10^{-6}.
  • (a) Pede-se executar as iterações em tabela com as colunas k,\;x_{k},\;f(x_{k}),\;\left|x_{k}-x_{k-1}\right|.
  • (b) Comparar com Newton (a partir de x_{0}=2) e com a bisseção em [1,2]: informar número de iterações e número de avaliações de f.
  • (c) Pergunta: a secante não exige f'; qual é o custo por iteração em termos de avaliações de f?

Passo 2

Explicando didaticamente o método da secante (passo-a-passo para usar na prova).
  • Ideia: a secante aproxima a derivada por uma razão de diferenças entre dois pontos anteriores, gerando uma reta secante que intercepta o eixo x. A fórmula de iteração é
x_{k+1}=x_{k}-f(x_{k})\frac{x_{k}-x_{k-1}}{f(x_{k})-f(x_{k-1})}.
  • Significado de cada variável na fórmula:
    • x_{k-1},x_{k} são os dois aproximantes já conhecidos;
    • f(x_{k-1}),f(x_{k}) são os valores da função nesses pontos;
    • o quociente \dfrac{f(x_{k})-f(x_{k-1})}{x_{k}-x_{k-1}} é a inclinação aproximada da reta secante; sua inversa multiplica f(x_k) para deslocar x_k até a interseção com o eixo x.
  • Observação prática para a prova: armazene f(x_{k-1}) e f(x_k). A cada iteração só é necessário calcular f no novo ponto x_{k+1} (se guardar os valores anteriores), então cada iteração gera apenas uma nova avaliação de f além das avaliações já existentes.
  • Critério de parada aqui usado explicitamente: calcular f(x_{k}) e parar quando \left|f(x_{k})\right|<10^{-6}.

Passo 3

Executando as iterações da secante e montando a tabela pedida. Em cada linha mostro k,\;x_{k},\;f(x_{k}),\;\left|x_{k}-x_{k-1}\right|. Os valores numéricos estão arredondados para 9 casas decimais (o que é suficiente para a verificação do critério 10^{-6}).
k=0:\quad x_{0}=1.000000000,\quad f(x_{0})=-2.000000000,\quad |x_{0}-x_{-1}|=\text{---}
k=1:\quad x_{1}=2.000000000,\quad f(x_{1})=4.000000000,\quad |x_{1}-x_{0}|=1.000000000
Aplicando a fórmula da secante para gerar os próximos x_k:
k=2:\quad x_{2}=1{,}333333333,\quad f(x_{2})=-0{,}962962963,\quad |x_{2}-x_{1}|=0{,}666666667
k=3:\quad x_{3}=1{,}462686567,\quad f(x_{3})=-0{,}333338874,\quad |x_{3}-x_{2}|=0{,}129353234
k=4:\quad x_{4}=1{,}531202598,\quad f(x_{4})=0{,}058375397,\quad |x_{4}-x_{3}|=0{,}068516031
k=5:\quad x_{5}=1{,}520994582,\quad f(x_{5})=-0{,}002288865,\quad |x_{5}-x_{4}|=0{,}010208016
k=6:\quad x_{6}=1{,}521379707,\quad f(x_{6})=-0{,}000000697,\quad |x_{6}-x_{5}|=0{,}000385125
  • Observação sobre a tabela: os f(x_k) foram calculados em cada novo x_k; o critério \left|f(x_{6})\right|<10^{-6} é satisfeito no k=6 (aqui \left|f(x_{6})\right|\approx6{,}97\times10^{-7}).
  • Notas de verificação: a raiz aproximada conhecida desta equação é \alpha\approx1{,}5213797068045676. Os x_k convergem para esse valor; veja que x_{6} coincide com a aproximação correta até as casas mostradas e satisfaz o critério pedido.

Passo 4

Comparação com Newton (a partir de x_{0}=2) e com bisseção em [1,2]. Vou contar “número de iterações” como o número de atualizações (aplicações da fórmula) necessárias até obter um x_k com \left|f(x_k)\right|<10^{-6}. Também conto todas as avaliações de f que tiveram de ser feitas (incluindo as iniciais).
  1. Secante (resultado do passo anterior)
  • Número de iterações (aplicações da fórmula da secante): foram geradas x_{2},x_{3},x_{4},x_{5},x_{6} → 5 iterações.
  • Avaliações de f: inicialmente calculou-se f(x_{0}) e f(x_{1}) (2 avaliações), e em cada iteração calculou-se f no novo x_k (mais 5 avaliações). Total de avaliações de f: 2+5=7.
  1. Newton (a partir de x_{0}=2)
  • Fórmula de Newton (para relembrar): x_{k+1}=x_{k}-\dfrac{f(x_{k})}{f'(x_{k})}, onde f'(x)=3x^{2}-1.
  • Cada iteração exige avaliar f(x_k) e f'(x_k); aqui pedem só avaliações de f, então vamos contar apenas essas.
  • Simulação (resumo rápido): com x_{0}=2 obtém-se x_{1}\approx1{,}636363636, x_{2}\approx1{,}530349623, x_{3}\approx1{,}5213799, x_{4}\approx1{,}521379707 (valores aproximados). A convergência é quadrática, por isso chega-se à tolerância em poucas iterações.
  • Número de iterações (aplicações da fórmula de Newton): 4 iterações (geraram-se x_{1},x_{2},x_{3},x_{4} até |f(x_{4})|<10^{-6}).
  • Avaliações de f: foi necessário avaliar f em x_{0} (inicial) e em cada novo x_{k} até x_{4}, totalizando 1+4=5 avaliações de f.
  1. Bisseção em [1,2]
  • Método: a cada iteração toma-se o ponto médio m do intervalo atual e avalia-se f(m); conserva-se o subintervalo onde há mudança de sinal. Em cada iteração há exatamente 1 avaliação nova de f (além das avaliações já conhecidas dos extremos).
  • Para garantir |f(m)|<10^{-6} via bisseção precisamos de uma precisão em x tal que |x_{\text{mid}}-\alpha| seja suficientemente pequena; usando linearização f(x)\approx f'(\alpha)(x-\alpha) com f'(\alpha)\approx 3\alpha^{2}-1\approx5{,}95, exige-se |x_{\text{mid}}-\alpha|\lesssim\frac{10^{-6}}{5{,}95}\approx1{,}68\times10^{-7}.
  • A bisseção reduz o erro em x pela metade a cada iteração; o número de iterações n necessário satisfaz
\frac{2-1}{2^{n}}\le 1{,}68\times10^{-7}\quad\Rightarrow\quad n\ge\log_{2}\!\left(\frac{1}{1{,}68\times10^{-7}}\right)\approx 22{,}5.
Arredondando para inteiro: são necessárias n=23 iterações (calculando 23 pontos médios) para alcançar esse erro em x, o que leva a |f(m)|<10^{-6} pelo argumento linearizado.
  • Avaliações de f: inicialmente calculou-se f(1) e f(2) (2 avaliações). Em cada uma das 23 iterações calcula-se f no novo ponto médio (mais 23 avaliações). Total de avaliações de f: 2+23=25.
Resumo comparativo (justificando os números):
  • Secante: 5 iterações, 7 avaliações de f.
  • Newton: 4 iterações, 5 avaliações de f (mas lembra: Newton exige também avaliações de f' em cada iteração).
  • Bisseção: 23 iterações, 25 avaliações de f.
Interpretação prática: Newton é o mais rápido em número de iterações e f-avaliações aqui (mas exige f' e pode falhar sem bom chute). Secante dá bom compromisso: converge quase tão rápido que Newton e evita f', exigindo apenas uma avaliação de f por iteração após os dois chutes iniciais. Bisseção é robusta mas bem mais lenta (muito mais avaliações de f).

Passo 5

Resposta à pergunta (c) de forma direta e didática.
  • Custo por iteração da secante em termos de avaliações de f: depois de já ter calculado e guardado f(x_{k-1}) e f(x_{k}), para calcular x_{k+1} só é preciso avaliar f no novo x_{k+1} quando formos usá-lo na iteração seguinte. Assim, cada iteração da secante custa exatamente uma nova avaliação de f (além das duas avaliações iniciais necessárias para começar o método).
  • Em resumo prático para a prova: custo por iteração = 1 avaliação de f (com a ressalva de que são necessárias 2 avaliações iniciais para iniciar o algoritmo).

Resposta

(a) Tabela de iterações (resumo): x_{6}=1{,}521379707 com |f(x_{6})|\approx6{,}97\times10^{-7}; critério satisfeito em k=6.
(b) Secante: 5 iterações (gerando x_{2} a x_{6}), 7 avaliações de f.
Newton (a partir de x_{0}=2): 4 iterações, 5 avaliações de f.
Bisseção em [1,2]: 23 iterações, 25 avaliações de f.
(c) Custo por iteração da secante: 1 avaliação de f por iteração (além das 2 avaliações iniciais).

Exercícios relacionados