zp = StateSpace.Conversion.toZerosAndPoles(ss)
Computes a ZerosAndPoles record
product(s + n1[i]) * product(s^2 + n2[i,1]*s + n2[i,2])
zp = k * ---------------------------------------------------------
product(s + d1[i]) * product(s^2 + d2[i,1]*s + d2[i,2])
of a system from state space representation using the transformation algorithm described in [1]. The uncontrollable and unobservable parts are isolated and the eigenvalues and invariant zeros of the controllable and observable sub system are calculated.
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 = [1.0;
1.0;
0.0],
C = [1.0,1.0,1.0],
D = [0.0]);
algorithm
zp:=Modelica_LinearSystems2.StateSpace.Conversion.toZerosAndPoles(ss);
// s + 1.5
// zp = 2 -----------------
(s + 1)*(s + 2)
encapsulated function toZerosAndPoles import Modelica; import Complex; import Modelica_LinearSystems2; import Modelica_LinearSystems2.ZerosAndPoles; import Modelica_LinearSystems2.StateSpace; input StateSpace ss "State space system"; input Real tol = 1e-10 "Tolerance of reduction procedure, default tol = 1e-10"; output ZerosAndPoles zp "Zeros-and-poles description of system"; end toZerosAndPoles;
| Date | Author | Comment |
|---|---|---|
| 2011-07-31 | Marcus Baur, DLR-RM | Improved frequency calculation |
| 2010-05-31 | Marcus Baur, DLR-RM | Realization |