DADiSP Worksheet Functions > Function Categories > Fourier Transforms and Signal Processing > FDECONV

 

FDECONV

Purpose:

Performs deconvolution of two series in the frequency domain.

Syntax:

FDECONV(b, a)

(q, r) = FDECONV(b, a)

b

-

A series.

a

-

A series.

Returns:

A series such that b = conv(a, q) + r.

Example:

a = {0, 3, 2, 3};

x = {1, 2, 1};

b = conv(a, x);

 

(q, r) = fdeconv(b, a);

 

b == {0, 3, 8, 10, 8, 3}

q == {1, 2, 1}

r == {0, 0, 0, 0, 0, 0}

Example:

a = gnorm(1000, .001)

x = gsin(1000, .001, 3)

b = conv(x, a)

 

q = fdeconv(b, a)

 

q recovers the 3 Hertz sine wave.

Remarks:

FDECONV is appropriate for recovering a series from a convolution process. FDECONV uses the FFT to compute the deconvolution with:

 

real(ifft(fft(b) / fft(a)))

 

If the denominator series a contains a zero, the FFT quotient value is replaced by DEFAULT_MATH_VALUE.

 

See DECONV for a time domain implementation.

See Also:

CONV

DECONV

FCONV

FFT

POLYDER