Quantcast eigenvalue question, hermitian matrix Text - Physics Forums Library

PDA

View Full Version : eigenvalue question, hermitian matrix


thedean515
Aug19-08, 07:29 AM
I read from a book and claim that for any hermitian matrix can be diagonalized by a unitary matrix whose columns represent a complete set of its normalized eigenvectors. It then given an equation:
\mathbf{\left|A\right|=\left|U\right|\left|\Lambda\right|\left|U^{\dagger}\right|}=\lambda_{1}\lambda_{2}\ldots\lambda_{M} \qquad \qquad (1)

Let \mathbf{A} be a M\times M hermitian matrix , and \lambda_{i}, \lambda_{2}, \ldots, \lambda_{M} and \mathbf{u_{1},\, u_{2},\,\ldots\, u_{M}} represent its eigenvalues and an orthonormal set of eigenvectors.

\mathbf{\Lambda=}diag\left[\lambda_{1},\lambda_{2},\ldots,\lambda_{M}\right]
and
\mathbf{U=[u_{1},u_{2},\ldots,u_{M}]}
\mathbf{U^{\dagger}} represent the complex conjugate transpose of U.

I failed to proof it in MATLAB.

I have

A =

1.5000 2.5000 3.5000 4.5000 5.5000
2.5000 1.5000 2.5000 3.5000 4.5000
3.5000 2.5000 1.5000 2.5000 3.5000
4.5000 3.5000 2.5000 1.5000 2.5000
5.5000 4.5000 3.5000 2.5000 1.5000

>> [U lamda] = eig(A)
U =

0.6015 -0.4703 -0.3717 0.1777 0.4973
0.3717 0.2490 0.6015 -0.5125 0.4187
-0.0000 0.6586 0.0000 0.6414 0.3936
-0.3717 0.2490 -0.6015 -0.5125 0.4187
-0.6015 -0.4703 0.3717 0.1777 0.4973


lamda =

-5.2361 0 0 0 0
0 -1.6080 0 0 0
0 0 -0.7639 0 0
0 0 0 -0.5558 0
0 0 0 0 15.6638

The middle of Equation (1) equal to

abs(U)*abs(lamda)*abs(U')

ans =

6.2463 4.8416 3.6267 4.8416 6.2463
4.8416 3.9914 3.0274 3.9914 4.8416
3.6267 3.0274 3.3521 3.0274 3.6267
4.8416 3.9914 3.0274 3.9914 4.8416
6.2463 4.8416 3.6267 4.8416 6.2463

it does not equal to the right handside of Equation 1:
prod(diag(lamda))

ans =

56.0000

I think I must made a stupid error somewhere but can't see it myself at the moment, someone can help me

HallsofIvy
Aug19-08, 08:34 AM
I think you have "\mathbf{U}" and "\mathbf{U^{\dagger}}" reversed.

Try multiplying in the opposite order

thedean515
Aug21-08, 04:11 AM
I think you have "\mathbf{U}" and "\mathbf{U^{\dagger}}" reversed.

Try multiplying in the opposite order

Thank you for your help.
I tried, but I still can't get |A| from abs(U')*abs(lamda)*abs(U), which I will called it A2.

A2- abs(A) =
ans =

6.3607 3.6121 1.6572 -1.8534 1.0880
3.6121 3.5874 1.4778 -1.1544 0.8109
1.6572 1.4778 2.1712 -0.4520 0.9084
-1.8534 -1.1544 -0.4520 0.0429 0.0043
1.0880 0.8109 0.9084 0.0043 4.1655

I didn't understand from the equation given is that:

|A| = [tex]\lamda_1 \lamda_2 \ldots \lamda_M[\tex]

If A is a M x M matrix how would it equal to a value as indicated by the RHS.

weejee
Aug21-08, 07:31 AM
Here '|A|' doesn't mean the absolute value. It is the determinant.

thedean515
Aug21-08, 11:14 AM
that's right, thank you very much. I didn't thought about that. My question them become how to differentiate a absolute value or a determinant of a matrix?

weejee
Aug21-08, 12:49 PM
Well, if the quantity in the '| |' is a matrix, it means the determinant, as far as I've seen until now.

Eidos
Aug21-08, 01:42 PM
Matlab has the command det(A) and it will return the determinant of the matrix A.

If you multiply, the right hand side determinants together you will get the determinant on the left hand side :)