Lição
A teoria — A Transformada Rápida de Fourier
A transformada rápida de Fourier (FFT) é qualquer algoritmo que calcula a transformada discreta de Fourier X[k] = Σ x[n] Wkn, W = e−2πi/N, de forma exata a não ser pelo arredondamento, em cerca de N log N operações em vez de N². A forma de Cooley-Tukey fatora N = N1N2: N2 transformadas intercaladas de comprimento N1, cada saída k1 da transformada n2 multiplicada pelo seu próprio fator de rotação Wn2k1, e de seguida N1 transformadas de comprimento N2 transversalmente. Aplicado repetidamente a N = 2m obtemos a FFT de base 2: m etapas de N/2 borboletas.
O que significa cada símbolo
N- o número de amostras, e de frequências calculadas
W- a raiz da unidade e−2πi/N; as suas potências são os fatores de rotação
m- log2N, o número de etapas de uma FFT de base 2
Problema resolvido na íntegra
-
O outro exemplo de Gauss: Juno, 36 valores 4 passos
O artigo 41 do manuscrito de Gauss interpola a equação do centro de Juno a partir de 36 valores, um a cada 10°, divididos como 6 × 6. Pela contagem de Cooley e Tukey, quanto trabalho exige a soma direta, quanto poupa a divisão de Gauss, e poderia uma divisão mais fina fazer melhor? Pressione Gauss, 3 períodos de 4 primeiro: a página conta da mesma forma para doze valores.
Abrir este problema na ferramenta
-
A soma direta, uma operação por amostra por frequência:
-
A divisão de Gauss, seis períodos de seis: a contagem em dois passos de Cooley e Tukey é N vezes a soma dos fatores.
-
Divisão até ao limite, 36 = 2 × 2 × 3 × 3:
-
A regra de Cooley e Tukey: um fator r = st com s, t > 1 tem sempre s + t < r, a menos que s = t = 2:
Resposta
1.296 operações diretas, 432 com a divisão 6 × 6 de Gauss, 360 dividindo até ao limite. A divisão de Gauss já faz três vezes menos trabalho, e a divisão mais fina poupa mais um sexto do que resta. Os doze valores da página seguem a mesma via: 144 diretas e 84 divididas, ou 12 × (2 + 2 + 3) = 84 novamente até ao limite, porque um fator de 4 dividido em 2 × 2 custa o mesmo.
-
Percurso de aprendizagem
A transformada de Fourier na prática
Referências (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