ml_dt_ss_mt
Modal truncation for standard discrete-time systems.
Contents
Syntax
[Ar, Br, Cr, Dr, info] = ml_dt_ss_mt(A, B, C, D) [Ar, Br, Cr, Dr, info] = ml_dt_ss_mt(A, B, C, D, opts)
[rom, info] = ml_dt_ss_mt(sys) [rom, info] = ml_dt_ss_mt(sys, opts)
Description
This function computes the modal truncation for a standard discrete-time system of the form
x(t+1) = 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 an absolute value larger than a given alpha. As result, the reduced-order system is given by
x(t+1) = 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 |
dsylvopts | structure, containing the optional parameters for the Sylvester equation solver used for the decomposition of the eigenvalues, see ml_dsylv_smith default: struct() |
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 |
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 |
infoDSYLV {!} | structure, containing information about the Sylvester equation solver, see ml_dsylv_smith |
N {!} | Dimension of the reduced-order model |
Reference
See Also