请参考:
计算下式的单位冲激响应和单位阶跃响应:
y(n)+0.7y(n-1)-0.45y(n-2)-0.6y(n-3)=0.8x(n)-0.44x(n-1)+0.36x(n-2)+0.02x(n-3)
N=50;
b=[0.8,-0.44,0.36,0.02];
a=[1,0.7,-0.45,-0.6];
%求单位冲激响应
%用filter函数用单位冲激响应
x1=[1,zeros(1,N-1)]; %产生单位冲激序列
y1=filter(b,a,x1);
n=[0:N-1];
subplot(2,2,1)
stem(n,y1)
xlabel(‘n’);ylabel(‘y(n)’);
title(‘Filter函数求得的单位冲激响应’)
%用impz函数求单位冲激响应
y2=impz(b,a);
subplot(2,2,2)
stem(n,y2)
xlabel(‘n’);ylabel(‘y(n)’);
title(‘Impz函数求得的单位冲激响应’)
%用Filter函数求单位阶跃响应
x2=ones(1,N);
y3=filter(b,a,x2);
subplot(2,2,3)
stem(y3)
xlabel(‘n’);ylabel(‘y(n)’);
title(‘Filter函数求得的单位阶跃响应’)
%用stepz函数求单位阶跃响应
y4=stepz(b,a,N);
subplot(2,2,4)
stem(y4)
xlabel(‘n’);ylabel(‘y(n)’);
title(‘Filter函数求得的单位阶跃响应’)