码迷,mamicode.com
首页 > 其他好文 > 详细

《DSP using MATLAB》Problem 2.19

时间:2017-12-10 12:49:30      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:put   roo   dsp   sum   一个   log   height   png   背景   

技术分享图片

代码:

%% ------------------------------------------------------------------------
%%            Output Info about this m-file
fprintf(‘\n***********************************************************\n‘);
fprintf(‘        <DSP using MATLAB> Problem 2.19 \n\n‘);

banner();
%% ------------------------------------------------------------------------

b = [1, 2, 0, 1]; a = [1, -0.5, 0.25];
n = [0:100];

h1 = impz(b, a, n);

x = impseq(0, 0, 100);

h2 = filter(b, a, x);

figure(‘NumberTitle‘, ‘off‘, ‘Name‘, ‘Problem 2.19 Impulse response‘)
set(gcf,‘Color‘,[1,1,1])                  % 改变坐标外围背景颜色

subplot(2,1,1); stem(n, h1); title(‘impz function‘);
xlabel(‘n‘); ylabel(‘h1(n)‘) ;
grid on
subplot(2,1,2); stem(n, h2); title(‘filter function‘);
xlabel(‘n‘); ylabel(‘h2(n)‘);
grid on;

%% ---------------------------------------------
%%       stability
%% ---------------------------------------------

fprintf(‘\n1st impz  :  sum(abs(h)) = %f \n‘, sum(abs(h1)));
fprintf(‘\n2nd filter:  sum(abs(h)) = %f \n‘, sum(abs(h2)));

figure(‘NumberTitle‘, ‘off‘, ‘Name‘, ‘Problem 2.19 Zero-Pole‘)
set(gcf,‘Color‘,[1,1,1])                  % 改变坐标外围背景颜色
pzmap(b, a);

z = roots(a); magz = abs(z)



%% --------------------------------------
%%           another input
%% --------------------------------------
n2 = [0:200];
x2 = (5 + 3*cos(0.2*pi*n2) + 4*sin(0.6*pi*n2)) .* stepseq(0, 0, 200);

y2 = filter(b, a, x2);

figure(‘NumberTitle‘, ‘off‘, ‘Name‘, ‘Problem 2.19 Another input‘)
set(gcf,‘Color‘,[1,1,1])                  % 改变坐标外围背景颜色

subplot(2,1,1); stem(n2, x2); title(‘input‘);
xlabel(‘n2‘); ylabel(‘x2(n)‘) ;
grid on
subplot(2,1,2); stem(n2, y2); title(‘Output‘);
xlabel(‘n2‘); ylabel(‘y2(n)‘);
grid on;

  运行结果:

技术分享图片

          上图是分别用impz和filter函数得到的脉冲响应序列。

技术分享图片

          系统的脉冲响应序列是绝对可和的,另外系统的极点都位于单位圆内部(见下图),所以系统是稳定的。

技术分享图片

          给系统一个新的输入,计算新的输出,如下图:

技术分享图片

 

《DSP using MATLAB》Problem 2.19

标签:put   roo   dsp   sum   一个   log   height   png   背景   

原文地址:http://www.cnblogs.com/ky027wh-sx/p/8016420.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!