functiontoDiscreteTransferFunctionMIMO
Generate a discrete transfer function of a MIMO system from discrete state space representation
Information
Syntax
dtf = DiscreteStateSpace.Conversion.toDiscreteTransferFunctionMIMO(dss)
Description
Computes a matrix of DiscreteTransferFunction records
n(z) b0 + b1*z + ... + bn*z^n
dtf = -------- = --------------------------
d(z) a0 + a1*z + ... + an*z^n
with repetitive application of Conversion.toDiscreteTransferFunction
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.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]
Inputs
| Type | Name | Default | Description |
|---|---|---|---|
| DiscreteStateSpace | dss | Discrete state space object |
Outputs
| Type | Name | Default | Description |
|---|---|---|---|
| DiscreteTransferFunction[size(dss.C, 1),size(dss.B, 2)] | dtf | Matrix of discrete transfer function objects |
Revisions
| Date | Author | Comment |
|---|---|---|
| 2010-05-31 | Marcus Baur, DLR-RM | Realization |