Trasformata discreta di Fourier

Da testwiki.
Versione del 13 mar 2025 alle 01:31 di imported>FrescoBot (Bot: numeri di pagina nei template citazione)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Vai alla navigazione Vai alla ricerca

In matematica, in particolare nell'analisi di Fourier, la trasformata discreta di Fourier, anche detta DFT (acronimo del termine inglese Discrete Fourier Transform), è un particolare tipo di trasformata di Fourier. Si tratta anche di un caso particolare della trasformata zeta.

Si tratta di una trasformata che converte una collezione finita di campioni equispaziati di una funzione in una collezione di coefficienti di una combinazione lineare di sinusoidi complesse, ordinate al crescere della frequenza. Analogamente alla trasformata di Fourier, si tratta di un modo per rappresentare una funzione (la cui variabile è spesso il tempo) nel dominio delle frequenze. Le frequenze delle sinusoidi della combinazione lineare (periodica) prodotta dalla trasformata sono multipli interi di una frequenza fondamentale, il cui periodo è la lunghezza dell'intero intervallo di campionamento, la durata del segnale.

Si differenzia dalla trasformata di Fourier a tempo discreto per il fatto che la funzione in ingresso e la funzione prodotta sono successioni finite, e può essere quindi considerata come una trasformata per l'analisi di Fourier di funzioni su un dominio limitato e discreto.

Diversamente dalla trasformata continua di Fourier, pertanto, la DFT richiede in ingresso una funzione discreta i cui valori sono in generale complessi e non nulli, e hanno una durata limitata. Questo rende la DFT ideale per l'elaborazione di informazioni su un elaboratore elettronico. In particolare la trasformata discreta di Fourier è ampiamente utilizzata nel campo dell'elaborazione numerica dei segnali e nei campi correlati per analizzare le frequenze contenute in un segnale, per risolvere equazioni differenziali alle derivate parziali e per compiere altre operazioni, come la convoluzione o la moltiplicazione di numeri interi molto grandi. Alla base di questi utilizzi c'è la possibilità di calcolare in modo efficiente la DFT usando gli algoritmi per trasformata di Fourier veloce.

Definizione

La successione di N numeri complessi x0,x1,,xN1 è trasformata nella successione di N numeri complessi X0,X1,,XN1 dalla trasformata discreta di Fourier secondo la formula:[1]

Xk=n=0N1xne2πiNkn,k=0,,N1,

dove i è l'unità immaginaria e e2πiN è una radice dell'unità primitiva N-esima. La trasformata è spesso rappresentata dal simbolo , usato come 𝐗={𝐱} o (𝐱) o 𝐱.

La trasformata discreta di Fourier descrive completamente la trasformata di Fourier a tempo discreto (DTFT) di una successione periodica con periodo N, che possiede uno spettro di frequenze discreto. Inoltre, fornisce campioni equidistanti di lunghezza finita della DTFT. Si tratta della correlazione incrociata della successione in ingresso e la sinusoide complessa di frequenza k/N.

Si tratta inoltre dell'analogo discreto della formula per i coefficienti della serie di Fourier, che è inversa della trasformata di Fourier discreta (abbreviata talvolta in IDFT, da Inverse Discrete Fourier Transform):

xn=1Nk=0N1Xke2πiNkn,n=0,,N1.

Una descrizione semplice di queste equazioni è che i numeri complessi Xk rappresentano l'ampiezza e la fase di diverse componenti sinusoidali del segnale in ingresso xn. La DFT calcola gli Xk dati gli xn, mentre la IDFT calcola gli xn come somma delle componenti sinusoidali (1/N)Xke2πiNkn di frequenza k/N cicli per campione. Scrivendo le equazioni in questa forma, si utilizza la formula di Eulero per esprimere le sinusoidi in termini di esponenziali complessi, che sono più semplici da manipolare. Esprimendo gli Xk in forma polare, si può così ottenere l'ampiezza delle sinusoidi Ak e la fase ϕk da modulo e argomento di Xk, rispettivamente:

Ak=|Xk|=Re(Xk)2+Im(Xk)2,φk=arg(Xk)=atan2(Im(Xk),Re(Xk)).

Si noti che i fattori di normalizzazione che moltiplicano DFT e IDFT (qui 1 e 1/N) e i segni degli esponenti sono delle convenzioni e possono essere differenti in alcuni testi. Gli unici requisiti di queste convenzioni sono che DFT e IDFT devono avere esponenti di segno opposto e che il prodotto dei fattori deve essere 1/N. Un fattore di normalizzazione 1/N sia per DFT che per IDFT rende le trasformate unitarie, il che ha alcuni vantaggi nella trattazione teorica, tuttavia è spesso più pratico nelle operazioni numeriche effettuare le normalizzazioni un'unica volta come nelle espressioni qui esposte.

È da notare che la trasformata discreta di Fourier è direttamente implementabile su un calcolatore, in quanto richiede un numero finito di operazioni, al contrario della serie o della trasformata di Fourier che richiedono il calcolo di integrali o di somme di serie. Tuttavia, il calcolo della DFT non viene comunque mai implementato secondo la definizione qui data, ma si preferisce utilizzare algoritmi ottimizzati che richiedono uno sforzo computazionale minore. Il tempo di calcolo necessario per la DFT con la definizione qui data è direttamente proporzionale ad N2, per gli algoritmi ottimizzati (denominati trasformata di Fourier veloce, o in inglese FFT (da Fast Fourier Transform) è proporzionale a Nlog2(N), e quindi il vantaggio nell'utilizzarli è tanto maggiore quanto più grande è N.

La DFT può anche essere espressa in forma matriciale attraverso la cosiddetta matrice di Fourier. Inoltre, può essere generalizzata consentendo traslazioni nel tempo di un fattore a e/o in frequenza di un fattore b. In tal caso viene detta DFT generalizzata o GDFT (generalized DFT), e condivide le stesse proprietà della DFT tradizionale:

Xk=n=0N1xne2πiN(k+b)(n+a),k=0,,N1.

Spesso si usa traslare di un fattore 1/2, ottenendo ad esempio per a=1/2 un segnale che è antiperiodico nel dominio della frequenza, cioè Xk+N=Xk.

Trasformata in più dimensioni

La trasformata discreta di Fourier di un vettore xn1,n2,,nd funzione di d variabili discrete n=0,1,,N1, con {1,2,,d}, è definita come:

Xk1,k2,,kd=n1=0N11(ωN1k1n1n2=0N21(ωN2k2n2nd=0Nd1ωNdkdndxn1,n2,,nd))

dove ωN=exp(2πi/N). In modo più compatto, definendo 𝐧=(n1,n2,,nd) e 𝐤=(k1,k2,,kd) come vettori d-dimensionali con indice che va da 0 a 𝐍1, dove:

𝐍1=(N11,N21,,Nd1)

si ha:

X𝐤=𝐧=0𝐍1e2πi𝐤(𝐧/𝐍)x𝐧,

dove la divisione 𝐧/𝐍 è 𝐧/𝐍=(n1/N1,,nd/Nd).

La trasformata inversa è, analogamente al caso unidimensionale:

x𝐧=1=1dN𝐤=0𝐍1e2πi𝐧(𝐤/𝐍)X𝐤.

La trasformata discreta di Fourier in più dimensioni esprime l'ingresso come una combinazione lineare di onde piane, o sinusoidi multidimensionali, la cui direzione di oscillazione nello spazio è 𝐤/𝐍 e l'ampiezza X𝐤.

Proprietà

La trasformata discreta di Fourier è una trasformazione lineare invertibile :NN che gode delle proprietà esposte nel seguito.

Ortogonalità

I vettori uk=[e2πiNkn|n=0,1,,N1]T formano una base ortogonale sull'insieme dei vettori complessi di dimensione N:

ukTuk*=n=0N1(e2πiNkn)(e2πiN(k)n)=n=0N1e2πiN(kk)n=Nδkk,

dove δkk è il delta di Kronecker. Tale condizione consente di ricavare la formula per la IDFT dalla definizione di DFT.

Teoremi di Plancherel e Parseval

Template:Vedi anche Se Xk e Yk sono le trasformate discrete di Fourier di xn e yn il teorema di Plancherel afferma che:

n=0N1xnyn*=1Nk=0N1XkYk*,

dove l'asterisco denota la coniugazione complessa. Il teorema di Parseval è un caso particolare del teorema di Plancherel:

n=0N1|xn|2=1Nk=0N1|Xk|2.

Periodicità

Se si valuta la definizione di DFT per tutti gli interi k invece che per k=0,,N1 la successione infinita che ne risulta è un'estensione periodica con periodo N della DFT. La periodicità può essere mostrata come segue:

Xk+N =def n=0N1xne2πiN(k+N)n=n=0N1xne2πiNkne2πin1=n=0N1xne2πiNkn=Xk.

In modo analogo si estende periodicamente la trasformata discreta inversa.

Traslazione

Moltiplicando la successione xn per una fase lineare e2πiNnm, con m intero, si ottiene la traslazione circolare della trasformata Xk. Analogamente, la traslazione circolare di xn corrisponde alla moltiplicazione di Xk per una fase lineare. Esplicitamente, se

({xn})k=Xk,

allora:

({xne2πiNnm})k=Xkm,({xnm})k=Xke2πiNkm.

Convoluzione circolare e correlazione incrociata

Template:Vedi anche Il teorema di convoluzione per la trasformata di Fourier a tempo discreto mostra come la convoluzione di due successioni infinite possa essere vista come la trasformazione inversa del prodotto delle singole trasformate. Se le successioni hanno lunghezza finita N si ha:

1{𝐗𝐘}n =l=0N1xl(yN)nl  =def  (𝐱*𝐲𝐍)n.

Si tratta della convoluzione della successione 𝐱 con una successione 𝐲 estesa tramite sommazione periodica:

(𝐲𝐍)n =def p=y(npN)=yn(modN).

In modo analogo, la correlazione incrociata di 𝐱 e 𝐲𝐍 è data da:

1{𝐗*𝐘}n=l=0N1xl*(yN)n+l  =def  (𝐱𝐲𝐍)n.

La valutazione diretta di entrambe le somme richiede O(N2) operazioni per una sequenza in uscita lunga N.

Inoltre, si mostra che:

{𝐱𝐲}k =defn=0N1xnyne2πiNkn=1N(𝐗*𝐘𝐍)k.

Si tratta della convoluzione circolare di 𝐗 e 𝐘.

Inoltre, anche il viceversa è vero:[2] una trasformata che cambia convoluzione in prodotto ordinario è la trasformata di Fourier (con permutazione dei coefficienti).

DFT unitaria

La DFT può essere espressa come una matrice di Vandermonde:

𝐅=[ωN00ωN01ωN0(N1)ωN10ωN11ωN1(N1)ωN(N1)0ωN(N1)1ωN(N1)(N1)]

dove:

ωN=e2πi/N.

La trasformata inversa è data dalla matrice inversa:

𝐅1=1N𝐅*.

La DFT diventa una trasformazione unitaria utilizzando coefficienti di normalizzazione uguale a 1/N. La DFT unitaria è così definita dalla matrice unitaria:

𝐔=𝐅/N,𝐔1=𝐔*,|det(𝐔)|=1.

Il determinante è il prodotto degli autovalori, che sono sempre ±1 e ±i.

L'ortogonalità della DFT, menzionata in precedenza, può essere quindi anche espressa attraverso la condizione di ortonormalità:

m=0N1UkmUmn*=δkn.

Se inoltre 𝐗 è definita come la DFT unitaria di 𝐱 allora:

Xk=n=0N1Uknxn

ed il teorema di Plancherel può essere quindi anche espresso come:

n=0N1xnyn*=k=0N1XkYk*.

Se si visualizza la DFT come una trasformazione di coordinate che si limita a determinare le componenti di un vettore in un nuovo sistema di coordinate, la precedente relazione mostra come il prodotto scalare di due vettori si conserva sotto una DFT unitaria. Nel caso in cui 𝐱=𝐲 ciò implica che la lunghezza di un vettore non cambia, in accordo con il teorema di Parseval:

n=0N1|xn|2=k=0N1|Xk|2.

Autovettori e autovalori

Template:Vedi anche Si consideri la trasformazione unitaria 𝐔 definita in precedenza per la DFT di lunghezza N:

𝐔m,n=1NωN(m1)(n1)=1Ne2πiN(m1)(n1).

La matrice associata soddisfa l'equazione:

𝐔4=𝐈,

che può essere mostrata considerando che facendo agire 𝐔 quattro volte si ottiene il dato iniziale. Da questo segue che gli autovalori λ soddisfano l'equazione:

λ4=1.

Quindi, gli autovalori di 𝐔 sono le radici quarte dell'unità: λ è +1, −1, i, o i. Dal momento che vi sono quattro autovalori distinti per una matrice N×N, essi possiedono una certa molteplicità algebrica. Nella seguente tabella si mostra la molteplicità degli autovalori λ della matrice 𝐔 che rappresenta la DFT unitaria in funzione della lunghezza N della trasformata:

dimensione N λ = +1 λ = −1 λ = -i λ = +i
4m m + 1 m m m − 1
4m + 1 m + 1 m m m
4m + 2 m + 1 m + 1 m m
4m + 3 m + 1 m + 1 m + 1 m

In modo equivalente, il polinomio caratteristico di 𝐔 è:

det(λI𝐔)=(λ1)N+44(λ+1)N+24(λ+i)N+14(λi)N14.

Non si conosce nessuna formula analitica semplice per calcolare gli autovettori, che non sono univoci in quanto ogni combinazione lineare di autovettori associati allo stesso autovalore è un autovettore solo per tale autovalore.

Relazione con la trasformata continua

Template:Vedi anche

In alto: funzione x(t) e sua ripetizione periodica. In basso: trasformata X(ω) di x(t) e sua ripetizione periodica nel dominio delle frequenze. Si nota l'assenza di aliasing in entrambi i casi.

Per mostrare la relazione con la versione continua della trasformata di Fourier si considera una funzione x(t) dotata di trasformata di Fourier X(ω), e si costruiscono le ripetizioni periodiche:

xp(t)=i=+x(tiTp),Xp(ω)=i=+X(ωiωp),

con periodi Tp e ωp legati dalla relazione Tpωp=2πN. Indicando inoltre:

Δt=TpN=2πωp,Δω=ωpN=2πTp,

che soddisfano la relazione ΔtΔω=2πN, si definiscono le due n-ple di numeri:

Δtxp(nΔt),n=0,1,,N1,Xp(qΔω),q=0,1,,N1.

Valgono allora le seguenti uguaglianze:

Δtxp(nΔt)=d1(Xp(qΔω)),Xp(qΔω)=d(Δtxp(nΔt)).

Se non vi è sovrapposizione né nel dominio dei tempi né in quello delle frequenze, è possibile ricavare la trasformata continua da quella discreta.

Note

Bibliografia

Voci correlate

Altri progetti

Template:Interprogetto

Collegamenti esterni

Template:Portale