概述
实验报告
实验课程: 数字信号处理
实验内容:实验4 离散系统的频率响应分析和零、 极点分布
院 (系): 计算机学院 专 业: 通信工程 班 级: 111班
2013年 6 月7日
一、实验目的:加深对离散系统的频率响应分析和零、极点分布的概念理解。 二、实验原理:
离散系统的时域方程为
N
M
∑d
k =0
k
y (n -k ) =∑p k x (n -k )
k =0
其变换域分析方法如下: 时频域变换
∞
y [n ]=x [n ]*h [n ]=
系统的频率响应为
m =-∞
j ωj ωj ω
x [m ]h [n -m ]⇔Y (e ) =X (e ) H (e ) ∑
p (e j ω) p 0+p 1e -j ω+... +p M e -jM ω
H (e ) ==j ω
D (e ) d 0+d 1e -j ω+... +d N e -jN ω
j ω
时域Z 域变换
y [n ]=x [n ]*h [n ]=
系统的转移函数为
m =-∞
∑x [m ]h [n -m ]⇔Y (z ) =X (z ) H (z )
∞
p (z ) p 0+p 1z -1+... +p M z -M
H (z ) ==
D (z ) d 0+d 1z -1+... +d N z -N
分解因式
H (z ) =
i =0N
∑p k z ∑d k z
M
-i
-i
=K
-1
(1-ξz ) ∏i -1(1-λz ) ∏i i =1i =1N
M
i =0
ξλi 上式中的和i 称为零、极点。
在MATLAB 中,可以用函数[z,p ,K]=tf2zp(num ,den )求得有理分式形式的系统转移函数的零、极点,用函数zplane (z ,p )绘出零、极点分布图;也可以用函数zplane (num ,den )直接绘出有理分式形式的系统转移函数的零、极点分布图。
另外,在MATLAB 中,可以用函数 [r,p ,k]=residuez(num ,den )完成部分分式展开计算;可以用函数sos=zp2sos(z ,p ,K )完成将高阶系统分解为2阶系统的级联。
三、实验内容及步骤:
实验内容: 求系统
0. 0528+0. 0797z -1+0. 1295z -2+0. 1295z -3+0. 797z -4+0. 0528z -5
H (z ) =
1-1. 8107z -1+2. 4947z -2-1. 8801z -3+0. 9537z -4-0. 2336z -5 的
零、极点和幅度频率响应。 程序代码:
num=[0.0528 0.0797 0.1295 0.1295 0.797 0.0528]; den=[1 -1.8707 2.4947 -1.8801 0.9537 -0.2336];
freqz(num,den); % 0~π中抽样,抽样点缺省(512点) ζ num=[0.0528 0.0797 0.1295 0.1295 0.797 0.0528]; den=[1 -1.8707 2.4947 -1.8801 0.9537 -0.2336];
w=[0 pi/8 pi/4 pi*3/8 pi/2 pi*5/8 pi*3/4]; %自己定8个点 Θ h=freqz(num,den,w); subplot(2,2,1); stem(w/pi,abs(h)); title(' 幅度谱' ) xlabel(' 数字频率' ); ylabel(' 振幅' );
[h,w]=freqz(num,den,8); % 系统在0~π之间均分8份,与“Θ”处效果一样 w
subplot(2,2,2); stem(w/pi,abs(h)); title(' 幅度谱' ) xlabel(' 数字频率' ); ylabel(' 振幅' );
h=freqz(num,den); % 系统在0~π之间均分512份,与“ζ”处效果一样 subplot(2,2,3); z=10*log(abs(h))
plot(z); % 与“ζ”处幅度谱效果一样 title(' 分贝幅度谱' )
xlabel(' 数字频率' ); ylabel(' 振幅' );
num=[0.0528 0.0797 0.1295 0.1295 0.797 0.0528]; den=[1 -1.8707 2.4947 -1.8801 0.9537 -0.2336]; [z,p,k]= tf2zp(num,den); % 求零极点 z %零点 p %极点 subplot(2,2,4);
zplane(z,p); % zplane (num,den)也可以[sos,g]=zp2sos(z,p,k); %二阶系统分解 sos g
[r,p,k]=residuez(num,den); % 部分分式展开 r p
k
实验结果:
四、实验总结与分析:
本次实验知道了函数zplane()、freqz()、angle()的用法,原来是绘制零极点图形和计算数字滤波器H(z)的频率响应以及求复数的相角。
最后
以上就是欢喜季节为你收集整理的matlab离散系统的频率响应,离散系统的频率响应分析的全部内容,希望文章能够帮你解决matlab离散系统的频率响应,离散系统的频率响应分析所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复