Wednesday, 15 March 2017

DFT (Discrete Fourier Transform)

DFT is basically a frequency sampling of Discrete Time Fourier Transform that produces periodic results. This is because a finite sequence of equally spaced samples of a function can be converted into equivalent length sequences of equally spaced samples. An approximate frequency spectrum of a signal can be obtained using DFT Algorithm.If the length of signal is increased then its DFT produces more compressed frequency spectrum. So we use zero padding to reduce the frequency spacing in the output spectrum. This reduces the approximation error.

12 comments:

  1. Which is faster DITFFT or DIFFFT?

    ReplyDelete
    Replies
    1. In DITFFT the input need to be rearranged which is time consuming as far as the algorithm is concerned.

      Delete
  2. In practice there's no major difference in implementation as far as no. of steps and calculations are concerned.But the hardware implementation gets changed in both the cases.For certain FFT variants hardware implementation is much more optimized.
    Refer this: http://www.ti.com/lit/an/spra152/spra152.pdf

    ReplyDelete
  3. DFT is a generalized complex computation method for frequency domain analysis. Here, complex numbers are used as a signal is represented as a sum of sines and cosines which have a mutual 90 degree phase shift.

    ReplyDelete
    Replies
    1. Representation using sine and cosine terms is what we call definition of Fourier Transform. DFT is its frequency sampling in discrete domain.

      Delete
  4. The magnitude spectrum is periodic due to the characteristic of twiddle factor

    ReplyDelete
    Replies
    1. Exactly. Hence the input to a DFT block need not be necessarily periodic.

      Delete
    2. But the output will always be periodic.

      Delete
  5. discrete Fourier transform (DFT) is a specific kind of discrete transform, used in Fourier analysis.It transforms one function into another, which is called the frequency domain representation, or simply the DFT

    ReplyDelete