ml_ct_ss_hna

Hankel-norm approximation for standard systems.

Contents

Syntax

[Ar, Br, Cr, Dr, info] = ml_ct_ss_hna(A, B, C, D)
[Ar, Br, Cr, Dr, info] = ml_ct_ss_hna(A, B, C, D, opts)
[rom, info] = ml_ct_ss_hna(sys)
[rom, info] = ml_ct_ss_hna(sys, opts)

Description

This function computes the Hankel-norm approximation of 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, first a balanced realization is computed by using the
balanced truncation square-root method with an appropriate tolerance
for the minimal realization of the given system. Then the system is
transformed using the formulas given in the reference below. As
result, a reduced-order system of the form
    x'(t) = Ar*x(t) + Br*u(t),                                      (3)
     y(t) = Cr*x(t) + Dr*u(t)                                       (4)
is computed, such that for the original transfer function G and and the
r-th order transfer function Gr it holds
    ||G - Gr||_{H}       = Hsv(r+1),
    ||G - Gr||_{\infty} <= 2 * (Hsv(r+1) + ... + Hsv(n)),
with Hsv, a vector containing the Hankel singular values of the system.
Note: For unstable systems, first an additive decomposition into the
      stable and anti-stable parts is performed and then only the
      stable part will be reduced. That does not change the error
      formulas.

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
hankelsignmopts
structure, containing the optional parameters for the matrix sign function used for the decomposition after the transformation of an all-pass system, see ml_signm
default: struct()
hankelsylvopts
structure, containing the optional parameters for the Sylvester equation solver used for the decomposition after the transformation of an all-pass system, see ml_sylv_sgn
default: struct()
lyapdlopts
structure, containing the optional parameters for the computation of the continuous-time Lyapunov equations, see ml_lyapdl_sgn_fac
default: struct()
MinRelTol
nonnegative scalar, tolerance multiplied with the largest characteristic value to determine a minimal realization
default: log(n)*eps
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)) + Nu
OrderComputation
character array, determining the method for the computation of the size of the reduced-order model
  • 'order' - take explicit order
  • 'tolerance' - using absolute error bound
default: 'tolerance'
stabsignmopts
structure, containing the optional parameters for the matrix sign function used for the decomposition into stable and anti-stable system parts, see ml_signm
default: struct()
stabsylvopts
structure, containing the optional parameters for the Sylvester equation solver used for the decomposition into stable and anti-stable system parts, see ml_sylv_sgn
default: struct()
Tolerance
nonnegative scalar, tolerance used for the computation of the size of the reduced-order model by an absolute error bound if 'tolerance' is set for OrderComputation
default: 1.0e-02
UnstabDim
integer, dimension of the deflating anti-stable subspace, negative if unknown
default: -1

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
AbsErrBound
computed error bound for the absolute error of the reduced-order model in H-infinity norm
Hsv
a vector, containing the computed Hankel singular values
infoADTF
structure, containing information about the additive decomposition of the system into its stable and anti-stable parts, see ml_ct_ss_adtf
infoHAADTF
structure, containing information about the additive decomposition of the Hankel-norm transformed system, see ml_ct_ss_adtf
infoLYAPDL
structure, containing information about the continuous-time dual Lyapunov equations solver, see ml_lyapdl_sgn_fac
Ns
Dimension of the stable part of the reduced-order model
Nu
Dimension of the anti-stable part of the reduced- order model
Sigma
Chosen Hankel singular value, exact approximation error in the Hankel-norm

Reference

P. Benner, E. S. Quintana-Orti, G. Quintana-Orti, Computing optimal Hankel norm approximations of large-scale systems, in: Proc. 43rd IEEE Conf. Decision Contr., Omnipress, Madison, WI, 2004, pp. 3078--3083.

See Also

ml_ct_dss_hna | ml_morlabopts