这里我有多输入多输出系统的矩阵(矩阵D不为零),我想采用这个模型的传递函数。 大小A [9 * 9]
A = [-6.932e-2,17.41,-36.75,0,0,0,-6.0660,-31.54,0;
-1.435e-4,2.719e-2,-1.411e-3,3.467e-1,0,-9.380e-1,7.139e-2,-1.691e-2,0;
-4.537e-4,1.870e-3,-2.025e-1,0,1,0,-4.688e-2,7.563e-3,0;
-1.304e-4,-7.179,-4.916e-1,-6.172e-1,-3.689e-2,7.631e-1,0,0,0;
2.297e-5,0,-8.667e-1,4.393e-2,-1.947e-1,-2.026e-2,0,0,0;
1.964e-5,4.263e-2,-1.329e-2,1.233e-3,1.579e-2,-1.600e-1,0,0,0;
0,0,0,1,1.941e-1,2.771e-1,0,6.258e-2,0;
0,0,0,0,8.192e-1,-5.736e-1,-5.612e-2,0,0;
0,0,0,0,6.055e-1,8.648e-1,0,2.006e-2,0]
size B = [9*4]
B = [0,0,-7.560,9.067e-4;
-6.952e-3,1.293e-2,0,0;
0,0,-3.425e-2,-9.577e-7;
4.249,5.989e-1,0,0;
0,0,-1.796,0;
-7.287e-2,-2.877e-1,0,0;
0,0,0,0;
0,0,0,0;
0,0,0,0]
size C = [7*9]
C = [0,-5.758e-1,0,0,0,0,0,0,0;
0,0,0,1,0,0,0,0,0;
0,0,0,0,0,1,0,0,0;
0,0,1,0,0,0,0,0,0;
0,1,0,0,0,0,0,0,0;
0,0,0,0,1,0,0,0,0;
0,2.719e-2,-1.411e-3,3.467e-1,0,-9.380e-1,7.139e-2,0,0]
size D = [7*4]
D = [-1.298e-1,-1.610e-1,0,0;
0,0,0,0;
0,0,0,0;
0,0,0,0;
0,0,0,0;
0,0,0,0;
-6.952e-3,1.293e-2,0,0]
如何使用Matlab获得此模型的传递函数?
答案 0 :(得分:3)
您可以使用ss
命令从系统矩阵创建状态空间模型。 D
非零是不重要的,因为在使用ss
创建模型时MATLAB使用标准形式:
(图片来自Wikipedia.org)
所以你用
创建模型sys = ss(A,B,C,D);
并读出传递函数:
tf(sys)
返回一个7x4 tf
对象,其中包含从每个输入到每个输出的传递函数。
注意:您在此处发布的矩阵A
不正确:某些行中有太多零,但我认为这是一个简单的复制粘贴错误。删除后,这很好。