martes, 30 de marzo de 2010

Método de la Biseccion en Matlab




En matematicas, el método de bisección es un algoritmo de busqueda de raiz que trabaja dividiendo el interalo a la mitad y seleccionando el subintervalo que tiene la raíz.

METODO DE LA BISECCION

%Metodo de la Biseccion

function raiz=biseccion(fdex, i,s,e)

j=1;

fi=feval(fdex, i);

fs=feval(fdex, s);

r=(i+s)/2;

fr=feval(fdex, r);

h=abs(fr);

if fi*fs<0

ep=100;

ant=0;

fprintf(' Nro i r s fi fr fs ep\n')

fprintf('-----------------------------------------------------------------------------------\n')

while h > e

fi=feval(fdex, i);

fs=feval(fdex, s);

r=(i+s)/2;

fr=feval(fdex, r);

ep=abs((r-ant)/r)*100;

fprintf('%5d %10.6f %10.6f %10.6f %10.6f %10.6f %10.6f %10.6f \n', j, i, r, s, fi, fr, fs, ep);

ant=r;

h=abs(fr);

j=j+1;

if fi*fr<0

s=r;

else

i=r;

end

end

else

fprintf('Cambiar limites ');

end %Fin Funcion

FUNCION BISECCION

% Función: f(x) = X 4 - 2 X 3 - 12 X 2 + 16 X - 40

function y = fdex(x)

y=(x^3)-x-1;

EJECUTAR

Ejecución:biseccion(‘fdex’,1,1,0.01);










1 comentario: