Circular convolution is used to convolve two discrete Fourier transform (DFT) sequences. For long sequences, circular convolution can be faster than linear convolution.
c = cconv(a,b,n) circularly convolves vectors a and b. n is the length of the resulting vector. If you omit n, it defaults to length(a)+length(b)-1. When n = length(a)+length(b)-1, the circular convolution is equivalent to the linear convolution computed with conv. You can also use cconv to compute the circular cross-correlation of two sequences.
c = cconv(gpuArrayA,gpuArrayB,n) returns the circular convolution of the input vectors of class gpuArray.
c = cconv(a,b,n) c = cconv(gpuArrayA,gpuArrayB,n)
%Generate two vectors and compute their modulo-4 circular convolution. a = [2 1 2 1]; b = [1 2 3 4]; c = cconv(a,b,4)
c = 14 16 14 16