MATLAB freqz
时间: 2023-10-21 13:59:28 浏览: 91
MATLAB频谱分析
MATLAB freqz 函数用于计算数字滤波器的频率响应。它的语法为:
```matlab
[h, w] = freqz(b, a, n, 'whole')
```
其中,`b` 和 `a` 分别是数字滤波器的分子系数和分母系数,`n` 是返回频率响应的点数,`'whole'` 表示计算整个频率范围的响应。
函数的输出包括两个参数:`h` 是频率响应,`w` 是对应的角频率。
例如,以下代码计算一个 4 阶低通 Butterworth 滤波器的频率响应:
```matlab
[b, a] = butter(4, 0.2);
[h, w] = freqz(b, a, 512, 'whole');
plot(w, abs(h));
```
其中,`b` 和 `a` 是通过 `butter` 函数生成的分子系数和分母系数,`512` 表示计算 512 个点的频率响应,`plot` 函数用于绘制频率响应的幅度响应。
阅读全文