calcul récursif de la transformée de fourier rapide leroux
TRANSCRIPT
Calcul Récursif de la Transformée de Fourier Rapide
1
0
j 2exp)()(N
t N
kttxkX
http://www.essi.fr/~leroux/
Transformation d’une séquence d’un nombre N pair d’échantillons
)(txN
1,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Séparation deux séquences d’échantillons de numéro pair et impair
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)12/,...,0 Nt
Calcul de la T. F. des échantillons de numéro pair (taille N/2)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
(récursivité; arrêt pour N=1 : X1(0)=x1(0)) Xo,N/2(k)
T.F.taille N/2
12/,...,0 Nt12/,...,0 Nk
Calcul de la T. F. des échantillons de numéro impair (taille N/2)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
Xo,N/2(k)
Xi,N/2(k)
T.F.taille N/2
12/,...,0 Nt12/,...,0 Nk
(récursivité)
T.F.taille N/2
T.F.taille N/2
Multiplication des échantillons Xi,N/2(k) (taille N/2)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
Xo,N/2(k)
Xi,N/2(k) x k, exp(-2j/N)12/,...,0 Nt
12/,...,0 Nk
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 XN(k) (taille N)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
Xo,N/2(k)
Xi,N/2(k)
XN(k)++
12/,...,0 Nt12/,...,0 Nk
T.F.taille N/2
T.F.taille N/2
T.F.taille N/2
x k, exp(-2j/N)
0
1
Obtention par addition des N/2 premiers termes de XN(k) (taille N)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
Xo,N/2(k)
Xi,N/2(k)
XN(k)++++
12/,...,0 Nt12/,...,0 Nk
T.F.taille N/2
T.F.taille N/2
T.F.taille N/2
x k, exp(-2j/N)
0
1
N/2-1
Obtention par addition des N/2 premiers termes de XN(k) (taille N)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
Xo,N/2(k)
Xi,N/2(k)
XN(k)++++++++
12/,...,0 Nt12/,...,0 Nk
T.F.taille N/2
T.F.taille N/2
T.F.taille N/2
x k, exp(-2j/N)
0
1
Obtention par soustraction des N/2 derniers termes de XN(k) (taille N)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
Xo,N/2(k)
Xi,N/2(k)
XN(k)++++++++
+-
12/,...,0 Nt12/,...,0 Nk
1,...,0 Nk
T.F.taille N/2
T.F.taille N/2
T.F.taille N/2
N/2-1
N/2
x k, exp(-2j/N)
Obtention par soustraction des N/2 derniers termes de XN(k) (taille N)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
Xo,N/2(k)
Xi,N/2(k)
XN(k)++++++++
+-
+-
+-
+-
12/,...,0 Nt12/,...,0 Nk
1,...,0 Nk
T.F.taille N/2
T.F.taille N/2
T.F.taille N/2
N/2
N-1
N/2-1
0
1
x k, exp(-2j/N)
)(txN
1,...,0 Nt
xo,N/2(t)
xi,N/2(t)
Xo,N/2(k)
Xi,N/2(k)
XN(k)++++++++
+-
+-
+-
+-
12/,...,0 Nt 12/,...,0 Nk 1,...,0 Nk
0
1
N/2
N-1
0
N/2-1
0
N/2-1
0
N/2-1
0
N/2-1
N/2
N-1
N/2-1
0
N/2-1
x k, exp(-2j/N)
N
log2 N étapes N/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 s’il est déjà fait !)
Tenir compte d’une é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 : b0b1b2...bm, on range x(t) à l’adresse bm...b2b1b0.
000
001
010
011
100
101
110
111
000
001
010
011
100
101
110
111
b2b1b0
b0b1b2
b0b1b2
James W. Cooley and John W. Tukey , "An algorithm for the machine calculation of complex Fourier series ," Math. Comput. 19, 297-301 (1965).
Carl Friedrich Gauss, "Nachlass : Theoria interpolationis methodo nova tractata ," Werke band 3 , 265-327 (Königliche Gesellschaft der Wissenschaften , 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), 14-21 (1984).
http://infopedia.ruv.net/fa/Fast_Fourier_transform.html
Références historiques
http://www.conacyt.mx/secobi/bancos/cyd/pdf/139-70.pdf