Está en la página 1de 10

TRABAJO N 1 MTODOS NUMRICOS

METODOS NUMERICOS PARA RESOLVER ECUACIONES NO LINEALES A. METODO SECANTE


En anlisis numrico el mtodo de la secante es un mtodo para encontrar los ceros de una funcin de forma iterativa. Uno de los objetivos de este mtodo es eliminar el problema de la derivada de la funcin, ya que existen funciones que describen fenmenos fsicos en la vida real, cuya derivada es muy compleja. El mtodo de la secante es muy similar al de Newton con la diferencia principal que en este mtodo de la secante no requiere de la segunda derivada. El mtodo se basa en obtener la ecuacin de la recta que pasa por los puntos (xn-1), f(xn-1) y (xn, f(xn-1)). A dicha recta se le llama secante por cortar la grafica de la funcin. Posteriormente se escoge como siguiente elemento de la relacin de recurrencia, xn+1, la interseccin de la recta secante con el jefe de abscisas obteniendo la formula. El mtodo se la secante parte de dos puntos (y no solo uno como el mtodo de newton), consiste en 1 aproximar la raz de la funcin f(x) con el cero de una recta secante trazada entre dos puntos sobre la grfica de f(x) y el proceso se repite hasta que la raz es encontrada. Se pueden presentar dos casos:

Caso (1)

Caso (2)

Figura: Representacin geomtrica del mtodo de la secante Sustituyendo esta expresin en la ecuacin del mtodo de Newton, obtenemos la expresin del mtodo de la secante que nos proporciona el siguiente punto de iteracin.

Dados los puntos de Interseccin A y B puede calcularse la ecuacin de la recta secante empleando para saber la respuesta de esta operacin se emplea en matemticas la ecuacin de la recta que pasa por dos puntos:
La recta secante es una recta que corta a una circunferencia en dos puntos. Conforme a estos puntos de corte se acercan, dicha recta se aproxima a un punto y, cuando solo existe un punto que toca la circunferencia, se le llama tangente.
1

1|P g i n a

Este mtodo, a diferencia del de biseccin y regla falsa, casi nunca falla ya que solo requiere de 2 puntos al principio, y despus el mismo mtodo se va retroalimentando. Lo que hace bsicamente es ir tirando rectas secantes a la curva de la ecuacin que se tiene originalmente, y va checando la interseccin de esas rectas con el jefe de las X para ver si es la raz que se busca APLICACIN 1 Encuentre la raz de f(x) = cos(x) + x + 1 en el intervalo [-2,-1], aplicando el Mtodo de la Secante. Esto es, Solucin
n 1 2 a -2 -1 b -1 -1.2762 f(a) -1.4161 0.5403 f(b) 0.5403 0.0142 c -1.2762 -1.2836 f(c) 0.0142 0.0004<

TRABAJO N 1 MTODOS NUMRICOS

encontrar un valor de c tal que | f(c)| = 0,01 .

Por lo tanto, se asume c= -1,2836 como la raz buscada. APLICACIN 2 La ecuacin de una ola estacionaria reflejada en un puerto est dada por: = 0 2 2 +

Para =16, t=12, v=48, h=0.4h0, (40% de la altura inicial) Movimiento de las molculas de agua, en la zona superficial del mar, provocado por la accin del viento. En este movimiento, que es originariamente circular, no hay desplazamiento horizontal de dichas molculas ni dela masa de agua por ellas constituida, aunque s lo hay del movimiento ondulatorio generado por ese movimiento molecular. Este tipo de olas, que se originan en alta mar, se conocen con el nombre de 'olas libres' u 'olas estacionarias'. Cuando una ola se aproxima a la costa, el movimiento tpico del mar libre, movimiento circular, se transforma, por rozamiento con el fondo, en un movimiento elptico; la cresta de la ola avanza por este motivo ms deprisa que su punto opuesto en la vertical y se produce un desplazamiento horizontal de la masa de agua que provoca la ruptura de la ola al llegar a la costa. Para nuestro caso nos dan la ecuacin respectiva de la ola junto con varios parmetros de esta tales como la longitud de onda, las alturas respectivas, la velocidad, el tiempo y nos piden hallar la distancia donde rompe la ola dada por x. Debido a la presencia de por ejemplo la funcin logartmica estamos en presencia de una ecuacin no lineal y se proceder a hallar las soluciones mediante los mtodos anteriormente descritos. Solucin Para hallar la solucin dada se pueden aplicar varios mtodos enseados en el curso de Anlisis Numrico, tales como de Aproximaciones Sucesivas, El mtodo de Newton, Mtodo de la secante, etc. Para hallar nuestra solucin se uso el mtodo de Newton debido a su rpida convergencia en hallar la solucin as
2|P g i n a

TRABAJO N 1 MTODOS NUMRICOS

como el ms fcil de entender y aplicar, se comprobaron dichos resultados con el mtodo de la secante obtenindose los mismos valores de x. Determinando la solucin positiva ms pequea

La solucin ms pequea positiva se encuentra en el intervalo [5,10]. a=05 b=10 , 0


+ 2

Se halla la solucin positiva ms pequea. Usando el mtodo secante Se escogen otras variables y se expresa la correspondiente expresin para el mtodo de la secante modificado desarrollado en clase: + 2 h=0.001 k=1.n donde n=10 0

= 1 0 1 2 3 4 5 6 7 8 9 10

(1 ) (1 + ) (1 )

0 6.5 6.978791373048833 6.954780929582512 6.9547312942513555 6.954731289881872 6.854731289881505 6.854731289881505 6.854731289881505 6.854731289881505 6.854731289881505 6.854731289881505

Resultados En el problema de la onda estacionaria se tiene una ecuacin peridica debido a la presencia de la variable independiente x dentro de una funcin seno, por lo tanto vamos a tener mltiples respuestas debido a la periodicidad de esta funcin.

3|P g i n a

2() =

2 2 + 0.4

TRABAJO N 1 MTODOS NUMRICOS

La solucin a la ecuacin de la ola estacionaria estar dada en los puntos donde f(x) tienen a cero. Para valores de x donde la funcin peridica f(x) es igual a cero se tendrn las soluciones para x. De la grfica se observa para valores negativos o pequeos de x e-x tiene un efecto considerable mientras que cuando x tiende a valores mayores e-x tiende a cero por lo que no influye mayor en la solucin, mientras que por lo tanto la funcin quedara de la forma: f(x) = A*sin(K*x) - 0.4 Donde se ve claramente que van haber infinitas soluciones de x para lo cual f(x) = 0. Se tendrn infinitas soluciones de x para f(x) = 0, ya que la funcin seno desplazada 0.4 hacia abajo corta al eje horizontal cada radianes, donde 2 es el perodo de la onda.

, donde P es el perodo. Las funciones trigonomtricas, tales como la funcin seno o coseno, son casos tpicos de funciones peridicas, en las que su perodo es de 360 grados. Al tener la funcin peridica K seno(2 x/) todos los valores donde sea x=x' el valor donde la funcin tiende a cero y nos da la solucin, para valores de/)(x'+*n), (2 se tendrn nuevos valores de x''= x'+*n donde n=0,1,2,3,4...N.

En matemtica, una funcin es peridica si los valores de la funcin se repiten conforme se aade a la variable independiente un determinado perodo, o sea: () = ( + )

ALGORITMO: 1. Si no se conoce el intervalo, defina [a,b] donde se presuma la existencia de la raz 2. Genere una tabla de datos

4|P g i n a

TRABAJO N 1 MTODOS NUMRICOS

3. Tome en cuenta que c =

ba f(b) f(b) f(a)

4.

Si f(c) , acepte c como la raz aproximada y pare el mtodo, de lo contrario, haga la siguiente evaluacin: si f(c).f(b) <0 entonces haga a=c y a=b (en la siguiente iteracin), pero si f(c).f(b) >0 haga b=c y y b=a Contine llenando la tabla y estudiando la condicin para parar el mtodo.

ALGORITMO EN MATLAB function a =secante(fun,x0,x1,tol,maxiter) % Aproxima por el mtodo de la secante una raiz de la ecuacion fun(x)=0 %cercana a x0, tomando como criterio de parada abs(fun(x))<tol o la cota sobre %el nmero de iteraciones dada por maxiter. % % Variables de entrada: % fun: funcion a calcular la raiz, se introduce en modo simbolico 'fun' % x0, x1: estimaciones iniciales para el proceso de iteracin % tol: tolerancia en error absoluto para la raiz % maxiter: maximo numero de iteraciones permitidas % % Variables de salida: % a: valor aproximado de la raiz fprintf(1, 'Metodo de la secante \n'); f0=subs(fun,x0); f1=subs(fun,x1); iter=1; while(abs(f1)>tol) & (iter<maxiter) a = x1-f1*((x1-x0)/(f1-f0)); % formula de iteracion f0=f1; f1=subs(fun,a); %Actualiza f0 y f1 fprintf(1, 'iter= %i, a= %x0,f= %e \n', iter,a ,f1) iter = iter + 1; % Cuenta los pasos x0=x1; x1=a; % actualiza x end % Salida

B. MTODO DE NEWTON / RAPHSON


Este mtodo se deduce a partir de la interpretacin geomtrica de la derivada, se tiene que la primera derivada en x es equivalente a la pendiente:

f (x0 ) =

f(x0 0 ) , que se reordena para obtener: x0 x1

x1 = x0

f(x0 ) de manera general, la frmula del Mtodo de Newton-Raphson viene expresada de la f (x0 )
x n+1 = x n f(x n ) f (x n )

siguiente forma:

5|P g i n a

TRABAJO N 1 MTODOS NUMRICOS

El mtodo de Newton Raphson encuentra la pendiente (la recta tangente) de la funcin en un punto cualquiera (preferiblemente cercano a la raz) y utiliza el cero de la recta tangente como el siguiente punto de referencia, el proceso se repite hasta llegar a la aproximacin de la raz deseada. APLICACIN 1 Encuentre la raz de f(x) = cos(x) + x + 1 en el intervalo [-2,-1], aplicando el Mtodo de Newton-Raphson. Esto es, encontrar un valor de c tal que

| f(c)| = 0,01 .

Solucin: Sean Xn = -1.5 (punto medio del intervalo conocido) Por lo tanto, se asume c= -1,2851 como la raz buscada APLICACIN 2 La ecuacin de una ola estacionaria reflejada en un puerto est dada por: = 0 2 2 +

Para =16, t=12, v=48, h=0.4h0, (40% de la altura inicial) Movimiento de las molculas de agua, en la zona superficial del mar, provocado por la accin del viento. En este movimiento, que es originariamente circular, no hay desplazamiento horizontal de dichas molculas ni dela masa de agua por ellas constituida, aunque s lo hay del movimiento ondulatorio generado por ese movimiento molecular. Este tipo de olas, que se originan en alta mar, se conocen con el nombre de 'olas libres' u 'olas estacionarias'. Cuando una ola se aproxima a la costa, el movimiento tpico del mar libre, movimiento circular, se transforma, por rozamiento con el fondo, en un movimiento elptico; la cresta de la ola avanza por este motivo ms deprisa que su punto opuesto en la vertical y se produce un desplazamiento horizontal de la masa de agua que provoca la ruptura de la ola al llegar a la costa. Para nuestro caso nos dan la ecuacin respectiva de la ola junto con varios parmetros de esta tales como la longitud de onda, las alturas respectivas, la velocidad, el tiempo y nos piden hallar la distancia donde rompe la ola dada por x. Debido a la presencia de por ejemplo la funcin logartmica estamos en presencia de una ecuacin no lineal y se proceder a hallar las soluciones mediante los mtodos anteriormente descritos. Solucin Para hallar la solucin dada se pueden aplicar varios mtodos enseados en el curso de Anlisis Numrico, tales como de Aproximaciones Sucesivas, El mtodo de Newton, Mtodo de la secante, etc. Para hallar nuestra solucin se uso el mtodo de Newton debido a su rpida convergencia en hallar la solucin as como el ms fcil de entender y aplicar, se comprobaron dichos resultados con el mtodo de la secante obtenindose los mismos valores de x. Determinando la solucin positiva ms pequea

6|P g i n a

TRABAJO N 1 MTODOS NUMRICOS

a=05 b=10 , 0

La solucin ms pequea positiva se encuentra en el intervalo [5,10].


+ 2

Usando el mtodo de Newton

Se halla un punto inicial correspondiente:

() = 2.5 + 0.98174(0.3927) = =7.5 () () = 0.493

Como f(c)*f(c) > 0, se tiene un punto inicial y se puede proseguir. K = 1.n donde n=10 = 1 0 1 2 3 4 5 6 7 8 9 10 ALGORITMO: 1. Defina Xn 2. Genere una tabla de datos
7|P g i n a

0 6.5 6.978852791803652 6.954779208670931 6.954731290074158 6.854731289881505 6.854731289881505 6.854731289881505 6.854731289881505 6.854731289881505 6.854731289881505 6.854731289881505

(1 ) (1 )

TRABAJO N 1 MTODOS NUMRICOS

3. Calcule f(xn) 4. Si f(x n+1 ) , acepte Xn+1 como la raz aproximada y pare el mtodo, de lo contrario, en la siguiente iteracin haga Xn=Xn+1 y contine el llenado de la tabla hasta que se cumpla la condicin f(x n+1 ) ALGORITMO EN MATLAB x0=input('Ingrese el valor inicial: '); tol=input('Ingrese el porcentaje de error: '); f=input('Ingrese la funcin: '); i=1; fx(i)=x0; syms x; f1=subs(f,x,fx(i)); z=diff(f); d=subs(z,x,fx(i)); ea(1)=100; while abs(ea(i))>=tol; fx(i+1)=fx(i)-f1/d; f1=subs(f,x,fx(i+1)); d=subs(z,x,fx(i+1)); ea(i+1)=abs((fx(i+1)-fx(i))/fx(i+1)*100); i=i+1; end fprintf('i fx(i) Error aprox (i) \n'); for j=1:i; fprintf('%2d \t %11.7f \t %7.3f \n',j-1,fx(j),ea(j)); end

C. FALSA POSICION Es una variante del mtodo de la biseccin, llamada REGULA FALSI, de la FALSA POSICION O METODO DE LA CUERDA, pretende conjugar la seguridad del mtodo de biseccin para converger, con la rapidez del mtodo de la secante (ver seccin2.4);tambin es denominado como: Regla falsa, Posicin falsa o Interpolacin Lineal. Comienza con un intervalo [a ,b ] que encierra a la raz, es decir f (a) y f (b) son de signos opuestos. Es similar al mtodo de biseccin ya que consiste en generar subintervalos que encierren a la raz; pero la aproximacin de la raz Xn no se obtiene con el punto medio, sino con la interseccin de la recta secante a la curva que une a los puntos (a, (a)) y (b, f (b))con el eje x; proporcionando una mejor estimacin de la raz. El reemplazamiento de la curva por una lnea recta da una "posicin falsa" de la raz, deaqu el nombre del mtodo. En la figura siguiente se muestra la representacin grfica del mtodo de la falsa posicin; donde se puede observar que una vez iniciado el proceso iterativo, uno de los extremos del intervalo puede quedarse fijo

8|P g i n a

TRABAJO N 1 MTODOS NUMRICOS

Un defecto del mtodo de biseccin es que al dividir el intervalo de a en mitades, no se considera la magnitud de ( ) y de ( ) . Por ejemplo, si ( ) est ms cercano a 0 que ( ), es lgico pensar que la raz se encuentra ms cerca de que de que de . El mtodo de falsa posicin aprovecha la visualizacin grfica de unir ( ) y ( ) con una recta, donde la interseccin de esta recta con el eje representa una mejor estimacin a la raz

De la grafica se observan tringulos semejantes

De la ecuacin anterior despejamos y se obtiene:


=

( ) ( ) = ( )( ) ( ) ( )

El algoritmo es igual al mtodo de biseccin, lo nico que cambia es la ecuacin para


APLICACIN 1

Utilizando el mtodo de la falsa posicin para determinar la raz de la ecuacin del ejemplo anterior con = 12 y = 16 se tiene:
9|P g i n a

TRABAJO N 1 MTODOS NUMRICOS

ALGORITMO EN MATLAB function x = regula_falsi(fun,a,b,maxiter) % Aproxima por el mtodo de la regula falsi una raz de la ecuacin fun(x)=0 fprintf(1, 'Mtodo de la regula falsi\n'); fprintf(1,'\n'); n=1; u=feval(fun,a); v=feval(fun,b); if sign(u)==sign(v) disp('ERROR:la funcion debe cambiar signo en a,b'); break; end; for n=1:1:maxiter c=a-(u*(b-a)/(v-u)); w=feval(fun,c); fprintf(1, 'n= %i, c= %f, f(c)= %e if sign(u)==sign(w) a = c; u=w; else b=c; v=w; end n=n+1; end; x=c

\n',n, c,w);

10 | P g i n a