# What is matrix rank and how do i calculate it?

The rank of a matrix $A$ is the number of independent columns of $A$. A square matrix is full rank if all of its columns are independent. That is, a square full rank matrix has no column vector $v_i$ of $A$ that can be expressed as a linear combination of the other column vectors. That is, $v_j \neq \Sigma_{i = 1, i\neq j}^{n} a_i v_i$ for any set of $a_i$. For example, if one column of $A$ is equal to twice another one, then those two columns are linearly dependent (with a scaling factor 2) and thus the matrix would not be full rank.

A simple test for determining if a square matrix is full rank is to calculate its determinant. If the determinant is zero, there are linearly dependent columns and the matrix is not full rank. Prof. John Doyle also mentioned during lecture that one can perform the singular value decomposition of a matrix, and if the lowest singular value is near or equal to zero the matrix is likely to be not full rank ("singular").

For Single-input-single-output (SISO) systems, which are the focus of this course, the reachability matrix will always be square; more inputs make it wider (because the width $B$ is equal to the number of inputs). In the case of non-square matrices, full rank means that the number of independent vectors is as large as possible.

--Sawyer Fuller 16:22, 29 October 2007 (PDT)

modified by Sawyer Fuller 18:12, 3 November 2007 (PDT) to be more specific about square and non-square matrices

fix an error in summation index 11:12 5 November 2007 (PDT)