100% encontró este documento útil (2 votos)
8K vistas4 páginas

Serie de Taylor: Aproximación de Coseno

La serie de Taylor permite aproximar el valor de una función en un punto cercano mediante una suma de términos que involucran las derivadas de la función evaluadas en el punto de partida. El documento explica cómo usar la serie de Taylor para aproximar la función coseno, presentando la aproximación polinómica resultante y su implementación en Java. También describe cómo la serie de Taylor puede usarse para estimar errores de truncamiento al aproximar derivadas.

Cargado por

raquigon23824
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
100% encontró este documento útil (2 votos)
8K vistas4 páginas

Serie de Taylor: Aproximación de Coseno

La serie de Taylor permite aproximar el valor de una función en un punto cercano mediante una suma de términos que involucran las derivadas de la función evaluadas en el punto de partida. El documento explica cómo usar la serie de Taylor para aproximar la función coseno, presentando la aproximación polinómica resultante y su implementación en Java. También describe cómo la serie de Taylor puede usarse para estimar errores de truncamiento al aproximar derivadas.

Cargado por

raquigon23824
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd

La serie de Taylor

 
Si la función f y sus primeras n+1 derivadas son continuas, en un intervalo que contiene
a y x, entonces el valor de la función esta dado por:
 
f ' ' (a ) f ' ' ' (a ) f n (a )
f ( x )  f ( a )  f ' ( a )( x  a )  ( x  a)  2
( x  a )  ... 
3
( x  a)n
2! 3! n!
 
Con frecuencia es conveniente simplificar la serie de Taylor definiendo un paso h = xi+1
- xi expresando la serie de Taylor como:
 
f ' ' ( xi ) 2 f ' ' ' ( xi ) 3 f n ( xi ) n
f ( xi 1 )  f ( xi )  f ' ( xi )h  h  h  ...  h
2! 3! n!
 
Uso de la expansión en serie de Taylor para aproximar una función con un número
infinito de derivadas.
 
Utilizar los términos de la serie de Taylor con n= 0 hasta 6 para aproximar la función
f(x) = cos(x) en xi+1 = /3 y sus derivadas en xi = /4. Esto significa que h = /3- /4
=/12, los valores de las derivadas y el error de aproximación se presenta en la
siguiente tabla.
 
Orden n fn(x) fn(/4) error (%)
0 cos(x) 0.707106781 -41.4
1 -sen(x) 0.521986659 -4.4
2 -cos(x) 0.497754491 0.449
3 sen(x) 0.499869147 2.62x10-2
4 cos(x) 0.500007551 -1.51x10-3
5 -sen(x) 0.500000304 -6.08x10-5
6 -cos(x) 0.499999988 2.40x10-6
 
 
Note, que a medida que se introducen más términos, la aproximación se vuelve más
exacta y el porcentaje de error disminuye. En general podemos tener una aproximación
polinomial de la función coseno, con sus derivadas en cero dada por
 
Orden n fn(x) fn()
0 cos(x) 1
1 -sen(x) 0
2 -cos(x) -1
3 sen(x) 0
4 cos(x) 1
5 -sen(x) 0
6 -cos(x) -1
7 sen(x) 0
8 cos(x) 1
9 -sen(x) 0
10 -cos(x) -1
 
La aproximación polinomial final queda:
 
1 1 1 1 1 10
f ( x)  1  x 2  x 4  x 6  x8  x  ...
2 4! 6! 8! 10!
 
La implementación en Java es:
 
class funciones
{
 
public static double coseno(double x)
{
int i;
double s = 0;
int signo = 1;
 
for(i=0; i<10; i+=2)
{
s += signo*pow(x, i) / factorial(i);
signo *= -1;
}
 
return s;
}
 
public static double seno(double x)
{
int i;
double s = 0;
int signo = 1;
 
for(i=1; i<10; i+=2)
{
s += signo*pow(x, i) / factorial(i);
signo *= -1;
}
 
return s;
}
 
public static double factorial(int x)
{
int i;
double fact = 1;
 
for(i=1; i<=x; i++)
fact *= i;
 
return fact;
}
 
public static double pow(double x, int n)
{
 
int i;
double pow =1;
 
if(x==0) return 0;
 
for(i=1; i<=n; i++)
pow = pow*x;
 
return pow;
}
}
 
El programa principal para realizar el llamado es:
 
public class ej053 {
public static void main(String[] args) {
 
int i,N;
 
double inicio = -3.1416, fin = 3.1416, incremento = 0.1;
N = (int)((fin - inicio)/incremento) + 1;
 
double x[] = new double [N];
double y[] = new double [N];
double z[] = new double [N];
 
for(i=0; i<N; i++)
{
x[i] = inicio + incremento *i;
y[i] = [Link](x[i]);
z[i] = [Link](x[i]);
}
 
grafica g = new grafica("Funcion seno");
[Link](x,y);
[Link](x,z);
[Link]();
}
}
 
Note en este último código, el uso de la función gráfica que permite desplegar una
función dada como dos arreglos de datos.
 

Uso de la serie de Taylor para estimar errores de


Truncamiento.
 
La serie de Taylor es muy útil para hacer la estimación de errores de truncamiento. Esta
estimación ya la realizamos en los ejemplos anteriores. Recordemos que la serie de
Taylor la podemos representar como:
 
v ' ' (ti ) v ' ' ' (ti ) v n (ti )
v(ti 1 )  v(ti )  v' (ti )(ti 1  ti )  (ti 1  ti ) 2  (ti 1  ti ) 3  ...  (ti 1  ti ) n
2! 3! n!
 
Ahora, truncando la serie después del término con la primera derivada, se obtiene:
 
v (ti 1 )  v (ti )  v ' (ti )(ti 1  ti )  R1
 
Despejando el valor de v’, tenemos:
 
v (ti 1 )  v (ti ) R1
v ' (ti )  
(ti 1  ti ) (ti 1  ti )
 
El primer término de la ecuación represente la aproximación de la derivada y el segundo
el error de truncamiento. Note que el error de truncamiento se hace más pequeño a
medida que ti+1 – ti (incremento) se hace pequeño. Así que podemos hacer una buena
aproximación de derivadas utilizando el primer término, siempre y cuando se utilicen
incrementos pequeños.

También podría gustarte