- #1
thedean515
- 11
- 0
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:
[tex]\mathbf{\left|A\right|=\left|U\right|\left|\Lambda\right|\left|U^{\dagger}\right|}=\lambda_{1}\lambda_{2}\ldots\lambda_{M} \qquad \qquad (1)[/tex]
Let [tex]\mathbf{A}[/tex] be a [tex]M\times M [/tex] hermitian matrix , and [tex]\lambda_{i}, \lambda_{2}, \ldots, \lambda_{M}[/tex] and [tex]\mathbf{u_{1},\, u_{2},\,\ldots\, u_{M}} [/tex]represent its eigenvalues and an orthonormal set of eigenvectors.
[tex]\mathbf{\Lambda=}diag\left[\lambda_{1},\lambda_{2},\ldots,\lambda_{M}\right][/tex]
and
[tex]\mathbf{U=[u_{1},u_{2},\ldots,u_{M}]}[/tex]
[tex]\mathbf{U^{\dagger}}[/tex] 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
[tex]\mathbf{\left|A\right|=\left|U\right|\left|\Lambda\right|\left|U^{\dagger}\right|}=\lambda_{1}\lambda_{2}\ldots\lambda_{M} \qquad \qquad (1)[/tex]
Let [tex]\mathbf{A}[/tex] be a [tex]M\times M [/tex] hermitian matrix , and [tex]\lambda_{i}, \lambda_{2}, \ldots, \lambda_{M}[/tex] and [tex]\mathbf{u_{1},\, u_{2},\,\ldots\, u_{M}} [/tex]represent its eigenvalues and an orthonormal set of eigenvectors.
[tex]\mathbf{\Lambda=}diag\left[\lambda_{1},\lambda_{2},\ldots,\lambda_{M}\right][/tex]
and
[tex]\mathbf{U=[u_{1},u_{2},\ldots,u_{M}]}[/tex]
[tex]\mathbf{U^{\dagger}}[/tex] 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