利用matlab分析低通滤波器时域冲激响应波形、频域内幅频特性、相频特性
时间: 2023-07-10 11:35:22 浏览: 147
好的,下面我将介绍如何利用matlab分析低通滤波器的时域冲激响应波形、频域内幅频特性、相频特性。
1. 时域冲激响应波形
时域冲激响应波形是指在滤波器输入一个单位冲激信号时,输出的波形。在Matlab中,可以使用函数impz来求得滤波器的时域冲激响应波形。
示例代码:
```matlab
% 设计一个3阶Butterworth低通滤波器
[b, a] = butter(3, 0.3, 'low');
% 计算滤波器的时域冲激响应波形
h = impz(b, a);
% 画出时域冲激响应波形
plot(h);
title('时域冲激响应波形');
xlabel('时间');
ylabel('幅值');
```
2. 频域内幅频特性
频域内幅频特性是指滤波器在不同频率下的输出幅值与输入幅值之比的对数值。在Matlab中,可以使用函数freqz来求得滤波器的频域内幅频特性。
示例代码:
```matlab
% 设计一个3阶Butterworth低通滤波器
[b, a] = butter(3, 0.3, 'low');
% 计算滤波器的频域内幅频特性
[h, w] = freqz(b, a);
% 画出幅频特性曲线
plot(w, 20*log10(abs(h)));
title('频域内幅频特性');
xlabel('频率');
ylabel('幅值(dB)');
```
3. 相频特性
相频特性是指滤波器在不同频率下的输出相位与输入相位之差的角度值。在Matlab中,可以使用函数freqz来求得滤波器的相频特性。
示例代码:
```matlab
% 设计一个3阶Butterworth低通滤波器
[b, a] = butter(3, 0.3, 'low');
% 计算滤波器的相频特性
[h, w] = freqz(b, a);
% 画出相频特性曲线
plot(w, angle(h));
title('相频特性');
xlabel('频率');
ylabel('相位(弧度)');
```
以上就是利用Matlab分析低通滤波器的时域冲激响应波形、频域内幅频特性、相频特性的方法。
阅读全文