Deconvolution VI
- Updated2025-07-30
- 3 minute(s) read
Computes the deconvolution of the input sequences X * Y and Y.
The deconvolution operation is performed using Fourier transform pairs.

Inputs/Outputs
X * Y
—
X * Y is the set of input data. The number of elements in X * Y must be greater than or equal to the number of elements in Y: n greater than or equal to m. If the number of elements in X * Y is less than the number of elements in Y, the VI sets X to an empty array and returns an error.
Y
—
Y is the array of dependent values.
X
—
X is the deconvolved sequence of X * Y and Y. The number of elements in X is size = n – m + 1 where n is the number of elements in X * Y and m is the number of elements in Y.
error
—
error returns any error or warning from the VI. You can wire error to the Error Cluster From Error Code VI to convert the error code or warning into an error cluster. |
The Deconvolution VI can use Fourier identities to realize the convolution operation because
x(t) * y(t) ⇔ X(f) Y(f)is a Fourier transform pair, where the symbol * denotes convolution, and the deconvolution is the inverse of the convolution operation. If h(t) is the signal resulting from the deconvolution of the signals x(t) and y(t), the Deconvolution VI obtains h(t) using the equation
,
where X(f) is the Fourier transform of x(t), and Y(f) is the Fourier transform of y(t).
The Deconvolution VI performs the discrete implementation of the deconvolution using the following steps.
- Compute the Fourier transform of the input sequence X * Y.
- Compute the Fourier transform of the input sequence Y.
- Divide the Fourier transform of X * Y by the Fourier transform of Y. Call the new sequence h.
- Compute the inverse Fourier transform of h to obtain the deconvolved sequence X.
X * Y
—
X
—
error
—