I have a unitary matrix $U$ UMatrix
. It looks like
{{0.822075, 0.548446, -0.113679 + 0.102357 I,
0}, {-0.353904 + 0.0562876 I, 0.665882 + 0.0375522 I, 0.65328,
0}, {0.437829 + 0.063889 I, -0.502575 + 0.0426234 I, 0.741502,
0}, {0. + 0. I, 0. + 0. I, 0., 1}}
I also have a matrix $M$massMatrix
. It looks like
{{0, 0, 0, 0}, {0, 0.0000754, 0, 0}, {0, 0, 0.00244, 0}, {0, 0, 0,
0}}
Now if I do $U M U^\dagger$. I should be able to be able to diagonalize $U M U^\dagger$ and get back $U$ (or $U^\dagger$).
However, I found JordanDecomposition[UMatrix .massMatrix.ConjugateTranspose[UMatrix]][[1]]
as
{{0.0314079 + 0.821475 I, 0. + 0. I, -0.529795 + 0.141809 I,
0.152284 - 0.0144812 I}, {-0.0697676 - 0.351495 I,
0. + 0. I, -0.652948 + 0.135899 I, -0.524682 -
0.389208 I}, {-0.0471148 + 0.43995 I, 0. + 0. I,
0.474463 - 0.171123 I, -0.595539 - 0.441768 I}, {0. + 0. I,
1. + 0. I, 0. + 0. I, 0. + 0. I}}
and Transpose[Eigensystem[UMatrix .massMatrix.ConjugateTranspose[UMatrix][[2]]]
is
{{-0.113679 + 0.102357 I, 0.547576 - 0.0308803 I, 0.822075 + 0. I,
0. + 0. I}, {0.65328 + 1.28954*10^-16 I,
0.66694 + 0. I, -0.353904 + 0.0562876 I,
0. + 0. I}, {0.741502 + 0. I, -0.499377 + 0.0708533 I,
0.437829 + 0.063889 I, 0. + 0. I}, {0. + 0. I, 0. + 0. I, 0. + 0. I,
1. + 0. I}}
Looks like JordanDecomposition
does not really give what I want (but I don't know why), but Eigensystem
do. The problem is the order of basis is different. We see each column the order is correct but each row is not. This is expected as there is no way for mathematica to know the order of eigenvlaue I want. Is there is a way to tell Mathematica which order I want? Later I will do a perturbation on $U M U^\dagger$ I also need to fix the order for that.
Eigensystem
orders the eigenvalues (and corresponding eigenvectors) from large to small. Since yourmassMatrix
doesn't have an ordered diagonal, you're going to need to permute the eigenvectors to recoverUMatrix
at the very least. Your mass matrix also has zeros on the diagonal, so I doubt you can recover it at all fromEigensystem
. $\endgroup$