I have a symbolic, 2-parameter, 8x8 matrix to solve, but Mathematica takes something like 20 minutes to solve it and returns a very large output containing expressions of the form Root[#1^2 #4^3 + ... #2^6+...]
.
The matrix is :
F =
{{0, 1/9 (2 j + 3 q), 0, 1/9 (2 j + 7 q), 0, -(2/9) (2 j + 3 q), 0,
-(2/9)(2 j + 3 q)},
{1/9 (-2 j - 3 q), 0, 1/9 (-2 j + q), 0, 2/9 (2 j + q), 0, 2/9 (2 j + q), 0},
{0, (4 q)/9, 0, -((4 q)/9), 0, 0, 0, 0},
{(4 q)/9, 0, -((4 q)/9), 0, 0, 0, 0, 0},
{(8 (j - q))/27, -(2/27) (2 j + 13 q), (8 (j - q))/27, -(2/27) (2 j + 13 q),
(8 (j - q))/27, 8/81 (14 j - 5 q), (8 (j - q))/27, -(8/81) (j - 10 q)},
{2/9 (2 j + q), 0, 2/9 (2 j + q), 0, -(8/81) (7 j + 2 q), 0,
-(8/81) (4 j + 5 q), 0},
{-(16/27) (j - q), -(16/27) (j - q), -(16/27) (j - q), -(16/27) (j - q),
-(16/27) (j - q), -(56/27) (j - q), -(16/27) (j - q), (8 (j - q))/9},
{0, 0, 0, 0, (8 (j - q))/27, 0, -(8/27) (j - q), 0}}
I want to compute Eigensystem[F]
.
Even when I specify some numerical values of these parameters, the program still returns an output with Root
and takes 1 or 2 minutes. I believe this isn't normal. I'm wondering if I have to use compiled functions (which I don't know how to use) or parallel computation for doing this.
Is there a way to obtain some numerical values of the roots (possibly in terms of $j$ and $q$), by specifying the values of the two parameters?
I saw these answers : How to solve an eigensystem faster? and How do I work with Root objects? but I'm having trouble applying them to my problem.
Eigensystem[N[F]]
, assuming you've already set values to the parameters. Otherwise, you'd have a hard time avoidingRoot[]
since the roots of an eighth-degree polynomial do not admit radical representations in general. $\endgroup$Root[]
, then you didn't follow what I said. $\endgroup$Root[]
except in very special cases. I already said something aboutRoot[]
being needed to represent polynomial roots in general… $\endgroup$