Sie sind auf Seite 1von 6

Instituto Politcnico Nacional

Escuela Superior de Ingeniera Mecnica y Elctrica

Ingeniera en Control y Automatizacin

Anlisis Numrico

Secante
Programas 2do. Parcial

Reyes Rangel Edgar Alejandro

2014302724

3AV1
Anlisis Numrico

Mtodo Secante

Introduccin

Secante

Este mtodo se basa en la frmula de Newton-Raphson, pero evita el clculo


de la derivada usando la siguiente aproximacin:

Sustituyendo en la frmula de Newton-Raphson, obtenemos:

Que es la frmula del mtodo de la secante. Ntese que para poder calcular el
valor de , necesitamos conocer los dos valores anteriores y .

Obsrvese tambien, el gran parecido con la frmula del mtodo de la regla


falsa. La diferencia entre una y otra es que mientras el mtodo de la regla falsa
trabaja sobre intervalos cerrados, el mtodo de la secante es un proceso
iterativo y por lo mismo, encuentra la aproximacin casi con la misma rapidez
que el mtodo de Newton-Raphson. Claro, corre el mismo riesgo de ste ltimo
de no converger a la raz, mientras que el mtodo de la regla falsa va a la
segura.

Ejemplo 1
Usar el mtodo de la secante para aproximar la raz de ,
comenzando con , y hasta que .

Solucin
Tenemos que y , que sustitumos en la frmula
de la secante para calcular la aproximacin :

2
Anlisis Numrico

Mtodo Secante

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 raz Error aprox.


0
1 100%
0.612699837 63.2%
0.653442133 6.23%
0.652917265 0.08%

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

3
Anlisis Numrico

Mtodo Secante

4
Anlisis Numrico

Mtodo Secante

Programa

%Metodo de la secante
%-Nombre del Alumno: Reyes Rangel Edgar Alejandro
%-Boleta: 2014302724
%-Grupo:3AV1
%-Analisis Numerico

clear,clc
cf = input('Ingrese funcion: ');
f = inline(cf);
x0 = input ('ingrese el x0 valor: ');
x1 = input ('ingrese el x1 valor: ');
tol = input ('ingrese la tolerancia: ');
error = ((x1-x0)/x1)*100;
n=0;
fprintf('n x0 x1 x2 error\n');
fprintf('%i %4.4f %4.4f --- --- \n',n,x0,x1);

while (error>tol)
n = n+1;
x2 = x1 - (x1-x0)*f(x1)/(f(x1)-f(x0));
error = abs (((x1-x0)/x1)*100);
fprintf('%i %4.4f %4.4f %4.4f %4.4f\n',n,x0,x1,x2,error);
x0 = x1;
x1 = x2;

end

fprintf('Raiz encontrada con Error de %f:\n\t%f\n', tol, x2)

5
Anlisis Numrico

Mtodo Secante

Programa En Ejecucin

Ingrese funcion: 'x^3+2*x^2+10*x-20'

ingrese el x0 valor: 1

ingrese el x1 valor: 2

ingrese la tolerancia: 0.001

n x0 x1 x2 error

0 1.0000 2.0000 --- ---

1 1.0000 2.0000 1.3043 50.0000

2 2.0000 1.3043 1.3579 53.3333

3 1.3043 1.3579 1.3690 3.9446

4 1.3579 1.3690 1.3688 0.8109

5 1.3690 1.3688 1.3688 0.0150

6 1.3688 1.3688 1.3688 0.0000

Raiz encontrada con Error de 0.001000:

1.368808

Das könnte Ihnen auch gefallen