ml_soss_bfsr
Balancing-free square root method for second-order systems.
Contents
Syntax
[roms, hsvs, Ts, Ws] = ml_soss_bfsr(sys, R, L, tselect) [roms, hsvs, Ts, Ws] = ml_soss_bfsr(sys, R, L, tselect, opts)
Description
Computes the reduced-order matrices of a second-order system by the balancing-free square root method. The different second-order balancing methods can be chosen via an optional paramter.
Input
- sys - structure, containing the second-order system in the form:
Parameter | Meaning |
M | matrix with dimensions n x n |
E | matrix with dimensions n x n |
K | matrix with dimensions n x n |
Bu | matrix with dimensions n x m |
Cp | matrix with dimensions p x n, might be empty |
Cv | matrix with dimensions p x n, might be empty |
- R - Cholesky factor of the controllability Gramian with dimensions 2*n x nr
- L - Cholesky factor of the observability Gramian with dimensions 2*n x nl
- 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 |
BalanceType {!} | character array, determining the type of second-order balancing
|
Gamma | positive scalar, scaling term from the H-infinity balanced truncation default: Inf |
Order {!} | positive integer, order of the resulting reduced-order model chosen by the user if tselect == 1 default: min(10,length(hsv)) |
StoreProjection | {0, 1}, used to disable/enable storing of the computed projection matrices W and T default: 0 |
Tolerance {!} | nonnegative scalar, tolerance used in the different error formulas default: 1.0e-02 |
Note: Parameters marked with {!} may also be a cell array containing multiple arguments. In this case an cell array of the same size is returned with one entry computed for each input argument and the marked fields of the info struct are cells as well. When multiple arguments are given as cells, they are expected to have the same length.
Output
- roms - struct, containing the transformed system matrices
- hsvs - vector, containing the characteristic singular values
- Ts - right projection matrix, if opts.StoreProjection == 1
- Ws - left projection matrix, if opts.StoreProjection == 1
Reference
T. Reis, T. Stykel, Balanced truncation model reduction of second-order systems, Math. Comput. Model. Dyn. Syst. 14 (5) (2008) 391--406. https://doi.org/10.1080/13873950701844170
See Also