Impulse Response of discrete system

Impulse signal can be represented as:
d[n] = 1, if n=0
d[n] = 0, otherwise
it can also be written like d=[1,0,0,0,…]

Impulse Response

The impulse response h(n) is the response of filter L() at time n to unit impulse occurring at time 0.
h(n)=L(d(n))
Lets see how discrete system can be described when impulse response is known

We know that:

image002.gif

In the linear system this can be written as follows:

image004.gif

Because h(n-k)=L(d(n-k))
Then:

image006.gif

What do we get? There is obvious, that linear system can be described by its impulse response. The last expression is called convolution. This is the heart of DSP Filtering.
To write this sum in more convenient matter is assumed that:

image008.gif

Matlab example

Matlab example:

% Plot an unit impulse signal

n = -7:7;
x = [0 0 0 0 0 0 0 1 2 3 0 0 0 0 0];

subplot(4,2,1);
stem(n, x);
limit=[min(n), max(n), 0, 5];
axis(limit);
title('Input x[n]');

subplot(4,2,3);
x0=0*x;
x0(8)=x(8);
stem(n, x0);
axis(limit);
h=text(0, x0(8), 'x[0]'); set(h, 'horiz', 'center', 'vertical', 'bottom');

subplot(4,2,4);
y0=0*x;
index=find(x0);
for i=index:length(n)
y0(i)=x0(index)*exp(-(i-index)/2);
end
stem(n, y0);
axis(limit);
h=text(0, x0(8), 'x[0]*h[n-0]'); set(h, 'vertical', 'bottom');

subplot(4,2,5);
x1=0*x;
x1(9)=x(9);
stem(n, x1);
axis(limit);
h=text(1, x1(9), 'x[1]'); set(h, 'horiz', 'center', 'vertical', 'bottom');

subplot(4,2,6);
y1=0*x;
index=find(x1);
for i=index:length(n)
y1(i)=x1(index)*exp(-(i-index)/2);
end
stem(n, y1);
axis(limit);
h=text(1, x1(9), 'x[1]*h[n-1]'); set(h, 'vertical', 'bottom');

subplot(4,2,7);
x2=0*x;
x2(10)=x(10);
stem(n, x2);
axis(limit);
h=text(2, x2(10), 'x[2]'); set(h, 'horiz', 'center', 'vertical', 'bottom');

subplot(4,2,8);
y2=0*x;
index=find(x2);
for i=index:length(n)
y2(i)=x2(index)*exp(-(i-index)/2);
end
stem(n, y2);
axis(limit);
h=text(2, x2(10), 'x[2]*h[n-2]'); set(h, 'vertical', 'bottom');

subplot(4,2,2);
stem(n, y0+y1+y2);
axis(limit);
title('Output y[n] = x[0]*h[n-0] + x[1]*h[n-1] + x[2]*h[n-2]');

image010.jpg

As you can see if input queue has N samples, impulse response has M after convolution there will be total N+M-1 samples.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

To submit your comment, click the image below where it asks you to...