>I have this vague recollection that such issues were briefly touched
>upon in a recent thread of yours...? Perhaps you should at least try
>to contemplate the answers you get before you ask again?
Well, he did manage to catch onto the term "DFT Leakage". :-)
Robert
( modify address for return email )
www.numbersusa.com
www.americanpatrol.com
Reply by Brad Griffis●September 30, 20042004-09-30
"Rune Allnor" <allnor@tele.ntnu.no> wrote in message
news:f56893ae.0409300213.5fdf85d0@posting.google.com...
>> Hi,
>>
>> When the DFT of an integer multiples of the input signal is taken,
>> then the
>> mahgnitude response shows that there are no sidelobes.
>>
>> However, when the DFT of a non-interger multiples of the input signal
>> is taken,
>> we get the sidelobes, which we call the DFT leakage.
>>
>> Ex:
>> when input signal has 5 cycles, and you obtain the DFT at any analysis
>> frequency(m*fs/N), we get only the main lobe.
>>
>> But, when input signal has 5.6 cycles, along with the main lobe, we
>> also get the
>> side lobes.
>>
>> So, how does the difference of 0.6 cycles in the input signal cause
>> the side lobes?
>
> It doesn't. It's the first situation that causes the discrete Fourier
> coefficients of the finite-length sinc, to coincide with the zeros
> of the sinc. If you interpolate the spectrum (e.g. by zero-padding)
> you will see that the side lobes are there, only between the original
> coefficients:
Sandeep,
This relates very much to your question regarding the interpretation of the
DFT. Remember there are two interpretations:
1) The DFT is samples of the DTFT. In this case you have windowed the
signal with a rectangle/boxcar function and hence you are convolving with a
sinc in frequency. As Rune mentioned it just so happens that your samples
are falling at the zeros of the sinc and you don't see them. Note that if
you actually use a Hamming window or some other kind of window you can make
the smearing not so apparent for the case where you're not sampling at an
even multiple of your tone.
2) The DFT represents the exact frequency content of a periodic signal.
For the case where the sampling frequency is a multiple of your tone, this
is exactly the case. You have a periodic input and you give exactly one
period of info to the DFT and what you get out is the EXACT frequency
content of your infinite tone. As Stephan and Glen mentioned, for the
non-integer multiple sampling you are introducing a discontinuity in what
the DFT then sees as the infinite signal and hence introducing a bunch more
frequency content. If you think about the effects of a Hamming window in
this context, what you are doing when multiplying by a Hamming window is
tapering both sides of your DFT input sequence to zero. That way you are
eliminating the discontinuity and lessening the artifacts.
As you can see both interpretations explain this "mysterious" behavior in
the DFT. For this particular case both interpretations work well. As you
get into more complicated signals you will find that interpretation 1 is
typically a more useful way to think about things since you will not be
analyzing a periodic signal. Still, interpretation 2 has its uses so it's
nice to know.
I think you've hit some of the core issues of DSP so take some significant
time to deeply understand them. Play around with the equations, experiment
in Matlab, perhaps read a few different sources to see how they explain it.
When I was in school the Oppenheim and Schaeffer book was my bible though
I've heard great things about the book by Proakis and Manolakis as well as
the book by Rick Lyons.
Brad
Reply by Rune Allnor●September 30, 20042004-09-30
> Hi,
>
> When the DFT of an integer multiples of the input signal is taken,
> then the
> mahgnitude response shows that there are no sidelobes.
>
> However, when the DFT of a non-interger multiples of the input signal
> is taken,
> we get the sidelobes, which we call the DFT leakage.
>
> Ex:
> when input signal has 5 cycles, and you obtain the DFT at any analysis
> frequency(m*fs/N), we get only the main lobe.
>
> But, when input signal has 5.6 cycles, along with the main lobe, we
> also get the
> side lobes.
>
> So, how does the difference of 0.6 cycles in the input signal cause
> the side lobes?
It doesn't. It's the first situation that causes the discrete Fourier
coefficients of the finite-length sinc, to coincide with the zeros
of the sinc. If you interpolate the spectrum (e.g. by zero-padding)
you will see that the side lobes are there, only between the original
coefficients:
%%%%%%%%%%%%% Begin Matlab Script %%%%%%%%%%%%%%%%%%%%%%%%
N= 16; % Number of samples in signal
fs=1; % Sampling frequency
f= fs/4; % Frequency of sinusoidal
tv=[0:N-1]; % Time vector
s=sin(2*pi*tv*f); % Signal
S=abs(fft(s)); % Discrete spectrum
fv=[0:N-1]/(N)*fs; % Frequency vector
Nfft=1024;
fvzp=[0:Nfft-1]/Nfft*fs; % 'Continuous' spectrum
S2=abs(fft(s,Nfft));
plot(fv,S,'r*',fvzp,S2,'b') % Plot spectra
% Bring figure to the foreground
figure (gcf)
%%%%%%%%%%%%% End Matlab Script %%%%%%%%%%%%%%%%%%%%%%%%%
I have this vague recollection that such issues were briefly touched
upon in a recent thread of yours...? Perhaps you should at least try
to contemplate the answers you get before you ask again?
Rune