Modelica_LinearSystems2.DiscreteStateSpace dss=Modelica_LinearSystems2.DiscreteStateSpace(
A = [0.9048, 0.0, 0.0;
0.0, 0.8187, 0.0;
0.0, 0.0, 0.7408]
B = [0.0, 0.09516;
0.0906, 0.09063;
-0.0864, 0.0],
C = [0.0, 1.0, 1.0;
1.0, 1.0, 1.0],
D = [1.0, 0.0;
0.0, 1.0],
B2 = [0.0, 0.0;
0.0, 0.0;
0.0, 0.0],
Ts = 0.1);
algorithm
dtf:=Modelica_LinearSystems2.DiscreteStateSpace.Conversion.toDiscreteZerosAndPoles(dss);
// dtf = [(1*z^2 - 1.55531*z + 0.61012)/(z^2 - 1.55955*z + 0.606531)
Ts = 0.1
method =StepExact,
0.0906346/(z - 0.818731)
Ts = 0.1
method =StepExact;
(0.0042407*z + 0.00358958)/(z^2 - 1.55955*z + 0.606531)
Ts = 0.1
method =StepExact,
(1*z^2 - 1.53777*z + 0.580896)/(z^2 - 1.72357*z + 0.740818)
Ts = 0.1
method =StepExact]
function toDiscreteTransferFunctionMIMO
import Modelica_LinearSystems2;
import Modelica;
import Modelica_LinearSystems2.DiscreteTransferFunction;
import Modelica_LinearSystems2.DiscreteStateSpace;
import Modelica_LinearSystems2.DiscreteZerosAndPoles;
input DiscreteStateSpace dss "DiscreteStateSpace object";
output DiscreteTransferFunction dtf[size(dss.C, 1), size(dss.B, 2)] "Matrix of discrete transfer function objects";
end toDiscreteTransferFunctionMIMO;