ml_ct_ss_mt
Modal truncation for standard systems.
Contents
Syntax
[Ar, Br, Cr, Dr, info] = ml_ct_ss_mt(A, B, C, D) [Ar, Br, Cr, Dr, info] = ml_ct_ss_mt(A, B, C, D, opts)
[rom, info] = ml_ct_ss_mt(sys) [rom, info] = ml_ct_ss_mt(sys, opts)
Description
This function computes the modal truncation for a standard system of the form
x'(t) = A*x(t) + B*u(t), (1) y(t) = C*x(t) + D*u(t). (2)
Therefore, a block diagonalization of the matrix A is performed using the matrix sign function and a Sylvester equation, such that
[ Ar 0 ] [ Cr ] A2 = [ ], B2 = [ Br, B1 ], C2 = [ ], Dr = D, [ 0 A1 ] [ C1 ]
where Ar contains all the eigenvalues of A, which have a larger real part than a given alpha. As result, the reduced-order system is given by
x'(t) = Ar*x(t) + Br*u(t), (3) y(t) = Cr*x(t) + Dr*u(t). (4)
Input
- A - matrix from (1) with dimensions n x n
- B - matrix from (1) with dimensions n x m
- C - matrix from (2) with dimensions p x n
- D - matrix from (2) with dimensions p x m
- sys - structure or state-space object, containing the standard system's matrices:
Entry | Meaning |
A | matrix from (1) with dimensions n x n |
B | matrix from (1) with dimensions n x m |
C | matrix from (2) with dimensions p x n |
D | matrix from (2) with dimensions p x m |
- opts - structure, containing the following optional entries:
Parameter | Meaning |
Alpha {!} | real scalar, such that all finite eigenvalues with the real part smaller than Alpha are truncated default: -1.0 |
signmopts | structure, containing the optional parameters for the matrix sign function used for the decomposition of the eigenvalues, see ml_signm default: struct() |
StoreProjection | {0, 1}, used to disable/enable storing of the computed projection matrices W and T default: 0 |
sylvopts | structure, containing the optional parameters for the Sylvester equation solver used for the decomposition of the eigenvalues, see ml_sylv_sgn default: struct() |
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
- Ar - matrix of (3) with dimensions r x r
- Br - matrix of (3) with dimensions r x m
- Cr - matrix of (4) with dimensions p x r
- Dr - matrix of (4) with dimensions p x m
- rom - structure or state-space object, with the following entries:
Entry | Meaning |
A | matrix from (3) with dimensions r x r |
B | matrix from (3) with dimensions r x m |
C | matrix from (4) with dimensions p x r |
D | matrix from (4) with dimensions p x m |
- info - structure, containing the following information:
Entry | Meaning |
infoSIGNM {!} | structure, containing information about the matrix sign function method, see ml_signm |
infoSYLV {!} | structure, containing information about the Sylvester equation solver, see ml_sylv_sgn |
N {!} | Dimension of the reduced-order model |
T {!} | projection matrix used as right state-space transformation to obtain the resulting block system, if opts.StoreProjection == 1 |
W {!} | projection matrix used as left state-space transformation to obtain the resulting block system, if opts.StoreProjection == 1 |
Reference
P. Benner, E. S. Quintana-Orti, Model reduction based on spectral projection methods, in: P. Benner, V. Mehrmann, D. Sorensen (Eds.), Dimension Reduction of Large-Scale Systems, Vol. 45 of Lect. Notes Comput. Sci. Eng., Springer, Berlin/Heidelberg, Germany, 2005, pp. 5--45. https://doi.org/10.1007/3-540-27909-1_1
See Also