ml_ct_dss_bfsr
Balancing-free square root method for descriptor systems.
Contents
Syntax
[sys, hsvp, hsvi] = ml_ct_dss_bfsr(sys, R, Rinf, L, Linf, tselect) [sys, hsvp, hsvi] = ml_ct_dss_bfsr(sys, R, Rinf, L, Linf, tselect, opts)
Description
Computes the reduced-order matrices of a descriptor system by the balancing-free square root method. Therefore, transformation matrices of the form
W = Y * (X' * Y)^(-1), Winf = Yinf * (Xinf' * Yinf)^(-1), T = X, Tinf = Xinf,
are computed, where X, Xinf, Y, Yinf result from the QR decompositions
[X, ~] = qr(R * V), [Xinf, ~] = qr(Rinf * Vinf), [Y, ~] = qr(L' * U), [Yinf, ~] = qr(Linf' * Uinf).
The computation of the reduced-order model is done by
[ W' * A * T 0 ] Ar = [ ], [ 0 Winf' * Ainf * Tinf ]
[ W' * B ] Br = [ ], [ Winf' * Binf ]
Cr = [ C * T, Cinf * Tinf ],
[ W' * Ef * T 0 ] Er = [ ]. [ 0 Winf' * Einf * Tinf ]
Input
sys - structure, containing the descriptor system in the form:
Parameter | Meaning |
E | matrix with dimensions nf x nf |
Einf | matrix with dimensions ninf x ninf |
A | matrix with dimensions nf x nf |
Ainf | matrix with dimensions ninf x ninf |
B | matrix with dimensions nf x m |
Binf | matrix with dimensions ninf x m |
C | matrix with dimensions p x nf |
Cinf | matrix with dimensions p x ninf |
R - Cholesky factor of the proper controllability Gramian with dimensions nr1 x nf Rinf - Cholesky factor of the improper controllability Gramian with dimensions nr2 x ninf L - Cholesky factor of the proper observability Gramian with dimensions nl1 x nf Linf - Cholesky factor of the improper observability Gramian with dimensions nl2 x ninf tselect - an integer, used to determine the computation method for the order of the reduced-order model 0 - order is directly given by user 1 - computed by a relative tolerance for the hsv 2 - computed by a relative tolerance on the sum of hsv 3 - computed by absolute error bound of BT 4 - computed by relative error bound of BST 5 - computed by absolute error bound of LQGBT 6 - computed by absolute error bound of HinfBT opts - structure, containing the following optional entries:
Parameter | Meaning |
Gamma | positive scalar, scaling term from the H-infinity balanced truncation |
ImproperTrunc | nonnegative scalar, tolerance multiplied with the largest proper Hankel singular value of the system to truncate the improper part default: log(n)*eps |
Index | nonnegative integer, index of nilpotency of the matrix Einf used to set an upper bound on the size of the reduced improper part, if the index is unknown Inf is set default: Inf |
Order | positive integer, order of the resulting reduced-order model chosen by the user if tselect == 1 default: min(10,length(hsvp))+nu+ni |
Tolerance | nonnegative scalar, tolerance used in the different error formulas default: 1.0e-02 |
Output
sys - struct, containing the transformed system matrices hsvp - vector, containing the characteristic proper singular values hsvi - vector, containing the improper Hankel singular values
Reference
V. Mehrmann, T. Stykel, Balanced truncation model reduction for large-scale systems in descriptor form, in: P. Benner, V. Mehrmann, D. C. Sorensen (Eds.), Dimension Reduction of Large-Scale Systems, Vol. 45 of Lect. Notes Comput. Sci. Eng., Springer-Verlag, Berlin/Heidelberg, Germany, 2005, pp. 83--115. https://doi.org/10.1007/3-540-27909-1_3
See Also