So far in our various discussions we have spoken of a sequence x(n) as being in the time domain
but we haven't said much about time in seconds. Rather we have used dimensionless delay units.
Our digital frequency
is in radians/delay rather than in radians/second.
But the DFT is typically taken on N samples over a total time
seconds and we are interested
in what frequencies in Hz the DFT amplitudes represent.
k=0 clearly corresponds to zero frequency.
k=1 How do we go from the dimensionless time scale n and time in seconds ? By noting that
for k=1 the period of oscillation we are dealing with is N samples or
seconds where
is the sampling interval.
So
.
k=2 Now there are 2 periods in N samples so
.
and so on up to k=N-1 ? No, not up to N-1 , up to
!!
Explanation :
Consider the example in S&K pp548-549.
A 10Hz analogue signal
is sampled at intervals of 0.0125s . Eight samples are
taken over one whole cycle.
In this case the X(k) are all real. As expected we get an amplitude at k=1 corresponding to 10Hz.
But why do we get an identical amplitude at k=7 ? It is because X(1) is not the amplitude
of
. From the DFT definition X(1) is the amplitude of
So to make the cosine function we need X(1) and X(-1). Now N=8 so X(k) is
periodic with period 8 so X(7)=X(7-8)=X(-1) .
It could be helpful to make the frequency index k run from -3 to +4 instead of from 0 to 7 as done in S&K p549. Then we are defining the DFT as :
as shown in the figure below.
Then we combine
for
to get real cosine functions.
Note that in the first version of the DFT in this example the DFT has mirror symmetry about
k=4. Correspondingly in the second version there is mirror symmetry about k=0. The amplitudes
of the negative frequencies are superfluous. They are entirely predictable from the positive frequency
amplitudes. This will always happen for real x(n) .
A better frequency indexing scheme ?
Because of the way computers handle integers with 2's complement coding of negative integers
it could be preferable to run k from
rather than from
as done in S&K .
The way this works for N=8 is as follows :
According to this scheme the second version of the above example would have
rather than
.