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
  • 'p' - position balancing (vel. Gram.)
  • 'pv' - position-velocity balancing
  • 'vp' - velocity-position balancing
  • 'vpv' - velocity-position balancing (vel. Gram.)
  • 'v' - velocity balancing
  • 'fv' - free velocity balancing
  • 'so' - second-order balancing
default: 'so'
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
  • 'sr' - square-root method
  • 'bfsr' - balancing-free square-root method
default: 'sr'
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
  • 'order' - take explicit order
  • 'tolerance' - using rel. tolerance for the hsv
  • 'sum' - using rel. tolerance for sum of hsv
default: 'sum'
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

ml_ct_soss_bt | ml_ct_dss_flbt | ml_morlabopts