12
$\begingroup$

In many of my readings, whenever some author speaks about working in the frequency (transform) domain (of a digital signal), they often times take the DFT, or the DTFT, (and of course their corresponding inverses). Different authors will tend to work with one or the other.

I have not been able to really ascertain a particular pattern regarding this. In that, why would you pick the DTFT over the DFT or vice versa in explaining algorithms? Where does one help you over the other?

$\endgroup$
  • 3
    $\begingroup$ The DTFT can be used when the samples are not equally spaced in time, the DFT cannot. $\endgroup$ – Dilip Sarwate Aug 30 '13 at 2:19
  • $\begingroup$ @DilipSarwate Ahh good point. $\endgroup$ – TheGrapeBeyond Aug 30 '13 at 15:39
16
$\begingroup$

DFT and DTFT are obviously similar as they both generate the fourier spectrum of time-discrete signals. However, while the DTFT is defined to process an infinitely long signal (sum from -infinity to infinity), the DFT is defined to process a periodic signal (the periodic part being of finite length).

We know that the number of frequency bins in your spectrum is always equal to the number of samples processed, so this also gives a difference in the spectrums they produce: the DFT spectrum is discrete while the DTFT spectrum is continuous (but both are periodic with respect to the Nyquist frequency).

Since it is impossible to process an infinite number of samples the DTFT is of less importance for actual computational processing; it mainly exists for analytical purposes.

The DFT however, with its finite input vector length, is perfectly suitable for processing. The fact that the input signal is supposed to be an excerpt of a periodic signal however is disregarded most of the time: When you transform a DFT-spectrum back to the time-domain you will get the same signal of wich you calculated the spectrum in the first place.

So while it does not matter for the computations you should note that what you are seeing there is not the actual spectrum of your signal. It is the spectrum of a theoretical signal that you would get if you periodically repeated the input vector.

So I would assume in the literature you were mentioning, every time it is important that the spectrum you're working with is actually the spectrum and disregarding the computation side of things, the author would pick the DTFT.

$\endgroup$
  • $\begingroup$ So, if a signal is never realistically of infinite length, then why analyse using the DTFT then in many papers I see? Is there some sort of easiness or something that comes with it? $\endgroup$ – TheGrapeBeyond Aug 29 '13 at 16:44
  • $\begingroup$ More mathematical correctness than easiness. I.e. when writing a mathematical proof for non-periodic signals you have no choice but to assume your signal to be of infinite length because that's how the Fourier transform (both discrete and continuous) works. $\endgroup$ – Nils Werner Aug 29 '13 at 16:53
  • $\begingroup$ Im not trying to be difficult, but if you are going to always assume your signal is periodic, and the DTFT is more mathematically correct, then why use the DFT at all in analysis then? Why use one over the other is what I am trying to get at, when analyzing algorithms? $\endgroup$ – TheGrapeBeyond Aug 29 '13 at 16:58
  • $\begingroup$ When you want to think about transforming time-limited signals you need to think of your infinite signal as being multiplied with a "window function", effectively cropping out the part you're interested in. The easiest case would be a rectangular function; however this window function needs to be transformed and then convolved over the signal, too. This causes smearing and the so-called leakage effect. $\endgroup$ – Nils Werner Aug 29 '13 at 16:58
  • 2
    $\begingroup$ When to use the DFT in analysis. My guess is that coming from the maths side you want to use the DTFT because you do not need to account for artifacts and once you come down to the software layer you then switch to the DFT with all the problems it brings to the table. $\endgroup$ – Nils Werner Aug 29 '13 at 17:06
6
$\begingroup$

The DTFT is used when the math for proving some point is easier (saves on paper and/or chalk) when assuming an infinite number of samples. Meaning that's it's actually useless in the real world (you'll be dead long before you find you have enough samples).

The DFT is when you pick a useful finite number of samples to work with (giving you a nice finite size square matrix multiply exact equivalent), whether or not they are periodic (assuming periodicity of frame length is another delusion in the minds of some people to again make the math more tractable). Using a DFT thus usually implies a window (rectangular, if not something else) which is not necessary in the DTFT. This window comes with sometimes nasty artifacts, as well as the obvious loss of information about the signal outside the window, which is a downside of the DFT.

$\endgroup$
  • $\begingroup$ +1 but can you elaborate a little bit on why the implicit periodicity of DFT is a delusion? $\endgroup$ – Deve Aug 30 '13 at 7:49
  • $\begingroup$ The assumption is inconsistent with the actual data outside the DFT window in many common uses (audio, etc.) $\endgroup$ – hotpaw2 Aug 30 '13 at 10:52
  • $\begingroup$ I upvoted you, but why do you say that it is a delusion that the DFT assumes data is periodic? If I make it a question may you answer it? $\endgroup$ – TheGrapeBeyond Aug 30 '13 at 15:38
  • 1
    $\begingroup$ Might be a good question for the math, English usage, psychology or philosophy stack exchange sites. Anthropomorphisizing operator functions may be an interesting human behavior. $\endgroup$ – hotpaw2 Aug 30 '13 at 17:50
-2
$\begingroup$

The DFT is the transform of limited no of samples of a periodic signal. the DTFT is a transform of the entire sample signal from $-\infty$ to $+\infty$ and input so not necessarily periodic.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.