Page 581 - Chapra y Canale. Metodos Numericos para Ingenieros 5edición_Neat
P. 581

19.5  TRANSFORMADA DISCRETA DE FOURIER (TDF)                     557

                                                   N−1
                                                         ω
                                             f =  1 ∑  Fe i 0 n  para  n = 0 a  N −1                     (19.28)
                                             n
                                                       k
                                                 N
                                                   k=0
                                         donde w  = 2p/N
                                               0
                                            Las ecuaciones (19.27) y (19.28) representan las análogas discretas de las ecuaciones
                                         (19.26) y (19.25), respectivamente. Como tales, ellas se emplean para calcular tanto la
                                         transformada directa como la inversa de Fourier, para datos discretos. Aunque es posible
                                         realizar tales cálculos a mano, son bastante laboriosos. Como lo expresa la ecuación
                                                              2
                                         (19.27), la TDF requiere N  operaciones complejas. Así, es necesario desarrollar un al-
                                         goritmo computacional para implementar la TDF.

                                         Algoritmo computacional para la TDF.  Observe que el factor l/N en la ecuación
                                         (19.28) es sólo un factor de escala que se puede incluir tanto en la ecuación (19.27) como
                                         en la (19.28), pero no en ambas. En nuestro algoritmo computacional, lo incluiremos en
                                         la ecuación (19.27) para que el primer coeficiente F  (que es el análogo del coeficiente
                                                                                  0
                                         continuo a ) sea igual a la media aritmética de las muestras. También, usaremos la
                                                 0
                                         identidad de Euler para implementar un algoritmo con lenguajes que no contengan datos
                                         de variables complejas,
                                             ±ia
                                            e  = cos a ± i sen a
                                         y después volver a expresar las ecuaciones (19.27) y (19.28) como
                                                 1  N
                                             F =   ∑   f [  cos( kω  n −)  if  sen  k ( ω  n)]           (19.29)
                                              k
                                                 N      n      0    n      0
                                                   n=0
                                         y
                                             n ∑
                                             f =  N−1  [ F cos( kω 0 n +)  iF  sen  k ( ω 0 n)]          (19.30)
                                                      k
                                                                  k
                                                 k=0
                                            El seudocódigo para implementar la ecuación (19.29) se muestra en la figura 19.12.
                                         Este algoritmo se puede desarrollar como un programa computacional para calcular la
                                         TDF. Los resultados de tal programa se tienen en la figura 19.13 para el análisis de una
                                         función coseno.




                                         FIGURA 19.12
                                         Seudocódigo para el cálculo de la TDF.

                                                         DOFOR k = 0, N – 1
                                                           DOFOR n = 0, N – 1
                                                             angle = kω 0 n
                                                             real k  = real k  + f n  cos(angle)/N
                                                             imaginary k  = imaginary k  – f n  sin(angle)/N
                                                           END DO
                                                         END DO




                                                                                                         6/12/06   13:58:24
          Chapra-19.indd   557
          Chapra-19.indd   557                                                                           6/12/06   13:58:24
   576   577   578   579   580   581   582   583   584   585   586