Metodo de la Secante para matlab con ejemplo

%Metodo de la Secante
function y=Secante(FuncionS,Xi,Xj,errorp)
c=1;
fXi=feval(FuncionS,Xi);
fXj=feval(FuncionS,Xj);
fprintf(' i Xi f(Xi) |ep| \n')
fprintf('---------------------------------------------------\n')
%imprimir primera iteracion ep=0
ep=0;
fprintf('%5d %10.8f %10.8f %10.8f \n',c,Xi,fXi,ep);
%imprimir segunda iteracion ep=100
c=c+1;
ep=100;
fprintf('%5d %10.8f %10.8f %10.8f \n',c,Xj,fXj,ep);
while(ep>errorp)
c=c+1;
%guardamos en segundo valor
aux=Xj;
%Calculamos el sgte valor
Xj=Xj-((fXj*(Xi-Xj))/(fXi-fXj));
Xi=aux;
%calcular el error porcentual
ep=abs((Xj-Xi)/Xj)*100;
%calcular f(Xj) y f(Xi)
fXi=fXj;
fXj=feval(FuncionS,Xj);
fprintf('%5d %10.8f %10.8f %10.8f \n',c,Xj,fXj,ep);
end
% Función: f(x) = X 4 - 2 X 3 - 12 X 2 + 16 X - 40
function y = FuncionS(x)
y= asin(x)-exp(-2*x);
>> secante('fdex4', 0 , 0.5 , 0.01);
i Xi f(Xi) |ep|
---------------------------------------------------
1 0.00000000 -1.00000000 0.00000000
2 0.50000000 0.15571933 100.00000000
3 0.43263099 0.02646771 15.57193344
4 0.41883539 -0.00055482 3.29379926
5 0.41911864 0.00000219 0.06758182
6 0.41911753 0.00000000 0.00026584
  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • Twitter
  • RSS

1 Response to "Metodo de la Secante para matlab con ejemplo"

  1. Unknown Says:
    24 de mayo de 2015, 0:23

    Muchas gracias por la aportación.

    Saludos desde España. FRL

Publicar un comentario

Buscar en este blog