在matlab中绘制一连续系统的幅频和相频特性曲线
时间: 2024-03-26 19:36:12 浏览: 271
matlab幅频图
在MATLAB中,可以使用freqs函数来绘制一连续系统的幅频和相频特性曲线。以下是一个示例代码,演示了如何绘制一个二阶低通滤波器的幅频和相频特性曲线:
```matlab
% 定义系统参数
R = 1000; % 电阻值
C = 1e-6; % 电容值
fc = 1/(2*pi*R*C); % 截止频率
% 定义系统传递函数
num = [fc^2];
den = [1, sqrt(2)*fc, fc^2];
sys = tf(num, den);
% 绘制幅频特性曲线
w = logspace(0, 5, 1000);
[mag, phase] = freqs(num, den, w);
loglog(w, abs(mag));
xlabel('频率(rad/s)');
ylabel('幅度(dB)');
title('二阶低通滤波器的幅频特性曲线');
% 绘制相频特性曲线
semilogx(w, unwrap(phase)*180/pi);
xlabel('频率(rad/s)');
ylabel('相位(度)');
title('二阶低通滤波器的相频特性曲线');
```
运行上述代码,将会绘制出二阶低通滤波器的幅频和相频特性曲线。其中,loglog函数用于绘制对数坐标下的幅频特性曲线,semilogx函数用于绘制半对数坐标下的相频特性曲线。
阅读全文