Computing eigenvalues and eigenvectors of a $2\times2$ matrix is easy by solving the characteristic equation. However, things get complicated if the matrix is larger.

Let's assume I have this matrix with computed eigenvalues and eigenvectors:


Then, I have this $4\times4$ matrix that contains two duplicates of this matrix in it:


To find the eigenvalues, I would have to solve an equation of $4$th degree and have to calculate a huge determinant. But I think there should be an easier way to calculate it.

I have $2$ questions here:

  • Is there a trick that I can use here to calculate them, knowing the eigenvalues of above $2\times2$ matrix already?

  • How would swapping the rows or columns of my $4\times4$ matrix change the eigenvalues?

Please feel free to answer any of the two. I am hoping that an easier solution exists to this.

  • 4
    $\begingroup$ In this specific case, the eigenvalues of your $2\times 2$ matrix will be eigenvalues of the larger matrix. You need only extend the eigenvector by two zeros and you have an eigenvector of the new matrix. $\endgroup$ – Wouter Zeldenthuis Mar 7 '13 at 13:43
  • $\begingroup$ The way that we could preserve the eigenvalues is to conjugate the matrix. As switching basis means conjugating its linear transformation. $\endgroup$ – Easy Mar 7 '13 at 13:52

First, if you have a "block diagonal" matrix as in your example, the eigenvalues of the matrix are the combined eigenvalues of the smaller blocks on the diagonal. So, yes, in the case of the $4 \times 4$ matrix, the eigenvalues are just those of the two $2 \times 2$ blocks on its diagonal (repeated according to multiplicity).

Second, swapping two rows (or two columns, resp.) does not preserve eigenvalues and has a somewhat unpredictable effect on the eigenvalues. However if you swap both a pair of rows and the corresponding pair of columns, this is a similarity tranformation and preserves the eigenvalues (according to multiplicity).

  • $\begingroup$ I just wanted to point out something: Suppose you have a linear transformation $T$ whose matrix is the one in the question with respect to some basis $\alpha$. Then the last line of this answer is basically just getting a new matrix with respect to a basis $\beta$ which has the same vectors in $\alpha$ but in a different order. $\endgroup$ – Pratyush Sarkar Mar 8 '13 at 4:05
  • $\begingroup$ @PratyushSarkar: That's right, and the similarity transformation in this case is actually an orthogonal similarity transformation, since we're just rearranging the basis. $\endgroup$ – hardmath Mar 8 '13 at 9:13
  • $\begingroup$ @hardmath, so in the end, my 4x4 matrix will only have 2 unique eigenvalues? Is it ok if it does not have 4? $\endgroup$ – Erol Mar 9 '13 at 8:50
  • 1
    $\begingroup$ @Erol: It does have exactly 2 distinct real eigenvalues. When counting eigenvalues we often use the phrase "according to multiplicity" to indicate we are including repetitions of eigenvalues in the count. Here your $4\times 4$ matrix has a full basis of four eigenvectors, two for each eigenvalue. So "according to multiplicity" there are four eigenvalues. $\endgroup$ – hardmath Mar 9 '13 at 13:36
  • $\begingroup$ @hardmath, I was not aware of this "multiplicity". Thanks for enlightening me. $\endgroup$ – Erol Mar 9 '13 at 13:55

As you observed, the eigenvalues of a matrix are the roots of its characteristic polynomial. This fact is useful in theory (and for getting a good grade in your linear algebra class :-) ), but, in real life, it would be very rare to calculate eigenvalues this way.

There are very good numerical methods for calculating eigenvalues and eigenvectors. For example, look in LAPACK, or EISPACK, or the Numerical Recipes books. The software was written by world-class experts, and in many cases it's quite old, so it has been very well tested. None of these methods use the characteristic polynomial; they typically work by iteratively transforming the matrix in some way (Householder transformations, or Jacobi transformations, for example).

Actually, the ironic thing is that the relationship between polynomial roots and eigenvalues is often exploited in the opposite direction. If you want to find the roots of a polynomial, one approach is to construct its companion matrix, and then find its eigenvalues. This approach is used in the root finder in the Chebfun system, for example -- it routinely finds roots of polynomials whose degrees are in the hundreds.

In some sense, finding eigenvalues is easier than finding polynomial roots -- certainly more high-quality numerical methods software is available to help out. And, for any realistic eigenvalue problem, numerical methods are unavoidable. Even for 3x3 matrices, where you can get the roots of the characteristic polynomial by a formula, the numerical methods will often give you more accurate answers (though they might be a bit slower).

  • $\begingroup$ Thank you for your answer. It only applies to the general case but I am looking for a solution in a specific case with the block matrix I have given in the question. Using hardmath's method is much more practical than using numerical methods in this case. $\endgroup$ – Erol Mar 9 '13 at 8:52
  • $\begingroup$ Yes, sure, if the blocks are just 2x2. $\endgroup$ – bubba Mar 9 '13 at 8:59

I think there is generally no easy method to find the eigenvalues as some of the matrices might even not have nice eigenvalues, like complex numbers in your case. For dimension higher than 5, it is well known that a polynomial of degree 5 could have no explicit solution. But sometimes one might be able to find its eigenvectors and hence find its eigenvalues, however this only applies to some cases.

  • $\begingroup$ Your statements are true only if the discussion is restricted to closed-form algebraic techniques. $\endgroup$ – bubba Mar 8 '13 at 7:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.