Está en la página 1de 13

• Algoritmo de la transformada rápida

de Fourier
• Algoritmo de Goertzel
• Aplicaciones de la FFT.

ALUMNOS :
Alvines Huari Carlos Manuel
Ramirez Yenque Leslie
¿QUÉ ES EL FFT?

La transformada rápida de Fourier, conocida por la abreviatura FFT (del inglés Fast Fourier Transform) es un algoritmo
eficiente que permite calcular la transformada de Fourier discreta (DFT) y su inversa. La FFT es de gran importancia
en una amplia variedad de aplicaciones, desde el tratamiento digital de señales y filtrado digital en general a la
resolución de ecuaciones en derivadas parciales o los algoritmos de multiplicación rápida de grandes enteros. Cuando
se habla del tratamiento digital de señales, el algoritmo FFT impone algunas limitaciones en la señal y en el espectro
resultante ya que la señal muestreada y que se va a transformar debe consistir de un número de muestras igual a una
potencia de dos.
LA TRANSFORMADA RÁPIDA DE FOURIER (FFT)
Existen diversas formas de implementar la transformada discreta de
Fourier (DFT). Para estudiar algunas de ellas, considere una DFT de
N puntos Xn(k ), la cual llamaremos también X(N)(k) por notación y
donde k=0,…,N-1:

Implementación directa o por definición :


La DFT se puede calcular directamente con la expresión de (1) como una
suma utilizando for-loops para cada bin de frecuencia, generando N
operaciones complejas por cada bin y N2 operaciones complejas en total.
Esta es la implementación más sencilla conceptualmente, pero la menos
eficiente.
IMPLEMENTACIÓN MATRICIAL
Es posible representar la ecuación como un producto entre una matriz y un
vector, de modo que 𝑋 = 𝑊𝑁 𝑥, donde X y x son vectores columna de N x 1
y A es una matriz cuadrada de N x N. Este producto es equivalente a X k =
𝑘𝑛 𝑘𝑛
σ𝑁𝑛=1 𝑊𝑁 , donde 𝑊𝑘𝑛 es el elemento (k,n) de la matriz dado por 𝑊𝑁 =
𝑒 −𝑗2𝜋𝑘𝑛/𝑁 . Si llamamos a los coeficientes 𝑊𝑁 = 𝑒 −𝑗2𝜋 /𝑁 entonces
𝑘+𝑁/2
𝑊𝑁𝑘𝑛 = 𝑊𝑁 𝑘𝑛 . Es posible demostrar que 𝑊𝑁𝑘+𝑁 = 𝑊𝑁𝑘 y que 𝑊𝑁 =
−𝑊𝑁𝑘 , lo que explica la simetría de la matriz 𝑊𝑁 .
DIVIDE Y CONQUISTA
Esta implementación descompone una DFT de N puntos como la suma de
dos DFT de N/2 puntos, lo que reduce la complejidad numérica casi a la
mitad y es la base conceptual del algoritmo FFT. Para derivar esta versión,
podemos partir por dividir el cálculo para las muestras pares e impares
Es posible simplificar esta expresión observando las simetrías del sistema,
𝑁 𝑁
(2) (2)
donde 𝑋0 𝑌 𝑋1 son periódicas cada N/2. Si llamamos a los coeficientes
𝑊𝑁 = 𝑒 −𝑗2𝜋/𝑁 y notando además que cada DFT de N/2 puntos es periódica
𝑘+𝑁/2
cada N/2 puntos y que𝑊𝑁 = −𝑊𝑁𝑘 se puede obtener que

para k=0,…,N/2-1. Esta transformación reduce la


𝑁2
complejidad numérica de la DFT de 𝑁2 a + 𝑁 La
2
representación gráfica
Aplicación de Transformada rápida de Fourier (FFT)
El algoritmo FFT entrega los mismos resultados que la gráfica anterior, pero
optimiza el cómputo dividiendo el problema en cálculos de DFT de menor
orden y una estructura recursiva. Para derivar una de las versiones más
comunes del algoritmo FFT llamado Radix-2, asumimos que 𝑁 = 2𝑚 . La
división de la DFT de N puntos a dos de N/2 presentada por el algoritmo
divide y conquista se puede volver a realizar recursivamente en cada bloque
de la figura 1.

Esta implementación recursiva se conoce como FFT radix 2 y es una de las


formas más comunes y su complejidad numérica baja de N2 a Nlog2(N). La
figura 3 presenta el esquema de una estructura de reducción de orden en la
DFT, la figura 4 el caso de una FFT de 8 puntos, y la figura 5 la complejidad
numérica en función al número de puntos N.
Figura 3: calculo de la DFT usando reducción de orden. La DFT de N
puntos X(k) se obtiene mediante cuatro N/4 DFTs
Aplicaciones de Fourier :

• Es usada en muchas ramas de la ingeniería, además de ser una herramienta


sumamente útil en la teoría matemática abstracta.
• •Sus áreas de aplicación incluyen análisis vibratorio, acústica, óptica, procesamiento
de imágenes y señales, y compresión de datos.
• •Generación de formas de onda de corriente o tensión eléctrica por medio de la
superposición de sinusoides generados por osciladores electrónicos de amplitud
variable cuyas frecuencias ya están determinadas.
• •Análisis en el comportamiento armónico de una señal.
• •Reforzamiento de señales.
• •Estudio de la respuesta en el tiempo de una variable circuital eléctrica donde la
señal de entrada no es sinusoidal o cosinusoidal, mediante el uso de transformadas
de Laplace y/o solución en régimen permanente sinusoidal en el dominio de la
frecuencia.
• •La resolución de algunas ecuaciones diferenciales en derivadas parciales admite
soluciones particulares en forma de series de Fourier fácilmente computables, y que
obtener soluciones prácticas, en la teoría de la transmisión del calor, la teoría de
placas, etc.
Deducción del algoritmo de Goertzel:
El algoritmo de Goertzel parte de la definición de la DFT, por lo que se
procede a realizar, inicialmente, una reescritura de la ecuación 1 para la
DFT: Si se define a:

Ahora simplificando y reescribiendo la formula anterior obtenemos:

Diagrama del filtro IIR del algoritmo


Goertzel
Deducción del algoritmo de Goertzel:
Ejemplo comparativo de utilización de Goertzelmio implementado, y
algoritmo Goertzel de Matlab.
En la primera parte, se implementa el código haciendo uso de la función
llamada goertzelmio Este ejemplo, busca encontrar las frecuencias de 696
Hz, 770 Hz y 1209 Hz, dos de los cuales corresponden a la tecla 1, dentro de
una señal. Si estas son encontradas, no se recibe información sobre
magnitud ni su fase, solamente sobre su existencia al presentar un pico ante
su presencia. Este hecho hace dramáticamente importante la diferencia
entre la FFT (Fast Fourier Transform) y el algoritmo Goertzel.

También podría gustarte