Calcul Récursif de la Transformée de Fourier Rapide
Transformation dune séquence dun nombre N pair déchantillons
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Séparation deux séquences déchantillons de numéro pair et impair x o,N/2 (t) x i,N/2 (t)
Calcul de la T. F. des échantillons de numéro pair (taille N/2) x o,N/2 (t) x i,N/2 (t) (récursivité; arrêt pour N=1 : X 1 (0)=x 1 (0)) X o,N/2 (k) T.F. taille N/2
Calcul de la T. F. des échantillons de numéro impair (taille N/2) x o,N/2 (t) x i,N/2 (t) X o,N/2 (k) X i,N/2 (k) T.F. taille N/2 (récursivité) T.F. taille N/2 T.F. taille N/2
Multiplication des échantillons X i,N/2 (k) (taille N/2) x o,N/2 (t) x i,N/2 (t) X o,N/2 (k) X i,N/2 (k) x k, exp(-2 j/N) T.F. taille N/2 T.F. taille N/2 T.F. taille N/2
0 Obtention par addition des N/2 premiers termes de X N (k) (taille N) x o,N/2 (t) x i,N/2 (t) X o,N/2 (k) X i,N/2 (k) XN(k)XN(k) + + T.F. taille N/2 T.F. taille N/2 T.F. taille N/2 x k, exp(-2 j/N)
0 1 Obtention par addition des N/2 premiers termes de X N (k) (taille N) x o,N/2 (t) x i,N/2 (t) X o,N/2 (k) X i,N/2 (k) XN(k)XN(k) T.F. taille N/2 T.F. taille N/2 T.F. taille N/2 x k, exp(-2 j/N)
0 1 N/2-1 Obtention par addition des N/2 premiers termes de X N (k) (taille N) x o,N/2 (t) x i,N/2 (t) X o,N/2 (k) X i,N/2 (k) XN(k)XN(k) T.F. taille N/2 T.F. taille N/2 T.F. taille N/2 x k, exp(-2 j/N)
0 1 Obtention par soustraction des N/2 derniers termes de X N (k) (taille N) x o,N/2 (t) x i,N/2 (t) X o,N/2 (k) X i,N/2 (k) XN(k)XN(k) T.F. taille N/2 T.F. taille N/2 T.F. taille N/2 N/2-1 N/2 x k, exp(-2 j/N)
Obtention par soustraction des N/2 derniers termes de X N (k) (taille N) x o,N/2 (t) x i,N/2 (t) X o,N/2 (k) X i,N/2 (k) XN(k)XN(k) T.F. taille N/2 T.F. taille N/2 T.F. taille N/2 N/2 N-1 N/ x k, exp(-2 j/N)
x o,N/2 (t) x i,N/2 (t) X o,N/2 (k) X i,N/2 (k) XN(k)XN(k) N/2 N-1 0 N/ N/2 N-1 N/2-1 0 x k, exp(-2 j/N) N log 2 N étapesN/2 multiplications par étape
Calcul préalable et mémorisation des k pour les calculs répétitifs (ne pas refaire le calcul des exponentielles sil est déjà fait !) Tenir compte dune éventuelle perte de précision (quelques bits) On peut commencer par effectuer tous les tris en séquences déchantillons de numéros pairs et impairs avant de faire le calcul récursif (bit reversal ) : représentation binaire de t : b 0 b 1 b 2...b m, on range x(t) à ladresse b m...b 2 b 1 b b2b1b0b2b1b0 b0b1b2b0b1b2 b0b1b2b0b1b2
James W.Cooley and John W. Tukey, "An algorithm for the machine calculation of complex Fourierseries," Math. Comput. 19, (1965). Carl FriedrichGauss, "Nachlass: Theoria interpolationis methodo nova tractata," Werke band 3, (Königliche Gesellschaft derWissenschaften, Göttingen, 1866). See also M. T. Heideman, D. H. Johnson, and C. S. Burrus, "Gauss and the history of the fast Fourier transform, » IEEE ASSP Magazine 1 (4), (1984). Références historiques