FourierTools.jl icon indicating copy to clipboard operation
FourierTools.jl copied to clipboard

Wraparound free convolution

Open roflmaostc opened this issue 3 years ago • 3 comments

Just as a note and how we could implement it:

function conv(u, v, wrap_free=true)
      pad u to twice the size
      v needs to be known for the full size
      convolve it 
      take center part of original size of u

Important is, that v needs to be known in the double field size if v is not 0 anyway on the border.

roflmaostc avatar Oct 27 '22 15:10 roflmaostc

Yes, this would be the classical way. Yet, I wonder 1.) if we can avoid the padding. If you think about an FFT, can we not avoid the first Butterfly step or so by knowing which part is zero? 2.) if it is smart to use CZT since this can zoom. Maybe running it backwards automatically zero-pads?

RainerHeintzmann avatar Oct 27 '22 15:10 RainerHeintzmann

By looking at this, you don't much I guess https://www.researchgate.net/publication/4204073_On_Cooley-Tukey_FFT_method_for_zero_padded_signals/link/57455fcd08ae9f741b408c3e/download

roflmaostc avatar Feb 08 '23 14:02 roflmaostc

... not worth the trouble, I guess.

RainerHeintzmann avatar Feb 08 '23 15:02 RainerHeintzmann