Convolution

From testwiki
Revision as of 19:17, 23 August 2021 by imported>Ixfd64 (replace image of text with TeX)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

A convolution between two signals, x(t) and y(t), is an operation defined as follows:

x(t)*y(t)=+x(τ)y(tτ)dτ

The process of convolution is very useful in the time domain analysis of systems, because we can fully describe a system by its impulse response. Let's consider the following system which operates on an input as O{}, having characterized its impulse response by o(t):

x(t)O{}y(t)
y(t)=O[x(t)]
y(t)=x(t)*o(t)


Put into other words, the output of a system in an instant t can be written as a linear combination of past and future instants of the input and its impulse response:

y(t)=+x(τ)o(tτ)dτ

Discrete Convolution

In discrete time there is no continuous time x(t) but finite samples x[n].

So the integral can be rewritten as a sum:

(x*y)[m]=n=x[mn]*y[n]

To understand the convolution of finite length signals better, let's look at an example with the signals x=[1,2,3] and y=[6,9].

[ 1] * [6 9] = ?

[ 6 12 18  0]    // [1 2 3] * 6
[ 0  9 18 27]    // [1 2 3] * 9
-------------
[ 6 21 36 27]    // sum of the above

Note that the length of the output signal has the length N+M1 where M is the length of x and N the length of y.