1、数字信号处理离散系统的时域分析成绩 数字信号处理实验报告 实验名称: 离散系统的时域分析 实验班级: 姓 名: 学号(后两位): 指导教师: 实验日期: 实验一、 离散系统的时域分析一、实验目的1、熟悉并掌握离散系统的差分方程表示法;2、加深对冲激响应和卷积分析方法的理解。 二、实验内容1、以下程序中分别使用conv和filter函数计算h和x的卷积y和y1,运行程序,并分析y和y1是否有差别,为什么要使用xn补零后的x1来产生y1;具体分析当hn有i个值,xn有j个值,使用filter完成卷积功能,需要如何补零?% Program P2_7clf;h = 3 2 1 -2 1 0 -4 0
2、3; %impulse responsex = 1 -2 3 -4 3 2 1; %input sequencey = conv(h,x);n = 0:14;subplot(2,1,1);stem(n,y);xlabel(Time index n); ylabel(Amplitude);title(Output Obtained by Convolution); grid;x1 = x zeros(1,8);y1 = filter(h,1,x1);subplot(2,1,2);stem(n,y1);xlabel(Time index n); ylabel(Amplitude);title(Ou
3、tput Generated by Filtering); grid; 答:运行程序后结果如上图所示,观察图形可知,两者并没有区别。之所以使用xn补零后的x1来产生y1是因为filter函数要求输出信号向量yn与输入信号xn长度相等。当hn有i个值,xn有j个值时,以n为x轴,n=0:N,则xn至少要补i-1个零。其中N=i+j-2,n的长度与补零后xn的长度相等。2、编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。要求分别用 filter、conv、impz三种函数完成。,,给出理论计算结果和程序计算结果并讨论。答:理论计算结果如下:其单位冲激响应为: 单位阶跃响应为: (1
4、) 单位冲击响应:1 用filter函数程序如下:a1=1,0.75,0.125;a2=1;b1=1,-1;b2=0,0.25,0.25,0.25,0.25n=0:20;x1=1 zeros(1,20);x2=1 zeros(1,20);y1=filter(b1,a1,x1);y2=filter(b2,a2,x2);subplot(2,1,1)stem(n,y1);title(y1filter);xlabel(x);ylabel(y);subplot(2,1,2)stem(n,y2);title(y2filter);xlabel(x);ylabel(y);运行结果为:2 用conv函数程序如下
5、:a1=1,0.75,0.125;a2=1;b1=1,-1;b2=0,0.25,0.25,0.25,0.25;x1=1 zeros(1,10);x2=1 zeros(1,10);h1=impz(b1,a1,10);h2=impz(b2,a2,10);subplot(211)y1=conv(h1,x1);n=0:19;stem(n,y1)subplot(212)y2=conv(h2,x2);n=0:19;stem(n,y2)运行结果为:3 用impz函数程序如下:a1=1,0.75,0.125;a2=1;b1=1,-1;b2=0,0.25,0.25,0.25,0.25;subplot(211)i
6、mpz(b1,a1,21);subplot(212)impz(b2,a2,21);运行结果为:(2)单位阶跃响应用filter函数编写程序如下:a1=1,0.75,0.125;a2=1;b1=1,-1;b2=0,0.25,0.25,0.25,0.25;n=0:10;x=ones(1,11);y1=filter(b1,a1,x);y2=filter(b2,a2,x);subplot(211)stem(n,y1);title(y1filter_step);xlabel(x);ylabel(y);subplot(212)stem(n,y2);title(y2filter_step);xlabel(x
7、);ylabel(y);运行结果为:用conv函数编写程序如下:a1=1,0.75,0.125;a2=1;b1=1,-1;b2=0,0.25,0.25,0.25,0.25x=ones(1,21);h1=impz(b1,a1,20);h2=impz(b2,a2,20);y1=conv(h1,x);y2=conv(h2,x);y1=y1(1:21);y2=y2(1:21);n=0:20;subplot(211)stem(n,y1,filled);title(y1conv);xlabel(n);ylabel(y1n);subplot(212)stem(n,y2,filled);title(y2conv);xlabel(n);ylabel(y2n);运行结果为:3 用impz函数编写程序如下:a1=1,0.75,0.125;a2=1;b1=1;b2=0,0.25,0.5,0.75,ones(1,17);subplot(211)impz(b1,a1,21);subplot(212)impz(b2,a2,21);运行结果如下:三、实验总结