Q3.47 编写一个MATLAB程序,计算并显示零点和极点,计算并显示其因式形式,并产生z?1的两个多项式之比的形式表示的z变换的极零点图。使用该程序,分析式(3.32)的z变换G(z)。
编写的MATLAB程序:
clf;
% initialize
num = [2 5 9 5 3]; den = [5 45 2 1 1];
[z p k] = tf2zpk(num,den); disp('Zeros:'); disp(z);
disp('Poles:'); disp(p);
input('Hit
input('Hit
-1.0000 + 1.4142i -1.0000 - 1.4142i -0.2500 + 0.6614i -0.2500 - 0.6614i
Poles:
-8.9576 -0.2718 0.1147 + 0.2627i 0.1147 - 0.2627i
sos =
1.0000 2.0000 3.0000 1.0000 9.2293 2.4344 1.0000 0.5000 0.5000 1.0000 -0.2293 0.0822 k =
0.4000
432Imaginary Part10-1-2-3-4-8-6-4Real Part-20
Q3.48 通过习题Q3.47产生的极零点图,求出G(z)的收敛域的数目。清楚地显示所有的收敛域。由极零点图说明离散时间傅里叶变换是否存在。
R1 : | z | < 0.2718 (left-sided, not stable)
R2 : 0.2718 < | z | < 0.2866 (two-sided, not stable)
R 3: 0.2866 < | z | < 8.9576 (two-sided, stable)
R4 : | z | > 8.9576 (right-sided, not stable)
不能从极零点图肯定的说DTFT是否存在,因为其收敛域一定要指定。当收敛域在上述R 3内所获得的序列却是证明了DTFT的存在,它是一个具有双面冲激响应的稳定系统。
Q3.50 编写一个MATLAB程序,计算一个有理逆z变换的前L个样本,其中L的值由用户通过命令input提供。用该程序计算并画出式(3.32)中G(z)的逆变换的前50个样本。使用命令stem画出由逆变换产生的序列。
编写的MATLAB程序:
clf;
num = [2 5 9 5 3]; den = [5 45 2 1 1];
L = input('Enter the number of samples L: '); [g t] = impz(num,den,L);
stem(t,g);
title(['First ',num2str(L),' samples of impulse response']); xlabel('Time Index n'); ylabel('h[n]');
Enter the number of samples L: 50
20-2-4-6-8-10-12-14-16x 1045First 50 samples of impulse responseh[n]0102030Time Index n4050
实验名称:数字滤波器的频域分析和实现
一、实验目的和任务:
(1)求滤波器的幅度响应和相位响应,观察对称性,判断滤波器类型。
(2)用Matlab函数实现系统的级联型和并联型结构,并对滤波器进行结构仿真。
二、实验内容:
系统传递函数的级联和并联实现:Q6.1, Q6.3, Q6.5, Q8.3,Q8.5, 滤波器的幅频特性分析:Q8.1, Q8.9,Q8.10,Q8.14
三、实验过程与结果分析:
Q6.1 使用程序P6.1,生成如下有限冲激响应传输函数的一个级联实现: H51(z)=2+10z
?1+23z
?2+34z
?3+31z
?4+16z
?
编写的MATLAB程序: % Program P6_1
num = input('Numerator coefficient vector = '); den = input('Denominator coefficient vector = '); [b,a] = eqtflength(num,den); % make lengths equal [z,p,k] = tf2zp(b,a); sos = zp2sos(z,p,k)
Numerator coefficient vector = [2 10 23 34 31 16 4] Denominator coefficient vector = [1] sos =
2.0000 6.0000 4.0000 1.0000 0 0 1.0000 1.0000 2.0000 1.0000 0 0 1.0000 1.0000 0.5000 1.0000 0 0 画出级联实现的框图:
H1(z)不是一个线性相位传输函数。
Q6.3 使用程序P6.1,H(z)=3+8z-1 +12z-2 +7z-3 +2z-4 -2z-5 116+24z-1 +24z-2 +14z-3 +5z-4 +1z-5