Está en la página 1de 3

MTODO DE LA SECANTE

El mtodo de Newton Raphson es una tcnica extremadamente poderosa, pero tiene una
dificultad grande, la necesidad de conocer el valor de la derivada de f en cada aproximacin de
la raz. Habitualmente la expresin de () = es todava ms complicada, y necesita ms
operaciones aritmticas para su clculo ().
El mtodo de la secante trata de evitar este problema, aproximando el valor de la derivada
( )( )
( ) por el cociente incremental . Esto genera el siguiente mtodo. Calcular, a partir

de dos aproximaciones iniciales y , la secuencia , ,.. a partir de la formula iterativa:


+ = + , = ( ). , ( ) ( )
( ) ( )

La interpretacin geomtrica de este mtodo es que + se calcula como la abscisa del punto
de interseccin entre la secante a travs de ( , ( )) y ( , ( )) y el eje de las X.
Sealar que el mtodo de la secante a diferencias del mtodo de Newton Raphson requiere de
dos aproximaciones iniciales, pero solo se requiere de una evaluacin de la funcin en cada
paso. Los valores iniciales y , son los extremos del intervalo de referencia en el que se
encuentra la raz buscada, de manera que se cumpla: ( ).
( ) < . Como en el mtodo de biseccin consideraremos, por simplicidad que: ( ) < y
( ) > . En caso de suceder lo contrario resolveremos la ecuacin () = .

NOTA: La ecuacin de la secante que pasa por ( , ( )) y por ( , ( )) es:

( )
=
( ) ( )

En el punto de la interseccin con el eje X, = , de donde se deduce la formula iterativa anterior.

EJEMPLO


Usar el mtodo de la secante para aproximar la raz de () = , comenzando
con = , = y hasta que | | < % .

SOLUCIN
Tenemos que (0 ) = y (1 ) = . , que sustituimos en la frmula de la secante
para calcular la aproximacin :
Con un error aproximado de:

Como todava no se logra el objetivo, continuamos con el proceso. Resumimos los resultados en
la siguiente tabla:
APROX. A LA RAIZ ERROR APROX.

0
1 100%
0.612699837 63.2%

0.653442133 6.23%
0.652917265 0.08%

De lo cual concluimos que la aproximacin a la raz es:

= .

PROGRAMA MATLAB

Function y=secant(fun,a,b,tol)
u=subs(fun,a);
v=subs(fun,b);
c=2;
x0=a;
x1=b;
while abs(u)>tol
p=x0-u*(x1-x0) /(v-u);
x0=p;
x1=b;
u=subs (fun, x0);
v=subs (fun, x1);
c=c+1;
end
c
p
EJECUTAR EL PROGRAMA

>> secant (`x^2-2,1,3,0.001)


c=
10 (cantidad de iteraciones)
p=
1.414 (solucin aproximada)

También podría gustarte