Vous êtes sur la page 1sur 9

5.

Teorie Fourier în domeniul discret

5.1 Introducere

Semnalele analogice f(t), periodice cu perioada T, puteau fi reprezentate printr-o serie Fourier de forma:

f t  c k exp jk 0 t  (5.1.1)
k  

unde
1
f  t  exp  jk 0 t  dt
T /2
ck 
T  T / 2
(5.2.2a)
sau
1
 f  t  exp  jk t  dt
T
ck  0 (5.2.2b)
T 0

cu
 0  2 / T (5.1.3)

De asemenea, semnalele neperiodice f(t) aveau Transformata Fourier corespunzatoare:



F     f  t  exp jt  dt (5.1.4)


In cazul seriilor Fourier, evaluarea expresiilor integrale 5.1.2, care defineau coeficientii c k , se efectuau
in mod obisnuit folosind tehnici numerice, putand fi astfel implementate pe calculatoare digitale. Intrucat
calculatoarele nu pot lucra decat cu valori discrete pentru variabila t, integrala din formulele 5.1.2 trebuie
aproximata printr-o suma. De asemenea, expresia 5.1.1 trebuie evaluata numai asupra unui numar finit de
termeni, folosindu-se in acest scop suma partiala de ordinul n

n
fn t  c k exp jk 0 t  (5.1.5)
k  n
pentru aproximarea functiei.
In cazul transformatei Fourier 5.1.4, integrala trebuie evaluata intre niste limite finite si, de asemenea, va
trebui aproximata prinr-o suma, pentru a fi putea fi implementata numeric.
5.2 Functii periodice

Consideram un semnal f((t), periodic cu perioada T , impartita in N intervale egale, fiecare de durata
T0 , astfel incat
T0  T / N (5.2.1)
Consideram valorile functiei f(t) la momentele de timp 0, T0 ,2T0 ,3T0 ,....,  N  1T0 , valori numite si
esantioane. Cu aceste esantioane se formeaza o secventa

def
 f  mT0    f  0 , f  T0  , f  2T0  ,...., f   N  1T0  (5.2.2)

care poate fi scrisa si in forma alternativa


def
 f  m    f  0 , f 1 , f  2 ,...., f  N  1 (5.2.3)

unde {f(m)} denota o secventa f(m) pentru toate valorile lui m intr 0 si N-1, iar f(m) (fara acolade)
reprezinta al m-lea esantion al f(t).

S-a format astfel o functie de variabila timp discreta (mT 0), care este definita doar in aceste puncte si
care este cunoscuta generic sub numele de secventa. Folosindu-se aceasta secventa, formula integrala 5.1.2
poate fi aproximata printr-o suma, efectuand urmatoarele inlocuiri:
N 1
f  t    f  mT0  ,
T
dt  T0 , T  NT0 , t  mT0 cu m  0,1,2...( N  1),   (5.2.4)
0
m0
astfel incat expresiile coeficientilor Fourier devin

N 1
1
ck 
NT0
 f  mT  exp  jk T
m 0
0 0 0 (5.2.5)

sau
1 N 1
 2km 
ck 
N
 f  m exp  j
m0 N 
 (5.2.6)

 2 
Pentru simplificarea expresiei, se poate folosi notatia W N  exp j  (5.2.7), astfel incat formula
 N 
5.2.6 devine
N 1
1
ck 
N
 f  m W
m 0
 km
N (5.2.8)

De asemenea, folosind 5.2.7 in 5.1.1, se obtine expresia functiei f(t) in punctele discrete (mT0)

f  m  c W k
km
N (5.2.9)
k  

 iN  k  m
Observand ca W NN  1 (5.2.10), respectiv W N  W Nkm (5.2.11) pentru i intreg, suma 5.2.9 poate fi
scrisa ca o suma de sume de forma


 N 1   iN  k  m N 1   
f  m     c iN  k W N     ciN  k W Nmk (5.2.12)
i   k  0  k  0  i   
Formula 5.2.12 poate fi simplificata in continuare prin utilizarea asa-numitilor pseudo-coeficienti

Fourier ĉ k  c iN  k (5.2.13), ale caror expresii sunt periodice cu perioada N  cˆ k  cˆ k iN  . Expresia
i  

5.2.12 ia astfel forma


N 1
f  m    cˆk W Nmk (5.2.14)
k 0

Din aceasta formula se pot obtine valorile functiei f(t) in punctele de esantionare
0, T0 ,2T0 ,3T0 ,....,  N  1T0 prin simpla inlocuire a lui m cu 0,1,2……N-1, formandu-se astfel un sistem
de N ecuatii, in care cele N necunoscute sunt pseudocoeficientii ĉ k , k=0,1,…,N-1.

f  0   cˆ0  cˆ1  cˆ 2  ....  cˆ N 1


f 1  cˆ0  cˆ1W N  cˆ 2W N2  ....  cˆ N 1W NN 1
f  2   cˆ0  cˆ1W N2  cˆ 2W N22  ....  cˆ N 1W N N 1 2 (5.2.15)
  
f  N  1  cˆ0  cˆ1W NN 1  cˆ 2W N2  N 1  ....  cˆ N 1W N N 1
2

In foma matriceala, sistemul de mai sus devine:

1 1  1  1   cˆ0 
 f  0  
 f 1  1 W N  W Nk  W NN 1   cˆ1 
  1 W N2  W 2k
 W N2 N 1    
 f  2    N
  (5.2.16)
  1 W N
3
 W 3k
N  W N3 N 1   cˆ k 
           
 f  N  1    N 1  N 1 k 2  
1 W N  WN  W N N 1  cˆ N 1 

sau mai compact

 f   W N  cˆ (5.2.17)

Pentru determinarea coeficientilor ĉ k este necesara rezolvarea acestui sistem. Formula care va rezulta
din aceasta operatie va fi (fara demonstratie)

N 1
1
cˆk 
N
 f  m W
m 0
 km
N (5.2.18)
5.3 Functii neperiodice

(Subcapitol in constructie … si asa va ramane)


5.4 Transformata Fourier Discreta

Consideram o secventa de numere periodica cu perioada N:

 f  n    f  0 , f 1 , f  2 ,...., f  N  1 (5.4.1)

Se defineste Transformata Fourier Discreta (TFD) a secventei {f(n)} o alta secventa periodica cu aceeasi
perioada N
 F  k    F (0), F (1), F (2)....F (k )....F ( N  1) (5.4.2)
obtinuta din f(n) pe baza formulei

N 1
F ( k )   f ( n)W N nk (5.4.3)
n0

in care W N  exp j 2 / N  (5.4.4)

De asemenea, dandu-se secventa {F(k)}, se poate determina {f(n)} ca Transformata Fourier Discreta
Inversa (TFDI) a acestei secvente, pe baza formulei

N 1
1
f ( n) 
N
 F (k )W
k 0
kn
N (5.4.5)

Expresiile 5.4.3 respectiv 5.4.5 formeaza o pereche identica ca forma cu perechea formata din expresiile
5.2.14 respectiv 5.2.18, si se poate demonstra ca aplicarea 5.4.3 asupra unei secvente {f(n)}, urmata de
aplicarea 5.4.5 asupra secventei rezultate va avea ca rezultat obtinerea secventei originale f(n). La fel si
aplicarea 5.4.5 urmata de 4.4.3 asupra unei secvente {F(k)} va conduce la obtinerea aceleiasi secvente
{F(k)}.

4.4.1 Proprietati ale Transformatei Fourier Discrete

- Liniaritatea

Date fiind două secvenţe periodice de perioadă N, x p(n) respectiv yp(n), cu transformatele Fourier
discrete Xp(k) respectiv Yp(k), transformata Fourier discretă a unei combinaţii liniare a celor două semnale
va fi dată de formula:

TFD { axp(n) + byp(n) } = aXp(k) + bYp(k)

O interpretare fizică a acestei proprietăţi: o combinaţie liniară de semnale de bandă limitată este de
asemenea un semnal de bandă limitată.

- Deplasarea ciclică în timp şi frecvenţă

Fie secvenţa finită x(n), n = 0,1,2,3,... N şi secvenţa obţinută prin periodicizarea ei x p(n), cu transformata
Fourier discretă Xp(k). Secvenţa xp(n-m) va avea transformata Fourier discretă:

TFD x p  n  m   Xp k   e  j  2 / N  mk
respectiv:
TFDI  Xp k  m   x p  n   e j  2 / N  mk
- Inversiunea temporală

TFD x  n   X   k   X  N  k 

- Transformata Fourier discretă a secvenţelor complex conjugate

Fie o secvenţă periodică xp(n) respectiv transformata sa Fourier Xp(k).Între conjugatele complexe ale
celor două funcţii x*p(n) respectiv X*p(k), există relaţia:

 
TFD x *p  n   X *p   k   X *p  N  k 

- Convoluţia ciclică

Fie xp(n) respectiv hp(n) două secvenţe periodice cu perioada N, respectiv transformatele Fourier
Discrete ale celor două funcţii:

N 1 N 1
Xp  k    x p  n  e  j  2 / N  nk Hp k    h p  n  e  j  2 / N  nk
n0 n 0

Se defineşte funcţia y(n) ca fiind produsul de convoluţie ciclică a celor două funcţii:

N 1
y p  n   x p  m h p  n  m
m0

Transformata Fourier discretă a funcţiei y(n) va putea fi obţinută din relaţia:

TFD y p  n   Yp  k   Xp k  Hp k 

- Alte proprietăţi ale Transformatei Fourier discrete

N 1
1
TFD x( n) y (n)   X (k )Y (k )
N k 0

N 1
1
TFD x (n) y * (n)   X (k )Y * (k )
N k 0

N 1 N 1 2
1
 
2
x ( n)  X (k )
n 0 N k 0
5.5 Transformata Fourier Rapidă (TFR)

Expresiile 5.4.3 respectiv 5.4.5 defineau Transformata Fourier Discreta (TFD), respectiv Transformata
Fourier Discreta Inversa (TFDI).
Expresia 5.4.3 poate fi scrisa sub forma matriceala astfel

1 1 1  1 
 F (0)   1   f ( 0) 
 F (1)  1 W N W N 2  W N
 ( N 1)
  f (1) 
   1 W  2 W N 4  W  2 ( N 1)
  (5.5.1)
   
N N
   
        
 F ( N  1) 1 W ( N 1) W 1  WN ( N 1) 2   f ( N  1) 
 N N 
sau mai compact
[ F ]  [Wˆ N ][ f ] (5.5.2)

Similar, expresia 4.4.5 poate fi pusa sub forma

[ f ]  [W N ][ F ] (5.5.3)

unde [W N ] se poate obtine din [Wˆ N ] prin inlocuirea termenilor W N k cu W Nk . Pentru generalitate se
poate considera ca termenii celor doua secvente sunt numere complexe.

In mod normal, rezolvarea sistemelor 5.5.2 respectiv 5.5.3 implica N(N-1) operatii de inmultire si acelasi
numar de operatii de adunare, ceea ce inseamna ca este o problema de complexitate N 2 . Orice algoritm
care reduce acest numar de calcule se considera a fi un algoritm TFR. Ca o observatie se poate mentiona
faptul ca un algoritm eficient de calcul al TFD poate fi aplicat si pentru TFDI, intrucat formulele de calcul
pentru TFD si TFDI sunt identice, diferind doar coeficientii din matrice.

Exista algoritmi TFR optimizati pentru diferite valori particulare ale lui N. Astfel, in cazul in care N este
putere a lui 2, exista algoritmii de decimare in timp, respectiv decimare in frecventa, care reduc
complexitatea problemei la NlogN. Exista de asemenea algoritmi TFR pentru N numar prim, pentru N
numar compus, etc.

In continuare vor fi studiati algoritmii de decimare in timp, respectiv decimare in frecventa.

4.5.1 Algoritmul de Decimare in Timp

Pornind de la expresia 5.4.3, de calcul a valorilor F(k), presupunand ca N este putere a lui 2, se recurge
la separarea sumei din formula in doua sume, una pentru valori pare ale lui n, una pentru valori impare,
astfel:
N / 2 1 N / 2 1
F (k )  
n0
f ( 2n)W N 2 nk   f (2n  1)W
n0
  2 n 1 k
N (5.5.1.1)

 ( n _ mN )( k _ lN )
Se poate arata simplu ca WN  W N nk (5.5.1.2). Indicele N reprezinta periodicitatea operatorului
W N nk , element cheie in obtinerea algoritmului TFR.
De asemenea se poate observa ca:

W N2  exp(  j (2 / N )) 2  exp( j (2 ) /( N / 2))  W N / 2 (5.5.1.3)


astfel incat expresia 5.5.1.1 poate fi adusa la forma
N / 2 1 N / 2 1
F (k )  
n 0
f ( 2n)W N nk k
/ 2  WN  f (2n  1)W
n 0
 nk
N /2 (5.5.1.4)

sau
N / 2 1 N / 2 1
F (k )  n 0
f 0 (n)W N nk k
/ 2  WN f
n 0
1 (n)W N nk k
/ 2  F1 ( k )  W N F2 ( k ) (5.5.1.5)

unde F0 (k ) respectiv F1 ( k ) sunt transformatele in N/2 puncte ale secventelor f 0(n)=f(2n) respectiv
f1(n)=f(2n+1). Deoarece F(k) este definita pe intervalul 0<=k<=N-1, iar F0 (k ) si F1 ( k ) pe intervalul
0<=k<=N/2-1, este necesar sa se stabileasca o regula de interpretare a relatiei 5.5.1.5 pentru valori ale lui k
cuprinse intre N/2 si N-1.
 ( k  N / 2)
Deoarece F0 (k  N / 2)  F0 (k ) , F1 (k  N / 2)  F1 (k ) si W N  W N k , relatia 5.5.1.5 este
echivalenta cu
 F0 (k )  WN k F1 (k ) pentru k  0,1...N/2 - 1
F (k )   k
(5.5.1.6)
 F0 (k  N / 2)  WN F1 (k  N / 2) pentru k  N / 2...N - 1

Presupunand ca F0 (k ) respectiv F1 ( k ) sunt deja cunoscute pentru fiecare k de la 0 la N/2-1, calculul


k
TFD in N puncte cu ajutorul relatiei 5.5.1.6 necesita N adunari de numere complexe. Termenul W N F2 (k )
este calculat o singura data pentru fiecare k, asa incat la acest pas sunt necesare doar N/2 inmultiri complexe.

Pentru calculul c respectiv F1 ( k ) dupa formulele TFD, se recurge din nou la impartirea sumelor in cate
doua sume fiecare. Astfel
N / 2 1 N / 4 1 N / 4 1
F0 (k )  f
n 0
0 (n)W N nk
/2  f
n 0
0 ( 2n)W N 2/ 2nk  f
n 0
0 (2n  1)W N/ 22n 1 k 
N / 4 1 N / 4 1
(5.5.1.7)
 f
n 0
00 (n)W  nk
N /4 W k
N /2 f
n 0
01 (n)W  nk
N /4  F00 (k )  W k
N /2 F01 (k )

Se va obtine pentru F0 (k ) expresia

 F (k )  W N2 k F01 (k ) pentru k  0,1...N/4 - 1


F0 (k )   00 2 k
(5.5.1.8)
F
 00 ( k  N / 4)  W N F01 ( k  N / 4 ) pentru k  N / 4...N/2 - 1
Transformata F1 ( k ) se calculeaza similar.
Pentru calculul F1 ( k ) sunt necesare N/2 adunari si N/4 inmultiri de numere complexe. Prin urmare,
calculul F0 (k ) respectiv F1 ( k ) necesita in total N adunari si N/2 inmultiri complexe, la fel ca in cazul
primei etape. Acest proces de separare a sumelor poate continua pana cand se ajunge la necesitatea calcularii
TFD intr-un singur punct. Parcurgand procedura stabilita, la fiecare pas numarul de TFD ce trebuie calculate
se dubleaza, dar numarul punctelor pentru fiecare TFD scade la jumatate. La fiecare astfel de etapa, numarul
adunarilor complexe necesare este N, iar numarul inmultirilor complexe N/2. Deoarece N este putere a lui 2,
numarul total de trepte care trebuiesc parcursa este log2N, ceea ce face ca numarul total de adunari complexe
sa fie Nlog2N, iar numarul de inmultiri complexe (N/2)log2N.

4.5.2 Algoritmul de decimare in frecventa

Un alt algoritm pentru calculul TFR consta in a conserva ordinea initiala a datelor de intrare, f(n), si de a
obtine secventa de iesire in ordinea binara inversata. Se considera in continuare ca numerul de puncte din
care este formata secventa de intrare este putere a lui 2, si se rescrie relatia 5.4.3 grupand termenii sai in
doua sume, formate cu prima, respectiv a doua jumatate a secventei f(n):
  f ( n)  W 
N / 2 1 N 1 N / 2 1
F (k )  
n 0
f ( n)W N nk  
n N / 2
f ( n)W N nk 
n0
 kN / 2
N f (n  N / 2) W N nk k  0,1...N  1

(5.5.2.1)

Intrucat W N kN / 2  (1) k , relatia 5.5.2.1 are forme distincte dupa cum k este par, respectiv impar

N / 2 1
F (2k )    f (n)  f (n  N / 2)W
n 0
 nk
N /2 k  0,1...N / 2  1 (5.5.2.2a)
N / 2 1
F (2k  1)    f (n)  f (n  N / 2)W
n 0
n
NW N nk
/2 k  0,1...N / 2  1 (5.5.2.2b)

unde F(2k) este transformata Fourier in N/2 puncte a secventei temporale

f 0 ( n)  f (n)  f ( n  N / 2) n = 0,1…N/2-1 (5.5.2.3)

iar secv enta F(2k+1) este transformata Fourier in N/2 puncte a secventei temporale

f 1 ( n)   f (n)  f (n  N / 2)W N n n = 0,1…N/2-1 (5.5.2.4)

Procedeul poate fi folosit in continuare pana cand se ajunge la calculul transformatei intr-un singur
punct, fiecare etapa de calcul necesitand N adunari de numere complexe, respectiv N/2 inmultiri. Existand
log2N pasi pentru acest algoritm, numarul de adunari complexe va fi Nlog 2N, iar numarul de inmultiri va fi
(N/2)log2N.

Vous aimerez peut-être aussi