A system described by \begin {align*} x' &= Ax+Bu \\ y &= Cx+Du \end {align*}
Is controllable if for any initial state \(x_0\) and any final state \(x_f\) there exist an input \(u\) which moves the system from \(x_0\) to \(x_f\) in finite time. Only the matrix \(A\) and \(B\) are needed to decide on controllability. If the rank of \[ [B \> AB\> A^2B\> \ldots \> A^{n-1}B] \] is \(n\) which is the number of states, then the system is controllable. Given the matrix \[ A=\left ( {\begin {array}{cccc} 0&1&0&0\\ 0&0&-1&0\\ 0&0&0&1\\ 0&0&5&0 \end {array}} \right ) \] And \[ B=\left ( {\begin {array}{c} 0\\ 1\\ 0\\ -2 \end {array}} \right ) \]
Matlab A0 = [0 1 0 0; 0 0 -1 0; 0 0 0 1; 0 0 5 0]; B0 = [0 1 0 -2]'; sys = ss(A0,B0,[],[]); m = ctrb(sys)
|
m = 0 1 0 2 1 0 2 0 0 -2 0 -10 -2 0 -10 0
|
rank(m)
|
4 |