A system is completely controllable if there exists an input vector u(t) that will transfer the system from an initial state x(t0) to a final state x(tf) over a time interval tf-t0.
A linear time-invariant continuous system given by
dx/dt = Ax+Bu, y=Cxis completely controllable iff the MatrixRank of the controllability (row) matrix
U = [AB AB A^(2)B...A^(n-1)B]equals n, the size of the vector x.
A system is completely observable if the state can be determined from a knowledge of the output vector y(t) over a finite interval of time.
A linear system is completely observable iff the MatrixRank of the observability (column) matrix
[C ] V = [CA ] [... ] [CA^(n-1)]equals n.
Note that u and y need not be the same size vectors as x.
Shouldn't the above be "rank >= n", not "rank = n"?
The rank of a matrix cannot be greater than the size of the matrix, in this case n. If the rank is n, the matrix is of full rank. Anything less and the matrix is singular.
Well, yes, but I had a vague notion in mind about padding/excess information in the control vs system vector/matrix, similar to the issues in solving a system of N simultaneous equations with M variables and N > M.
I think the assumption here is that the state vector x is all relevant to the state of the process. The number of inputs in u and the number of outputs in y are generally smaller. The outputs here are assumed measureable. It gets to be more fun if they are not. I didn't write this page, but I think it is all pretty standard control theory. -- JohnFletcher
I had in mind more fun cases. :-) I'm much stronger in the Fourier signal analysis side of things, but I know they are ultimately two sides of the same coin...just haven't gotten around to leaning into the control theory side of things yet. A friend who teaches the subject gave me a text on the subject last year, so one of these days...Meanwhile these control-related pages are tantalizing in giving me deja vu; it's sort of familiar and sort of not.
See also NyquistStabilityCriterion SingularValueDecomposition