我是靠谱客的博主 贪玩画板,这篇文章主要介绍用matlab绘制系统函数的DTFTfreqz函数( frequency response of digital filter),现在分享给大家,希望可以做个参考。
freqz函数( frequency response of digital filter)
对于一个输入离散序列,输出离散序列的离散时间系统,我们可以用它的系统函数H(Z)来描述这个系统。求这个系统函数的DTFT,可以得到这个系统的幅频响应和相频响应。
一般形式:[h,w]=freqz(b,a,n)
- b:H(z)分子多项式构成的数组
- a:H(z)分母多项式构成的数组
- n:0~Π内取样的点数,默认512点
- h:复数形式的频率响应数组
- w:对应于h的各个数字角频率数组
例1:
求系统函数H (z) = (0.8 - 0.44 z^-1 + 0.36 z^-2 + 0.02 z^-3)/(1 + 0.7 z^-1 - 0.45 z^-2 - 0.3 z^-3)的DTFT
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24b=[0.8,-0.44,0.36,0.02]; a=[1,0.7,-0.45,-0.3]; [h,w]=freqz(b,a); subplot(2,2,1) plot(w/pi,real(h));grid title('实部') xlabel('omega/pi');ylabel('幅度') subplot(2,2,2) plot(w/pi,imag(h));grid title('虚部') xlabel('omega/pi');ylabel('幅度') subplot(2,2,3) plot(w/pi,abs(h));grid title('幅度谱') xlabel('omega/pi');ylabel('幅度') subplot(2,2,4) plot(w/pi,angle(h));grid title('相位谱') xlabel('omega/pi');ylabel('相位(rad)')
例2:
给出H(Z)=1/(1-αz^-1)的幅频曲线,α取0.9或-0.9
复制代码
1
2
3
4
5
6
7
8b=[1];a1=[1,-0.9];a2=[1,0.9]; w=linspace(0,2*pi,512); h1=freqz(b,a1,w); h2=freqz(b,a2,w); plot(w/pi,abs(h1),w/pi,abs(h2),':'); xlabel('omega/pi');ylabel('幅度'); legend('alpha=0.9','alpha=-0.9');
最后
以上就是贪玩画板最近收集整理的关于用matlab绘制系统函数的DTFTfreqz函数( frequency response of digital filter)的全部内容,更多相关用matlab绘制系统函数的DTFTfreqz函数(内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复