next up previous
Siguiente: Iteraciones en Subir: Consideraciones geométricas acerca del Anterior: Consideraciones geométricas acerca del

Introducción

Es bien conocido el Método de Newton para aproximar raíces reales de ecuaciones $f(x)=0$ en una variable real, con $f$ suficientemente regular. Por ejemplo, para $f(x)=\cos x$, hay una raíz en $[0.3,3]$ que se puede aproximar usando las iteraciones de Newton

\begin{displaymath}
x_{n+1}=N_f(x_n)=x_n-\frac{f(x_n)}{f'(x_n)}=x_n+\frac{\cos x_n}{\textrm{sen}\,x_n},\quad x_0=0.45
\end{displaymath}

La Figura 1 muestra gráficamente el proceso anterior. A partir de ahora, para simplificar, vamos a denotar mediante $N_f(x)$ a la expresión de la iteración de Newton. Así pues, una raíz de la ecuación $f(\alpha)=0$ es un punto fijo de la función $N_f(x)=x-\frac{f(x)}{f'(x)}$. En el caso que $f$ pueda tener raíces múltiples, tomamos $N_f(x_n)=x_n-\lim_{x\to x_n}\frac{f(x)}{f'(x)}$. El lector puede encontrar resultados clásicos sobre ceros y puntos fijos de funciones de variable compleja en [4].

Figura: Varias iteraciones de Newton para la función $\cos x$
\begin{figure}\centering
\epsfig{file=newtonr.eps,width=0.7\linewidth}\end{figure}

En este caso, es bien conocido cómo generar de forma gráfica estos iterados, de manera que proponemos el siguiente módulo para generar este dibujo sin muchos comentarios adicionales, sólo remarcar el papel de la lista laux donde se guardan los puntos del plano que se van a unir mediante segmentos discontinuos. Aquí fx es la expresión de $f(x)$ (con $x$ como variable independiente), el valor x0 es el punto inicial, el entero N es el número de iteraciones que se harán, el intervalo varx es una lista con la variación de $x$ en formato estándar de Plot[ ] y finalmente opt son las posibles opciones que se quieran añadir al gráfico (del mismo estilo que el comando Plot[ ]):

NewtonR[fx_, x0_, N_, varx_, opt___] := 
Module[{funcio, lx, nwt, laux, dib1, dib2},
       funcio = Function[t, fx /. {x -> t}];
       nwt    = Function[t, t - Limit[fx/D[fx, x], x -> t]];
       lx     = NestList[Function[x, nwt[x]], x0, N - 1];
       laux   = Map[Function[s, {{s, 0.}, {s, funcio[s]}}], lx];
       laux   = Flatten[laux, 1];
       laux   = Join[laux, {{Nest[nwt, x0, N], 0.}}];
       dib1   = Plot[funcio[x], varx, opt, DisplayFunction -> Identity, 
                     PlotStyle -> {Thickness[0.004]}];
       dib2   = Graphics[{Dashing[{0.01, 0.01}], Line[laux]}];
       Show[dib1, dib2, DisplayFunction -> $DisplayFunction]
      ]
La figura anterior se ha generado mediante
NewtonR[Cos[x], .45, 5, {x, 0., 3.}, PlotRange -> All]
En esta representación, la recta tangente a la gráfica de $f$ en el punto $(x_n,f(x_n))$ juega un papel importante para obtener el siguiente iterado $x_{n+1}$. Veremos que esta idea de tangencia nos aparecerá también cuando apliquemos el método a una aplicación del tipo $f:U\subset\mathbb{R}^2\rightarrow\mathbb{R}^2$ o una función de una variable compleja $g:U\subset\mathbb{C}\rightarrow\mathbb{C}$, en este último caso la tangencia se considerará en la gráfica tridimensional de $\vert g\vert$.

Formalmente, el Método de Newton complejo es idéntico que el real. Parece ser que los primeros estudios detallados sobre $N_g$, siendo $g$ una función de variable compleja y analítica, aparecen en los trabajos de Ernst Schröder en 1870 ([5]) y de Arthur Cayley en 1879 ([1]). Las dinámicas que se generan entre los iterados de $z_{k+1}=N_g(z_k)$, cuando trabajamos con una función de variable compleja $g$, son mucho más ricas que en el caso real. Sobre este aspecto remitimos a [2], [3] y [6].


next up previous
Siguiente: Iteraciones en Subir: Consideraciones geométricas acerca del Anterior: Consideraciones geométricas acerca del
Francesc Aguiló y Alícia Miralles 2004-01-03