
Chapter 5 Utilities
Xmath Model Reduction Module 5-2 ni.com
The gramian matrices are defined by solving the equations (in continuous 
time)
and, in discrete time
The computations are effected with lyapunov( ) and stability is checked, 
which is time-consuming. The Hankel singular values are the square roots 
of the eigenvalues of the product. 
Related Functions
lyapunov(), dlyapunov()
stable( ) [SysS,SysU] = stable(Sys,{tol})
The stable( ) function decomposes Sys into its stable (SysS) and 
unstable(SysU) parts, such that Sys=SysS+SysU.
Continuous systems have unstable poles if real parts > –tol.
Discrete systems have unstable poles if magnitudes > 1-tol.
• The direct term (D matrix) is included in SysS.
•If 
Sys has poles clustered near -tol (or 1-tol), then SysS and SysU 
might be ill-conditioned. To avoid this problem choose tol to a value 
that is not close to the majority of poles.
Algorithm
The algorithm begins by transforming the A matrix to Schur form, and 
counting the number of stable and unstable eigenvalues, together with 
those for which classification is doubtful. Stable eigenvalues are those 
in either of the following:
•Re[s] < 0 (continuous time)
•|z| < 1 (discrete time)
AWcWcA′+BB′–=
WoAA′W0
+C′C–=
WcAWcA′–BB′=
WoA′WoA–C′C=