绘制H(jw)幅频特性曲线的matlab程序
时间: 2023-12-15 15:04:35 浏览: 86
以下是一个简单的 Matlab 程序,用于绘制 H(jw) 的幅频特性曲线:
```
% 定义 H(jw) 的分子和分母多项式
num = [1 0]; % 分子多项式为 1
den = [1 1 1]; % 分母多项式为 1+jw+jw^2
% 定义频率范围和频率步长
w = logspace(-2, 2, 1000); % 频率范围从 0.01 到 100,取 1000 个点
mag = abs(freqresp(num, den, w)); % 计算幅度响应
% 绘制幅频特性曲线
semilogx(w, 20*log10(mag)); % 使用对数坐标轴绘制,单位为 dB
xlabel('Frequency (rad/s)');
ylabel('Magnitude (dB)');
title('Magnitude Frequency Response');
grid on;
```
解释一下这个程序的各个部分:
1. 第 2 行定义了 H(jw) 的分子和分母多项式,这里的 H(jw) 是一个二阶低通滤波器,分母多项式为 $1+jw+jw^2$,分子多项式为 1。
2. 第 5 行定义了频率范围和频率步长,这里使用了 logspace 函数生成一个从 $10^{-2}$ 到 $10^2$ 的频率范围,取 1000 个点。
3. 第 6 行计算了幅度响应,使用了 freqresp 函数,该函数返回 H(jw) 在频率 w 处的复数值。
4. 第 9-12 行绘制了幅频特性曲线,使用了 semilogx 函数,该函数使用对数坐标轴绘制曲线,单位为 dB。
5. 最后一行打开了网格线。
运行这个程序,你将得到一个 H(jw) 幅频特性曲线的图像,如下图所示:
![H(jw) 幅频特性曲线](https://i.loli.net/2021/06/09/8jM1U6xI5fCvzZV.png)
这个曲线显示了 H(jw) 的幅度响应随频率的变化情况。在低频时,H(jw) 的幅度响应接近 1,表示信号通过滤波器时几乎没有被衰减;在高频时,H(jw) 的幅度响应逐渐下降,表示信号被滤波器削弱了。