0
$\begingroup$

When I calculate the eigenvalues of the following matrix (H) by using Eigenvalues, I get complex expressions with Root values. How do I find the explicit eigenvalues with the following assumptions

{{J, B, α} ∈ Reals, J > 0, B >= 0,  0 <= α <= π} 

My Matrix is

H = {{2 (J + B Cos[α]), B Sin[α], B Sin[α], 0},
     {B Sin[α], -2 J, 0, B Sin[α]}, 
     {B Sin[α],0, -2 J, B Sin[α]},
     {0, B Sin[α], B Sin[α], 2 (J - B Cos[α])}};

enter image description here

$\endgroup$
3
  • 1
    $\begingroup$ You could try ToRadicals. $\endgroup$ Commented Sep 10, 2019 at 11:54
  • $\begingroup$ It works, but what about the assumptions? $\endgroup$
    – Bekaso
    Commented Sep 10, 2019 at 14:20
  • $\begingroup$ Eigenvalues[H, Cubics -> True] gives the same result as Eigenvalues[H] // ToRadicals $\endgroup$
    – Bob Hanlon
    Commented Sep 10, 2019 at 23:29

2 Answers 2

2
$\begingroup$

As @b.gates.you.know.what mentions, you can use ToRadicals

Eigenvalues[H] // ToRadicals

but the resultant expression is not so easy to handle. Even after trying to simplify it under the condition you offer, it helps little: enter image description here

$\endgroup$
2
  • $\begingroup$ I think that this command did not take my assumptions into account, otherwise why the imaginary part appeared? $\endgroup$
    – Bekaso
    Commented Sep 10, 2019 at 12:12
  • $\begingroup$ Real roots of cubic equations generally involve imaginary numbers when expressed using radicals. One advantage of Root is that you avoid that. $\endgroup$
    – John Doty
    Commented Sep 11, 2019 at 1:38
0
$\begingroup$

A few comments that may help:

(1) Since J > 0, factor it out of the matrix (h1 = H /. J->1). B and the eigenvalues of h will be in units of J.

(2) Instead of considering B and $\alpha$ to be the independent variables, define $B_x$ and $B_y$. (h2 = H /. J -> 1 /. Cos[α] -> Bx/B /. Sin[α] -> By/B)

(3) Another potential set of real, independent variables is {B^2, B^2*Cos[2α]. Look at the ToRadicals form of the eigenvalues to find other potential parameters. We know the eigenvalues are real, but choosing real parameters that allow MMA to simplify the imaginary parts to zero is not easy.

(4) Use Manipulate and Plot to visualize the eigenvalues as roots of the characteristic polynomial.

c1 = CharacteristicPolynomial[h1, x]
Manipulate[Plot[c1 /. B -> sb /. α -> sa, {x, -10, 10},
  PlotRange -> {All, {-100, 100}}],
 {{sb, 1, "B"}, 0, 5}, {{sa, π/4, "α"}, 0, π}]

c2 = CharacteristicPolynomial[h2, x]
Manipulate[Plot[c2 /. Bx -> sbx /. By -> sby, {x, -10, 10},
  PlotRange -> {All, {-100, 100}}],
{{sbx, 1, "Bx"}, 0, 5}, {{sby, 1, "By"}, 0, 5}]
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.