Lección
La teoría — La transformada rápida de Fourier
La transformada rápida de Fourier (FFT) es cualquier algoritmo que calcula la transformada de Fourier discreta X[k] = Σ x[n] Wkn, W = e−2πi/N, de forma exacta salvo el redondeo, en unas N log N operaciones en lugar de N². La forma de Cooley-Tukey divide N = N1N2: N2 transformadas intercaladas de longitud N1, cada salida k1 de la transformada n2 multiplicada por su propio factor de rotación Wn2k1, seguidas de N1 transformadas de longitud N2 a través de ellas. Aplicada una y otra vez a N = 2m es la FFT de base 2: m etapas de N/2 mariposas.
Qué significa cada símbolo
N- el número de muestras, y de frecuencias calculadas
W- la raíz de la unidad e−2πi/N; sus potencias son los factores de rotación
m- log2N, el número de etapas de una FFT de base 2
Problema resuelto al detalle
-
El otro ejemplo de Gauss: Juno, 36 valores 4 pasos
El artículo 41 del manuscrito de Gauss interpola la ecuación de centro de Juno a partir de 36 valores, uno cada 10°, divididos como 6 × 6. Según el recuento de Cooley y Tukey, ¿cuánto trabajo exige la suma directa, cuánto ahorra la división de Gauss y podría una división más fina mejorar el resultado? Pulsa antes Gauss, 3 periodos de 4: la página cuenta de la misma manera para los doce valores.
Abre este problema en la herramienta
-
La suma directa, una operación por muestra por frecuencia:
-
La división de Gauss, seis periodos de seis: el recuento en dos pasos de Cooley y Tukey es N veces la suma de los factores.
-
Dividida hasta el fondo, 36 = 2 × 2 × 3 × 3:
-
La regla de Cooley y Tukey: un factor r = st con s, t > 1 siempre cumple que s + t < r, salvo si s = t = 2:
Respuesta
1.296 operaciones directa, 432 con la división 6 × 6 de Gauss, 360 dividida hasta el fondo. La división de Gauss ya hace tres veces menos trabajo, y la división más fina ahorra un sexto de lo restante. Los doce valores de la página funcionan igual: 144 directa y 84 dividida, o 12 × (2 + 2 + 3) = 84 otra vez hasta el fondo, porque un factor de 4 dividido en 2 × 2 cuesta lo mismo.
-
Ruta de aprendizaje
La transformada de Fourier en la práctica
Referencias (3)
- Gauss's manuscript on trigonometric interpolation, printed after his death. Article 28 is the page's Gauss mode: twelve declinations of the northern limit of Pallas's zodiac at every 30° of right ascension, split into three periods of four and into four periods of three. Article 27 says the split extends to three or more factors and that practice will teach whoever tries it ("praxis tentantem docebit"); article 41 works Juno's equation of the centre from 36 values with the eccentricity 0.254236. The editor's note calls the text a reworking of a draft apparently begun in October 1805: C. F. Gauss, Theoria interpolationis methodo nova tractata (Nachlass). Werke, Band III, Königliche Gesellschaft der Wissenschaften, Göttingen, 1866; second printing 1876, where the treatise begins on p. 265 and arts. 25–28 are on pp. 303–310.
- The paper that showed Gauss's split is the Cooley–Tukey FFT: the change of index n = N₂n₁ + n₂, k = k₁ + N₁k₂ written as Gauss's procedure, his examples (N = 12 as 4 × 3 and 3 × 4, N = 36 as 6 × 6), the dating to October–November 1805 from the Juno eccentricity and other clues, and what the manuscript does not contain: "Gauss did not, however, go on to quantify the computational requirements of his method": M. T. Heideman, D. H. Johnson and C. S. Burrus, Gauss and the history of the fast Fourier transform. IEEE ASSP Magazine 1(4), 14–21 (October 1984). doi:10.1109/MASSP.1984.1162257
- The paper that made the FFT standard: the split N = r₁r₂ with T = N(r₁ + r₂) operations, its repetition to T = N(r₁ + … + r_m), the radix-2 form with bit-reversed order, and the count of N² operations for the direct sum against fewer than 2N log₂N, where an operation is a complex multiplication followed by a complex addition: J. W. Cooley and J. W. Tukey, An algorithm for the machine calculation of complex Fourier series. Mathematics of Computation 19(90), 297–301 (1965). doi:10.1090/S0025-5718-1965-0178586-1