Está en la página 1de 3

MTODO DE LA SECANTE

12:01 Mtodos Numricos, Secante No comments


Uno de los problemas de la implementacin del mtodo de Newton-Raphson es el de la evaluacin
de la derivada. Puede que esto no sea un inconveniente para los polinomios y algunas otras
funciones, pero existen algunas otras funciones para las cuales la derivada puede ser difcil de
evaluar. Adems tambin pudiera darse el caso en que en realidad no contemos con una funcin
como tal sino que solo dispongamos de un conjunto de puntos (xi,f(xi)) de tal manera que tampoco
sera posible obtener de forma analtica la derivada de nuestra funcin objetivo.Para casos como
estos, la derivada su puede aproximar como una diferencia dividida finita regresiva. La derivada se
puede aproximar entonces de la siguiente forma:

f(xi)f(xi1)f(xi)xi1xi(1)

Esta aproximacin se puede sustituir en la ecuacin empleada en el mtodo de Newton-Raphson:

xi+1=xif(xi)f(xi)(2)

Sustituyendo ahora (1) en (2) , obtenemos:

xi+1=xif(xi)(xi1xi)f(xi1)f(xi)(3)

De esta forma la ecuacin (3) es la formula para el Mtodo de la Secante. Ntese que en este
caso a diferencia del mtodo de Newton-Raphson es necesario dos puntos para poder iniciar el
mtodo.

Figura: Ilustracin de cmo el Mtodo de la Secante se aproxima a la raiz.


Mtodo de la Secante

%///////////////////////////////////////////////////

%// Funcin Secante ///

%// Desarrollada por Jorge De La Cruz ///

%/ ///

%//////////////////////////////////////////////////

function xr=secante(fun,x0,x1,tol,imax)

x=[x0 x1];

f=eval(fun);

err=tol+1;

n=1;

while (err>tol)&&(n<imax)

xr=x(1,2)-f(1,2)*(x(1,1)-x(1,2))/(f(1,1)-f(1,2));

err=abs((xr-x(1,2))/xr);

error=err*100;

x(1,1)=x(1,2);

x(1,2)=xr;

f=eval(fun);

fprintf('Iteracin: %d, Error: %f, Raiz: %f\n',n,error,xr)

n=n+1;
end

También podría gustarte