functiontoDiscreteZerosAndPolesMIMO
Generate a zeros-and-poles representation from a MIMO state space representation
Information
Syntax
dzp = DiscreteStateSpace.Conversion.toDiscreteZerosAndPolesMIMO(dss)
Description
Computes a matrix of DiscreteZerosAndPoles records
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, i.e. isolating the uncontrollable and unobservable parts and the eigenvalues and invariant zeros of the controllable and observable sub systems are calculated. The algorithm applies the method described in [1] for each single-input-output pair.
Example
Modelica_LinearSystems2.DiscreteStateSpace ss=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
dzp:=Modelica_LinearSystems2.DiscreteStateSpace.Conversion.toDiscreteZerosAndPolesMIMO(dss);
// dzp = [1*(q^2 - 1.55531*q + 0.61012)/( (q - 0.818731)*(q - 0.740818) )
Ts = 0.1
method =StepExact,
0.0906346/(q - 0.818731)
Ts = 0.1
method =StepExact;
0.0042407*(q + 0.846461)/( (q - 0.818731)*(q - 0.740818) )
Ts = 0.1
method =StepExact,
1*(q - 0.870319)*(q - 0.667452)/( (q - 0.904837)*(q - 0.818731) )
Ts = 0.1
method =StepExact]
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.
Inputs
| Type | Name | Default | Description |
|---|---|---|---|
| DiscreteStateSpace | dss | DiscreteStateSpace object |
Outputs
| Type | Name | Default | Description |
|---|---|---|---|
| DiscreteZerosAndPoles[size(dss.C, 1),size(dss.B, 2)] | dzp |
Revisions
| Date | Author | Comment |
|---|---|---|
| 2010-05-31 | Marcus Baur, DLR-RM | Realization |