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? Thanks in advance. -- Les Cargill

# 1D Deconvolution

Started by ●March 11, 2016

Reply by ●March 11, 20162016-03-11

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? > > Thanks in advance. > > -- > 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 ----Android NewsGroup Reader---- http://usenet.sinaapp.com/

Reply by ●March 11, 20162016-03-11

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

Reply by ●March 11, 20162016-03-11

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 >I had no idea the fft had that property. Thanks, Bob. -- Les Cargill