P. 1
Dft Properties

Dft Properties

|Views: 0|Likes:
DFT Properties
DFT Properties

Categories:Book Excerpts

See more
See less

09/03/2015

pdf

text

original

PROPERTIES OF THE DFT

1. PRELIMINARIES (a) Deﬁnition (b) The Mod Notation (c) Periodicity of WN (d) A Useful Identity (e) Inverse DFT Proof (f) Circular Shifting (g) Circular Convolution (h) Time-reversal (i) Circular Symmetry 2. PROPERTIES (a) Perodicity property (b) Circular shift property (c) Modulation property (d) Circular convolution property (e) Parseval’s theorem (f) Time-reversal property (g) Complex-conjugation property (h) Real x[n] property (i) Real and circularly symmetric x[n]

I. Selesnick

EL 713 Lecture Notes

1

DFT DEFINITION
The DFT of an N -point signal {x[n], 0 ≤ n ≤ N − 1} is deﬁned as
N −1

X [k ] =
n=0

−kn x[n] WN ,

0≤k ≤N −1

(1)

where WN = ej N = cos

2π N

+ j sin

2π N

is the principal N -th root of unity. The original sequence x[n] can be retrieved by the inverse discrete Fourier transform (IDFT) 1 x[n] = N
N −1 kn X [k ] WN , k=0

0 ≤ n ≤ N − 1.

I. Selesnick

EL 713 Lecture Notes

2

k 4 0 1 2 3 0 1 2 3 .THE MOD NOTATION The notation k N denotes the remainder r when k is divided by N . The following table shows k for values of k from 0 to 7. k 0 1 2 3 4 5 6 7 . We choose the remainder r so that it is between 0 and N − 1. . . . −3 = (−1)(4) + 1 and −6 = (−2)(4) + 2 so −6 4 N ≤N −1 so −3 4 =1 =2 I. For example 3 4 =3 4 and 6 4 = 2. 0≤ k For example. . Selesnick EL 713 Lecture Notes 3 . The notation k N is also deﬁned for negative integers k . This is also denoted as k mod N .

>> [k’. . mod(k. −8 −7 −7 −5 −4 −3 −2 −1 0 1 2 3 4 5 6 7 . . k . . we can generate k the code fragment: >> k=-8:7. as illustrated by 0 1 2 3 0 1 2 3 0 1 2 3 0 1 EL 713 Lecture Notes 4 . . . . Selesnick N using the command mod.The following table shows k 4 for values of k from -8 to 7. . . k . 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 . 4 In MATLAB.4)’] ans = -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 I.

Selesnick EL 713 Lecture Notes 5 .6 7 Evidently k 2 3 N is a periodic function of k with period N : k+N N = k N I.

If we write k as k = l · N + r with 0 ≤ r ≤ N − 1 then we have k k WN = ej N (l·N +r) 2π 2π N = r and = ej N (l·N ) · ej N r r = 1 · WN = WN k N 2π 2π .PERIODICITY OF WN Our deﬁnition of WN is WN := ej N . The identity Therefore WN k WN = WN k N is useful when working with the DFT. k is a periodic function of k with a period of N . A related identity is m·k WN = WN m· k N which is derived as m·k WN = ej N (m)(l·N +r) 2π 2π = ej N (m·l·N ) · ej N m·r m·r = 1 · WN = WN m· k N 2π . Selesnick EL 713 Lecture Notes 6 . I.

Therefore we can simplify the summation further to obtain: N −1 nk WN = n=0 0 N k k N N =0 = 0. recall the geometric summation formula: N −1 a = n=0 k If a = WN . this simpliﬁes to Because WN N −1 nk = WN n=0 n N aN −1 a−1 a=1 a = 1.A USEFUL IDENTITY First. = N N k −1 WN k −1 WN k WN =1 k WN = 1. ±2N. 0 N k =1 WN k WN = 1. Selesnick EL 713 Lecture Notes 7 . deﬁned as δ [n] = 0 1 n=0 n = 0. we ﬁnally get the sought identity in the simple form: N −1 nk WN = N · δ[ k n=0 N ]. ±N. I. k k Note that WN = 1 if k = 0. k Similarly WN = 1 if k N = 0. . In other words WN = 1 if k N = 0. Using the discrete-time delta function δ [n]. then we get: N −1 nk WN n=0 Nk = 1. . . .

I.INVERSE DFT PROOF With the formula N −1 nk WN = N · δ[ k n=0 N] we are ready to verify the the inverse DFT formula. we substitute the DFT into the inverse DFT formula: x[n] = 1 N N −1 kn X [k ] WN k=0 N −1 N −1 −kl x[l] WN k=0 N −1 l=0 N −1 kn . To verify the inversion formula. Selesnick EL 713 Lecture Notes 8 . N ]. WN 1 x[n] = N 1 = N = 1 N x[l] · l=0 N −1 k=0 WN k(n−l) . x[l] · N · δ [ n − l l=0 = x[n].

. the signal g [n] := x[ n − m N] represents a circular shift of x[n] by m samples to the right. The following MATLAB code fragment illustrates the circular shift. it is necessary to add 1 to the index vector. 5).CIRCULAR SHIFTING Given an N -point signal {x[n]. 0 ≤ n ≤ N − 1}. 3. I. >> g = [1 3 5 2] g = 1 3 5 >> n = 0:3 n = 0 1 >> mod(n-1. 2) then x[ n − 1 x[ n − m N] N] = (2. g [N − 1] = x[ −1 N ] = x[N − 1] 0 N ] = x[0] 1 N ] = x[1] N −2 N] N] = x[N − 2] For example. . Selesnick EL 713 Lecture Notes 9 . 1. For example.4)+1) 2 1 3 Because indexing in MATLAB begins with 1 rather than with 0. 5. if g [n] := x[ n − 1 then g [0] = x[ g [1] = x[ g [2] = x[ . if x[n] is the 4-point signal x[n] = (1. 3. represents a circular shift by m samples.4) 3 0 2 2 3 1 2 % Add 1 to account for MATLAB indexing 5 >> g(mod(n-1.

g) y = 56 73 57 60 69 I.g) N = length(x). Selesnick EL 713 Lecture Notes 10 . 0 ≤ n ≤ N − 1} and {g [n]. for m = 0:N-1 y = y + x(m+1)*g(mod(n-m. The following MATLAB function illustrates how the circular convolution can be computed. end For example: >> x = [2 4 3 1 5].CIRCULAR CONVOLUTION The usual convolution (or linear convolution) is deﬁned as N −1 x[n] ∗ g [n] := m=0 x[m]g [n − m]. >> g = [7 3 5 2 4]. 0 ≤ n ≤ N − 1}. But when x[n] and g [n] are deﬁned as N -point signals {x[n]. n = 0:N-1.N)+1). The deﬁnition of circular convolution evaluates the index modulo N : N −1 x[n] ⊗ g [n] := m=0 x[m]g [ n − m N ]. >> y = cconv(x. function y = cconv(x. then the term g [n − m] will fall outside the range.g) % y = cconv(x. y = zeros(size(x)).

2) then x[ −n N] = (1. >> g = [1 3 5 2] g = 1 3 5 2 >> N = 4. The following MATLAB code fragment illustrates time-reversal for a 4-point signal. 3.N)+1) ans = 1 2 5 3 I. 2. 0 ≤ n ≤ N − 1}. . . >> g(mod(-n. 5. >> n = 0:N-1. 5. g [N − 1] = x[ 0 N ] = x[0] −1 N ] = x[N − 1] −2 N ] = x[N − 2] 1−N N] N] x[0] x[N − n] n=0 1 ≤ n ≤ N − 1. Selesnick EL 713 Lecture Notes 11 .TIME-REVERSAL Given an N -point signal {x[n]. = x[1]. the signal g [n] := x[ −n is given by g [n] = as shown by: g [0] = x[ g [1] = x[ g [2] = x[ . For example. if x[n] is the 4-point signal x[n] = (1. 3).

then the sample x[−n] falls outside the range. 0 ≤ n ≤ N − 1}. N ]. 3) v [n] = (5. I. 7.CIRCULAR SYMMETRY A discrete-time signal x[n] is symmetric if x[n] = x[−n]. 3. 4. the sequences x[n] = (5. 2. 4. 4. 3. Selesnick EL 713 Lecture Notes 12 . 2. The deﬁnition of circular symmetry evaluates the index modulo N . 4. 2. 3) are both circularly symmetric. But if x[n] is an N -point signal {x[n]. 2. An N -point signal x[n] is circularly symmetric if x[n] = x[ −n For example.

write k as k = l · N + r with 0 ≤ r ≤ N − 1. To derive this equation. given the N -point DFT vector {X [k ]. . 0 ≤ k ≤ N − 1}. Then k N = r. Selesnick EL 713 Lecture Notes 13 . . write n as n = l · N + r with 0 ≤ r ≤ N − 1. Likewise. and 1 x[n] = N = = 1 N 1 N N −1 X [k ] WN k=0 N −1 k·(l·N +r) −kr klN X [k ] WN · WN k=0 N −1 kr X [k ] WN k=0 = x[r] = x[ n N ]. Then k N = r. we deﬁned the Inverse DFT samples x[n] for 0 ≤ n ≤ N − 1. If the DFT formula is evaluated for k outside the range 0 ≤ k ≤ N − 1.PERIODICITY PROPERTY Given the N -point signal {x[n]. . we deﬁned the DFT coeﬃcients X [k ] for 0 ≤ k ≤ N − 1. I. . If the Inverse DFT formula is evaluated for n outside the range 0 ≤ n ≤ N − 1. But if k lies outside the range 0. then one ﬁnds that x[n] is periodic with period N . then X [k ] = X [ k N ]. N − 1. N − 1. But if n lies outside the range 0. . . then x[n] = x[ n N ]. then one ﬁnds that X [k ] is periodic with period N . To derive this equation. . and N −1 X [k ] = n=0 N −1 x[n] WN −n·(l·N +r) = n=0 N −1 −n l N −nr x[n] WN · WN = n=0 −nr x[n] WN = X [r] = X[ k N ]. . 0 ≤ n ≤ N − 1}.

CIRCULAR SHIFT PROPERTY If −mk G[k ] := WN · X [k ] then g [n] = x[ n − m Derivation: Begin with the Inverse DFT.0000i 0.0000 5. property.0000i 0.0000 1. ifft(G) I.0000 + 0.0000 3. fft(x). >> >> >> >> >> >> >> >> >> g = 2.0000i 0. The following MATLAB code fragment illustrates the circular shift property with a shift of 2 samples.* X. N W X k m G g = = = = = = = length(x). [0:N-1]’.0000i x = [3 1 5 2 4]’. % N: data length exp(2*pi/N*sqrt(-1)). Selesnick EL 713 Lecture Notes 14 .0000i 0.^(-m*k) .0000 4. 1 g [n] = N = = 1 N 1 N N −1 nk G[k ] WN k=0 N −1 −mk nk WN X [k ] WN k=0 N −1 N ]. % shift W. % frequency index 2. X [k ] WN k=0 k(n−m) = x[n − m] = x[ n − m N ].

N −1 N ]. G[k ] = n=0 N −1 −nk g [n] WN = n=0 N −1 −nk mn WN x[n] WN = n=0 x[n] WN −n(k−m) = X [k − m] = X[ k − m N ].MODULATION PROPERTY (circular shift in frequency) If mn g [n] := WN · x[n] then G[k ] = X [ k − m Derivation: Begin with the DFT. I. Selesnick EL 713 Lecture Notes 15 .

0000i 0.0000 I. >> cconv(x.0000i 0. Derivation: N −1 Y [k ] = = = m=0 N −1 −nk y [n]WN n=0 N −1 N −1 · n=0 m=0 N −1 x[m]g [ n − m N −1 −nk N ]WN x[m] · n=0 g[ n − m −nk N ]WN = m=0 −mk x[m]WN G[k ] N −1 = G[k ] · m=0 −mk x[m]WN = G[k ] · X [k ] The following MATLAB code fragment illustrates the DFT convolution theorem.*fft(g))’ ans = 56.0000 69.g) ans = [ 56 73 57 60 69 ] >> ifft(fft(x).0000 73. >> x = [2 4 3 1 5].0000i 0.0000i 0. Selesnick + + - 0.CIRCULAR CONVOLUTION PROPERTY If N −1 y [n] := m=0 x[m]g [ n − m N] then Y [k ] = X [k ] · G[k ].0000 60. >> g = [7 3 5 2 4].0000 57.0000i EL 713 Lecture Notes 16 .

9471i >> X = fft(x). Selesnick EL 713 Lecture Notes 17 .8217 + 0.0.0039 .9863i -0.2341 .6644i 0. >> x = randn(1.7812 .2023i -0.0559i I.9655 .9655 .0215 .2.*conj(g)) ans = 1.0.N) x = 0.2656 .3744i 0. >> sum(x.5186i >> g = randn(1.N) g = 0.PARSEVAL’S THEOREM N −1 x[n] · g ∗ [n] = n=0 1 · N N −1 X [k ] · G∗ [k ] k=0 Derivation: N −1 N −1 x[n] · g [n] = n=0 n=0 ∗ x[n] · 1 N 1 N 1 N N −1 1 N N −1 nk G[k ]WN ∗ k=0 N −1 −nk G∗ [k ]WN k=0 N −1 = = = x[n] · n=0 N −1 G∗ [k ] · k=0 N −1 n=0 −nk x[n]WN X [k ] · G∗ [k ] k=0 The following MATLAB code fragment illustrates Parseval’s theorem.1.1859i -1.*conj(G))/N ans = 1.1878i 0.3274 .1.N) + i*randn(1.0.0.N) + i*randn(1.1.6644i >> sum(X. >> N = 4. >> G = fft(g).5690 .0.

N] G[k ] = n=0 N −1 x[ −n −nk N ]WN = m=0 N −1 x[m]WN − −m Nk = m=0 mk x[m]WN = X [−k ] = X [ −k N] N where we used the change of variables m = −n N (in which case n = −m for 0 ≤ n ≤ N − 1).0000 6.0000 2. The following MATLAB code fragment illustrates the time-reversal property. fft(x). ifft(G) I. [3 6 2 4 7]’.0000 4.0.0000i N n x X G g = = = = = = 5.TIME-REVERSAL PROPERTY If g [n] := x[ −n then G[k ] = X [ −k Derivation: N −1 N ]. Selesnick EL 713 Lecture Notes 18 .0000 . 0:N-1.0000i + 0. X(mod(-n.N)+1).0000i + 0.0000 7.0000i . >> >> >> >> >> >> g = 3.0.

0000i 3.N)+1)). >> g = ifft(G) g = 3.0000i 9.’ >> X = fft(x). 0:N-1.0000 5.0000 5.0000 8. >> >> >> >> x = 3.COMPLEX CONJUGATION PROPERTY If g [n] := x∗ [n] then G[k ] := X ∗ [ −k Derivation: N −1 N] G[k ] = n=0 −nk x∗ [n]WN N −1 ∗ nk x[n]WN n=0 ∗ = = X [−k ] = X ∗ [ −k N] The following MATLAB code fragment illustrates the complex conjugation property.0000i EL 713 Lecture Notes 19 .0000 6. Selesnick + + - 2. >> G = conj(X(mod(-n.0000i 3.0000i 7.0000 6.0000i N n i x = = = = 5.0000 + + + 2.0000i 9.0000 8. sqrt(-1).0000i 1.0000 I.0000 4. [3+2*i 5-3*i 6+i 4-7*i 8+9*i].0000i 7.0000 4.0000i 1.

5956i 1.REAL x[n] PROPERTY x[n] real Equivalently. the relation X [k ] = X ∗ [ −k N ] gives Xi [0] = −Xi [0] .4058 -5.0000 3. x[n] real =⇒ =⇒ X [k ] = X ∗ [ −k N ]. >> x = [3 7 5 2 4 1 5]’ x = 3 7 5 2 4 1 5 >> X = fft(x) X = 27.7409 I.5956i EL 713 Lecture Notes 20 .7409 -1.2094i 1.3351 3.7780i 4. Derivation: x[n] real =⇒ =⇒ =⇒ x[n] = x∗ [n] DFT{x[n]} = DFT{x∗ [n]} X [k ] = X ∗ [ −k N ]. Xr [k ] = Xr [ −k N] and Xi [k ] = −Xi [ −k N ].3351 -5.2094i 4.4058 -1. where Xr [k ] and Xi [k ] are the real and imaginary parts of X [k ]. In this case.7780i 4. Notice that Xi (0) must be 0 because when k is 0. the signal is of odd length. The following MATLAB code fragment illustrates the circular symmetries present in the DFT of a real signal. Selesnick + + + 4.

0000 3.2426i + 2.0000 3. the signal is of even length.0000i .3351 3.7780 4.6.>> [real(X) imag(X)] ans = 27.2426i + 4.2.7409 0 -4.2426 3.0000 3.0000i + 6.0000 -5. Selesnick EL 713 Lecture Notes 21 .2094 1.4058 -5.4.2094 -4.7780 4.2426i >> [real(X) imag(X)] ans = I. >> x = [3 7 5 2 4 1 3 2]’ x = 3 7 5 2 4 1 3 2 >> X = fft(x) X = 27.5956 In the following example. Notice that Xi (N/2) = 0 in this case.2426i .5956 -1.2426 .7409 -1.3351 -5.0000 -5.4058 -1.2426 -1.2426 -1.

2426 I.27.0000 -2.2426 3.0000 3.2426 -1.2426 0 -6.2426 -1. Selesnick EL 713 Lecture Notes 22 .2426 -4.2426 4.0000 -5.0000 3.0000 6.0000 -5.2426 0 2.

N ]} =⇒ =⇒ X [k ] = X ∗ [ −k N ] = X [ −k N ] X [k ] real and X [k ] = X [ −k N ]. >> x = [3 1 5 4 6 4 5 1]’ x = 3 1 5 4 6 4 5 1 >> X = fft(x) X = 29.Real and Circularly Symmetric x[n] When x[n] is real and circularly symmetric.0000 -7. {x[n] real and x[n] = x[ −n Derivation: x[n] real and x[n] = x[ −n Therefore {x[n] real and x[n] = x[ −n N ]} N] N ]} =⇒ {X [k ] real and X [k ] = X [ −k N ]} =⇒ X [k ] = X ∗ [ −k N] =⇒ =⇒ DFT{x[n]} = DFT{x[ −n X [k ] = X [ −k N ].0000 -7.0000 1. The following example illustrates the DFT of a real circularly symmetric signal.2426 -1.0000i + 0.2426 -1.0000i .0. I.2426 9.0000i Note that both x[n] and X [k ] are real and circularly symmetric.2426 . Selesnick EL 713 Lecture Notes 23 .0000i + 0.0000 1. then so is the DFT.0.

Summary of DFT Properties Periodicity Circular Shift Modulation Circular Convolution Time-Reversal Complex Conjugation Parseval’s Theorem X [k ] = X [ k N ] x[ n − m N ] mn WN · x[n] x[n] ⊗ g [n] x[ −n N ] x∗ [n] N −1 ∗ n=0 x[n] · g [n] = x[n] = x[ n N ] −mk WN · X [k ] X[ k − m N ] X [k ] · G[k ] X [ −k N ] X ∗ [ −k N ] N −1 ∗ · k =0 X [k ] · G [k ] 1 N I. Selesnick EL 713 Lecture Notes 24 .

scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->