Octave - Calcular raiz pelo método de Newton

Publicado por Daniel Moreira dos Santos (última atualização em 15/07/2010)

[ Hits: 22.035 ]

Homepage: http://www.danielmoreira.wordpress.com

Download Newton_Raiz.m




Em análise numérica, o método de Newton (ou método de Newton-Raphson) tem o objetivo de estimar as raízes de uma função. Para isso, toma-se um ponto qualquer da função, calcula-se a equação da tangente (derivada) da função nesse ponto, calcula-se o intercepto da tangente ao eixo das abcissas, calcula-se o valor da função nesse ponto, e repete-se o processo, que deve tender a uma das raízes da função rapidamente, ou não tender a nada, deixando isso claro logo.

  



Esconder código-fonte

function [Raiz,Iter,Erro] = Newton_Raiz(funcao,x0,Toler,IterMax);


%parametros de entrada: funcao,x0,Toler,IterMax -> funcao, valor inicial,

%tolerancia e num. max. de iteracoes

%parametros de saida: Raiz,Iter,Erro-> raiz, num. gasto de iteracoes e

%cond. de erro



x = x0;

Fx = eval(funcao);

DFx = eval(diff(funcao));

Iter = 0;

disp('      Iter        x     DFx      Fx        DeltaX');

disp([Iter           x        DFx      Fx     ]);

while (1)

    DeltaX = -Fx/DFx;

    x = x+DeltaX;

    Fx = eval(funcao);

    DFx = eval(diff(funcao));

    Iter = Iter+1;

    disp([Iter     x     DFx      Fx     DeltaX]);       

    if(abs(DeltaX)<Toler && abs(Fx)<Toler)||abs(DFx)==0 || Iter>= IterMax

        break;

    end

    

end

Raiz = x;

if abs(Fx)<Toler

    Erro = 0;

else

    Erro =1;

end

y = [];

for x=0.001:0.001:10

    y = [y,eval(funcao)];

end

x = 0.001:0.001:10;

plot(x,y);



end


Scripts recomendados

Octave - Calcular raiz pelo método da Secante

Teste de hardware e outros

Octave - Sistemas lineares por Jacobi

Crivo de Eratóstenes Simples em Fortran 95

CobWeb Plot em Octave


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts