This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

dsp.Convolver System object

Package: dsp

Convolution of two inputs


The Convolver computes the convolution of two inputs.

To compute the convolution of two inputs:

  1. Define and set up your convolver. See Construction.

  2. Call step to compute the convolution according to the properties of dsp.Convolver. The behavior of step is specific to each object in the toolbox.

    Note:   Starting in R2016b, instead of using the step method to perform the operation defined by the System object™, you can call the object with arguments, as if it were a function. For example, y = step(obj,x) and y = obj(x) perform equivalent operations.


conv = dsp.Convolver returns a convolver object, conv, that convolves two inputs. For N-D arrays, the convolver computes the convolution column-wise. For arrays, the inputs must have an equal number of columns. If one input is a vector and the other is an N-D array, the convolver computes the convolution of the vector with each column of the N-D array. Convolving inputs of length N and M results in a sequence of length N+M–1. Convolving matrices of size M-by-N and P-by-N results in a matrix of size (M+P–1)-by-N.

conv = dsp.Convolver('PropertyName',PropertyValue, ...) returns a convolver object, conv, with each property set to the specified value.



Domain for computing convolutions

Specify the domain in which the convolver performs the convolutions as Time Domain, Frequency Domain, or Fastest. Computing convolutions in the time domain minimizes memory use. Computing convolutions in the frequency domain may require fewer computations depending on the input length. If the value of this property is Fastest, the object computes convolutions in the domain which minimizes the number of computations. The default is Time Domain.

 Fixed-Point Properties


stepConvolution of inputs
Common to All System Objects

Create System object with same property values


Expected number of inputs to a System object


Expected number of outputs of a System object


Check locked states of a System object (logical)


Allow System object property value changes


expand all

Note: This example runs only in R2016b or later. If you are using an earlier release, replace each call to the function with the equivalent step syntax. For example, myObject(x) becomes step(myObject,x).

conv = dsp.Convolver;
x = ones(10,1);
y = conv(x, x);

Result is a triangular sequence



This object implements the algorithm, inputs, and outputs described on the Convolution block reference page. The object properties correspond to the block parameters.

Extended Capabilities

Introduced in R2012a

Was this topic helpful?