ml_ct_soss_tlbt

Time-limited balanced truncation for s.-o. systems.

Contents

Syntax

[Mr, Er, Kr, Bur, Cpr, Cvr, Dr, info] = ml_ct_soss_tlbt(M, E, K, Bu, Cp, Cv, D)
[Mr, Er, Kr, Bur, Cpr, Cvr, Dr, info] = ml_ct_soss_tlbt(M, E, K, Bu, Cp, Cv, D, opts)
[rom, info] = ml_ct_soss_tlbt(sys)
[rom, info] = ml_ct_soss_tlbt(sys, opts)

Description

This function computes the time-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' + Bts*Bts' - Bte*Bte' = 0,
    A'*Q*E + E'*Q*A + Cts'*Cts - Cte'*Cte = 0,
where Bts, Bte, Cts and Cte are time-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'
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'
TimeRange
nonnegative vector, time interval such that [min(t), max(t)] is approximated
default: [0, 10]
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_tlbt | ml_morlabopts