dtf = DiscreteStateSpace.Conversion.toDiscreteTransferFunction(dss)
Computes a DiscreteTransferFunction record
n(z) b0 + b1*z + ... + bn*z^n dtf = -------- = -------------------------- d(z) a0 + a1*z + ... + an*z^n
The algorithm uses toDiscreteZerosAndPoles to convert the discrete state space system into a discrete zeros and poles representation first and after that DiscreteZerosAndPoles.Conversion.toDiscreteTransferFunction to generate the transfer function.
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.09516; 0.09063; 0.0], C = [1.0,1.0,1.0], D = [0.0], B2 = [0, 0; 0, 0; 0, 0], Ts = 0.1); algorithm dtf:=Modelica_LinearSystems2.DiscreteStateSpace.Conversion.toDiscreteTransferFunction(dss); // 0.185797*z - 0.159922 // dtf = ------------------------------- // z^2 - 1.72357*z + 0.740818
function toDiscreteTransferFunction import Modelica; import Modelica_LinearSystems2; import Modelica_LinearSystems2.DiscreteTransferFunction; import Modelica_LinearSystems2.DiscreteStateSpace; import Modelica_LinearSystems2.DiscreteZerosAndPoles; input DiscreteStateSpace dss "Discrete state space system"; output DiscreteTransferFunction dtf "Discrete transfer function description of system"; end toDiscreteTransferFunction;
Date | Author | Comment |
---|---|---|
2010-05-31 | Marcus Baur, DLR-RM | Realization |