# Unable to evaluate Eigenvalues and Eigenvectors for a matrix (2)

I have posted a similar question last year pertaining to this issue. Here's a link to my post together with the solution given: Unable to evaluate Eigenvalues and Eigenvectors for a matrix

I have tried the methods in my previous posts but to no avail. Here's the problem: I have the following 3x3 matrix

m = {{-γ/2, -I*g1, -I*Exp[-I*α]*g3}, {-I*g1, -(κ1)/2, -I*g2}, {-I*Exp[I*α]*g3, -I*g2, -(κ2)/2]}}


where I represents the complex identity \Sqrt[-1]. I wish to find the eigenvectors for the matrix for two different alpha values. For α = π/2, simply doing (after manually replacing α with π/2)

Eigenvectors[m, Cubics->True]


Returns the appropriate (albeit long) eigenvectors. Now however, if I change my α to α = π and run

 Eigenvectors[m, Cubics->True]


I am returned with

...Eigenvectors: Unable to find all eigenvectors


Which is the similar issue encountered in the link that I provided above a while ago. I proceed to perform the same fix detailed in that question. Namely

Simplify[Eigenvectors[mchiral /. Complex[0, -1] -> mi, Cubics -> True] /. mi -> -I];


and I am still returned with the same error. Namely

...Eigenvectors: Unable to find all eigenvectors


What is the problem here?

• There is no problem: imgur.com/a/ALdYCou Except that you have some brackets misplaced in the definition of m that I fixed – but check if the form is the desired one. – corey979 Mar 16 '19 at 21:16
• @corey979 Interesting. I am on version 11.3 for macOS and I do get the error message (even after fixing the brackets). – Henrik Schumacher Mar 16 '19 at 21:18
• How many times have I advocated for providing the \$Version one is using... I'm on 10.4 and there is no problem, as showed. Indeed, there is an error in 11.3. No idea what version the OP is using. Unless he clarifies there is virtually no problem. – corey979 Mar 16 '19 at 21:23
• @corey979 Apologies but I'm using version 11.3. The error still persists even after the bracket fix. I don't know what the problem is – kowalski Mar 16 '19 at 21:26

I have o clue why this did not work. However, this old-fashioned method seems to work

m = {
{-γ/2, -I g1, -I Exp[-I α] g3},
{-I g1, -(κ1)/2, -I g2},
{-I Exp[I α] g3, -I g2, -(κ2)/2}
};

a = m /. α -> π;
U = Flatten[NullSpace[a - # IdentityMatrix[3]] & /@ λ, 1];

Simplify[a.Transpose[U] - Transpose[U].DiagonalMatrix[λ]]


{{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}

• The eigenvalues seems to be fine. It's long but it prints. The eigenvectors on the other hand, are still unobtainable. I'm starting to think if this is alpha dependent since it works for pi/2 but not pi. But that's just silly and shouldn't happen – kowalski Mar 16 '19 at 21:35
• @kowalski U produced by the code above contains the eigenvectors. – Henrik Schumacher Mar 16 '19 at 21:37
• Thanks for the clarification and help. However, I tried setting alpha to be pi/4 and the last line Simplify[a.Transpose[U] - Transpose[U].DiagonalMatrix[lambda]] doesn't work. Says the first two levels cannot be transposed. – kowalski Mar 18 '19 at 15:08

This is a very peculiar failure, which I initially suspected to be due to the matrix being defective. I thus tried to use JordanDecomposition[] for diagnostics, but as it turns out, it is able to derive the eigendecomposition directly:

mat = {{-γ/2, -I g1, -I Exp[-I α] g3},
{-I g1, -κ1/2, -I g2},
{-I Exp[I α] g3, -I g2, -κ2/2}};

{sm, jm} = JordanDecomposition[mat];

jt = Simplify[ToRadicals[FullSimplify[jm /. α -> π]]];
st = Simplify[ToRadicals[FullSimplify[sm /. α -> π]]];

(mat /. α -> π).st - st.jt // Simplify
{{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}