 Settings

# Joy of convolution

## (Discrete Time) Convolution

The behavior of a linear, time-invariant discrete-time system with input signal x[n] and output signal y[n] is described by the convolution sum: The signal h[n], assumed known, is the response of the system to a unit-pulse input.
The convolution summation has a simple graphical interpretation. First, plot h[k] and the "flipped and shifted" x[n - k] on the k axis, where n is fixed. Second, multiply the two signals to obtain a plot of the summand sequence indexed by k. Summing the values of this sequence with respect to k yields y[n]. These operations can be repeated for every value of n of interest.

## (Continuous Time) Convolution

The behavior of a linear, continuous-time, time-invariant system with input signal x(t) and output signal y(t) is described by the convolution integral The signal h(t), assumed known, is the response of the system to a unit impulse input. To compute the output y(t) at a specified t, first the integrand h(v)x(t - v) is computed as a function of v.Then integration with respect to v is performed, resulting in y(t).
These mathematical operations have simple graphical interpretations.First, plot h(v) and the "flipped and shifted" x(t - v) on the v axis, where t is fixed. Second, multiply the two signals and compute the signed area of the resulting function of v to obtain y(t). These operations can be repeated for every value of t of interest.

### Explore graphical convolution

To explore graphical convolution, select signals x[n] or h[n] from the provided examples below, or use the mouse to create your own or modify a signal. Furthmore, by using a right mouse click, one can start drawing polygons between right mouse click events and end them with a single left mouse click.
Click and drag on the the plot displaying x[n-k] and h[k] to modify the current k-value. During dragging the plot of x[n-k] * h[k] as well as the plot of y[n]will be updated live.  Your Browser does not support the HTML5-Canvas element.  Your Browser does not support the HTML5-Canvas element.
Your Browser does not support the HTML5-Canvas element. Your Browser does not support the HTML5-Canvas element.      Your Browser does not support the HTML5-Canvas element.   Your Browser does not support the HTML5-Canvas element. 