martes, 28 de junio de 2011

DERIVACION NUMERICA

Derivación Numérica


Las fórmulas de derivación numérica aparecen en el desarrollo de algoritmos para la solución de problemas de contorno en ecuaciones diferenciales ordinarias (y en ecuaciones en derivadas parciales). En general, podemos obtener aproximaciones numéricas de la derivada en un punto derivando alguna función interpolante, por ejemplo un polinomio de Lagrange, algún trazador cúbico, etc. Sin embargo, en la práctica pequeños errores en los datos pueden producir malos resultados en las derivadas. Aquí vamos a experimentar con fórmulas que se obtienen derivando el polinomio interpolante de Lagrange.

Fórmulas de tres y cinco puntos
Supongamos que $x_0,x_1,...,x_{_N}$ son $N+1$ puntos en un intervalo $I$ y que $f(x) \, \in \, C^{N+1}(I)$. Si $P(x)=\displaystyle{\sum_{k=0}^{N} f(x_{_k})L_{_k}(x)}$ es el polinomio interpolador de Lagrange entonces

\begin{displaymath}f(x)=P(x)+\frac{(x-x_0)\; ... \;(x-x_{_N})}{(N+1)!} f^{N+1}(\epsilon (x))\end{displaymath}
  para alguna $\epsilon (x) \in I$. Al derivar esta expresión y evaluar en algún $x_j$ (de los $N+1$ puntos $x_i$) obtenemos
\begin{displaymath}f^{\prime}(x_j)=\sum_{k=0}^{N} f(x_{_k})L_{_k}^{\prime}(x)+\f...

...}(\epsilon (x_j))}{(N+1)!}

\prod_{k=0; k \neq j}^{N}(x_j-x_k) \end{displaymath}
  Esta fórmula recibe el nombre de fórmula de $(N+1)$ -puntos para aproximar . Ahora lo que vamos a hacer es, a partir de aquí, obtener fórmulas útiles de tres y cinco puntos.

En lo que sigue vamos a suponer que  los $\;x_i$ son igualmente espaciados, es decir suponemos que
\begin{displaymath}x_1=x_0+h, \; x_2=x_0+2h, ... \; \; \mbox{ con } h \neq 0\end{displaymath}
Por ejemplo, si $\;x_0=3, x_1=3.1, x_2=3.2$ entonces $\;h=0.1$

Fórmulas de tres puntos
Supongamos que solo tenemos tres datos $\;x_0,x_1,x_2$ igualmente espaciados,es decir, $\;x_1=x_0+h, \; x_2=x_0+2h\;$ con $\;h\neq

0$. Aplicando la fórmula anterior con  tres puntos, para $\,x_j=x_0,x_1,x_2

\,$ respectivamente, obtenemos las tres siguientes fórmulas (llamadas de "tres puntos")

$\displaystyle{ f^\prime(x_0) = \frac{1}{h} \left[ -\frac{3}{2}f(x_0)+2f(x_1)-\frac{1}{2}f(x_2)\right]

+\frac{h^2}{3}f^{(3)}(\epsilon(x_0)) }$

$\displaystyle{f^\prime(x_1) = \frac{1}{h} \left[

-\frac{1}{2}f(x_0)+\frac{1}{2}f(x_2) \right]

+\frac{h^2}{6}f^{(3)}(\epsilon(x_1))}$

$\displaystyle{ f^\prime(x_2) = \frac{1}{h} \left[ \frac{1}{2}f(x_0)-2f(x_1)+\frac{3}{2}f(x_2)\right]

+\frac{h^2}{3}f^{(3)}(\epsilon(x_2)) }$

Fórmulas de cinco puntos
De manera análoga, si tenemos cinco datos igualmente espaciados, $\;x_1=x_0+h, \; x_2=x_0+2h, \; x_3=x_0+3h, \; x_4=x_0+4h\;$ con $\;h\neq

0$, se puede obtener la fórmula de cinco puntos

$\displaystyle{ f^\prime(x_2) = \frac{1}{12h} \left[f(x_0)-8f(x_1)+8f(x_3)-f(x_4)\right]

+\frac{h^4}{30}f^{(5)}(\epsilon) }$

Fórmula para la segunda derivada

Con las mismas hipótesis, se puede deducir una fórmula de tres puntos para la segunda derivada

$\displaystyle{ f^{\prime \prime }(x_1) = \frac{1}{h^2} \left[f(x_0)-8f(x_1)-2f(x_1)+f(x_2)\right]

-\frac{h^2}{12}f^{(4)}(\epsilon) }$

EJEMPLO. Consideremos la siguiente tabla de datos

 
 $x $   $f(x)=e^x$
  0.00   1.00
  0.01   1.010050167
  0.02   1.02020134
  0.03   1.030454534
  0.04   1.040810774
  0.05   1.051271096
  0.06   1.061836547
  0.07   1.072508181
  0.08   1.083287068
  0.09   1.094174284
Estimar $f^\prime(0.05)$ y $f^\prime(0.08)$.

SOLUCIÓN.  Para estimar $f^\prime(0.05)$ se puede usar la fórmula de cinco puntos mientras que para estimar $f^\prime(0.08)$ podemos usar una fórmula de tres puntos, para ser exactos, la fórmula apropiada es la fórmula para $f^\prime (x_1)$.

 
$\bullet$
Estimación de $f^\prime(0.05)$ con la fórmula de cinco puntos. Seleccionamos cinco puntos de tal manera que, $x_2=0.05$  
$x $     $f(x)=e^x$
0.00   1
0.01   1.010050167
0.02   1.02020134
$x_0 = \,$0.03   1.030454534
$x_1 = \,$0.04   1.040810774
$x_2 = \,$0.05   1.051271096
$x_3 = \,$0.06   1.061836547
$x_4 = \,$0.07   1.072508181
0.08   1.083287068
0.09   1.094174284
Ahora aplicamos la fórmula, como $h=0.01$ $\displaystyle{ f^\prime(0.05) \approx \frac{1}{12*0.01}

\left[f(0.03)-8f(0.04)+8f(0.06)-f(0.07)\right] = 1.0512710960256

}\; \; $ como se esperaba ya que $\left( e^x \right)^\prime = e^x$  
$\bullet$
Estimación de $f^\prime(0.08)$ con la fórmula de tres puntos para estimar $\,f^\prime (x_1)$. Seleccionamos tres puntos de tal manera que, $x_1=0.08$  
$x $   $f(x)=e^x$
0.00     1.00
0.01     1.010050167
0.02     1.02020134
0.03     1.030454534
0.04     1.040810774
0.05     1.051271096
0.06     1.061836547
$x_0 = \,$0.07     1.072508181
$x_1 = \,$0.08     1.083287068
$x_2 = \,$0.09     1.094174284
Ahora aplicamos la fórmula, como $h=0.01$ $\displaystyle{f^\prime(x_1) \approx \frac{1}{0.01}

\left[-\frac{1}{2}*1.072508181+\frac{1}{2}*1.094174284 \right]=1,08330515

}$ como se esperaba. Observe que la precisión no es tan buena como la obtenida con la fórmula de cinco puntos.


EJERCICIOS
1.  Considere la tabla

 

$x $   $f(x)=e^{ \mbox{ArcTan}\mbox{(Ln(x))} }$
1.1     1.042236692INTEGRACION NUMERICA
1.2     1.082222055
1.3     1.120140413
1.4     1.156156396
1.5     1.190417757
1.6     1.223057566
1.7     1.254195979
1.8     1.283941742
                  i.)  En Excel, estimar $f^\prime(1.1)$, $f^\prime(1.3)\,$ y $\,f^\prime(1.7) \,$ y comparar con el valor real.
                 ii.)  En Excel, estimar $f^{\prime \prime}(1.1)$, $f^{\prime \prime }(1.3)\,$ y $\,f^{\prime \prime}(1.7) \,$ y comparar con el valor real. 2.  Implementar una hoja en Excel, con o sin macros, para que poder calcular la aproximación de cada   una de las derivadas usando las cinco fórmulas vistas en la teoría.