Discrete-time Fourier transform
In mathematics, the discrete-time Fourier transform (DTFT), also called the finite Fourier transform, is a form of Fourier analysis that is applicable to a sequence of values.
Fourier transforms |
---|
The DTFT is often used to analyze samples of a continuous function. The term discrete-time refers to the fact that the transform operates on discrete data, often samples whose interval has units of time. From uniformly spaced samples it produces a function of frequency that is a periodic summation of the continuous Fourier transform of the original continuous function. Under certain theoretical conditions, described by the sampling theorem, the original continuous function can be recovered perfectly from the DTFT and thus from the original discrete samples. The DTFT itself is a continuous function of frequency, but discrete samples of it can be readily calculated via the discrete Fourier transform (DFT) (see § Sampling the DTFT), which is by far the most common method of modern Fourier analysis.
Both transforms are invertible. The inverse DTFT is the original sampled data sequence. The inverse DFT is a periodic summation of the original sequence. The fast Fourier transform (FFT) is an algorithm for computing one cycle of the DFT, and its inverse produces one cycle of the inverse DFT.
Definition
The discrete-time Fourier transform of a discrete sequence of real or complex numbers x[n], for all integers n, is a Trigonometric 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 DTFT series is:[1]: p.147
-
(Eq.1)
The discrete-time Fourier transform is analogous to a Fourier series, except instead of starting with a periodic function of time and producing discrete sequence over frequency, it starts with a discrete sequence in time and produces a periodic function in frequency. 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⋅x(nT) = x[n].[2] Then the periodic function represented by the Fourier series is a periodic summation of X(f) in terms of frequency f in hertz (cycles/sec):[lower-alpha 1][upper-alpha 1]
|
(Eq.2) |
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−i2πfTn is the Fourier transform of δ(t − nT). Therefore, an alternative definition of DTFT is:[upper-alpha 2]
|
(Eq.3) |
The modulated Dirac comb function is a mathematical abstraction sometimes referred to as impulse sampling.[4]
Inverse transform
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.3 produces the sequence in the form of a modulated Dirac comb function:
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:
-
(Eq.4)
Periodic data
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.
- X1/T(f) converges to zero everywhere except at integer multiples of 1/(NT), known as harmonic frequencies. At those frequencies, the DTFT diverges at different frequency-dependent rates. And those rates are given by the DFT of one cycle of the x[n] sequence.
- The DTFT is periodic, so the maximum number of unique harmonic amplitudes is (1/T) / (1/(NT)) = N
The DFT coefficients are given by:
- and the DTFT is:
Substituting this expression into the inverse transform formula confirms:
as expected. The inverse DFT in the line above is sometimes referred to as a Discrete Fourier series (DFS).[1]: p 542
Sampling the DTFT
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: [1]: pp 557–559 & 703
where is a periodic summation:
- (see Discrete Fourier series)
The sequence is the inverse DFT. Thus, our sampling of the DTFT causes the inverse transform to become periodic. The array of |Xk|2 values is known as a periodogram, and the parameter N is called NFFT in the Matlab function of the same name.[5]
In order to evaluate one cycle of 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 three cases worthy of special mention. For notational simplicity, consider the x[n] values below to represent the values modified by the window function.
Case: Frequency decimation. L = N ⋅ I, for some integer I (typically 6 or 8)
A cycle of reduces to a summation of I segments of length N. The DFT then goes by various names, such as:
- window-presum FFT[6]
- Weight, overlap, add (WOLA)[7][8][9][10][11][12][upper-alpha 3][upper-alpha 4]
Recall that decimation of sampled data in one domain (time or frequency) produces overlap (sometimes known as aliasing) in the other, and vice versa. Compared to an L-length DFT, the summation/overlap causes decimation in frequency,[1]: p.558 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.[15][16] 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.
Case: L = N+1.
When a symmetric, L-length window function () is truncated by 1 coefficient it is called periodic or DFT-even. The truncation affects the DTFT. A DFT of the truncated sequence samples the DTFT at frequency intervals of 1/N. To sample at the same frequencies, for comparison, the DFT is computed for one cycle of the periodic summation, [upper-alpha 5]
Case: Frequency interpolation. L ≤ N
In this case, the DFT simplifies to a more familiar form:
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:
- and
Figures 2 and 3 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 in Fig 2 is the spectral leakage pattern of the L = 64 rectangular window. The illusion in Fig 3 is a result of sampling the DTFT at just 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. A Hann window would produce a similar result, except the peak would be widened to 3 samples (see DFT-even Hann window).
Convolution
The convolution theorem for sequences is:
- [18]: p.297 [lower-alpha 3]
An important special case is the circular convolution of sequences x and y defined by where is a periodic summation. The discrete-frequency nature of means that the product with the continuous function is also discrete, which results in considerable simplification of the inverse transform:
For x and y sequences whose non-zero duration is less than or equal to N, a final simplification is:
The significance of this result is explained at Circular convolution and Fast convolution algorithms.
Symmetry properties
When the real and imaginary parts of a complex function are decomposed into their even and odd parts, there are four components, denoted below by the subscripts RE, RO, IE, and IO. And there is a one-to-one mapping between the four components of a complex time function and the four components of its complex frequency transform:[18]: p.291
From this, various relationships are apparent, for example:
- The transform of a real-valued function (xRE+ xRO) is the even symmetric function XRE+ i XIO. Conversely, an even-symmetric transform implies a real-valued time-domain.
- The transform of an imaginary-valued function (i xIE+ i xIO) is the odd symmetric function XRO+ i XIE, and the converse is true.
- The transform of an even-symmetric function (xRE+ i xIO) is the real-valued function XRE+ XRO, and the converse is true.
- The transform of an odd-symmetric function (xRO+ i xIE) is the imaginary-valued function i XIE+ i XIO, and the converse is true.
Relationship to the Z-transform
is a Fourier series that can also be expressed in terms of the bilateral Z-transform. I.e.:
where the notation distinguishes the Z-transform from the Fourier transform. Therefore, we can also express a portion of the Z-transform in terms of the Fourier transform:
Note that when parameter T changes, the terms of remain a constant separation apart, and their width scales up or down. The terms of X1/T(f) remain a constant width and their separation 1/T scales up or down.
Table of discrete-time Fourier transforms
Some common transform pairs are shown in the table below. The following notation applies:
- is a real number representing continuous angular frequency (in radians per sample). ( is in cycles/sec, and is in sec/sample.) In all cases in the table, the DTFT is 2π-periodic (in ).
- designates a function defined on .
- designates a function defined on , and zero elsewhere. Then:
- is the Dirac delta function
- is the normalized sinc function
- is the triangle function
- n is an integer representing the discrete-time domain (in samples)
- is the discrete-time unit step function
- is the Kronecker delta
Time domain x[n] |
Frequency domain X2π(ω) |
Remarks | Reference |
---|---|---|---|
[18]: p.305 | |||
integer | |||
odd M |
integer | ||
The term must be interpreted as a distribution in the sense of a Cauchy principal value around its poles at . | |||
[18]: p.305 | |||
-π < a < π |
real number | ||
real number with | |||
real number with | |||
integer and odd integer | |||
real numbers with | |||
real number , | |||
it works as a differentiator filter | |||
real numbers with | |||
Hilbert transform | |||
real numbers complex |
Properties
This table shows some mathematical operations in the time domain and the corresponding effects in the frequency domain.
- is the discrete convolution of two sequences
- is the complex conjugate of x[n].
Property | Time domain x[n] |
Frequency domain |
Remarks | Reference |
---|---|---|---|---|
Linearity | complex numbers | [18]: p.294 | ||
Time reversal / Frequency reversal | [18]: p.297 | |||
Time conjugation | [18]: p.291 | |||
Time reversal & conjugation | [18]: p.291 | |||
Real part in time | [18]: p.291 | |||
Imaginary part in time | [18]: p.291 | |||
Real part in frequency | [18]: p.291 | |||
Imaginary part in frequency | [18]: p.291 | |||
Shift in time / Modulation in frequency | integer k | [18]: p.296 | ||
Shift in frequency / Modulation in time | real number | [18]: p.300 | ||
Decimation | [upper-alpha 6] | integer | ||
Time Expansion | integer | [1]: p.172 | ||
Derivative in frequency | [18]: p.303 | |||
Integration in frequency | ||||
Differencing in time | ||||
Summation in time | ||||
Convolution in time / Multiplication in frequency | [18]: p.297 | |||
Multiplication in time / Convolution in frequency | Periodic convolution | [18]: p.302 | ||
Cross correlation | ||||
Parseval's theorem | [18]: p.302 |
Notes
- When the dependency on T is unimportant, a common practice is to replace it with Then f has units of (cycles/sample), called normalized frequency.
- In fact Eq.2 is often justified as follows:[1]: p.143
- WOLA should not be confused with the Overlap-add method of piecewise convolution.
- WOLA example: File:WOLA channelizer example.png
- An example is figure Sampling the DTFT. The real-valued DFT samples are a result of DFT-even symmetry[17]: p.52
- This expression is derived as follows:[1]: p.168
Page citations
References
-
Oppenheim, Alan V.; Schafer, Ronald W.; Buck, John R. (1999). "4.2, 8.4". Discrete-time signal processing (2nd ed.). Upper Saddle River, N.J.: Prentice Hall. ISBN 0-13-754920-2.
samples of the Fourier transform of an aperiodic sequence x[n] can be thought of as DFS coefficients of a periodic sequence obtained through summing periodic replicas of x[n].
- Ahmed, N.; Rao, K.R. (July 10, 1975). Orthogonal Transforms for Digital Signal Processing (1 ed.). Berlin Heidelberg New York: Springer-Verlag. doi:10.1007/978-3-642-45450-9. ISBN 9783540065562.
-
Prandoni, Paolo; Vetterli, Martin (2008). Signal Processing for Communications (PDF) (1 ed.). Boca Raton, FL: CRC Press. pp. 72, 76. ISBN 978-1-4200-7046-0. Retrieved 4 October 2020.
the DFS coefficients for the periodized signal are a discrete set of values for its DTFT
- Rao, R. (2008). Signals and Systems. Prentice-Hall Of India Pvt. Limited. ISBN 9788120338593.
- "Periodogram power spectral density estimate - MATLAB periodogram".
-
Gumas, Charles Constantine (July 1997). "Window-presum FFT achieves high-dynamic range, resolution". Personal Engineering & Instrumentation News: 58–64. Archived from the original on 2001-02-10.
{{cite journal}}
: CS1 maint: bot: original URL status unknown (link) - Crochiere, R.E.; Rabiner, L.R. (1983). "7.2". Multirate Digital Signal Processing. Englewood Cliffs, NJ: Prentice-Hall. pp. 313–326. ISBN 0136051626.
- Wang, Hong; Lu, Youxin; Wang, Xuegang (16 October 2006). "Channelized Receiver with WOLA Filterbank". 2006 CIE International Conference on Radar. Shanghai, China: IEEE. pp. 1–3. doi:10.1109/ICR.2006.343463. ISBN 0-7803-9582-4. S2CID 42688070.
- Lyons, Richard G. (June 2008). "DSP Tricks: Building a practical spectrum analyzer". EE Times. Retrieved 2020-02-20. Note however, that it contains a link labeled weighted overlap-add structure which incorrectly goes to Overlap-add method.
-
Lillington, John (March 2003). "Comparison of Wideband Channelisation Architectures" (PDF). Dallas: International Signal Processing Conference. p. 4 (fig 7). S2CID 31525301. Archived from the original (PDF) on 2019-03-08. Retrieved 2020-09-06.
The "Weight Overlap and Add" or WOLA or its subset the "Polyphase DFT", is becoming more established and is certainly very efficient where large, high quality filter banks are required.
-
Lillington, John. "A Review of Filter Bank Techniques - RF and Digital" (PDF). armms.org. Isle of Wight, UK: Libra Design Associates Ltd. p. 11. Retrieved 2020-09-06.
Fortunately, there is a much more elegant solution, as shown in Figure 20 below, known as the Polyphase or WOLA (Weight, Overlap and Add) FFT.
-
Hochgürtel, Stefan (2013). "Efficient implementations of high-resolution wideband FFT-spectrometers and their application to an APEX Galactic Center line survey" (PDF). hss.ulb.uni-bonn.de. Bonn: Rhenish Friedrich Wilhelms University of Bonn. pp. 26–27. Retrieved 2020-09-06.
To perform M-fold WOLA for an N-point DFT, M·N real input samples aj first multiplied by a window function wj of same size
- Chennamangalam, Jayanth (2016-10-18). "The Polyphase Filter Bank Technique". CASPER Group. Retrieved 2016-10-30.
- Dahl, Jason F. (2003-02-06). Time Aliasing Methods of Spectrum Estimation (Ph.D.). Brigham Young University. Retrieved 2016-10-31.
- Lin, Yuan-Pei; Vaidyanathan, P.P. (June 1998). "A Kaiser Window Approach for the Design of Prototype Filters of Cosine Modulated Filterbanks" (PDF). IEEE Signal Processing Letters. 5 (6): 132–134. Bibcode:1998ISPL....5..132L. doi:10.1109/97.681427. S2CID 18159105. Retrieved 2017-03-16.
- Harris, Frederic J. (2004-05-24). "9". Multirate Signal Processing for Communication Systems. Upper Saddle River, NJ: Prentice Hall PTR. pp. 226–253. ISBN 0131465112.
- Harris, Fredric J. (Jan 1978). "On the use of Windows for Harmonic Analysis with the Discrete Fourier Transform" (PDF). Proceedings of the IEEE. 66 (1): 51–83. Bibcode:1978IEEEP..66...51H. CiteSeerX 10.1.1.649.9880. doi:10.1109/PROC.1978.10837. S2CID 426548.
- Proakis, John G.; Manolakis, Dimitri G. (1996). Digital Signal Processing: Principles, Algorithms and Applications (3 ed.). New Jersey: Prentice-Hall International. Bibcode:1996dspp.book.....P. ISBN 9780133942897. sAcfAQAAIAAJ.
- Rabiner, Lawrence R.; Gold, Bernard (1975). Theory and application of digital signal processing. Englewood Cliffs, NJ: Prentice-Hall, Inc. p. 59 (2.163). ISBN 978-0139141010.
Further reading
- Porat, Boaz (1996). A Course in Digital Signal Processing. John Wiley and Sons. pp. 27–29 and 104–105. ISBN 0-471-14961-6.
- Siebert, William M. (1986). Circuits, Signals, and Systems. MIT Electrical Engineering and Computer Science Series. Cambridge, MA: MIT Press. ISBN 0262690950.
- Lyons, Richard G. (2010). Understanding Digital Signal Processing (3rd ed.). Prentice Hall. ISBN 978-0137027415.