MATLAB Function Reference
  Go to function:
    Search    Help Desk 
conv    See Also

Convolution and polynomial multiplication

Syntax

Description

w = conv(u,v) convolves vectors u and v. Algebraically, convolution is the same operation as multiplying the polynomials whose coefficients are the elements of u and v.

Definition

Let m = length(u) and n = length(v). Then w is the vector of length m+n-1 whose kth element is


The sum is over all the values of j which lead to legal subscripts for u(j) and v(k+1-j), specifically j = max(1,k+1-n): min(k,m). When m = n, this gives

Algorithm

The convolution theorem says, roughly, that convolving two sequences is the same as multiplying their Fourier transforms. In order to make this precise, it is necessary to pad the two vectors with zeros and ignore roundoff error. Thus, if

X = fft([x zeros(1,length(y)-1)]) and Y = fft([y zeros(1,length(x)-1)])

then conv(x,y) = ifft(X.*Y)

See Also

convmtx, xconv2, xcorr, in the Signal Processing Toolbox, and:

deconv      Deconvolution and polynomial division

filter      Filter data with an infinite impulse response (IIR) or finite impulse response (FIR) filter



[ Previous | Help Desk | Next ]