# Calculating Eigen Values / Vectors of large matrices

I want to know how to calculate the Eigenvalues / Eigenvectors of large matrices.

I am fairly confident that I can calculate the Eigen properties of matrices that of size $2x2$ but I'm confused on how to calculate Eigenvalues and Eigenvectors on matrices that are bigger, for example:

$$A = \begin{pmatrix} 1 & 2 &3 &4 &5 &6 \\ 7 & 8 &9 &10 &11 &12 \\ 13 &14 &15 &16 &17 &18 \\ 19 &20 &21 &22 &23 &24 \\ 25 &26 &27 &28 &29 &30 \\ 31 & 32 & 33 &34 &35 &36 \end{pmatrix}$$

Or any size matrix. I can calculate the Covariance matrix, and Determinant of any given matrix but cannot seem to figure out how I would go about calculating the Eigenvalues and Eigenvectors for larger matrices of $2x2$.

Can anyone offer any help OR suggest some light reading around this topic?

There exist many such algorithms, already built-in in Matlab or Python (SciPy or NumPy). Such algorithms start from the QR algorithm and then modify it. Since these are numerical in nature, you may need to worry about stability/accuracy.

• Upon computing the QR algorithm, how would one go about calculating the Eigenvalues and vectors from this? – Phorce Mar 30 '15 at 13:31
• The QR algorithm does compute the eigenvalues. – Math-user Mar 30 '15 at 13:39
• So the QR algorithm IS the eigenvalues? .. I'm confused. – Phorce Mar 30 '15 at 13:41
• The QR algorithm factors $A=QR$ and you read the eigenvalues off the diagonal of $R$. – Math-user Mar 30 '15 at 13:46

The eigenvalues come as solutions of the characteristic equation, $\det(A-\lambda I) = 0$. For 5 or more variables (i.e., matrices with dimension 5 or larger), it is impossible to algebraically solve a polynomial in closed form (http://mathworld.wolfram.com/AbelsImpossibilityTheorem.html), so you have to resort to numerical solutions in general.

For dimension 4 or lower, there are closed form solutions to every polynomial equation (higher-dimensional versions of the quadratic formula). For such matrices, you could use the explicit formulas on the characteristic equation to find the eigenvalues. But these formulas are ridiculously complicated (see http://upload.wikimedia.org/wikipedia/commons/9/99/Quartic_Formula.svg), so it is better to just use a computer.

• What do you mean by " numerical solutions in general"? – Phorce Mar 30 '15 at 13:04
• Sorry, it means that there is no closed form algebraic solution for a general matrix of dimension higher than 5. You need to use a computer to calculate approximate solutions instead. – co9olguy Mar 30 '15 at 13:07
• Yes, so for example, I want to create an algorithm (on a computer) which, can get the Eigenvalues / Eigenvectors. But, currently my method only works for $2x$ matrices, I want to know a method of calculating the values on a larger scale. Would it therefore involve some kind of iterative way of doing it? I.e. Split the matrix up into 9 blocks of $2x2$, calculate the eigenvalues / vectors of these matrices which would form my result? – Phorce Mar 30 '15 at 13:09
• Hmm... I wouldn't recommend making your own algorithms. Standard numerical routines have been optimized over decades. If you're interested, I've updated my answer with a link which shows the formula you'd need for 4x4 matrices (after you determined the characteristic polynomial) – co9olguy Mar 30 '15 at 13:17
• Also, as Jin mentions, computer routines are typically based on much more effective algorithms than the "textbook" method of solving the characteristic polynomial. – co9olguy Mar 30 '15 at 13:19