
© National Instruments Corporation 5-1 Xmath Model Reduction Module
5
UtilitiesThis chapter describes three utility functions: hankelsv( ), stable( ), 
and compare( ). 
The background to hankelsv( ), which calculates Hankel singular 
values, was presented in Chapter1, Introduction. Hankel singular values 
are also calculated in other functions, sometimes by other procedures. 
A com parison of the procedures is given in the Hankel Singular Values 
section. The function compare( ) serves to facilitate the comparisons 
ofan unreduced and a reduced sy stem, from  various points of views. 
The function stable( ) is used to separate (additively) a system into its 
stable and unstable parts, that is, given G(s), the function determines Gs(s) 
and Gu(s), the first with all poles in Re[s]< 0, the second with all poles in 
Re[s] ≥ 0, such that
The function is used within some of the other functions of the Model 
Reduction Module. It should also be used when reduction of an unstable 
G(s) is contemplated. The normal reduction functions, for example, 
balmoore( ) or redschur( ), require stability of the transfer function 
matrix G(s) being reduced. If G(s) is unstable, stable( ) should be used 
to generate Gs(s) and Gu(s); reduction of Gs(s) should be performed, and 
then Gu(s) added to the outcome using the + operator, to yield the desired 
reduction of Gs(s).
hankelsv( )
[HSV,Wc,Wo] = hankelsv(Sys,{noplot})
The hankelsv( ) function computes the Hankel Singular Values of a 
stable system (continuous or discrete) and displays them in a bar plot. 
Gs() Gss() Gus()+=