matlab只画幅频特性
时间: 2023-07-13 10:10:14 浏览: 724
如果你只需要绘制幅频特性而不需要相频特性,可以使用bode函数的另一种形式,即只传递一个输入参数。这个输入参数是一个传递函数或一个状态空间模型,它只会绘制幅度响应的曲线。
以下是一个示例代码,它使用bode函数绘制一个传递函数的幅频特性:
```matlab
% 定义传递函数
num = [1];
den = [1 2 1];
sys = tf(num, den);
% 绘制幅频特性
figure;
bode(sys);
grid on;
```
在这个例子中,我们定义了一个传递函数,然后使用bode函数绘制它的幅频特性。绘图结果将显示在一个新的图形窗口中,其中包含幅度响应的曲线。
你可以根据自己的需要调整代码中的传递函数,并使用bode函数绘制相应的幅频特性。如果你想在同一个图形窗口中绘制多个传递函数的幅频特性,可以使用bode函数的另一种形式,例如:
```matlab
% 定义多个传递函数
num1 = [1];
den1 = [1 2 1];
sys1 = tf(num1, den1);
num2 = [1];
den2 = [1 1];
sys2 = tf(num2, den2);
% 绘制多个传递函数的幅频特性
figure;
bode(sys1);
hold on;
bode(sys2);
legend('sys1', 'sys2');
grid on;
```
在这个例子中,我们定义了两个传递函数,然后使用bode函数的另一种形式绘制它们的幅频特性。绘图结果将显示在一个新的图形窗口中,其中包含两个传递函数的幅度响应曲线,并且每条曲线都有自己的标签。注意,我们使用了hold on命令来保留图形窗口中的当前图形,并使用legend函数为每个传递函数添加标签。
阅读全文