This is where navigation should be.

GABDUAL - Canonical dual window of Gabor frame

Usage

gd=gabdual(g,a,M);
gd=gabdual(g,a,M,L);
gd=gabdual(g,a,M,'lt',lt);

Input parameters

g Gabor window.
a Length of time shift.
M Number of channels.
L Length of window. (optional)
lt Lattice type (for non-separable lattices).

Output parameters

gd Canonical dual window.

Description

gabdual(g,a,M) computes the canonical dual window of the discrete Gabor frame with window g and parameters a, M.

The window g may be a vector of numerical values, a text string or a cell array. See the help of gabwin for more details.

If the length of g is equal to M, then the input window is assumed to be an FIR window. In this case, the canonical dual window also has length of M. Otherwise the smallest possible transform length is chosen as the window length.

gabdual(g,a,M,L) returns a window that is the dual window for a system of length L. Unless the dual window is a FIR window, the dual window will have length L.

gabdual(g,a,M,'lt',lt) does the same for a non-separable lattice specified by lt. Please see the help of matrix2latticetype for a precise description of the parameter lt.

If \(a>M\) then the dual window of the Gabor Riesz sequence with window g and parameters a and M will be calculated.

Examples:

The following example shows the canonical dual window of the Gaussian window:

a=20;
M=30;
L=300;
g=pgauss(L,a*M/L);
gd=gabdual(g,a,M);

% Simple plot in the time-domain
figure(1);
plot(gd);

% Frequency domain
figure(2);
magresp(gd,'dynrange',100);