Search This Blog

Wednesday, March 16, 2011

Using of filter command in the convolution computation MATLAB

In the MATLAB exists the command filter that permits the resolution of difference equation numerically.
An important difference equation that express a link between input ad output in a LTI is
\[\sum_{k=0}^N a_ky(n-k) = \sum_{m=0}^M b_mx(n-m)\]
this equation can be solved using filter(b,a,x) where $b=[b_0 ... b_m],\; a=[a_0 ... a_k]$.
\[z(n) = conv(x,y) = x(n)*y(n) = \sum_{k=-\infty}^{+\infty} x(k)y(n-k)\]
Considering two sequence with finite length we can observe that:
\[filter(x,1,y)\Rightarrow 1\cdot z(n) =\sum_{m=0}^M x(m)y(n-m)\]
from below expression we can see that using filter function we can compute convolution of x and y but the result will have the dimension of x