matlab freqz
时间: 2023-10-22 08:07:21 浏览: 138
notepad-plus-plus-7.8.7_matlab_matlabfreqz_m_MáS_
`freqz`是MATLAB中的一个函数,用于计算数字滤波器系统的频率响应。它可以绘制幅度响应和相位响应的图形,并返回频率响应的向量。使用`freqz`函数需要提供数字滤波器的系数或者数字滤波器对象。
下面是一个示例代码,用于计算和绘制一个数字低通滤波器的频率响应:
```matlab
% 定义数字低通滤波器的系数
b = [0.05 0.25 0.4 0.25 0.05];
a = 1;
% 计算频率响应
[h, w] = freqz(b, a);
% 绘制幅度响应图形
subplot(2,1,1);
plot(w/pi, abs(h));
xlabel('Normalized Frequency (\times\pi rad/sample)');
ylabel('Magnitude');
title('Magnitude Response');
% 绘制相位响应图形
subplot(2,1,2);
plot(w/pi, angle(h));
xlabel('Normalized Frequency (\times\pi rad/sample)');
ylabel('Phase (rad)');
title('Phase Response');
```
运行该代码会得到一个两行一列的图形,第一行是幅度响应图形,第二行是相位响应图形。
阅读全文