# Deconvolution (G Dataflow)

Version:

Computes the deconvolution of two sequences.

The deconvolution operation is performed using Fourier transform pairs.

## x * y

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. If the number of elements in x * y is less than the number of elements in y, the node sets x to an empty array and returns an error.

## y

The array of dependent values.

## error in

Error conditions that occur before this node runs. The node responds to this input according to standard error behavior.

Default: No error

## x

The deconvolved sequence.

The number of elements in x is n - m + 1 where n is the number of elements in x * y and m is the number of elements in y.

## error out

Error information. The node produces this output according to standard error behavior.

## Algorithm for Calculating the Deconvolution of a Signal

This node can use Fourier identities to derive the deconvolution operation because $x\left(t\right)*y\left(t\right)⇔X\left(f\right)Y\left(f\right)$ 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 node obtains h(t) using the following equation:

$h\left(t\right)={F}^{-1}\left(\frac{X\left(f\right)}{Y\left(f\right)}\right)$

where X(f) is the Fourier transform of x(t), and Y(f) is the Fourier transform of y(t).

## Performing the Discrete Implementation of the Deconvolution

This node performs the discrete implementation of the deconvolution using the following steps.

1. Compute the Fourier transform of the input sequence x * y.
2. Compute the Fourier transform of the input sequence y.
3. Divide the Fourier transform of x * y by the Fourier transform of y. Call the new sequence h.
4. Compute the inverse Fourier transform of h to obtain the deconvolved sequence x.
Note

When there are zeros in the Fourier transform of the input sequence y, the deconvolution operation may fail.

Where This Node Can Run:

Desktop OS: Windows

FPGA: Not supported