概述
使用Matlab提供的freqz()函数可计算离散系统频率响应的抽样值.
一般情况下, 函数freqz()的返回值为复数, 使用Matlab提供的abs()、angle()函数可分别计算其幅度、相位.
[程序设计代码(计算系统的幅度响应)]
% H(z)的分子: (0.5009 - 1.0019z^-1 + 0.5009z^-2)(0.5320 + 1.0640z^-1 + 0.5320z^-2)
% H(z)的分母: (1 - 0.8519z^-1 + 0.4167z^-2)/(1 + 0.8519z^-1 + 0.4167z^-2)
% 计算离散系统的幅度相应
b1 = [0.5009 -1.0019 0.5009];
b2 = [0.5320 1.0640, 0.5320];
a1 = [1.0000 -0.8519 0.4167];
a2 = [1.0000 0.8519 0.4167];
b = conv(b1, b2);% 计算H(z)的分子多项式
a = conv(a1, a2);% 计算H(z)的分母多项式
w = linspace(0, pi, 512);
H = freqz(b, a, w);
plot(w / pi, abs(H));
%
ylabel('幅度');
xlabel('normalized frequency');
[仿真结果]
最后
以上就是淡定草莓为你收集整理的使用Matlab分析离散系统H(z)的频率响应的全部内容,希望文章能够帮你解决使用Matlab分析离散系统H(z)的频率响应所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复