When you see the word **eigen**, replace it with the term **spectrum of an operator** (see [spectral theory][1]) View the matrix as a continuous or discrete linear transform acting on a vector. Similar matrices ($B = MAM^\{-1}$) represent the same transform with respect to a different base. When you diagonalize the matrix, you are actually trying to obtain an [orthogonal][2] decomposition of the transform as a linearly independent eigensystem. 1. If there are n independent eigenvectors, you will obtain a full diagonalization of your matrix. 2. If less than n, you have two choices. If all eigenvalues are in the ground field, you will get a [Jordan decomposition][3]. Otherwise, you have to settle with a [rational canonical form][4]. In addition to Gilbert Strang's excellent book and lectures on Linear Algebra, I recommend browsing through Castillo's [Orthogonal sets and polar methods in linear algebra][5]. Throughout the book, the matrix is seen as a transform rather than something which must be numerically manipulated. [1]: http://en.wikipedia.org/wiki/Spectral_theory [2]: http://en.wikipedia.org/wiki/Orthogonal_transformation [3]: http://mathworld.wolfram.com/JordanCanonicalForm.html [4]: http://mathworld.wolfram.com/RationalCanonicalForm.html [5]: http://books.google.com/books?id=KXKhIdVDMsAC&lpg=PP1&ots=DrsW5LrMeu&dq=castillo%2520linear%2520algebra&pg=PR9#v=onepage&q&f=false