转移函数>>状态空间:程序
num=[10 10];
den=[1 6 5 10];
[A,B,C,D]=tf2ss(num,den)
得到:A, B, C,D
状态空间>>转移函数:程序
A=[-6 -5 -10;1 0 0;0 1 0];
B=[1;1;0];
C =[0 10 10];
D=0;
[num,den]=ss2tf(A,B,C,D)
得到num, den
极点配置程序
A=[0 1 0;0 0 1;-1 -5 -6];
B=[0;0;1];
J=[-2+1i*4 -2-1i*4 -10];
K=acker(A,B,J)
输出
K =
199 55 8
或者
K=place(A,B,J)
输出
K =
199.0000 55.0000 8.0000
含初始条件的响应曲线:程序实现
clear
A=[0 1 0;0 0 1;-1 -5 -6];
B=[0;0;1];
J=[-2+1i*4 -2-1i*4 -10];
K=acker(A,B,J);
sys=ss(A-B*K,eye(3),eye(3),eye(3));
t=0:0.01:4;
x=initial(sys,[1;0;0],t);
x1=[1 0 0]*x';
x2=[0 1 0]*x';
x3=[0 0 1]*x';
subplot(3,1,1);plot(t,x1),grid
title('Response to Initial Condition')%初始条件的响应曲线
ylabel('state variable x1')
subplot(3,1,2);plot(t,x2),grid
ylabel('state variable x2')
subplot(3,1,3);plot(t,x3),grid
ylabel('state variable x3')
得到: