matlab中lsim的用法

lsim:针对线性是不变模型,给定任意输入,得到输出响应。

系统模型为状态方程时,同时还可以得到状态轨迹。

[y,t,x]=lsim[sys,u,t,x0]

输出y的行数与u的长度相同,列数与输出个数相同;

状态x的行数与u的长度相同,列数与状态的个数相同。

程序如下:

num=[1 1];
den=[1 3 6];
%h=tf(num,den);%获得传递函数
[A,B,C,D]=tf2ss(num,den);%将传递函数转化为状态方程
[u,t]=gensig('pulse',2,10,0.1);%采样间隔为0.1,时间长度为10,在2的倍数处信号幅度为1,其余时间为0.
x=u;
sys=ss(A,B,C,D);
x0=[0 0];
t=0:0.1:10;%此处时间为上面采样时间相同
[y,t,x]=lsim(sys,u,t,x0)%模型的输出响应
plot(t,y,'b',t,u,'g');

结果:

你可能感兴趣的:(matlab中lsim的用法)