Discrete-time Fourier transform

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In mathematics, the discrete-time Fourier transform (DTFT) is one of the specific forms of Fourier analysis. As such, it transforms one function into another, which is called the frequency domain representation, or simply the "DTFT", of the original function (which is often a function in the time-domain). The DTFT requires an input function that is discrete. Such inputs are often created by digitally sampling a continuous function, like a person's voice. The DTFT frequency-domain representation is always a periodic function.

Fourier transforms
Continuous Fourier transform
Fourier series
Discrete-time Fourier transform
Discrete Fourier transform
Fourier analysis
Related transforms

Definition[edit]

The discrete-time Fourier transform (or DTFT) of a discrete set of real or complex numbers: x[n], for all integers n, is a Fourier series, which produces a periodic function of a frequency variable. When the frequency variable, ω, has normalized units of radians/sample, the periodicity is 2π, and the Fourier series is:

X_{2\pi}(\omega) = \sum_{n=-\infty}^{\infty} x[n] \,e^{-i \omega n}.

 

 

 

 

(Eq.1)

The utility of this frequency domain function is rooted in the Poisson summation formula. Let X(f) be the Fourier transform of any function, x(t), whose samples at some interval, T (seconds), are equal (or proportional to) the x[n] sequence, i.e. T\cdot x(nT)=x[n]. Then the periodic function represented by the Fourier series is a periodic summation of X(f). In terms of frequency \scriptstyle f in hertz (cycles/sec):


X_{1/T}(f) = X_{2\pi}(2\pi f T)\ \stackrel{\mathrm{def}}{=} 
\sum_{n=-\infty}^{\infty} \underbrace{T\cdot x(nT)}_{x[n]}\ e^{-i 2\pi f T n}\;
\stackrel{\mathrm{Poisson\;f.}}{=} \;
 \sum_{k=-\infty}^{\infty} X\left(f - k/T\right).

 

 

 

 

(Eq.2)

Fig 1. Depiction of a Fourier transform (upper left) and its periodic summation (DTFT) in the lower left corner. The lower right corner depicts samples of the DTFT that are computed by a discrete Fourier transform (DFT).

The integer k has units of cycles/sample, and 1/T is the sample-rate, fs (samples/sec). So X1/T(f) comprises exact copies of X(f) that are shifted by multiples of fs hertz and combined by addition.  For sufficiently large fs the k=0 term can be observed in the region [−fs/2, fs/2] with little or no distortion (aliasing) from the other terms. In Fig.1, the extremities of the distribution in the upper left corner are masked by aliasing in the periodic summation (lower left).

We also note that  e^{-i 2\pi f T n}  is the Fourier transform of  \scriptstyle \delta(t-nT).  Therefore, an alternative definition of DTFT is:[note 1]

X_{1/T}(f) = \mathcal{F}\left \{\sum_{n=-\infty}^{\infty} x[n] \cdot \delta(t-nT)\right \}

 

 

 

 

(Eq.3)

Periodic data[edit]

When the input data sequence x[n] is N-periodic, Eq.2 can be computationally reduced to a discrete Fourier transform (DFT), because:

  • All the available information is contained within N samples.
  • \scriptstyle X_{1/T}(f)  converges to zero everywhere except integer multiples of  \scriptstyle \frac{1}{NT},  known as harmonic frequencies.
  • The DTFT is periodic, so the maximum number of unique harmonic amplitudes is  \scriptstyle \frac{1}{T}/\frac{1}{NT} = N.

The kernal  \scriptstyle x[n]\cdot e^{-i 2\pi f T n}  is N-periodic at the harmonic frequencies, \scriptstyle f = \frac{k}{NT}.   So  \scriptstyle X_{1/T}(\frac{k}{NT})  is an infinite summation of repetitious values, which does not converge for one or more values of k.  But because of periodicity, we can reduce the limits of summation to any sequence of length N, without losing any information. The result is just a DFT. In order to interpret the DFT, it is helpful to expand the comb function, from Eq.3, which is now NT-periodic, into a Fourier series:

\sum_{n=-\infty}^{\infty} x[n] \cdot \delta(t-nT) = \underbrace{\sum_{k=-\infty}^{\infty} X[k]\cdot e^{i 2 \pi \frac{k}{NT}t}}_{\text{Fourier series}} \quad\stackrel{\mathcal{F}}{\Longleftrightarrow}\quad \underbrace{\sum_{k=-\infty}^{\infty} X[k]\ \cdot\  \delta\left(f-\frac{k}{NT}\right)}_{\text{DTFT of a periodic sequence}},

which also shows that periodicity in the time domain causes the DTFT to become discontinuous and that it diverges at the harmonic frequencies. But the Fourier series coefficients that modulate the comb are finite, and the standard integral formula conveniently reduces to a DFT:

\begin{align}
X[k] \ &\stackrel{\text{def}}{=}\ \frac{1}{NT} \int_{NT} \left[\sum_{n=-\infty}^{\infty}x[n]\cdot \delta(t-nT)\right] e^{-i 2 \pi \frac{k}{NT}t} dt \quad 
\scriptstyle {\text{(integral over any interval of length NT)}} \displaystyle \\
&= \frac{1}{NT} \sum_{n=-\infty}^{\infty} x[n]\cdot \int_{NT} \delta(t-nT)\cdot e^{-i 2 \pi \frac{k}{NT}t} dt \\
&= \frac{1}{NT} \underbrace{\sum_{N} x[n]\cdot e^{-i 2 \pi \frac{k}{N}n}}_{DFT} \quad \scriptstyle {\text{(sum over any n-sequence of length N)}} \\
&= \frac{1}{N} \underbrace{\sum_{N} x(nT)\cdot e^{-i 2 \pi \frac{k}{N}n}}_{DFT},
\end{align}

which is an N-periodic sequence (in k) that completely describes the DTFT.

Inverse transform[edit]

An operation that recovers the discrete data sequence from the DTFT function is called an inverse DTFT. For instance, the inverse continuous Fourier transform of both sides of Eq.2 produces the sequence in the form of a modulated Dirac comb function:

\sum_{n=-\infty}^{\infty} x[n]\cdot \delta(t-n T) = \mathcal{F}^{-1}\left \{X_{1/T}(f)\right\} \ \stackrel{\mathrm{def}}{=} \int_{-\infty}^\infty X_{1/T}(f)\cdot e^{i 2 \pi f t} df.

However, noting that X1/T(f) is periodic, all the necessary information is contained within any interval of length 1/T. In both Eq.1 and Eq.2, the summations over n are a Fourier series, with coefficients x[n]. The standard formulas for the Fourier coefficients are also the inverse transforms:

\begin{align}
x[n] &= T \int_{\frac{1}{T}} X_{1/T}(f)\cdot e^{i 2 \pi f nT} df \quad \scriptstyle {(integral\ over\ any\ interval\ of\ length\ 1/T)} \\
\displaystyle &= \frac{1}{2 \pi}\int_{2\pi} X_{2\pi}(\omega)\cdot e^{i \omega n} d\omega. \quad \scriptstyle {(integral\ over\ any\ interval\ of\ length\ 2\pi)}
\end{align}

Sampling the DTFT[edit]

When the DTFT is continuous, a common practice is to compute an arbitrary number of samples (N) of one cycle of the periodic function X1/T:

\begin{align}
\underbrace{X_{1/T}\left(\frac{k}{NT}\right)}_{X_k} &= \sum_{n=-\infty}^{\infty} x[n]\cdot e^{-i 2\pi \frac{kn}{N}} \quad \quad k = 0, \dots, N-1 \\
&= \underbrace{\sum_{N} x_N[n]\cdot e^{-i 2\pi \frac{kn}{N}},}_{DFT}\quad \scriptstyle {(sum\ over\ any\ n-sequence\ of\ length\ N)}
\end{align}

where xN is a periodic summation:

x_N[n]\ \stackrel{\text{def}}{=}\ \sum_{m=-\infty}^{\infty} x[n-mN].

The xN sequence is the inverse DFT. Thus, our sampling of the DTFT causes the inverse transform to become periodic.

In order to evaluate one cycle of xN numerically, we require a finite-length x[n] sequence. For instance, a long sequence might be truncated by a window function of length L resulting in two cases worthy of special mention: LN and L = IN, for some integer I (typically 6 or 8). For notational simplicity, consider the x[n] values below to represent the modified values.

When L = IN a cycle of xN reduces to a summation of I blocks of length N. This goes by various names, such as multi-block windowing and window presum-DFT [1] [2] [3] .  A good way to understand/motivate the technique is to recall that decimation of sampled data in one domain (time or frequency) produces aliasing in the other, and vice versa. The xN summation is mathematically equivalent to aliasing, leading to decimation in frequency, leaving only DTFT samples least affected by spectral leakage. That is usually a priority when implementing an FFT filter-bank (channelizer). With a conventional window function of length L, scalloping loss would be unacceptable. So multi-block windows are created using FIR filter design tools. Their frequency profile is flat at the highest point and falls off quickly at the midpoint between the remaining DTFT samples. The larger the value of parameter I the better the potential performance. We note that the same results can be obtained by computing and decimating an L-length DFT, but that is not computationally efficient.

When LN the DFT is usually written in this more familiar form:

X_k = \sum_{n=0}^{N-1} x[n]\cdot e^{-i 2\pi \frac{kn}{N}}.

In order to take advantage of a fast Fourier transform algorithm for computing the DFT, the summation is usually performed over all N terms, even though N-L of them are zeros. Therefore, the case L < N is often referred to as zero-padding.

Spectral leakage, which increases as L decreases, is detrimental to certain important performance metrics, such as resolution of multiple frequency components and the amount of noise measured by each DTFT sample. But those things don't always matter, for instance when the x[n] sequence is a noiseless sinusoid (or a constant), shaped by a window function. Then it is a common practice to use zero-padding to graphically display and compare the detailed leakage patterns of window functions. To illustrate that for a rectangular window, consider the sequence:

x[n] = e^{i 2\pi \frac{1}{8} n},\quad and L=64.

The two figures below are plots of the magnitude of two different sized DFTs, as indicated in their labels. In both cases, the dominant component is at the signal frequency: f = 1/8 = 0.125. Also visible on the right is the spectral leakage pattern of the L=64 rectangular window. The illusion on the left is a result of sampling the DTFT at all of its zero-crossings. Rather than the DTFT of a finite-length sequence, it gives the impression of an infinitely long sinusoidal sequence. Contributing factors to the illusion are the use of a rectangular window, and the choice of a frequency (1/8 = 8/64) with exactly 8 (an integer) cycles per 64 samples.

DFT for L = 64 and N = 64
DFT for L = 64 and N = 256

Convolution[edit]

The Convolution theorem for sequences is:

x * y\ =\ \scriptstyle \text{DTFT}^{-1} \displaystyle \left[\scriptstyle \text{DTFT} \displaystyle \{x\}\cdot \scriptstyle \text{DTFT} \displaystyle \{y\}\right].

An important special case is the circular convolution of sequences x and y defined by xN * y where xN is a periodic summation.  The discrete-frequency nature of DTFT{xN} "selects" only discrete values from the continuous function DTFT{y}, which results in considerable simplification of the inverse transform. As shown at Convolution_theorem#Functions_of_a_discrete_variable..._sequences:

x_N * y\ =\ \scriptstyle \text{DTFT}^{-1} \displaystyle \left[\scriptstyle \text{DTFT} \displaystyle \{x_N\}\cdot \scriptstyle \text{DTFT} \displaystyle \{y\}\right]\ =\ \scriptstyle \text{DFT}^{-1} \displaystyle \left[\scriptstyle \text{DFT} \displaystyle \{x_N\}\cdot \scriptstyle \text{DFT} \displaystyle \{y_N\}\right].

For x and y sequences whose non-zero duration is ≤ N, a final simplification is:

x_N * y\ =\ \scriptstyle \text{DFT}^{-1} \displaystyle  \left[\scriptstyle \text{DFT} \displaystyle \{x\}\cdot \scriptstyle \text{DFT} \displaystyle \{y\}\right].

The significance of this result is expounded at Circular convolution and Fast convolution algorithms.

Relationship to the Z-transform[edit]

The bilateral Z-transform is defined by:

X(z) = \sum_{n=-\infty}^{\infty} x[n] \,z^{-n},    where z is a complex variable.

On the unit circle, z is constrained to values of the form e^{i \omega}.  Then one cycle of  X(e^{i \omega}), 0 \le \omega \le 2\pi  is equivalent to one period of the DTFT. What varies with sample-rate is the width of a signal's spectral distribution. When the width exceeds 2π, because of a sub-Nyquist rate, the distribution fills the circle, and aliasing occurs. With a DTFT in units of hertz (Eq.2), it's not the bandwidth that changes, but the periodicity of the aliases.

Alternative notation[edit]

The notation, X(e^{i \omega}), is also often used to denote a normalized DTFT (Eq.1), which has several desirable features:

  1. highlights the periodicity property, and
  2. helps distinguish between the DTFT and the underlying Fourier transform of x(t); that is, X(f) (or X(ω)), and
  3. emphasizes the relationship of the DTFT to the Z-transform.

However, its relevance is obscured when the DTFT is expressed as its equivalent periodic summation. So the notation X(ω) is also commonly used, as in the table below.

Table of discrete-time Fourier transforms[edit]

Some common transform pairs are shown in the table below. The following notation applies:

  • ω = 2πfT is a real number representing continuous angular frequency (in radians per sample). (f is in cycles/sec, and T is in sec/sample.) In all cases in the table, the DTFT is 2π-periodic (in ω).
  • X(ω) designates a function defined on -∞ < ω < ∞.
  • X(ω) designates a function defined on -π < ω ≤ π, and zero elsewhere. Then:
X_{2\pi}(\omega)\ \stackrel{\mathrm{def}}{=} \sum_{k=-\infty}^{\infty} X(\omega - 2\pi k).
Time domain
x[n]
Frequency domain
X(ω)
Remarks
\delta[n] X_{2\pi}(\omega) = 1
\delta[n-M] X_{2\pi}(\omega) = e^{-i\omega M} integer M
\sum_{m = -\infty}^{\infty} \delta[n - M m] \! X_{2\pi}(\omega) = \sum_{m = -\infty}^{\infty} e^{-i \omega M m} = \frac{2\pi}{M}\sum_{k = -\infty}^{\infty} \delta \left( \omega - \frac{2\pi k}{M} \right) \,

X(\omega) = \frac{2\pi}{M}\sum_{k = -(M-1)/2}^{(M-1)/2} \delta \left(\omega - \frac{2\pi k}{M} \right) \,     odd M
X(\omega) = \frac{2\pi}{M}\sum_{k = -M/2+1}^{M/2} \delta \left(\omega - \frac{2\pi k}{M} \right) \,     even M

integer M > 0
u[n] X_{2\pi}(\omega) = \frac{1}{1-e^{-i \omega}} + \pi \sum_{k=-\infty}^{\infty} \delta (\omega - 2\pi k)\!

X(\omega) = \frac{1}{1-e^{-i \omega}} + \pi \cdot \delta (\omega)\!

The 1/(1-e^{-i \omega}) term must be interpreted as a distribution in the sense of a Cauchy principal value around its poles at ω = 2πk.
a^n u[n] X_{2\pi}(\omega) = \frac{1}{1-a e^{-i \omega}}\! 0 < |a| < 1
e^{-i a n} X(\omega) = 2\pi\cdot \delta (\omega +a),     -π ≤ a < π

X_{2\pi}(\omega) = 2\pi \sum_{k=-\infty}^{\infty} \delta (\omega +a -2\pi k)

real number a
\cos(a n) X(\omega) = \pi [\delta (\omega +a)+\delta (\omega -a)],     -π < a < π

X_{2\pi}(\omega) = \pi \sum_{k=-\infty}^{\infty} \left[ \delta (\omega - a - 2\pi k) + \delta (\omega + a + 2\pi k) \right]

real number a
\sin(a n) X_{2\pi}(\omega) = \frac{\pi}{i} \sum_{k=-\infty}^{\infty} \left[ \delta (\omega - a - 2\pi k) - \delta ( \omega + a + 2\pi k) \right] real number a
\mathrm{rect} \left[ { ( n - M/2 ) \over M  } \right] X(\omega) = { \sin[ \omega (M+1) / 2 ] \over \sin( \omega / 2 ) } \,  e^{ -\frac{i \omega M}{2} } \! integer M
\operatorname{sinc}(a+n) X(\omega) = e^{ia\omega} real number a
W\cdot \operatorname{sinc}^2(W n)\, X(\omega) = \operatorname{tri} \left( { \omega \over 2\pi W } \right) real number W
0 < W ≤ 0.5
W\cdot \operatorname{sinc} ( W n) X(\omega) = \operatorname{rect} \left( { \omega \over 2\pi W } \right) real numbers W
0 < W ≤ 1
 \begin{cases}
0 & n=0 \\
\frac{(-1)^n}{n} & \mbox{elsewhere}
\end{cases} X(\omega) = j \omega it works as a differentiator filter
\frac{W}{(n + a)} \left\{ \cos [ \pi W (n+a)] - \operatorname{sinc} [ W (n+a)] \right\} X(\omega) = j \omega \cdot \operatorname{rect} \left( { \omega \over \pi W } \right) e^{j a \omega} real numbers W, a
0 < W ≤ 1
\frac{(-1)^n - 1}{\pi n^2} X(\omega) = |\omega|
\begin{cases}
0; & n \mbox{ even} \\
\frac{2}{\pi n} ; & n \mbox{ odd}
\end{cases} X(\omega) = \begin{cases}
j & \omega < 0 \\
0 & \omega = 0 \\
-j & \omega > 0
\end{cases} Hilbert transform
\frac{C (A + B)}{2 \pi} \cdot \operatorname{sinc} \left[ \frac{A - B}{2\pi} n \right] \cdot \operatorname{sinc} \left[ \frac{A + B}{2\pi} n \right] X(\omega) = Trapezoid signal.svg real numbers A, B
complex C

Properties[edit]

This table shows some mathematical operations in the time domain and the corresponding effects in the frequency domain.

Property Time domain x[n] Frequency domain X(eiω) Remarks
Linearity ax[n] + by[n] aX(eiω) + bY(eiω)
Shift in time x[nk] X(eiω)eiωk integer k
Shift in frequency (modulation) x[n]e^{ian} \! X(e^{i (\omega-a)}) \! real number a
time scaling x[n/k] \! X(e^{i (k\omega)}) \!
Time reversal x[−n] X(e-iω)
Time conjugation x[n]* X(eiω)*
Time reversal & conjugation x[−n]* X(eiω)*
Derivative in frequency \frac{n}{i} x[n] \! \frac{d X(e^{i \omega})}{d \omega} \!
Integral in frequency \frac{i}{n} x[n] \! \int_{-\pi}^{\omega} X(e^{i \vartheta}) d \vartheta \!
Convolve in time x[n] * y[n] \! X(e^{i \omega}) \cdot Y(e^{i \omega}) \!
Multiply in time x[n] \cdot y[n] \! \frac{1}{2\pi}\int_{-\pi}^{\pi}{X(e^{i \vartheta}) \cdot Y(e^{i (\omega-\vartheta)}) d\vartheta} \! Periodic convolution
Cross correlation \rho_{xy} [n] = x[-n]^* * y[n] \! R_{xy} (\omega) = X(e^{i \omega})^* \cdot Y(e^{i \omega}) \!
Parseval's theorem E = \sum_{n=-\infty}^{\infty} {x[n] \cdot y^*[n]} \! E = \frac{1}{2\pi}\int_{-\pi}^{\pi}{X(e^{i \omega}) \cdot Y^*(e^{i \omega}) d\omega} \!

See also[edit]

Notes[edit]

  1. ^ In fact Eq.2 is often justified as follows:
    \begin{align}
\mathcal{F}\left \{\sum_{n=-\infty}^{\infty} T\cdot x(nT) \cdot \delta(t-nT)\right \} &=\mathcal{F}\left \{x(t)\cdot T \sum_{n=-\infty}^{\infty} \delta(t-nT)\right \}\\
&= X(f) * \mathcal{F}\left \{T \sum_{n=-\infty}^{\infty} \delta(t-nT)\right \} \\
&= X(f) * \sum_{k=-\infty}^{\infty} \delta \left(f - \frac{k}{T}\right) \\
&= \sum_{k=-\infty}^{\infty} X\left(f - \frac{k}{T}\right).
\end{align}

Citations[edit]

  1. ^ Gumas, Charles Constantine (July 1997). "Window-presum FFT achieves high-dynamic range, resolution". Personal Engineering & Instrumentation News: 58–64. 
  2. ^ Dahl, Jason F (2003). "Chapter 3.4". Time Aliasing Methods of Spectral Estimation (PhD thesis). Brigham Young University. 
  3. ^ Lyons, Richard G. (June 2008). "DSP Tricks: Building a practical spectrum analyzer". EE Times. 

References[edit]

  • Alan V. Oppenheim and Ronald W. Schafer (1999). Discrete-Time Signal Processing (2nd Edition ed.). Prentice Hall Signal Processing Series. ISBN 0-13-754920-2. 
  • William McC. Siebert (1986). Circuits, Signals, and Systems. MIT Electrical Engineering and Computer Science Series. Cambridge, MA: MIT Press. 
  • Boaz Porat. A Course in Digital Signal Processing. John Wiley and Sons. pp. 27–29 and 104–105. ISBN 0-471-14961-6.