Slepian or DPSS Window

A window having maximal energy concentration in the main lobe is given by the digital prolate spheroidal sequence (DPSS) of order 0 [256,136]. It is obtained by using all $ M$ degrees of freedom (sample values) in an $ M$ -point window $ w(n)$ to obtain a window transform $ W(\omega)\approx\delta(\omega)$ which maximizes the energy in the main lobe of the window relative to total energy:

$\displaystyle \max_w \left[ \frac{ \mbox{main lobe energy} } { \mbox{total energy} } \right] \protect$ (4.36)

In the continuous-time case, i.e., when $ W(\omega)$ is a continuous function of $ \omega\in(-\infty,\infty)$ , the function $ W(\omega)$ which maximize this ratio is the first prolate spheroidal wave function for the given main-lobe bandwidth $ 2\omega_c$ [101], [202, p. 205].4.8

A prolate spheroidal wave function is defined as an eigenfunction of the integral equation

$\displaystyle \int_{-\omega_c}^{\omega_c} W(\nu) \frac{\sin[\pi D\cdot(\omega-\nu)]}{\pi(\omega-\nu)}\, d\omega = \lambda W(\omega) \protect$ (4.37)

where $ D$ is the nonzero duration of $ w(t)$ in seconds. This integral equation can be understood as ``cropping'' $ W(\omega)$ to zero outside its main lobe (note that the integral goes from $ -\omega _c$ to $ \omega_c$ , followed by a convolution of $ W(\omega)$ with a sinc function which ``time limits'' the window $ w(t)$ to a duration of $ D$ seconds centered at time 0 in the time domain. In operator notation,

\begin{eqnarray*}
&& [\hbox{\sc Chop}_{2\omega_c}(W)]*[D\,\mbox{sinc}(D\omega)]\\
&=& \hbox{\sc FT}(\hbox{\sc Chop}_D(\hbox{\sc IFT}(\hbox{\sc Chop}_{2\omega_c}(W)))) \eqsp \lambda W
\end{eqnarray*}

where $ \hbox{\sc Chop}_D(w)$ is a rectangular windowing operation which zeros $ w(t)$ outside the interval $ t\in[-D/2,D/2]$ .

Satisfying (3.37) means that window transform $ W(\omega)$ is an eigenfunction of this sequence of operations; that is, it can be zeroed outside the interval $ [-\omega_c,\omega_c]$ , inverse Fourier transformed, zeroed outside the interval $ [-D/2,D/2]$ , and forward Fourier transformed to yield the original Window transform $ W(\omega)$ multiplied by some scale factor $ \lambda$ (the eigenvalue of the overall operation). We may say that $ W$ is the bandlimited extrapolation of its main lobe.

The sinc function in (3.37) can be regarded as a symmetric Toeplitz operator kernel), and the integral of $ W$ multiplied by this kernel can be called a symmetric Toeplitz operator. This is a special case of a Hermitian operator, and by the general theory of Hermitian operators, there exists an infinite set of mutually orthogonal functions $ W_m(\omega)$ , each associated with a real eigenvalues $ \lambda_m$ .4.9 If $ \lambda_0$ denotes the largest such eigenvalue of (3.37), then its corresponding eigenfunction, $ W_0(\omega)\;\leftrightarrow\;
w_0(t)$ , is what we want as our Slepian window, or prolate spheroidal window in the continuous-time case. It is optimal in the sense of having maximum main-lobe energy as a fraction of total energy.

The discrete-time counterpart is Digital Prolate Spheroidal Sequences (DPSS), which may be defined as the eigenvectors of the following symmetric Toeplitz matrix constructed from a sampled sinc function [13]:

$\displaystyle S[k,l] = \frac{\sin[\omega_c T(k-l)]}{k-l}, \quad k,l=0,1,2,\ldots,M-1$ (4.38)

where $ M$ denotes the desired window length in samples, $ \omega_c$ is the desired main-lobe cut-off frequency in radians per second, and $ T$ is the sampling period in seconds. The main-lobe bandwidth is thus $ 2\omega_c$ rad/sec, counting both positive and negative frequencies.) The digital Slepian window (or DPSS window) is then given by the eigenvector corresponding to the largest eigenvalue. A simple matlab program is given in §F.1.2 for computing these windows, and facilities in Matlab and Octave are summarized in the next subsection.

Matlab for the DPSS Window

The function dpss in the Matlab Signal Processing Tool Box4.10 can be used to compute them as follows:

  w = dpss(M,alpha,1); % discrete prolate spheroidal sequence
where $ M$ is the desired window length, and $ \alpha\in[0,M/2)$ can be interpreted as half of the window's time-bandwidth product $ \Delta
t\cdot \Delta f$ in ``cycles''. Alternatively, $ \alpha $ can be interpreted as the highest bin number $ k$ inside the main lobe of the window transform $ W(\omega_k)=\hbox{\sc DFT}_M(w)$ , when the DFT length is equal to the window length $ M$ . (See the next section on the Kaiser window for more on this point.)

Some examples of DPSS windows and window transforms are given in Fig.3.29.


Next Section:
Kaiser Window
Previous Section:
Hann-Poisson Window