Professional Documents
Culture Documents
Método de Newton
En análisis numérico, el método de Newton (conocido también como el método de Newton-Raphson o el método
de Newton-Fourier) es un algoritmo eficiente para encontrar aproximaciones de los ceros o raíces de una función
real. También puede ser usado para encontrar el máximo o mínimo de una función, encontrando los ceros de su
primera derivada.
Historia
El método de Newton fue descrito por Isaac Newton en De analysi per aequationes número terminorum infinitas
(escrito en 1669, publicado en 1711 por William Jones) y en De metodis fluxionum et serierum infinitarum (escrito
en 1671, traducido y publicado como Método de las fluxiones en 1736 por John Colson). Sin embargo, su
descripción difiere en forma sustancial de la descripción moderna presentada más arriba: Newton aplicaba el método
solo a polinomios, y no consideraba las aproximaciones sucesivas xn, sino que calculaba una secuencia de
polinomios para llegar a la aproximación de la raíz x. Finalmente, Newton ve el método como puramente algebraico
y falla al no ver la conexión con el cálculo.
Isaac Newton probablemente derivó su método de forma similar aunque menos precisa del método de François
Viète. La esencia del método de Viète puede encontrarse en el trabajo del matemático persa Sharaf al-Din al-Tusi.
Sea f : [a, b] -> R función derivable definida en el intervalo real [a, b]. Empezamos con un valor inicial x0 y
definimos para cada número natural n
Nótese que el método descrito es de aplicación exclusiva para funciones de una sola variable con forma analítica o
implícita cognoscible. Existen variantes del método aplicables a sistemas discretos que permiten estimar las raíces de
la tendencia, así como algoritmos que extienden el método de Newton a sistemas multivariables, sistemas de
ecuaciones, etc.
Se escoge h (x) de manera que g'(r)=0 (r es la raíz buscada). Dado que g'(r) es:
Entonces:
Como h (x) no tiene que ser única, se escoge de la forma más sencilla:
Evidentemente, este método exige conocer de antemano la multiplicidad de la raíz, lo cual no siempre es posible. Por
ello también se puede modificar el algoritmo tomando una función auxiliar g(x) = f(x)/f'(x), resultando:
Su principal desventaja en este caso sería lo costoso que pudiera ser hallar g(x) y g'(x) si f(x) no es fácilmente
derivable.
Por otro lado, la convergencia del método se demuestra cuadrática para el caso más habitual en base a tratar el
método como uno de punto fijo: si g'(r)=0, y g' '(r) es distinto de 0, entonces la convergencia es cuadrática. Sin
embargo, está sujeto a las particularidades de estos métodos.
Nótese de todas formas que el método de Newton-Raphson es un método abierto: la convergencia no está
garantizada por un teorema de convergencia global como podría estarlo en los métodos de falsa posición o de
bisección. Así, es necesario partir de una aproximación inicial próxima a la raíz buscada para que el método converja
y cumpla el teorema de convergencia local.
Método de Newton 4
para una cierta constante . Esto significa que si en algún momento el error es menor o igual a 0,1, a cada nueva
iteración doblamos (aproximadamente) el número de decimales exactos. En la práctica puede servir para hacer una
estimación aproximada del error:
Error relativo entre dos aproximaciones sucesivas:
Con lo cual se toma el error relativo como si la última aproximación fuera el valor exacto. Se detiene el proceso
iterativo cuando este error relativo es aproximadamente menor que una cantidad fijada previamente.
Ejemplo
Consideremos el problema de encontrar un número positivo x tal que cos(x) = x3. Podríamos 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 dígitos correctos están subrayados. En particular, x6 es correcto para el número de decimales pedidos. Podemos
ver que el número de dígitos correctos después de la coma se incrementa desde 2 (para x3) a 5 y 10, ilustando la
convergencia cuadrática.
En pseudocódigo, esto es:
function newtonIterationFunction(x) {
return x - (cos(x) - x^3) / (-sin(x) - 3*x^2)
}
var x := 0,5
for i from 0 to 99 {
print "Iteraciones: " + i
Método de Newton 5
Codigo en MatLab
Programa escrito en Matlab para hallar las raíces usando el método de NEWTON-RAPHSON
disp ('NEWTON-RAPHSON')
xo=input('Valor inicial =');
n=input ('numero de iteraciones=');
salida=ones(n,4); % matiz de salida de datos
for i=1:n
x1=xo-[(exp(-xo)-xo)]/[(-exp(-xo)-1)];
vsal=[xo;x1];
er=[[abs((xo-x1)/xo)]]*100; % error relativo porcentual
ea=[[abs((x1-xo)/x1)]]*100; % error
xo=x1;
salida(i,1)=i;
salida(i,2)=x1;
salida(i,3)=er;
salida(i,4)=ea;
end
disp('ite raiz er ea');
disp(num2str(salida));
syms x1
syms x2
syms x3
V=['sin(x1)+2^x2+log(x3)-7';'3*x1+2*x2-x3^3+1 ';'x1+x2+x3-5
'];
%se calcula el jacobiano:
DV(1,:)=[diff(V(1,:),x1), diff(V(1,:),x2),diff(V(1,:),x3)];
DV(2,:)=[diff(V(2,:),x1), diff(V(2,:),x2),diff(V(2,:),x3)];
DV(3,:)=[diff(V(3,:),x1), diff(V(3,:),x2),diff(V(3,:),x3)];
%se da el valor de partida:
x1=0;
x2=4;
x3=2;
x_1o=[x1;x2;x3];
%se calcula H en ese punto
Método de Newton 6
Vo(1,:)=eval(V(1,:));
Vo(2,:)=eval(V(2,:));
Vo(3,:)=eval(V(3,:));
%Se calcula el Jacobiano en ese punto
DV1=eval(DV);
%se calcula la Inversa del JAcobiano en ese punto
DV_1=DV1^-1;
%se calcula el siguiente valor de iteración
x_1=[x1;x2;x3]-DV_1*Vo;
%cantidad de iteraciones maxima:
n=50;
%se define a = n, si se cumple condicion de error antes, cambia
a=n;
for i=1:n
%error relativo entre aproximaciones sucecivas
er=norm(x_1-x_1o)/norm(x_1);
if er<.0001
a=i;
break; end
x1=x_1(1);
x2=x_1(2);
x3=x_1(3);
x_1o=[x1;x2;x3];
Vo(1,:)=eval(V(1,:));
Vo(2,:)=eval(V(2,:));
Vo(3,:)=eval(V(3,:));
DV1=eval(DV);
DV_1=DV1^-1;
x_1=[x1;x2;x3]-DV_1*Vo;
end
a
x_1
Referencias
• Tjalling J. Ypma, Historical development of the Newton-Raphson method, SIAM Review 37 (4), 531–551, 1995.
• P. Deuflhard, Newton Methods for Nonlinear Problems. Affine Invariance and Adaptive Algorithms. Springer
Series in Computational Mathematics, Vol. 35. Springer, Berlin, 2004. ISBN 3-540-21099-7.
• C. T. Kelley, Solving Nonlinear Equations with Newton's Method, no 1 in Fundamentals of Algorithms, SIAM,
2003. ISBN 0-89871-546-6.
• J. M. Ortega, W. C. Rheinboldt, Iterative Solution of Nonlinear Equations in Several Variables. Classics in
Applied Mathematics, SIAM, 2000. ISBN 0-89871-461-3.
• W. H. Press, B. P. Flannery, S. A. Teukolsky, W. T. Vetterling, Numerical Recipes in C: The Art of Scientific
Computing, Cambridge University Press, 1992. ISBN 0-521-43108-5 (available free online, with code samples:
[1]), sections 9.4 [2] and 9.6 [3].
Método de Newton 7
Enlaces externos
• Método de Newton aplicado al cálculo de la raíz cuadrada de un número [7]
• El método de Newton en Mathcad Application Server [8] (con animación)
• Método de Newton-Raphson: Notas, PPT, Mathcad, Maple, Matlab, Mathematica [9]
Referencias
[1] http:/ / www. nrbook. com/ a/ bookcpdf. html
[2] http:/ / www. nrbook. com/ a/ bookcpdf/ c9-4. pdf
[3] http:/ / www. nrbook. com/ a/ bookcpdf/ c9-6. pdf
[4] http:/ / www. nrbook. com
[5] http:/ / library. lanl. gov/ numerical/ bookfpdf/ f9-4. pdf
[6] http:/ / mathworld. wolfram. com/ NewtonsMethod. html
[7] http:/ / neoparaiso. com/ logo/ metodo-newton. html
[8] http:/ / twt. mpei. ac. ru/ mas/ worksheets/ newton. mcd
[9] http:/ / numericalmethods. eng. usf. edu/ topics/ newton_raphson. html
Fuentes y contribuyentes del artículo 8
Licencia
Creative Commons Attribution-Share Alike 3.0 Unported
http:/ / creativecommons. org/ licenses/ by-sa/ 3. 0/