Friday, 23 September 2016

Time scaling in DFT?



Let x[n] be a real signal whose length N is even. Let y[n]=x[2n]+jx[2n+1] a signal whose length is M=N2. X[k] for k=0,...,N1 and Y[k] for k=0,...,M1 are the respective DFTs of those signals. Find Y[k] as a function of X[k].



I haven't been able to find a scaling time property for the DFT. I read all the Oppenheim-Schafer's discrete signals book and found nothing about the subject. I tried doing it by definition but I just can't realize what the relationship between both DFTs is.



Answer



This is a classic exercise and it shows you how to obtain the DFT of a real-valued length N signal in terms of the DFT of a length N/2 complex-valued signal.


You have to write X[k] in terms of the even and odd samples of x[n]. With WN=ej2π/N you get


X[k]=N1n=0x[n]WknN=N/21n=0x[2n]WknN/2+WkNN/21n=0x[2n+1]WknN/2=DFTN/2{yR[n]}+WkNDFTN/2{yI[n]}=Ye[k]jWkNYo[k]



where yR[n] and yI[n] are the real and imaginary parts of y[n], respectively, and Ye[k] and Yo[k] are the even and odd parts of Y[k]. Eq. (1) shows that after having computed the length N/2 DFT Y[k], you need to split it into its even an odd parts, and from them you can obtain the length N DFT X[k].


Obtaining Y[k] from X[k] is also possible, even though that's usually the less practical problem, because often you have an FFT routine that takes complex input signals, so it's more efficient to compute a lenght N FFT of a real-valued sequence by computing a length N/2 FFT of a complex-valued sequence. Anyway, Y[k] is given by


Y[k]=N/21n=0x[2n]WknN/2+jN/21n=0x[2n+1]WknN/2


With WnN/2=W2nN, the first term on the right-hand side of (2) can be written as


N/21n=0x[2n]Wk(2n)N=N1n=0x[n]WknN1+(1)n2=12N1n=0x[n]WknN+12N1n=0x[n]WnN/2NWknN=12(X[k]+X[k+N/2])


where I used (1)n=WnN/2N.


Eq. (3) shows that decimation in the time domain corresponds to aliasing in the frequency domain, as expected.


In a completely analogous manner, the last term in Eq. (2) can be written as


jN/21n=0x[2n+1]WknN/2=j2(X[k]X[k+N/2])WkN


Substituting (3) and (4) into (2) gives the final solution:



Y[k]=12X[k](1+jWkN)+12X[k+N/2](1jWkN)


No comments:

Post a Comment

readings - Appending 内 to a company name is read ない or うち?

For example, if I say マイクロソフト内のパートナーシップは強いです, is the 内 here read as うち or ない? Answer 「内」 in the form: 「Proper Noun + 内」 is always read 「ない...