.Modelica_LinearSystems2.DiscreteStateSpace.Conversion.toDiscreteZerosAndPoles

Information

Syntax

dzp = DiscreteStateSpace.Conversion.toDiscreteZerosAndPoles(dss)

Description

Computes a DiscreteZerosAndPoles record

           product(q + n1[i]) * product(q^2 + n2[i,1]*q + n2[i,2])
dzp = k * ---------------------------------------------------------
           product(q + d1[i]) * product(q^2 + d2[i,1]*q + d2[i,2])

of a system from discrete 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.

Example

  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],
    Ts = 0.1);

algorithm
  dzp:=Modelica_LinearSystems2.DiscreteStateSpace.Conversion.toDiscreteZerosAndPoles(dss);

//                         q - 0.860735
//   dzp = 0.1858 -------------------------------
//                 (q - 0.904837)*(q - 0.818731)

References

 [1] Varga, A and Sima, V. (1981):
Numerically stable algorithm for transfer function matrix evaluation. Int. J. Control, Vol. 33, No. 6, pp. 1123-1133.
 

Interface

encapsulated function toDiscreteZerosAndPoles
  import Modelica;
  import Modelica.ComplexMath;
  import Complex;
  import Modelica_LinearSystems2;
  import Modelica_LinearSystems2.StateSpace;
  import Modelica_LinearSystems2.ZerosAndPoles;
  import Modelica_LinearSystems2.DiscreteZerosAndPoles;
  import Modelica_LinearSystems2.DiscreteStateSpace;
  input DiscreteStateSpace dss "Discrete state space system";
  output Modelica_LinearSystems2.DiscreteZerosAndPoles dzp "Discrete zeros-and-poles description of system";
end toDiscreteZerosAndPoles;

Revisions

Date Author Comment
2010-05-31 Marcus Baur, DLR-RM Realization

Generated at 2024-12-26T19:25:54Z by OpenModelicaOpenModelica 1.24.3 using GenerateDoc.mos