# How to find the triangle matrix of a given matrix?

I read http://en.wikipedia.org/wiki/Triangular_matrix, and it says a matrix is triangularisable. But I did not find any where talking about how to do that.

E.g. how can I transform this matrix into a triangle matrix?

-2,2,3
-1,1,3
2,0,-1

-
Since the triangular form contains the eigenvalues and the eigenvalues can't be determined in closed form for a general matrix, it follows that the triangular form can't be determined in closed form for a general matrix. Are you interested in numerical algorithms that compute approximations of the triangular form? In your $3\times3$ example, the triangular form can be found in closed form because the eigensystem of an $n\times n$ matrix with $n<5$ can be found in closed form, but this will not be the case for $n\ge5$. – joriki Jun 10 '11 at 10:21
Actually, my original motive is to find the eigenvalues of the matrix. According to the Wiki, if I can find the triangle matrix of the given matrix, it would be easier to find the eigenvalues. – davidshen84 Jun 14 '11 at 7:42
First off, it's usually a good idea to include your original motive in the question; that allows people to focus on relevant aspects of the question, or, in this case, perhaps to point out why your approach is not the best suited for your original problem. In the present case, it's no just easier to find the eigenvalues when you have the triangular form; you can simply read them off from its diagonal. But as Luboš showed, you can get the eigenvalues as the roots of the characteristic polynomial. Generally, going via the triangular form is unlikely to simplify the eigenvalue problem. – joriki Jun 14 '11 at 7:47

If you find the eigenvalues $\lambda$ as the solutions to the characteristic equation $$0 = \det (A - \lambda\cdot I) = 6 + 5 \lambda - 2 \lambda^2 - \lambda^3$$ you will see that the eigenvalues of your matrix are $-3,2,-1$. Alternatively, this can be found out by running the Mathematica command

a = {{-2, 2, 3}, {-1, 1, 3}, {2, 0, -1}}
CharacteristicPolynomial[a, lambda]
d = Eigenvectors[a]
Inverse[d]


It follows that the matrix can be diagonalized - much like all matrices - so you won't need any entries above the diagonal (no nontrivial Jordan blocks will be used). It can be written as $$A = C D C^{-1}$$ where $D={\rm diag}(-3,2,-1)$ and the columns of $C$ are the eigenvectors corresponding to these eigenvalues. The first column is $(-1,-1,1)^T$, the second is $(3,3,2)^T$, the third is $(0,-3,2)^T$. Those can be found by solving simple sets of linear equations with the three eigenvalues found previously.

The first column of $C^{-1}$ is $(-4/5, 1/15,1/3)^T$, the second is $(2/5,2/15,-1/3)^T$, and the last column is $(3/5,1/5,0)^T$.

-
What do you mean by "much like all matrices"? – joriki Jun 11 '11 at 8:31

Usually Schur decomposition is used in numerical work for performing similarity transformations of a general matrix to a triangular matrix. The upshot is that you either have a. all the eigenvalues of your matrix are real, or b. you don't mind complex elements popping up in your triangle. (Software usually compute the "real Schur decomposition" which give a triangular matrix with bumps for matrices with complex eigenvalues.)

Alternatively, there is the Jordan decomposition, which is useful in exact arithmetic, but not too good in inexact arithmetic. Since yours is a small example, it shouldn't be too hard to get a Jordan decomposition...

-
This is not what the term "triangularisable" refers to -- at least not in the cited Wikipedia article, which says "A matrix which is conjugate to a triangular matrix is called triangularizable". – joriki Jun 10 '11 at 10:24
Yes, I've edited. – Jerry Jun 10 '11 at 10:27