Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Discrete-time Fourier transform
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== {{anchor|DFT}}Sampling the DTFT == When the DTFT is continuous, a common practice is to compute an arbitrary number of samples <math>(N)</math> of one cycle of the periodic function <math>S_{1/T}</math>''':''' <ref name=Oppenheim/>{{rp|pp 557–559 & 703}} <ref name=Prandoni/>{{rp|p 76}} :<math> \begin{align} \underbrace{S_{1/T}\left(\frac{k}{NT}\right)}_{S_k} &= \sum_{n=-\infty}^\infty s[n]\cdot e^{-i 2\pi \frac{k}{N}n} \quad \quad k = 0, \dots, N-1 \\ &= \underbrace{\sum_{N} s_{_N}[n]\cdot e^{-i 2\pi \frac{k}{N}n},}_{\text{DFT}}\quad \scriptstyle{\text{(sum over any }n\text{-sequence of length }N)} \end{align} </math> where <math>s_{_N}</math> is a [[periodic summation]]''':''' :<math>s_{_N}[n]\ \triangleq\ \sum_{m=-\infty}^{\infty} s[n-mN].</math> (see [[Discrete Fourier series]]) The <math>s_{_N}</math> sequence is the inverse DFT. Thus, our sampling of the DTFT causes the inverse transform to become periodic. The array of <math>|S_k|^2</math> values is known as a ''[[periodogram]]'', and the parameter <math>N</math> is called NFFT in the Matlab function of the same name.<ref name=Matlab/> In order to evaluate one cycle of <math>s_{_N}</math> numerically, we require a finite-length <math>s[n]</math> sequence. For instance, a long sequence might be truncated by a [[window function]] of length <math>L</math> resulting in three cases worthy of special mention. For notational simplicity, consider the <math>s[n]</math> values below to represent the values modified by the window function. {{anchor|L{{=}}N×I}}'''Case: Frequency decimation.''' <math>L=N\cdot I,</math> for some integer <math>I</math> (typically 6 or 8) A cycle of <math>s_{_N}</math> reduces to a summation of <math>I</math> segments of length <math>N.</math> The DFT then goes by various names, such as''':''' *''window-presum FFT''<ref name=Gumas/> *''Weight, overlap, add (WOLA)''<ref name=Crochiere/><ref name=Wang/><ref name=Lyons/><ref name=Lillington/><ref name=Lillington2/><ref name="Hochgürtel"/>{{efn-ua |WOLA should not be confused with the [[Overlap-add method]] of piecewise convolution. }}{{efn-ua |WOLA example: [[:File:WOLA channelizer example.png]] }} *''polyphase DFT''<ref name=Lillington/><ref name=Lillington2/> *''polyphase filter bank''<ref name=Chennamangalam/> *''multiple block windowing'' and ''time-aliasing''.<ref name=Dahl/> 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 <math>L</math>-length DFT, the <math>s_{_N}</math> summation/overlap causes decimation in frequency,<ref name=Oppenheim/>{{rp|p.558}} leaving only DTFT samples least affected by [[spectral leakage]]. That is usually a priority when implementing an FFT [[filter bank|filter-bank]] (channelizer). With a conventional window function of length <math>L,</math> [[Spectral leakage#Window tradeoffs|scalloping loss]] would be unacceptable. So multi-block windows are created using [[FIR filter]] design tools.<ref name=Lin/><ref name=Harrisbook/><!--removing a dead link <ref>{{Citation |title=cmfb.m |publisher=Caltech |url=http://www.systems.caltech.edu/dsp/software/conventional/cmfb.m |access-date=2017-03-16}}</ref>--> 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 <math>I,</math> the better the potential performance. {{anchor|L{{=}}N+1}}'''Case: <math>L=N+1</math>''' When a symmetric, <math>L</math>-length [[window function]] (<math>s</math>) is truncated by 1 coefficient it is called [[Spectral_leakage#DFT-symmetry|''periodic'' or ''DFT-even'']]. That is a common practice, but the truncation affects the DTFT (spectral leakage) by a small amount. It is at least of academic interest to characterize that effect. An <math>N</math>-length DFT of the truncated window produces frequency samples at intervals of <math>1/N,</math> instead of <math>1/L.</math> The samples are real-valued,<ref name=Harris/>{{rp|p.52}} but their values do not exactly match the DTFT of the symmetric window. The periodic summation, <math>s_{_N},</math> along with an <math>N</math>-length DFT, can also be used to sample the DTFT at intervals of <math>1/N.</math> Those samples are also real-valued and do exactly match the DTFT (example: [[:File:Sampling the Discrete-time Fourier transform.svg]]). To use the full symmetric window for spectral analysis at the <math>1/N</math> spacing, one would combine the <math>n=0</math> and <math>n=N</math> data samples (by addition, because the symmetrical window weights them equally) and then apply the truncated symmetric window and the <math>N</math>-length DFT. [[Image:zeropad.png|thumb|350px|Fig 2. DFT of {{math|''e''<sup>i2πn/8</sup>}} for {{math|''L'' {{=}} 64}} and {{math|''N'' {{=}} 256}}]] [[Image:no-zeropad.png|thumb|350px|Fig 3. DFT of {{math|''e''<sup>i2πn/8</sup>}} for {{math|''L'' {{=}} 64}} and {{math|''N'' {{=}} 64}}]] {{anchor|L≤N}}'''Case: Frequency interpolation.''' <math>L \le N</math> In this case, the DFT simplifies to a more familiar form''':''' :<math>S_k = \sum_{n=0}^{N-1} s[n]\cdot e^{-i 2\pi \frac{k}{N}n}.</math> In order to take advantage of a fast Fourier transform algorithm for computing the DFT, the summation is usually performed over all <math>N</math> terms, even though <math>N-L</math> of them are zeros. Therefore, the case <math>L < N</math> is often referred to as '''zero-padding'''. Spectral leakage, which increases as <math>L</math> 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 <math>s[n]</math> 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: :<math>s[n] = e^{i 2\pi \frac{1}{8} n},\quad </math> and <math>L=64.</math> '''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: <math>f = 1/8 = 0.125</math>. Also visible in '''Fig 2''' is the spectral leakage pattern of the <math>L=64</math> 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 [[Window_function#Hann_and_Hamming_windows|Hann window]] would produce a similar result, except the peak would be widened to 3 samples (see [https://commons.wikimedia.org/wiki/File:DFT-even_Hann_window_&_spectral_leakage.png DFT-even Hann window]).
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)