control.balred¶

control.
balred
(sys, orders, method='truncate', alpha=None)¶ Balanced reduced order model of sys of a given order. States are eliminated based on Hankel singular value. If sys has unstable modes, they are removed, the balanced realization is done on the stable part, then reinserted in accordance with the reference below.
Reference: Hsu,C.S., and Hou,D., 1991, Reducing unstable linear control systems via real Schur transformation. Electronics Letters, 27, 984986.
Parameters:  sys (StateSpace) – Original system to reduce
 orders (integer or array of integer) – Desired order of reduced order model (if a vector, returns a vector of systems)
 method (string) – Method of removing states, either
'truncate'
or'matchdc'
.  alpha (float) – Redefines the stability boundary for eigenvalues of the system matrix A. By default for continuoustime systems, alpha <= 0 defines the stability boundary for the real part of A’s eigenvalues and for discretetime systems, 0 <= alpha <= 1 defines the stability boundary for the modulus of A’s eigenvalues. See SLICOT routines AB09MD and AB09ND for more information.
Returns: rsys – A reduced order model or a list of reduced order models if orders is a list
Return type: Raises: ValueError
– * if method is not'truncate'
or'matchdc'
ImportError
– if slycot routine ab09ad, ab09md, or ab09nd is not foundValueError
– if there are more unstable modes than any value in orders
Examples
>>> rsys = balred(sys, orders, method='truncate')