Modelica_LinearSystems2.StateSpace ss=Modelica_LinearSystems2.StateSpace(
A = [-1.0, 0.0, 0.0;
0.0,-2.0, 0.0;
0.0, 0.0,-3.0],
B = [0.0, 1.0;
1.0, 1.0;
-1.0, 0.0],
C = [0.0, 1.0, 1.0;
1.0, 1.0, 1.0],
D = [1.0, 0.0;
0.0, 1.0]);
algorithm
zp:=Modelica_LinearSystems2.StateSpace.Conversion.toZerosAndPoles(ss);
// zp = [(s^2 + 5*s + 7)/(s^2 + 5*s + 6), 1/(s + 2);
1/(s^2 + 5*s + 6), (1*s^2 + 5*s + 5)/(s^2 + 3*s + 2)]
i.e.
function toTransferFunctionMIMO
import Modelica_LinearSystems2;
import Modelica;
import Modelica_LinearSystems2.TransferFunction;
import Modelica_LinearSystems2.StateSpace;
import Modelica_LinearSystems2.ZerosAndPoles;
import Modelica_LinearSystems2.WorkInProgress;
input StateSpace ss "StateSpace object";
output TransferFunction tf[size(ss.C, 1), size(ss.B, 2)] "Matrix of transfer function objects";
end toTransferFunctionMIMO;