# 1D Deconvolution

Started by March 11, 2016
```Rosetta code has a 'C' example of 1D deconvolution.

https://rosettacode.org/wiki/Deconvolution/1D

It basically:

- takes the FFT of the convoluted signal.
- takes the FFT of the original.
- divides 'em.
- Takes the FFT of the result.

Is the FFT after the divide one of those cases where this fft is its own
inverse - it is being used as an ifft?

--
Les Cargill
```
```Les Cargill <lcargill99@comcast.com> Wrote in message:
> Rosetta code has a 'C' example of 1D deconvolution.
>
> https://rosettacode.org/wiki/Deconvolution/1D
>
> It basically:
>
> - takes the FFT of the convoluted signal.
> - takes the FFT of the original.
> - divides 'em.
> - Takes the FFT of the result.
>
> Is the FFT after the divide one of those cases where this fft is its own
> inverse - it is being used as an ifft?
>
>
> --
> Les Cargill
>

More or less. They should be doing a real ifft, and the divide is
only valid if the original had no zero-energy bins.

--
www.wescottdesign.com

http://usenet.sinaapp.com/
```
```I looked briefly at the C code.  There's an interesting bit of code in the deconv function that transfers the h buffer to the out buffer. It looks like the output buffer is time reversed and also truncated such that the output length is limited to the difference in length between the output sequence  and the input sequence , so this produces linear de-convolution instead of circular. But I think it's the time reversal that allows you to use an fft instead of an ifft.

Bob
```
```radams2000@gmail.com wrote:
> I looked briefly at the C code.  There's an interesting bit of code
> in the deconv function that transfers the h buffer to the out buffer.
> It looks like the output buffer is time reversed and also truncated
> such that the output length is limited to the difference in length
> between the output sequence  and the input sequence , so this
> produces linear de-convolution instead of circular. But I think it's
> the time reversal that allows you to use an fft instead of an ifft.
>
> Bob
>