Marcando la diferencia

Serie de Taylor y la Función Seno!


Referencia: Se explica La Serie de Taylor y en particular hacemos notar la posibilidad de cálculo de las funciones trigonométricas mediante funciones “factoriales”, fáciles de representar en un sistema de cómputos.  Animamos al lector que aún no ha realizado la programación de las funciones trigonométricas para que los desarrollen, es una buena experiencia al poder comprobar esta capacidad. Un tema a tener en cuenta es la precisión deseada, que se refiere principalmente al número de iteraciones dentro de la función.  Se deja al lector la libertad de elegir la plataforma  y herramienta que más sea de su agrado.   Podrías utilizar por ejemplo un sistema operativo Linux y programarlo en C. o utilizar una calculadora HP  o cualquier calculadora programable, puedes comparar tus resultados con las implementadas por la herramienta en sí… 

 

 Texto Extraido: Wikipedia – Se deja para animar al lector el desarrollo de esta función.  En algunas semanas se incluirá el código en lenguaje C.  

En hora buena!!!!

Respondiendo a lo que habiamos prometido hace unos meses Cumplimos en dejar el Código en Lenguaje C de la Función Seno!!!

Es realmente  simple construir esta función interesante.

CODIGO DE LA FUNCION SENO EN LENGUAJE C. 

POR SER ESTE LENGUAJE DIDACTICO Y DEL CONOCIMIENTO EN AMBIENTE TECNOLOGICO.

#include <math.h>

int factorial (int valor) //Función Factorial de un Número Entero
 {  int factor,i;
    factor=1;  // Incluimos Multipliación por 1. Según definición pero no hace falta
    for (i=1;i<=valor;i++) {factor=factor*i; }
    return (factor);  // retorna el factorial de un número.
}
// Funcion Seno                      
float Seno(float valor) //sen (x)=x-((x^3)/3!)+((x^5)/5!)-((x^7)/7!)+((x^9)/9!)….
{
    // Declaración de variables
      float resultado;
       int i, posicion, precision;
   
     //Asignaciones iniciales de los valores
      resultado= valor; // valor al que será aplicado las Sumas algebraicas del calculo.
      precision=45; // Por ejemplo elegimos un valor de precision de 45 ciclos.
      

  // Calculo de la Función seno propiamente Dicha.  
      for(i=1; i<=precision; i++)
      {
          posicion = i * 2 + 1; //Recorrer Valores Impares

          if(i%2==0) // Segun Signo Positivo
                    resultado += pow(valor, posicion) / factorial(posicion);
         
       else // Segun Signo Negativo
  
                    resultado -= pow(valor, posicion) / factorial(posicion);
      }
    
       return resultado; // retorna el valor del seno en Radianes.
}
void main(void)
{       float angulo_radian;
        angulo_radian = Seno(3.14);
}

  

DESCRIPCION MATEMATICA DEL MISMO.

En matemáticas, la serie de Taylor de una función f(x) infinitamente derivable (real o compleja)
 definida en un intervalo abierto (ar, a+r) se define como la siguiente suma:

sin(x) y aproximaciones de Taylor centradas en 0, con polinomios de grado 1, 3, 5, 7, 9, 11 y 13.

 f(x) = \sum_{n=0}^{\infin} \frac{f^{(n)}(a)}{n!} (x-a)^{n}

Aquí, n! es el factorial de n y f (n)(a) indica la n-ésima derivada de f en el punto a.

Si esta serie converge para todo x perteneciente al intervalo (ar, a+r) y la suma es igual a f(x), entonces la función f(x) se llama analítica. Para comprobar si la serie converge a f(x), se suele utilizar una estimación del resto del Teorema de Taylor. Una función es analítica si y solo si se puede representar con una serie de potencias; los coeficientes de esa serie son necesariamente los determinados en la fórmula de la serie de Taylor.

Si a = 0, a la serie se le llama serie de Maclaurin.

Esta representación tiene tres ventajas importantes:

  • La derivación e integración de una de estas series se puede realizar término a término, que resultan operaciones triviales.
  • Se puede utilizar para calcular valores aproximados de la función.
  • Es posible demostrar que, si es viable la transformación de una función a una serie de Taylor, es la óptima aproximación posible.

Algunas funciones no se pueden escribir como serie de Taylor porque tienen alguna singularidad. En estos casos normalmente se puede conseguir un desarrollo en serie utilizando potencias negativas de x (véase Serie de Laurent. Por ejemplo f(x) = exp(−1/x²) se puede desarrollar como serie de Laurent.

Definición

La serie de Taylor de una función f de números reales o complejos que es infinitamente diferenciable en un entorno de números reales o complejos a, es la serie de potencias:

 f(x) = f(a)+\frac{f'(a)}{1!}(x-a)+\frac{f''(a)}{2!}(x-a)^2+\frac{f^{(3)}(a)}{3!}(x-a)^3+\cdots

que puede ser escrito de una manera más compacta como

 f(x) = \sum_{n=0}^{\infin} \frac{f^{(n)}(a)}{n!} (x-a)^{n}\,,

donde n! es el factorial de n y f (n)(a) denota la n-ésima derivada de f en el punto a; la derivada cero de f es definida como la propia f y (xa)0 y 0! son ambos definidos como uno.

Historia

El filósofo eleata Zenón de Elea consideró el problema de sumar una serie infinita para lograr un resultado finito, pero lo descartó por considerarlo imposible: el resultado fueron las paradojas de Zenón. Posteriormente, Aristóteles propuso una resolución filosófica a la paradoja, pero el contenido matemático de esta no quedó resuelto hasta que lo retomaron Demócrito y después Arquímedes. Fue a través del método exhaustivo de Arquímedes que un número infinito de subdivisiones geométricas progresivas podían alcanzar un resultado trigonométrico finito. Independientemente, Liu Hui utilizó un método similar cientos de años después.

En el Siglo XIV, los primeros ejemplos del uso de series de Taylor y métodos similares fueron dados por Madhava of Sangamagrama.  A pesar de que hoy en día ningún registro de su trabajo ha sobrevivido a los años, escritos de matemáticos hindúes posteriores sugieren que él encontró un número de casos especiales de la serie de Taylor, incluidos aquellos para las funciones trigonométricas del seno, coseno, tangente y arcotangente.

En el siglo XVII, James Gregory también trabajó en esta área y publicó varias series de Maclaurin. Pero recién en 1715 se presentó una forma general para construir estas series para todas las funciones para las que existe y fue presentado por Brook Taylor, de quién recibe su nombre.

Las series de Maclaurin fueron nombradas así por Colin Maclaurin, un profesor de Edinburgo, quién publicó el caso especial de las series de Taylor en el siglo XVIII.

Series de Taylor notables

La función coseno.

Una aproximación de octavo orden de la función coseno en el plano de los complejos.

 

Las dos imágenes de arriba puestas juntas.

A continuación se enumeran algunas series de Taylor de funciones importantes. Todos los desarrollos son también válidos para valores complejos de x.

 Funcion Exponencial y logaritmo natural

e^{x} = \sum^{\infin}_{n=0} \frac{x^n}{n!}\quad, \forall x
\ln(1+x) = \sum^{\infin}_{n=1} \frac{(-1)^{n+1}}n x^n\quad\mbox{, para } \left| x \right| < 1

Serie geométrica

\frac{1}{1-x} = \sum^{\infin}_{n=0} x^n\quad\mbox{ para } \left| x \right| < 1

Teorema del Binomio

(1+x)^\alpha = \sum^{\infin}_{n=0} \frac{\Gamma(\alpha+1)}{\Gamma(n+1)\Gamma(n-\alpha)} x^n\quad para \left| x \right| < 1\quad

y cualquier \alpha\quad complejo

Funciones trigonométricas:

 

\sin x = \sum^{\infin}_{n=0} \frac{(-1)^n}{(2n+1)!} x^{2n+1}\quad, \forall x

        Nuestro Objetivo propuesto: Implementar la Función: Seno (X)- sin(x) o cualquier función Trigonometrica.

\cos x = \sum^{\infin}_{n=0} \frac{(-1)^n}{(2n)!} x^{2n}\quad, \forall x

\tan x = \sum^{\infin}_{n=1} \frac{B_{2n} (-4)^n (1-4^n)}{(2n)!} x^{2n-1}\quad, \mbox{ para } \left| x \right| < \frac{\pi}{2}
Donde Bs son los Números de Bernoulli.
\sec x = \sum^{\infin}_{n=0} \frac{(-1)^n E_{2n}}{(2n)!} x^{2n}\quad\mbox{, para } \left| x \right| < \frac{\pi}{2}
\csc{x}=\sum_{n=0}^\infty{\frac{2(2^{2n-1}-1)B_{n}x^{2n-1}}{(2n)!}}\quad\mbox{, para } 0<\left |{x}\right |< \pi
\arcsin x = \sum^{\infin}_{n=0} \frac{(2n)!}{4^n (n!)^2 (2n+1)} x^{2n+1}\quad\mbox{, para } \left| x \right| < 1
\arctan x = \sum^{\infin}_{n=0} \frac{(-1)^n}{2n+1} x^{2n+1}\quad\mbox{, para } \left| x \right| < 1

Funciones hiperbólicas

\sinh x = \sum^{\infin}_{n=0} \frac{1}{(2n+1)!} x^{2n+1}\quad , \forall x
\cosh x = \sum^{\infin}_{n=0} \frac{1}{(2n)!} x^{2n}\quad , \forall x
\tanh x = \sum^{\infin}_{n=1} \frac{B_{2n} 4^n (4^n-1)}{(2n)!} x^{2n-1}\quad\mbox{, para } \left| x \right| < \frac{\pi}{2}
\sinh^{-1} x = \sum^{\infin}_{n=0} \frac{(-1)^n (2n)!}{4^n (n!)^2 (2n+1)} x^{2n+1}\quad\mbox{, para } \left| x \right| < 1
\tanh^{-1} x = \sum^{\infin}_{n=0} \frac{1}{2n+1} x^{2n+1}\quad\mbox{, para } \left| x \right| < 1

Pero nuestro principal objetivo estriba en el cálculo de las funciones trigonométricas, ya que se pueden implementar como se puede observar con las formulas de arriba con funciones “Factoriales”, fáciles de implementar en un sistema de cómputos.  Cualquiera sea la herramienta de su agrado. 

 Animamos a que el lector pueda desarrollar su propia función trigonométrica, por ejemplo, seno (X). 

Usted elige que plataforma y herramienta desea utilizar, y compare sus resultados con los proporcionados por tales herramientas…

 Especialmente para las personas que aún no han experimentado esta posibilidad. 

Un punto muy importante a tener en cuenta es la PRECISION DESEADA, ya que está prácticamente interrelacionada con el número de iteraciones en el cálculo.

Mi primera aproximación a este cálculo lo había realizado en el lenguaje C con pocos conocimientos de matemáticas, solo con pocos conocimientos aplicando a sumatorias y factoriales.  Con el tiempo fui adquiriendo conocimientos de cálculo que me ayudaron a comprender más de este tema.   Pero para realizar una función Seno(X), no se necesita demasiada experiencia en matemáticas, así que anímense, van a ver que es muy fácil y divertida!!!

En mi opinión la mayor parte de la información necesaria para comprender y realizar un cálculo de una función trigonométrica es la que les transcribí de Wikipedia.

No saben lo que se puede realizar con algunas cosas simples, es cuestión solo de tomarse un tiempo y practicar!!! – Anímense…

16 comentarios

  1. Pingback: Serie de Taylor y la Función Seno! RESPUESTA AL ARTICULO Y PROPUESTA DEL CODIGO DE LA FUNCION SENO QUE DEJAMOS PLANTEADO MESES ATRÁS | Rama Estudiantil del IEEE de la UCSA

  2. I am not certain the place you’re getting your info, however good topic. I must spend some time finding out much more or understanding more. Thank you for magnificent info I used to be in search of this info for my mission.

    8 noviembre, 2012 en 1:33 AM

  3. ramaucsa

    good, 😉

    I used to practices when I studend System Informations to refer on a book of language C. the book not explain the math model only put a example how to calculate de sin funtion basis. When I decide to write this, I include the math concepts primary and then write my own version of sine calculation, this is of my experiencs conceps. When I write not try to used any compilers only demostrated how calculated forms, when people refer this post I read this code, and i observe the code is correct on the C language. 😉

    This is important because I not write Code since I finished Systems Analist, because I study Electrical Eng.nodaways, but I remember that. You can mix the Engineers for you carrier to increase your capacities and experiences and IEEE is good form to do this…
    Sincerily,
    Walter Escurra from Paraguay!!!

    Pd: When I tried to do calculations of sine, I would try to imagination how a calculators internals calculatos of functions like this…

    8 noviembre, 2012 en 2:18 AM

  4. Great post. I was checking constantly this blog and I’m impressed! Very helpful information specifically the last part 🙂 I care for such information much. I was seeking this certain info for a long time. Thank you and best of luck.

    19 enero, 2013 en 1:14 AM

  5. I usually do not drop a bunch of remarks, but i did a few searching and wound up
    here Serie de Taylor y la Función Seno! | Rama
    Estudiantil del IEEE de la UCSA. And I actually do have a
    couple of questions for you if you tend not to mind. Is it just me or does it look like some
    of the comments come across as if they are left by brain dead people?
    😛 And, if you are posting on additional online sites, I would like
    to keep up with anything new you have to post. Could you list
    of all of all your social sites like your Facebook page, twitter feed,
    or linkedin profile?

    9 May, 2013 en 4:49 PM

  6. Ok. What is your Question. Can you make question here or sent to my email: walter_escurra@ieee.org or sb.ramaucsa@ieee.org.

    10 May, 2013 en 9:27 AM

  7. I’m extremely inspired with your writing talents as smartly as with the layout in your weblog. Is this a paid theme or did you customize it yourself? Anyway keep up the excellent high quality writing, it’s
    rare to peer a nice weblog like this one today.

    .

    17 May, 2013 en 8:23 PM

  8. Please let me know if you’re looking for a article writer for your site. You have some really good posts and I feel I would be a good asset. If you ever want to take some of the load off, I’d love to write some content for your blog in exchange for a link
    back to mine. Please send me an e-mail if interested.
    Thanks!

    27 May, 2013 en 9:31 AM

  9. I am truly delighted to glance at this weblog posts which
    carries lots of valuable data, thanks for providing these statistics.

    2 junio, 2013 en 6:27 PM

  10. I think the admin of this website is actually working hard in support of his web
    page, as here every material is quality based information.

    8 junio, 2013 en 5:21 AM

  11. Howdy would you mind sharing which blog platform you’re using? I’m going to start my own blog in the near future but I’m having a tough time selecting between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your layout seems different then most blogs and I’m looking for something unique.
    P.S Apologies for being off-topic but I had to ask!

    21 junio, 2013 en 3:21 AM

  12. alberto

    me pueden ayudar a realizar en programa en c++ que calcule:
    (7*T^4) – (6*P^4) + (12*R^5) < 5850
    se los agradeceria mucho

    20 noviembre, 2013 en 2:03 PM

    • Sbramaucsa

      Eso es una Inecuación? y tenes que darle los varlores a R, P , T o debe quedar expresado como literal. Tenes Matlab para probar alli antes de hacerlo.

      20 noviembre, 2013 en 2:38 PM

      • alberto

        declararlas si pero no se como empezar mi programa….

        21 noviembre, 2013 en 1:44 PM

      • alberto

        tengo esto pero ya no se que mas hacer

        #include
        #include
        #include
        void main()
        {
        int T, P, R, res;
        printf(«\n Ingrese el valor de T»);
        scanf(«%d», &R);
        printf(«\n Ingrese el valor de P»);
        scanf(«%d», &P);
        printf(«\n Ingrese el valor de R»);
        scanf(«%d», &R);
        res=pow((7*T^4)-(6*P^4)+(12*R^5)<5850)
        getch();
        return();
        }

        21 noviembre, 2013 en 2:08 PM

  13. Basados en los datos de Londres y Santiago, se
    puede extrapolar que en países desarrollados el orden de importancia de los usuarios del transporte urbano es primero automovilistas, luego peatones y, por último, usuarios del transporte público.

    8 febrero, 2017 en 5:00 AM

Deja un comentario