ml_ct_soss_flbt
Frequency-limited balanced truncation for s.-o. systems.
Contents
Syntax
[Mr, Er, Kr, Bur, Cpr, Cvr, Dr, info] = ml_ct_soss_flbt(M, E, K, Bu, Cp, Cv, D) [Mr, Er, Kr, Bur, Cpr, Cvr, Dr, info] = ml_ct_soss_flbt(M, E, K, Bu, Cp, Cv, D, opts)
[rom, info] = ml_ct_soss_flbt(sys) [rom, info] = ml_ct_soss_flbt(sys, opts)
Description
This function computes the freuqency-limited balanced truncation for a second-order system of the form
M*x''(t) = -K*x(t) - E*x'(t) + Bu*u(t) (1) y(t) = Cp*x(t) + Cv*x'(t) + D*u(t) (2)
Therefore, the two generalized Lyapunov equations
A*P*E' + E*P*A' + BF*B' + B*BF' = 0, A'*Q*E + E'*Q*A + CF'*C + C'*CF = 0,
where BF and CF are frequency-dependent matrices, are solved for the system Gramians P and Q, with
[ I 0 ] [ 0 I ] [ 0 ] E = [ ], A = [ ], B = [ ], C = [Cp, Cv]. [ 0 M ] [ -K -E ] [ Bu ]
As a result, a reduced-order system of the form
Mr*x''(t) = -Kr*x(t) - Er*x'(t) + Bur*u(t) (3) y(t) = Cpr*x(t) + Cvr*x'(t) + Dr*u(t) (4)
is computed. Using the modified Gramian approach can lead to a more stable reduced-order model but it is at most stable as the classical second-order balanced truncation method.
Note: The method only allows asymptotically stable second-order systems with invertible mass matrix.
Input
M - matrix from (1) with dimensions n x n E - matrix from (1) with dimensions n x n K - matrix from (1) with dimensions n x n Bu - matrix from (1) with dimensions n x m Cp - matrix from (2) with dimensions p x n Cv - matrix from (2) with dimensions p x n D - matrix from (2) with dimensions p x m sys - structure, containing the second-order system's matrices:
Entry | Meaning |
M | matrix from (1) with dimensions n x n |
E | matrix from (1) with dimensions n x n |
K | matrix from (1) with dimensions n x n |
Bu | matrix from (1) with dimensions n x m |
Cp | matrix from (2) with dimensions p x n |
Cv | 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 |
BalanceType | character array, determining the type of second-order balancing
|
FreqRange | nonnegative vector, frequency intervals such that [w(1), w(2)] ... [w(2k-1), w(2k)] are approximated default: [0, 1.0e+03] |
lyapdlopts | structure, containing the optional parameters for the computation of the generalized continuous-time Lyapunov equations, see ml_lyapdl_sgn_ldl if ModGramian = 0 and ml_lyapdl_sgn_fac if ModGramian = 1 default: struct() |
Method | character array, determining algorithm for the computation of the reduced-order model
|
ModGramian | {0, 1}, used to disable/enable the modified Gramian approach default: 0 |
Order | positive integer, order of the resulting reduced-order model chosen by the user if 'order' is set for OrderComputation default: min(10,length(Hsv)) |
OrderComputation | character array, determining the method for the computation of the size of the reduced-order model
|
Tolerance | nonnegative scalar, tolerance used for the computation of the size of the reduced-order model if 'tolerance' or 'sum' is set for OrderComputation default: 1.0e-02 |
Output
Mr - matrix of (3) with dimensions r x r Er - matrix of (3) with dimensions r x r Bur - matrix of (3) with dimensions r x m Cpr - matrix of (4) with dimensions p x r Cvr - matrix of (4) with dimensions p x r Dr - matrix of (4) with dimensions p x m rom - structure, with the following entries:
Entry | Meaning |
M | matrix from (1) with dimensions r x r |
E | matrix from (1) with dimensions r x r |
K | matrix from (1) with dimensions r x r |
Bu | matrix from (1) with dimensions r x m |
Cp | matrix from (2) with dimensions p x r |
Cv | matrix from (2) with dimensions p x r |
D | matrix from (2) with dimensions p x m |
info - structure, containing the following information:
Entry | Meaning |
Hsv | a vector, containing the computed Hankel singular values, for second-order balancing the position and velocity Hankel singular values are saved in a struct |
infoLYAPDL | structure, containing information about the continuous-time dual Lyapunov equations solver, see ml_lyapdl_sgn_ldl or ml_lyapdl_sgn_fac |
N | Dimension of the reduced-order model |
See Also