Está en la página 1de 10

Mtodo de NewtonRaphson

Ejercicios

MATLAB

Consideremos el problema de bsqueda de races de una funcin fC2[a,b]. Sea p0[a,b] una aproximacin a la raz p de f tal que f '(p0) 0 y |p-p0| es pequeo. Entonces, podemos escribir

donde c(x) est entre x y p0. Sustituimos x = p en la frmula de Taylor anterior y tenemos en cuenta que f(p)=0,

El mtodo de Newton-Raphson, o habitualmente de Newton, se obtiene despreciando el trmino que involucra a (p-p0)2 ya que se supone |p-p0| pequeo. Entonces,

y el mtodo de Newton parte de una aproximacin inicial p0 y genera la sucesin {pn} de la siguiente forma:

Interpretacin geomtrica: La figura 8 muestra cmo las aproximaciones se obtienen usando tangentes sucesivas. El punto p1 se obtiene como el punto de interseccin del eje de abscisas con la recta tangente a la curva en el punto (p0,

f(p0)), el punto p2 es el punto de interseccin del eje de abscisas con la recta tangente a la curva en el punto (p1, f(p1)) y as sucesivamente.

Figura 8. Representacin de las dos primeras iteraciones del mtodo de Newton.

Teorema 4: Sea fC2[a,b]. Si p[a,b] es tal que f(p) = 0 y f '(p) 0, entonces existe > 0 tal que el mtodo de Newton genera una sucesin {pn} convergente a p para cualquier aproximacin inicial p0[p-,p+].
Demostracin

Ejemplo de la esfera: Aproximamos el cero de f(x)=x3-30x2+2400 en el intervalo [10,15], aplicando el mtodo de Newton. En la figura 9 podemos ver la grfica de la funcin:

Figura 9. Representacin grfica de f(x)=x3-30x2+2400

Escogemos como aproximacin inicial p0=14 (en este caso podemos tomar como dato inicial cualquier punto del intervalo [10,15]. Por qu?)

Como f '(x)=3x2-60x, el esquema del mtodo de Newton en este caso es:

La primera iteracin es

Podemos ver la aplicacin del mtodo utilizando MATLAB

Velocidad de convergencia Si p es una raz simple de f(x)=0, entonces el mtodo de Newton converge muy rpidamente, ya que prcticamente se dobla el nmero de cifras exactas en cada iteracin. Si {pn} es una sucesin que converge a p y En=p-pn, n0, y existen dos constantes positivas A > 0 y R > 0 tales que

entonces se dice que la sucesin converge a p con orden de convergencia R y A es la constante asinttica del error. Cuando R = 1 se dice que la convergencia es lineal y cuando R = 2, la convergencia se llama cuadrtica. El mtodo de Newton tiene convergencia cuadrtica si el cero que aproxima es simple. Esto no ocurre si p es una raz mltiple.

El mtodo de la secante El mtodo de Newton es un algoritmo muy eficaz , pero tiene el inconveniente de tener que conocer el valor de la derivada de f en cada iteracin. La derivada de f puede ser difcil de obtener y muchas ocasiones su clculo requiere de ms operaciones aritmticas para calcularse que f. Es posible evitar el clculo de la derivada mediante la siguiente aproximacin:

obteniendo el siguiente algoritmo en el que son necesarias dos aproximaciones iniciales, p0 y p1:

Interpretacin geomtrica: Partiendo de las aproximaciones iniciales p0 y p1, la aproximacin p2 es la interseccin con el eje x de la recta que pasa por los puntos (p0,f(p0)), (p1,f(p1)). La aproximacin p3 es la interseccin con el eje x de la recta que pasa por los puntos (p1,f(p1)), (p2,f(p2)), y as sucesivamente. (Ver grfico).

Ejercicios
1.

Sean f(x)= - x3 - cos x y p0 = -1. Calcula p2 aplicando el mtodo de Newton-Raphson. Podramos utilizar p0=0?

2. Cmo se puede aplicar el mtodo de Newton-Raphson para aproximar la raz cbica de un nmero?. Comenzando con x0 = 2, aproxima la raz cbica de 7 mediante tres iteraciones.
Solucin

3.

Sean f(x)= -x3 -cos x , p0 = -1 y p1 = 0. Calcula p3 aplicando el mtodo de la secante.

4.

Crea una funcin en MATLAB, que se llame secante.m, que implemente el mtodo de la secante. Puedes partir de la funcin newton y realizar los cambios necesarios.

Resuelve el siguiente ejercicio con la nueva funcin:

Utiliza el mtodo de la secante para aproximar todas las soluciones de la ecuacin:

con un error relativo entre aproximaciones consecutivas inferior a 0.0001.


Arriba

MATLAB

La siguiente funcin permite aplicar el mtodo de Newton utilizando el programa MATLAB.


%--------------Iteracin de NewtonRaphson--------------------%Aproximacin a una raz de f(x)=0 a partir de un valor inicial %p0 mediante el mtodo de Newton-Raphson. function p=newton(f,df,p0,delta,max1) % %Datos: % 1) f es la funcin introducida como cadena de caracteres 'f'. % 2) df es la derivada de f introducida como una cadena 'df'. % 3) p0 es la aproximacin inicial al cero de f(x)=0. % 4) delta es la tolerancia para la aproximacion. % 5) max1 es el nmero mximo de iteraciones. %Resultados: % 1) p es la aproximacin obtenida. % 2) err es la diferencia, en valor absoluto, entre iteraciones % consecutivas. % 3) y es f(p). p(1)=p0; y(1)=feval(f,p(1)); k=1; relerr=1; while((k<=max1) & (relerr>delta)) p(k+1)=p(k)-feval(f,p(k))./feval(df,p(k)); err(k)=abs(p(k+1)-p(k)); i(k)=k; relerr=err(k)/(abs(p(k+1))+eps); y(k+1)=feval(f,p(k+1)); k=k+1; end disp('Las aproximaciones obtenidas y el valor de la funcion en ellas son:') [p',y']

plot(i,err),title('Error absoluto entre iteraciones consecutivas'),grid on

Archivos utilizados para aplicar el mtodo de Newton al problema de la esfera: Definicin de la funcin
% ******* esfera.m ******** % Definicion de la funcion del % problema de la esfera. function y=esfera(x) y=x.^3-30*x.^2+2400; Definicin de la derivada % ******* esfera.m ******** % Definicion de la derivada de la % funcion del problema de la esfera. function y=desfera(x) y=3*x.^2-60*x;

Fichero de comandos
% ********* esfera_newton ******** % Aplicacion del metodo de Newton al % problema de la esfera. % Datos iniciales p0=14; % Tolerancia delta=0.01; % Numero maximo de iteraciones max1=10; % Metodo de Newton newton('esfera','desfera',p0,delta,max1)

Resultado obtenido
ans =

Las aproximaciones obtenidas y el valor de la funcion en ellas son:

14.0000 -736.0000 11.0794 77.4480 11.3406 0.2387 11.3414 0.0000

Mtodo de Newton
En anlisis numrico, el mtodo de Newton (conocido tambin como el mtodo de Newton-Raphson o el mtodo de Newton-Fourier) es un algoritmo eficiente para encontrar aproximaciones de los ceros o races de una funcin real. Tambin puede ser usado para encontrar el mximo o mnimo de una funcin, encontrando los ceros de su primera derivada.

Descripcin del mtodo


El mtodo de Newton-Raphson es un mtodo abierto, en el sentido de que su convergencia global no est garantizada. La nica manera de alcanzar la convergencia es seleccionar un valor inicial lo suficientemente cercano a la raz buscada. As, se ha de comenzar la iteracin con un valor razonablemente cercano al cero (denominado punto de arranque o valor supuesto). La relativa cercana del punto inicial a la raz depende mucho de la naturaleza de la propia funcin; si sta presenta mltiples puntos de inflexin o pendientes grandes en el entorno de la raz, entonces las probabilidades de que el algoritmo diverja aumentan, lo cual exige seleccionar un valor supuesto cercano a la raz. Una vez se ha hecho esto, el mtodo linealiza la funcin por la recta tangente en ese valor supuesto. La abscisa en el origen de dicha recta ser, segn el mtodo, una mejor aproximacin de la raz que el valor anterior. Se realizarn sucesivas iteraciones hasta que el mtodo haya convergido lo suficiente. Sea f : [a, b] -> R funcin derivable definida en el intervalo real [a, b]. Empezamos con un valor inicial x0 y definimos para cada nmero natural n

Donde f ' denota la derivada de f. Ntese que el mtodo descrito es de aplicacin exclusiva para funciones de una sola variable con forma analtica o implcita cognoscible. Existen variantes del mtodo aplicables a sistemas discretos que permiten estimar las races de la tendencia, as como algoritmos que extienden el mtodo de Newton a sistemas multivariables, sistemas de ecuaciones, etc.
Ejemplo

Consideremos el problema de encontrar un nmero positivo x tal que cos(x) = x3. Podramos tratar de encontrar el cero de f(x) = cos(x) - x3. Sabemos que f '(x) = -sin(x) - 3x2. Ya que cos(x) 1 para todo x y x3 > 1 para x>1, deducimos que nuestro cero est entre 0 y 1. Comenzaremos probando con el valor inicial x0 = 0,5

Los dgitos correctos estn subrayados. En particular, x6 es correcto para el nmero de decimales pedidos. Podemos ver que el nmero de dgitos correctos despus de la coma se incrementa desde 2 (para x3) a 5 y 10, ilustando la convergencia cuadrtica. En pseudocdigo, esto es:

Ejjempllo Texto: Anlisis Numrico; Autor: R Burden; Ejercicios 2.1: 1)Aplique Newton para encontrar soluciones, con un error de 0.000001, siendo f(x)= x3-7x2+14x-6, en a.[0,1]; b.[1,3.2]; c.[3.2,4]; d.[5,10]

Aqu, x0=2.1; f(x0)=1.791 y f(x0)=-2.17, por tanto x1=2.92535

También podría gustarte