Tenemos un bloque de muestras y queremos expresar la misma información como una mezcla de oscilaciones. La DFT hace ese cambio de coordenadas sin perder datos. La FFT organiza el cálculo para repetir menos operaciones. Empezaremos con cuatro giros y una lista corta; después conectaremos los índices con frecuencias y veremos qué puede y qué no puede contar una medición finita.
Si necesitas repasar:
1. Un bloque de N datos se describe con N coordenadas espectrales
Fijamos N entero positivo y las muestras x[0],…, x[N−1], reales o complejas. La DFT cambia de base en ese espacio de dimensión N; no adivina muestras fuera del bloque. La nueva base usa oscilaciones que completan un número entero de vueltas en N posiciones. Un coeficiente indica cuánto aporta una dirección y con qué fase.
Su módulo es uno: multiplica girando, sin aumentar por sí mismo el módulo de una muestra.
La cancelación de esos giros separa oscilaciones distintas. Los signos real e imaginario forman parte de los datos, no son errores que haya que eliminar antes de mirar el resultado.
Seguir cuatro giros sin introducir todavía una lista
N=4, W₄=−i.
Potencias
W₄⁰=1; W₄¹=−i; W₄²=−1; W₄³=i.Cerrar la vuelta
W₄⁴=1, porque multiplicar una vez más completa el giro.
Cancelar
1−i−1+i=0.En cambio, si tomamos siempre el giro de frecuencia cero, sumamos 1+1+1+1=4.
La suma distingue una dirección constante de una que gira una vuelta completa.
La suma es finita; no depende de un criterio de convergencia de series infinitas.
Una oscilación compleja coincide exactamente con una dirección
x=[1; i;−1;−i], cuatro muestras.
Reconocer el giro de la señal
x[n]=exp(2πin/4), una vuelta de signo positivo en el bloque.
Comparar con frecuencia uno
Al multiplicar por exp(−2πin/4), cada producto vale uno. Su suma es cuatro.
Otras direcciones
En las otras tres comparaciones queda una vuelta no constante cuyas cuatro contribuciones se cancelan. La DFT será [0;4;0;0].
Una sola dirección espectral puede describir los cuatro datos.
La lista compleja no tiene por qué presentar la simetría conjugada de los datos reales.
2. La suma directa y la inversa tienen signos y factores emparejados
La directa no divide entre N; la inversa sí. Una convención distinta puede repartir los factores, pero hay que cambiar ambas fórmulas de forma compatible.
X[0] es la suma de las muestras, porque todos sus pesos son uno. La media es X[0]/N. Para cada otro k, escribimos primero sus pesos y después multiplicamos cada muestra por su peso antes de sumar. Esto evita confundir el signo del giro con el signo de la muestra.
Calcular toda una DFT de cuatro muestras
x=[2;0;−1;1], N=4.
Cero y dos
X[0]=2+0−1+1=2.Los pesos de k=2 son [1;−1;1;−1], así X[2]=2−1−1=0.Uno
Los pesos son [1;−i;−1; i].
Entonces X[1]=2+0+1+i=3+i.Tres
Los pesos son [1; i;−1;−i].
Entonces X[3]=3−i.La media temporal es 2/4=1/2.
X=[2;3+i;0;3−i].
La suma de las muestras es dos, pero ninguna obligación hace que cada muestra sea su media.
Reconstruir una entrada concreta para comprobar la normalización
Usar X=[2;3+i;0;3−i] y recuperar x[1].
Pesos de la inversa
Para n=1 son [1; i;−1;−i], con signo positivo en el exponencial.
Sumar
2+i(3+i)−i(3−i)=2+(−1+3i)+(−1−3i)=0.Dividir
x[1]=0/4=0, como en el dato original.Para n=0, sumar todos los coeficientes da ocho y dividir entre cuatro recupera x[0]=2.
La inversa usa la fase completa y el divisor N.
Usar solo |X| cambiaría el problema y no reconstruiría en general estas muestras.
3. La inversa funciona porque las raíces se cancelan salvo en un índice
Al sustituir la directa en la inversa aparece Σₖ₌₀ᴺ⁻¹exp(2πik(n−m)/N). Si n=m módulo N, cada término vale uno y la suma es N. Si no, es una geométrica finita de razón q≠1 con qᴺ=1: su suma (1−qᴺ)/(1−q) es cero. Aquí |q|=1 no causa un problema porque la suma es finita.
Así solo sobrevive x[m] con m=n dentro del bloque, multiplicada por N. El factor 1/N la recupera. La demostración sirve para cualquier vector de N datos. Si prolongamos la fórmula de reconstrucción a otros índices enteros, repite cada N muestras: esa es la extensión periódica de la representación, no una prueba de que el fenómeno medido se repitiera físicamente.
Comprobar dos casos de la suma de raíces
N=4; comparar diferencias n−m=1 y n−m=0.
Índices diferentes
Para diferencia uno, los términos son 1, i,−1,−i, que suman cero.
Mismo índice
Para diferencia cero, los cuatro exponentes son cero: la suma es cuatro.
Resultado en la inversa
Al dividir entre cuatro, la primera comparación no aporta nada y la segunda deja exactamente la muestra buscada.
La cancelación actúa como selector de coordenada.
Si n−m=4 también suma cuatro: los índices se entienden módulo cuatro.
Una muestra desplazada permite ver la fase de la reconstrucción
x=[0;1;0;0], N=4.
Directa
Solo contribuye n=1, así X[k]=W₄ᵏ: [1;−i;−1; i].Recuperar posición uno
Los pesos inversos [1; i;−1;−i] multiplican cada coeficiente para dar cuatro unos: x[1]=4/4=1.
Recuperar cero
La suma de los cuatro coeficientes es cero, así x[0]=0. Las otras posiciones se anulan por la misma ortogonalidad.
La fase sitúa el impulso en su posición exacta.
Todos los módulos espectrales son uno, igual que para un impulso en cero, pero sus fases son diferentes.
4. Un índice se convierte en hercios solo después de fijar el muestreo
Si la frecuencia de muestreo es fₛ, el índice k representa kfₛ/N Hz. Frecuencias separadas por fₛ generan las mismas muestras, así los índices altos suelen mostrarse como (k−N)fₛ/N.
Esto describe las coordenadas del bloque; evitar aliasing en la señal continua requiere hipótesis de muestreo adicionales.
Para datos reales, X[N−k]=conj(X[k]) con índices módulo N. Cero y Nyquist, si existe, son reales. Un coseno real de amplitud A situado exactamente en un índice interior reparte amplitud entre dos coeficientes de módulo NA/2. Para mostrar amplitud unilateral se usa 2|X[k]|/N solo en esas frecuencias interiores; cero y Nyquist no se duplican.
Leer frecuencias positivas y negativas de la misma rejilla
N=8, fₛ=80 Hz.
Separación
Δf=80/8=10 Hz.Índices
k=1 representa diez Hz; k=3, treinta; k=6 se puede leer como (6−8)·10=−20 Hz.
Nyquist
k=4 representa cuarenta Hz, equivalente en las muestras a menos cuarenta. No hay dos casillas independientes para esas dos etiquetas.
La unidad Hz necesita conocer fₛ, además de N y k.
Los índices son enteros sin unidad; diez Hz no significa diez muestras.
Recuperar amplitudes sin duplicar las excepciones
x[n]=2+3cos(2πn/8+π/3)+(1/2)(−1)ⁿ, n=0,…,7.
Constante y Nyquist
X[0]=16, así la media es dos.X[4]=4, así la amplitud de la alternancia es 4/8=1/2.Coseno interior
X[1]=12exp(iπ/3) y X[7]=12exp(−iπ/3).La amplitud es 2·12/8=3.Fase
La fase positiva π/3 del coeficiente uno coincide con la fase del coseno usado. Los demás coeficientes son cero.
La regla de duplicar se aplica al par interior, no a todas las casillas.
Duplicar DC daría cuatro en lugar de la media dos; duplicar Nyquist daría uno en lugar de un medio.
5. La FFT separa pares e impares y reutiliza una suma y una resta
Para N par, separamos x[2m] y x[2m+1]. Sus DFT de longitud N/2 son E[k] y O[k].
La misma multiplicación sirve para las dos salidas: es la mariposa.
Si N es potencia de dos repetimos la separación hasta bloques de un dato. La FFT no define un espectro diferente: calcula exactamente la DFT de antes en aritmética exacta. Existen otras descomposiciones para otros tamaños; no tener potencia de dos no hace que la DFT deje de existir.
Rehacer la DFT corta con dos DFT aún más pequeñas
x=[2;0;−1;1].
Separar
Las posiciones pares dan [2;−1], con E=[1;3].Las impares dan [0;1], con O=[1;−1].Primera pareja
Para k=0, W₄⁰O[0]=1.Entonces X[0]=1+1=2 y X[2]=1−1=0.Segunda pareja
Para k=1, W₄O[1]=(−i)(−1)=i.Entonces X[1]=3+i y X[3]=3−i.
La FFT coincide con los cuatro cálculos directos.
Omitir el factor W₄ habría perdido la parte imaginaria de la segunda pareja.
Una lista constante también encaja en la descomposición
Ocho muestras iguales a uno.
Dos mitades
Pares e impares son sendas listas de cuatro unos. Ambas tienen DFT [4;0;0;0].
Combinar k=0
X[0]=4+4=8 y X[4]=4−4=0.Resto
Los demás productos combinan ceros y todas sus salidas son cero. Se obtiene [8;0;0;0;0;0;0;0].
La dirección constante concentra la información en el índice cero.
La amplitud original es X[0]/8=1, no ocho.
6. El ahorro viene de repetir menos trabajo, no de cambiar la definición
La suma directa usa N contribuciones para cada una de N salidas: orden N². En radix dos hay log₂N niveles con N/2 mariposas por nivel, así el orden es Nlog₂N. Una mariposa contiene operaciones complejas; contar mariposas no equivale a contar exactamente instrucciones de una máquina.
En un ordenador, las rutas de cálculo pueden acumular redondeo de maneras distintas. Un resultado muy pequeño cercano a cero se compara con una tolerancia ligada a escala y precisión; tampoco se borra sin criterio cualquier coeficiente pequeño que pudiera ser una señal real. La factorización de N, memoria y biblioteca influyen en tiempo real.
Comparar tamaños de trabajo sin mezclar sus unidades
N=1024=2¹⁰.
Directa
Hay 1024²=1048576 contribuciones antes de simplificaciones.Radix dos
Hay diez niveles y 512 mariposas en cada nivel: 5120 mariposas.
Alcance
El ahorro asintótico es claro, pero no se afirma que una contribución directa cueste lo mismo que una mariposa ni que ese cociente sea la aceleración exacta.
La estructura explica por qué procesar bloques grandes se vuelve viable.
Optimizar factores triviales puede reducir aún más algunas operaciones concretas.
Una diferencia de redondeo se evalúa con escala
Una DFT teóricamente tiene coeficiente cero; el cálculo devuelve 3·10⁻¹⁴ con entradas de tamaño uno.
Error absoluto
La distancia al cero esperado es 3·10⁻¹⁴; el error relativo respecto a cero no está definido.
Comparar contexto
Una tolerancia absoluta elegida con la escala y precisión puede reconocer ese residuo. Si las entradas fueran de escala 10⁻¹⁵, borrar 3·10⁻¹⁴ ya exigiría otra revisión.
Comprobar conjunto
Se contrasta también reconstrucción y energía, sin convertir una tolerancia local en una prueba de que el muestreo físico era correcto.
Precisión numérica y contenido de la señal se juzgan con sus escalas.
La FFT y la directa pueden diferir unas últimas cifras sin representar transformaciones matemáticas distintas.
7. Una rejilla más fina no crea una observación más larga
El espaciado Δf=fₛ/N indica las frecuencias donde se evalúa el espectro del bloque. Observar más muestras al mismo fₛ alarga el registro y puede aportar información para separar tonos. Añadir ceros al bloque existente evalúa su espectro en más puntos, pero no mide nueva señal: no mejora por sí solo la capacidad física de distinguir dos frecuencias cercanas.
Si una oscilación no completa vueltas enteras en el bloque, sus extremos no encajan al repetir la representación y suele repartir energía entre varios índices: fuga espectral. Las ventanas cambian ese reparto, las anchuras y las amplitudes. Suavizar extremos tiene un coste y requiere correcciones adecuadas si queremos estimar amplitudes; la DFT sigue siendo exacta para el vector que recibe.
Medio ciclo extra reparte un tono entre varias casillas
N=4, x[n]=cos(3πn/4): una vuelta y media dentro de la longitud del bloque.
Muestras
x=[1;−√2/2;0;√2/2].Transformada
Con los pesos de cuatro puntos obtenemos X[0]=1, X[1]=1+√2i, X[2]=1 y X[3]=1−√2i.
Interpretar
El tono no corresponde a un único índice entero del bloque. No es un fallo de la suma: estos son exactamente los coeficientes del vector dado.
Los coeficientes describen el bloque, mientras inferir el tono continuo exige contexto.
Su energía temporal dos coincide con (1+3+1+3)/4=2.
Rellenar con ceros no significa haber medido cuatro muestras más
x=[1;0;−1;0], fₛ=8 Hz.
Cuatro datos
Su DFT es [0;2;0;2], con separación dos Hz.
Ocho posiciones rellenadas
Añadimos cuatro ceros. La nueva DFT cumple X₈[k]=1−exp(−iπk/2), evaluada con separación un Hz.
Qué no cambió
Seguimos teniendo solo cuatro observaciones. Continuar midiendo el coseno habría podido dar [1;0;−1;0;1;0;−1;0], un vector diferente del relleno.
La rejilla se hizo más densa; el registro medido no se alargó.
El relleno también tiene otra utilidad distinta: evitar plegado al calcular una convolución lineal.
8. Multiplicar DFT calcula convolución circular hasta que el relleno evita el plegado
La inversa del producto X[k]H[k] de dos DFT de longitud N es y[n]=Σₘ₌₀ᴺ⁻¹x[m]h[(n−m) mod N]. La resta de índices vuelve al bloque por el módulo. Si queríamos convolución lineal, sus posiciones más allá del bloque se añadirán a otras, no desaparecerán.
Para listas de longitudes L y M, el último índice lineal posible es L+M−2, así hacen falta al menos L+M−1 casillas. Rellenar ambas entradas hasta una longitud N suficiente permite usar la multiplicación espectral sin solapamiento circular. Ese límite es independiente de que N sea potencia de dos.
Una salida no nula puede plegarse hasta dar todo cero
x=[1;1], h=[1;−1].
Lineal
La salida completa es [1;0;−1].
DFT de longitud dos
X=[2;0] y H=[0;2].El producto es [0;0] y su inversa [0;0].
Explicar
El −1 de la posición dos se sumó al uno de la posición cero. Es la convolución circular de dos casillas, distinta de la lineal.
No había un error de multiplicación; se había elegido otra operación por la longitud.
La suma total cero se conserva en ambos resultados y no detecta por sí sola este fallo de intención.
Usar espacio suficiente recupera cada posición
x=[2;1;−1], h=[1;2].
Longitud necesaria
L+M−1=3+2−1=4.Rellenar
Usamos [2;1;−1;0] y [1;2;0;0]. Multiplicar sus DFT de cuatro puntos e invertir da [2;5;1;−2].
Comparar con tres
Con longitud tres se obtendría [0;5;1], porque la posición tres se añade a cero. El relleno cuatro evita esa suma de posiciones distintas.
La DFT puede calcular convolución lineal si el bloque se dimensiona para ello.
La suma final seis coincide con (2+1−1)(1+2), pero se revisan también todos los índices.
9. Media, energía, fase e inversa comprueban aspectos diferentes
Se demuestra usando la misma ortogonalidad que la inversa. La media X[0]/N, la simetría conjugada para datos reales y la reconstrucción completa aportan controles adicionales. Una comprobación de módulos no detecta todos los errores de fase.
Estas pruebas verifican que representamos bien el vector entregado. No demuestran que la medición evitara aliasing ni que una ventana corta separe cualquier par de tonos. Antes de interpretar un gráfico se conservan frecuencia de muestreo, cantidad de datos realmente medidos, ventana, relleno, unidades y normalización.
Cerrar el ejemplo con energía y media
x=[2;0;−1;1], X=[2;3+i;0;3−i].
Tiempo
La energía es 2²+0²+(−1)²+1²=6; la media es (2+0−1+1)/4=1/2.Frecuencia
Los módulos al cuadrado son 4,10,0,10.
Su suma dividida entre cuatro da 24/4=6.Otros controles
X[3]=conj(X[1]) y X[0]/4=1/2; además la inversa recuperó las muestras. Los controles son compatibles.
La energía detecta factores N perdidos sin ignorar la fase en los otros controles.
La energía seis no equivale a la suma con signo dos.
Dos impulsos pasan el mismo control de módulo, pero no de posición
Comparar [1;0;0;0] con [0;1;0;0].
Primer espectro
El impulso en cero tiene X=[1;1;1;1].Segundo espectro
El impulso en uno tiene X=[1;−i;−1; i].Todos sus módulos también valen uno y ambas energías temporales son uno.
Control decisivo
Las inversas recuperan posiciones distintas porque usan las fases. Intercambiar los espectros conserva módulos y energía, pero cambia el dato.
El espectro completo es más información que su magnitud dibujada.
La igualdad de magnitudes no autoriza a identificar las dos señales temporales.
Ahora lo resolvemos de principio a fin.
EJEMPLO RESUELTO 1
DFT de dos muestras
Calcula la DFT de x=[1,3], N=2.
Convención
N=2; la directa suma sin divisor y W₂=exp(−πi)=−1.Índice cero
Los pesos son [1;1], por tanto X[0]=1+3=4.Índice uno
Los pesos son [1;−1], por tanto X[1]=1−3=−2.Resultado
X=[4;−2].Inversa
x[0]=(4−2)/2=1 y x[1]=(4+2)/2=3.Energía
En tiempo: 1²+3²=10.En frecuencia: [4²+(−2)²]/2=10.
X=[4,−2].
Parseval confirma 1²+3²=10 y (4²+(−2)²)/2=20/2=10; además la inversa recupera [1,3].
EJEMPLO RESUELTO 2
Una señal constante
x=[2,2,2,2]. Calcula su DFT.
Datos
Cuatro muestras constantes de amplitud dos.
Frecuencia cero
Cada peso es uno: X[0]=2+2+2+2=8.Otras frecuencias
Cada suma de raíces no constantes vale cero; al multiplicar por dos continúa siendo cero.
Espectro
X=[8;0;0;0].Media e inversa
X[0]/4=2; la inversa de la única componente constante recupera dos en cada posición.
Energía
La energía temporal es 4·2²=16 y la espectral normalizada 8²/4=16.
X=[8,0,0,0].
La media es X[0]/4=2. La energía temporal 4·2²=16 coincide con 8²/4=16.
Los símbolos que hemos usado
- x[n]
- Muestra de entrada cuyo índice entero es n; aquí usamos un bloque finito.
- N
- Número de muestras del bloque y número de coeficientes de su DFT.
- X[k]
- Coeficiente complejo del índice de frecuencia k.
- i
- Unidad imaginaria: i² = −1.
- W_N
- Raíz de unidad e^(−2πi/N), un giro complejo de ángulo −2π/N.
- fₛ
- Frecuencia de muestreo en muestras por segundo, si los datos proceden de muestreo uniforme.
- Δf
- Separación entre frecuencias de la rejilla de análisis: fₛ/N.
Ahora te toca a ti.
Tienes cinco ejercicios. Inténtalos; las pistas te ayudan si te atascas.
Practicar este tema →