NEWTON-RAPHSON
El método de Newton-Raphson se apoya en la serie de Taylor, la cual hace una aproximación de f(x).
Truncamos la serie de Taylor en el segundo término y como deseamos encontrar el valor de x en donde f(x) = 0,
entonces igualamos la serie truncada a 0.
Esto nos daría una aproximación a la raíz de f(x), para conocer el valor de x simplemente la podemos despejar de la
ecuación:
En su forma iterativa:
xi+1 es una aproximación a la raíz, basta con validar el criterio de convergencia y si no se cumple se vuelve a iterar con un
nuevo valor de x. Note que sólo se requiere de un valor inicial x0. El método de Newton-Raphson puede convertirse en un
ciclo infinito en algunos casos, entonces se debe incluir otra condición de paro que es el número máximo de iteraciones.
Otra consideración que se debe tener en cuenta es que la derivada f ′ (x0 ) en algún valor particular de x0 sea cero, en ese
caso la división no se podría calcular y, por lo tanto, el valor calculado de x tampoco, en esos casos se puede incrementar
x en un delta para que salga de ese punto y pueda continuar con la siguiente iteración.
El método de Newton-Raphson suele converger rápido debido a que toma en cuenta la derivada y
generalmente x apunta a un valor cercano de la raíz de f(x).
En otros casos, la derivada puede llevar el valor de x lejos de la raíz, incluso puede divergir. Por eso, el
algoritmo prevé un número máximo de iteraciones.
Ejemplo:f(x) x
=
2
-
16 po 8
=
f(x) 2x tol 0.01
=
=
No 15=
i
1p
4- 26
=
8 5
=
=
-
=
14.-901 15-8) =
3
=
- ti NO
i 2
=
92 =
4- =
5 -
2 4.1
=
142-4.1 14.1-5) =
0.9
=
< tol NO
i 3 =
43 4.1
= - 2 4.001219512
=
8.2
143 -42) 14.001219512-4.1)
=
0.0987
=
< tal NO
4 94 4.00119512
-75758 4.0000006
i =
=
- =
19-931 14.000000106
=
-
4.00119512) 0.00121 =
< tdl Si
10 4.00 =
Pseudocódigo para el algoritmo de Newton-Raphson
·
Definir f(x)
. Definir f(X)
·
Definir aproximación inicial 40
·
Definir la tolerancia:tol
. Definir el número de iteraciones máxima: No
·
i 1
=
·
Mientras i=No:
i
-
=
·
S.1p-4.)< tol:
Imprimir (La solución es pl
·
Terminar
Imprimir (El método fracaso después de No iteraciones)
·
Termina
·
Otra opcion:
Procedimiento NewtonRaphson (f,f, xo, imax, foll
i =
0
cumple = falso
Mientras no cumple y
is imax hacer:
S, f(xo) 0 entonces:
x *
f(Xc)
Xo -
fi(Xo)
sino
XF tol
Not
fin si
cumple = If(xs) < tol
i i
=
1
+
fin mientras
retornar X
fir procedimiento.
EJEMPLO:
Fluye aire a 25°C y 1 ata a través de un tubo de 4 mm de diámetro a una velocidad
promedio de 50 m/s. La rugosidad del tubo es de ℇ = 0.0015 mm y Re = 13743. Calcule
el factor de fricción utilizando la ecuación de Colebrook.
La ecuación se puede expresar en la forma f(x) = 0
Su derivada es:
El siguiente programa es la implementación del método de Newton-Raphson usando la
biblioteca optimize de SciPy.
El método Newton sólo recibe la función f (x) y no requiere de la derivada f ′ (x),
necesariamente.
EJEMPLO:
El criterio de convergencia para aceptar un valor de x como el valor de la raíz de f (x)
puede dar como resultado valores incorrectos de una raíz. Esto se hace muy evidente
para funciones que tienen un comportamiento casi tangencial con el eje x, ya que el
criterio de convergencia se puede cumplir en valores de x que están todavía lejos de la
raíz.
Un ejemplo muy claro de este tipo de funciones son los polinomios con raíces múltiples,
por ejemplo:
f(x) = (x−2) (x−2) (x−4) = x^3 - 8x^2 + 20x - 16
f’(x) = 3x^2 - 16x + 20
Con aproximación inicial de 1, tol = 0.000001 y num. max. iteraciones = 20
Con num. max. Iteraciones = 25