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

 

DECONV

Purpose:

Performs deconvolution of two series in the time domain.

Syntax:

DECONV(b, a)

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

b

-

A series or array.

a

-

A series or array.

Returns:

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

Example:

a = {1, 2, 3};

x = {1, 0, -1, 2};

b = conv(a, x);

 

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

 

b == {1, 2, 2, 0, 1, 6}

q == {1, 0, -1, 2}

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

Example:

(q, r) = deconv({1, 5, 1, 2}, a)

 

q == {1, 3}

r = {0, 0, -8, -7}

 

conv(q, a) + r == {1, 5, 1, 2}

Remarks:

If a and b represent polynomial coefficients, q will contain the quotient of the polynomial and r the lowest order remainder polynomial.

 

DECONV implements deconvolution by using FILTEQ to find the impulse response of the system:

 

H(z) = B(z) / A(z)

 

Where B(z) is the Z-transform of b and A(z) is the Z-transform of a.

 

See FDECONV for the frequency domain implementation.

See Also:

CONV

FCONV

FDECONV

FILTEQ

POLYDER