Getting the DTFT from the DFT samples How would you get the DTFT from the DFT samples?

How will the DFT indexes map to the discrete frequency and what kind of an interpolation would be required?
Myth: DTFT is Sinc-interpolated DFT.

Problem with the above statement: Sinc is not $2\pi$-Periodic function, but all DTFTs are. 

Correct Answer:


Theoretical, Continuous-$\omega$ $2\pi$-Periodic DTFT can be obtained by continuous Lagrangian-interpolation of the DFT Samples. So that the values at $\omega = 2\pi k/N$ will be the DFT Samples $X[k]$ for $k=0,1,...,N-1$ and the Interpolation-function's zero-crossings are at $2\pi k/N$.


In other words, DTFT will take same values at roots of unity as DFT Samples, but it will be a smooth interpolation of the DFT at other values of digital frequency $\omega$.

Mathematically, let $x[n]$ be N-Length sequence and $X[k]$ be it's N-point DFT. Now, DTFT is defined for infinite length sequences. So, lets derive DTFT of a finite length $x[n]$.

$$X(e^{j\omega}) = \sum^{N-1}_{n=0} x[n]e^{-j\omega n},$$ now write IDFT of $X[k]$ in place of $x[n]$.

$$X(e^{j\omega}) = \sum^{N-1}_{n=0} (1/N.\sum^{N-1}_{k=0}X[k]e^{j 2\pi k/N})e^{-j\omega n},$$ now bring summation w.r.t n inside,

$$X(e^{j\omega}) = \sum^{N-1}_{k=0} (X[k] (\sum^{N-1}_{n=0}1/N e^{j 2\pi k/N}e^{-j\omega n}))$$

$$ = \sum^{N-1}_{k=0} (X[k] (\sum^{N-1}_{n=0}1/N e^{-jn(\omega - 2\pi k/N)}))$$

So, basically, $$X(e^{j\omega}) = \sum^{N-1}_{k=0} X[k]. \Lambda(w - 2\pi k/N),$$ where $$\Lambda(w) = 1/N \sum^{N-1}_{n=0} e^{-jn\omega}.$$

What this means is each sample of $X[k]$ is multiplied a $2\pi k/N$ shifted copy of $\Lambda(\omega)$ and added together. Basically, $X[k]$ is interpolated by a continuous-$\omega$ and $2\pi$-Periodic function $\Lambda(\omega)$. And this function is not a Sinc-function but something else. Sure it looks like Sinc and it will approach to Sinc in the limit.

Further , $$\Lambda(\omega) = \frac{1}{N}*e^{-j\omega\frac{(N-1)}{2}} \frac{\sin(N\omega/2)}{\sin(\omega/2)}.$$ Plotting this function in $[-\pi,\pi]$ is below:

&gt;&gt; w = -pi:0.0001:pi;
&gt;&gt; y = 1/64 * sin(w*64/2)./sin(w/2);
&gt;&gt; plot(w,y)




I repeat, it is not a sinc interpolation. Sinc is not $2\pi$-Periodic function. There is no way we can get a DTFT by interpolating with sinc.


Practically, you can get DTFT by interpolating with the MATLAB snippet I have provided which approximates $\Lambda(\omega)$ function.


What you can check yourself is extending the above plot to $[-4\pi:4\pi]$ and see that it indeed is Periodic function.