functionisControllableSISO
To check a SISO system whether it is controllable
Information
This function is to calculate whether a SISO state space system is controllable or not. Therefore,
it is transformed to lower controller Hessenberg form
| * * 0 ... 0 | | 0 |
| . . . . . | | . |
Q*A*Q ' = H = | * ... ... * 0 |, Q*b = q = | . |, c*Q = ( *, ..., * )
| * ... ... * * | | 0 |
| * ... ... * * | | * |
Note, that
n-1 n-1
rank(b, A*b, ..., A *b) = rank(q, H*q, ..., H *q)
and that
n-1
(q, H*q, ..., H *q)
is a lower triangular matrix and has full rank if and only if none of the elements in the diagonal is zero. That is, that neither qn or hi,i+1, i = 1,..., n-1 may be zero.
Outputs
| Type | Name | Default | Description |
| Boolean | controllable | | |