hsvd

Hankel singular values of a state-space or transfer function model.

Syntax

HSV = hsvd(SYS)

HSV = hsvd(SYS, 'offset', OFFSET)

HSV = hsvd(SYS, 'alpha', ALPHA)

Inputs

SYS
A state-space or transfer function model.
OFFSET
An offset for the stable/unstable boundary.
ALPHA
The ALPHA-stability boundary for the eigenvalues of the state dynamic.

Outputs

HSV
Hankel singular values.

Examples

Hankel singular values for stable/unstable boundary condition:
sys1 = tf([1, 0.5],[1 2 2e-06]);
hsv1 = hsvd(sys1, 'offset', 0.001)
hsv1 = 0.187500156
Hankel singular values for ALPHA-stability boundary condition:

a = [ -0.04165  0.0000  4.9200  -4.9200  0.0000  0.0000  0.0000;
      -5.2100  -12.500  0.0000   0.0000  0.0000  0.0000  0.0000;
       0.0000   3.3300 -3.3300   0.0000  0.0000  0.0000  0.0000;
       0.5450   0.0000  0.0000   0.0000 -0.5450  0.0000  0.0000;
       0.0000   0.0000  0.0000   4.9200 -0.04165 0.0000  4.9200;
       0.0000   0.0000  0.0000   0.0000 -5.2100 -12.500  0.0000;
       0.0000   0.0000  0.0000   0.0000  0.0000  3.3300 -3.3300];

b = [  0.0000   0.0000;
      12.5000   0.0000;
       0.0000   0.0000;
       0.0000   0.0000;
       0.0000   0.0000;
       0.0000   12.500;
       0.0000   0.0000];
       
c = [  1.0000   0.0000  0.0000   0.0000  0.0000  0.0000  0.0000;
       0.0000   0.0000  0.0000   1.0000  0.0000  0.0000  0.0000;
       0.0000   0.0000  0.0000   0.0000  1.0000  0.0000  0.0000];

sys2 = ss(a, b, c, []);
hsv2 = hsvd(sys2, 'alpha', 0.0)

hsv2 = [Matrix] 7 x 1
2.51388
2.08456
1.91780
0.76664
0.54729
0.02527
0.02458

Comments

Based on the SLICOT library function AB13AD.