Simplification of descriptor system models
- gminreal Minimal realization of descriptor systems.
- gir Irreducible realization of descriptor systems.
- gbalmr Reduced-order approximations of descriptor systems using balancing related methods.
DescriptorSystems.gminreal
— Functionsysr = gminreal(sys; fast = true, atol1 = 0, atol2, rtol, contr = true, obs = true, noseig = true)
Compute for a descriptor system sys = (A-λE,B,C,D)
of order n
a reduced order descriptor system sysr = (Ar-λEr,Br,Cr,Dr)
of order nr ≤ n
such that sys
and sysr
have the same transfer function matrix, i.e.,
-1 -1
C*(λE-A) *B + D = Cr*(λEr-Ar) *Br + Dr .
The least possible order nr
is achieved if contr = true
, obs = true
and nseig = true
. Such a realization is called minimal
and satisfies:
(1) rank[Br Ar-λEr] = nr for all finite λ (finite controllability)
(2) rank[Br Er] = nr (infinite controllability)
(3) rank[Ar-λEr; Cr] = nr for all finite λ (finite observability)
(4) rank[Er; Cr] = nr (infinite observability)
(5) Ar-λEr has no simple infinite eigenvalues
A realization satisfying only conditions (1)-(4) is called irreducible
.
Some reduction steps can be skipped by appropriately selecting the keyword arguments contr
, obs
and nseig
.
If contr = false
, then the controllability conditions (1) and (2) are not enforced.
If obs = false
, then observability condition (3) and (4) are not enforced.
If nseig = false
, then condition (5) on the lack of simple infinite eigenvalues is not enforced.
To enforce conditions (1)-(4), orthogonal similarity transformations are performed on the matrices of the original realization (A-λE,B,C,D)
to obtain an irreducible realization using structured pencil reduction algorithms, as the fast versions of the reduction techniques of the full row rank pencil [B A-λE] and full column rank pencil [A-λE;C] proposed in [1]. To enforce condition (5), residualization formulas (see, e.g., [2, page 329]
) are employed which involves matrix inversions.
The underlying pencil manipulation algorithms employ rank determinations based on either the use of rank revealing QR-decomposition with column pivoting, if fast = true
, or the SVD-decomposition. The rank decision based on the SVD-decomposition is generally more reliable, but the involved computational effort is higher.
The keyword arguments atol1
, atol2
, and rtol
, specify, respectively, the absolute tolerance for the nonzero elements of matrices A
, B
, C
, D
, the absolute tolerance for the nonzero elements of E
, and the relative tolerance for the nonzero elements of A
, B
, C
, D
and E
. The keyword argument atol
can be used to simultaneously set atol1 = atol
and atol2 = atol
.
[1] P. Van Dooreen, The generalized eigenstructure problem in linear system theory, IEEE Transactions on Automatic Control, vol. AC-26, pp. 111-129, 1981.
[2] A. Varga, Solving Fault Diagnosis Problems - Linear Synthesis Techniques, Springer Verlag, 2017.
DescriptorSystems.gir
— Functionsysr = gir(sys; fast = true, atol = 0, atol1 = atol, atol2 = atol, rtol,
finite = true, infinite = true, contr = true, obs = true, noseig = false)
Compute for a descriptor system sys = (A-λE,B,C,D)
of order n
a reduced order descriptor system sysr = (Ar-λEr,Br,Cr,Dr)
of order nr ≤ n
such that sys
and sysr
have the same transfer function matrix, i.e.,
-1 -1
C*(λE-A) *B + D = Cr*(λEr-Ar) *Br + Dr .
The least possible order nr
is achieved if finite = true
, infinite = true
, contr = true
, obs = true
and nseig = true
. Such a realization is called minimal
and satisfies:
(1) rank[Br Ar-λEr] = nr for all finite λ (finite controllability)
(2) rank[Br Er] = nr (infinite controllability)
(3) rank[Ar-λEr; Cr] = nr for all finite λ (finite observability)
(4) rank[Er; Cr] = nr (infinite observability)
(5) Ar-λEr has no simple infinite eigenvalues
A realization satisfying only conditions (1)-(4) is called irreducible
and is computed by default.
Some reduction steps can be skipped by appropriately selecting the keyword arguments contr
, obs
, finite
, infinite
and nseig
.
If contr = false
, then the controllability conditions (1) and (2) are not enforced. If contr = true
and finite = true
, then the finite controllability condition (1) is enforced. If contr = true
and finite = false
, then the finite controllability condition (1) is not enforced. If contr = true
and infinite = true
, then the infinite controllability condition (2) is enforced. If contr = true
and infinite = false
, then the infinite controllability condition (2) is not enforced.
If obs = false
, then observability condition (3) and (4) are not enforced. If obs = true
and finite = true
, then the finite observability condition (3) is enforced. If obs = true
and finite = false
, then the finite observability condition (3) is not enforced. If obs = true
and infinite = true
, then the infinite observability condition (4) is enforced. If obs = true
and infinite = false
, then the infinite observability condition (4) is not enforced.
If nseig = true
, then condition (5) on the lack of simple infinite eigenvalues is also enforced.
To enforce conditions (1)-(4), the Procedure GIR
in [1, page 328]
is employed, which performs orthogonal similarity transformations on the matrices of the original realization (A-λE,B,C,D)
to obtain an irreducible realization using structured pencil reduction algorithms. To enforce condition (5), residualization formulas (see, e.g., [1, page 329]
) are employed which involves matrix inversions.
The underlying pencil manipulation algorithms employ rank determinations based on either the use of rank revealing QR-decomposition with column pivoting, if fast = true
, or the SVD-decomposition. The rank decision based on the SVD-decomposition is generally more reliable, but the involved computational effort is higher.
The keyword arguments atol1
, atol2
, and rtol
, specify, respectively, the absolute tolerance for the nonzero elements of matrices A
, B
, C
, D
, the absolute tolerance for the nonzero elements of E
, and the relative tolerance for the nonzero elements of A
, B
, C
, D
and E
. The keyword argument atol
can be used to simultaneously set atol1 = atol
and atol2 = atol
.
[1] A. Varga, Solving Fault Diagnosis Problems - Linear Synthesis Techniques, Springer Verlag, 2017.
DescriptorSystems.gbalmr
— Functiongbalmr(sys, balance = false, matchdc = false, ord = missing, atolhsv = 0, rtolhsv = nϵ,
atolmin = atolhsv, rtolmin = rtolhsv,
atol = 0, atol1 = atol, atol2 = atol, rtol, fast = true) -> (sysr, hs)
Compute for a proper and stable descriptor system sys = (A-λE,B,C,D)
with the transfer function matrix G(λ)
, a reduced order realization sysr = (Ar-λEr,Br,Cr,Dr)
and the vector hs
of decreasingly ordered Hankel singular values of the system sys
. If balance = true
, a balancing-based approach is used to determine a reduced order minimal realization of the form sysr = (Ar-λI,Br,Cr,Dr)
. For a continuous-time system sys
, the resulting realization sysr
is balanced, i.e., the controllability and observability grammians are equal and diagonal. If additonally matchdc = true
, the resulting sysr
is computed using state rezidualization formulas (also known as singular perturbation approximation) which additionally preserves the DC-gain of sys
. In this case, the resulting realization sysr
is balanced (for both continuous- and discrete-time systems). If balance = false
, an enhanced accuracy balancing-free approach is used to determine the reduced order system sysr
.
If ord = nr
, the resulting order of sysr
is min(nr,nrmin)
, where nrmin
is the order of a minimal realization of sys
determined as the number of Hankel singular values exceeding max(atolmin,rtolmin*HN)
, with HN
, the Hankel norm of G(λ)
. If ord = missing
, the resulting order is chosen as the number of Hankel singular values exceeding max(atolhsv,rtolhsv*HN)
.
The keyword arguments atol1
, atol2
, and rtol
, specify, respectively, the absolute tolerance for the nonzero elements of A
, B
, C
, D
, the absolute tolerance for the nonzero elements of E
, and the relative tolerance for the nonzero elements of A
, B
, C
, D
and E
. The default relative tolerance is nϵ
, where ϵ
is the working machine epsilon and n
is the order of the system sys
. The keyword argument atol
can be used to simultaneously set atol1 = atol
and atol2 = atol
.
If E
is singular, the uncontrollable infinite eigenvalues of the pair (A,E)
and the non-dynamic modes are elliminated using minimal realization techniques. The rank determinations in the performed reductions are based on rank revealing QR-decompositions with column pivoting if fast = true
or the more reliable SVD-decompositions if fast = false
.
Method: For the order reduction of a standard system, the balancing-free method of [1] or the balancing-based method of [2] are used. For a descriptor system the balancing related order reduction methods of [3] are used. To preserve the DC-gain of the original system, the singular perturbation approximation method of [4] is used in conjunction with the balancing-based or balancing-free approach of [5].
References
[1] A. Varga. Efficient minimal realization procedure based on balancing. In A. El Moudni, P. Borne, and S.G. Tzafestas (Eds.), Prepr. of the IMACS Symp. on Modelling and Control of Technological Systems, Lille, France, vol. 2, pp.42-47, 1991.
[2] M. S. Tombs and I. Postlethwaite. Truncated balanced realization of a stable non-minimal state-space system. Int. J. Control, vol. 46, pp. 1319–1330, 1987.
[3] T. Stykel. Gramian based model reduction for descriptor systems. Mathematics of Control, Signals, and Systems, 16:297–319, 2004.
[4] Y. Liu Y. and B.D.O. Anderson Singular Perturbation Approximation of Balanced Systems, Int. J. Control, Vol. 50, pp. 1379-1405, 1989.
[5] Varga A. Balancing-free square-root algorithm for computing singular perturbation approximations. Proc. 30-th IEEE CDC, Brighton, Dec. 11-13, 1991, Vol. 2, pp. 1062-1065.