``` a=[1,2,3]; b=[1,1]; sys = tf(b,a); t=0:0.1:10; e1=t.^2; r1=lsim(sys,e1,t); e2=exp(t); r2=lsim(sys,e2,t);```如何绘图
时间: 2024-11-27 19:19:54 浏览: 18
在这个Matlab脚本中,首先定义了两个向量`a`和`b`,然后通过这两个向量创建了一个传递函数系统(Transfer Function System,记作`sys`)。`tf(b,a)`函数用于从系统的输入矩阵`b`和输出矩阵`a`计算传递函数。
接下来,我们设置时间点`t`从0到10,步长为0.1,并生成两个信号:
1. `e1`是一个二次函数的时间序列,即`t^2`。
2. `e2`是指数函数`exp(t)`。
`lsim(sys,e1,t)`和`lsim(sys,e2,t)`函数分别对`sys`系统应用这两个输入信号并计算出对应的输出响应`r1`和`r2`。
最后,这段代码的目的应该是绘制两个响应曲线:一个是输入为`t^2`时的输出(`r1`),另一个是输入为指数函数时的输出(`r2`)。你可以使用`plot`函数来可视化这两个结果,例如:
```matlab
% 绘制r1和r2
figure; % 创建一个新的图形窗口
hold on; % 保持当前图形以便于叠加线型
plot(t,r1,'r', 'LineWidth', 2); % 红色线表示r1,粗线条宽
plot(t,r2,'b', 'LineWidth', 2); % 蓝色线表示r2
hold off; % 解除保持模式
xlabel('时间 (s)'); % x轴标签
ylabel('响应值'); % y轴标签
title('输入信号对应的不同输出响应'); % 图表标题
legend('r1 - t^2','r2 - exp(t)'); % 图例说明哪条线代表哪个响应
grid on; % 显示网格线
```
完成上述设置后,程序会显示一个包含两条线的图表,一条是红色,表示输入为`t^2`时的响应,另一条是蓝色,表示输入为指数函数时的响应。
阅读全文