Cálculo da raiz de uma função pelo Método da Bisseção - Octave

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

[ Hits: 17.275 ]

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

Download met_bissecao.m




O método da bissecção é o mais simples dos métodos numéricos utilizados para obter numericamente a solução de uma equação não-linear f(x)=0.

Aqui vamos usar o Octave para implementar o método. Outras implementações do mesmo método utilizando Octave, você pode encontrar no wikipédia.

  



Esconder código-fonte

function [raiz,b,itera,erro] = met_bissecao(func,a,b,tolera,itera_max);

x=a;
Fa = eval(func);
x=b;
Fb = eval(func);

if Fa*Fb > 0
    disp  'Funcao com mesmo sinal nos extremos.'
    return ;
end

deltax = abs(b-a)/2;
itera = 0;
disp('       iteracao       a       Fa       b         Fb        x         Fx       delta x');

while 1
    x = (a+b)/2;
    Fx = eval(func);
    disp([itera  a  Fa  b Fb  x  Fx    deltax]);
    if ((deltax <= tolera && abs(Fx)<= tolera)||itera>=itera_max)
        break;
    end
    if Fa*Fx>0
        a = x;
        Fa = Fx;
    else
        b=x;
    end
    deltax = deltax/2;
    itera = itera+1;
end

raiz = x;

if deltax <= tolera && abs(Fx)<=tolera
    erro = 0;
else
    erro = 1;

end
end

Scripts recomendados

Octave - Método de Euler-Melhorado para solução de EDO

Octave - Sistemas lineares por Gauss-Seidel

Crivo de Eratóstenes Simples em Fortran 95

Octave - Decomposição LU

Octave - Calcular raiz pelo método de Newton


  

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