Re: Help with Root function
- To: mathgroup at smc.vnet.net
- Subject: [mg79444] Re: Help with Root function
- From: dimitris <dimmechan at yahoo.com>
- Date: Fri, 27 Jul 2007 05:43:59 -0400 (EDT)
- References: <f89q55$5nu$1@smc.vnet.net>
On 26 , 12:39, jeremito <jerem... at gmail.com> wrote:
> I am trying to find the eigenvalues of a 3x3 matrix with non-numeric
> elements. This requires finding the roots of cubic polynomials.
> Mathematica can do this, but I know how to interpret its output. For
> example
>
> In[1]:= B = {{a, 1, 1}, {1, b, 1}, {1, 1, c}}
>
> Out[1]= {{a, 1, 1}, {1, b, 1}, {1, 1, c}}
>
> In[2]:= Eigenvalues[B]
>
> Out[2]= {Root[-2 + a + b + c -
> a b c + (-3 + a b + a c + b c) #1 + (-a - b - c) #1^2 + #1^3 &,
> 1], Root[-2 + a + b + c -
> a b c + (-3 + a b + a c + b c) #1 + (-a - b - c) #1^2 + #1^3 &,
> 2], Root[-2 + a + b + c -
> a b c + (-3 + a b + a c + b c) #1 + (-a - b - c) #1^2 + #1^3 &,
> 3]}
>
> How can I get Mathematica to give me the full answer? I know it is
> long and ugly, but at least I can do something with it. I can't do
> anything with what it gives me now. Does that make sense?
> Thanks,
> Jeremy
What do you mean "you can't do nothing?"
Root objects are fully manipulated.
See the help broswer for more information.
In[119]:=
B={{a,1,1},{1,b,1},{1,1,c}}
Out[119]=
{{a,1,1},{1,b,1},{1,1,c}}
In[122]:=
eigs=Eigenvalues[B]
Out[122]=
{Root[-2 + a + b + c - a*b*c - 3*#1 + a*b*#1 + a*c*#1 + b*c*#1 -
a*#1^2 - b*#1^2 - c*#1^2 + #1^3 & , 1],
Root[-2 + a + b + c - a*b*c - 3*#1 + a*b*#1 + a*c*#1 + b*c*#1 -
a*#1^2 - b*#1^2 - c*#1^2 + #1^3 & , 2],
Root[-2 + a + b + c - a*b*c - 3*#1 + a*b*#1 + a*c*#1 + b*c*#1 -
a*#1^2 - b*#1^2 - c*#1^2 + #1^3 & , 3]}
In[136]:=
Short[D[eigs[[1]], a]]
Out[136]//Short=
\!\(\*
TagBox[\(\(\(-1\) + b\
c - b\ \[LeftSkeleton]1\[RightSkeleton] -
c\ Root[\(-2\) + \[LeftSkeleton]16\[RightSkeleton] + #1\^3
&, 1] + \
Root[\(-2\) + \[LeftSkeleton]16\[RightSkeleton] + #1\^3 &, 1]\^2\)\/\(\
(-3\) \
+ a\ b + \[LeftSkeleton]8\[RightSkeleton] + 3\ Root[\(-2\) + \
\[LeftSkeleton]16\[RightSkeleton] + \[LeftSkeleton]2\[RightSkeleton]
\^3 &, 1]\
\^2\)\), Short]\)
In[135]:=
eigs /. Thread[{a, b, c} -> Table[Random[], {3}]]
Out[135]=
{-0.7503288305201328, -0.2706108411719136, 2.5383670207846087}
As regards what you asked for
In[138]:=
ToRadicals[eigs]
Out[138]=
{(1/3)*(a + b + c) - (2^(1/3)*(-9 - a^2 + a*b - b^2 + a*c + b*c -
c^2))/
(3*(54 + 2*a^3 - 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c + 12*a*b*c -
3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3 +
Sqrt[4*(-9 - a^2 + a*b - b^2 + a*c + b*c - c^2)^3 + (54 + 2*a^3
- 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c + 12*a*b*c -
3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3)^2])^(1/3)) +
(1/(3*2^(1/3)))*(54 + 2*a^3 - 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c +
12*a*b*c - 3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3 +
Sqrt[4*(-9 - a^2 + a*b - b^2 + a*c + b*c - c^2)^3 + (54 + 2*a^3
- 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c + 12*a*b*c -
3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3)^2])^(1/3),
(1/3)*(a + b + c) + ((1 + I*Sqrt[3])*(-9 - a^2 + a*b - b^2 + a*c +
b*c - c^2))/
(3*2^(2/3)*(54 + 2*a^3 - 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c +
12*a*b*c - 3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3 +
Sqrt[4*(-9 - a^2 + a*b - b^2 + a*c + b*c - c^2)^3 + (54 + 2*a^3
- 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c + 12*a*b*c -
3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3)^2])^(1/3)) -
(1/(6*2^(1/3)))*((1 - I*Sqrt[3])*(54 + 2*a^3 - 3*a^2*b - 3*a*b^2 +
2*b^3 - 3*a^2*c + 12*a*b*c - 3*b^2*c - 3*a*c^2 - 3*b*c^2 +
2*c^3 + Sqrt[4*(-9 - a^2 + a*b - b^2 + a*c + b*c - c^2)^3 + (54
+ 2*a^3 - 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c +
12*a*b*c - 3*b^2*c - 3*a*c^2 - 3*b*c^2 +
2*c^3)^2])^(1/3)),
(1/3)*(a + b + c) + ((1 - I*Sqrt[3])*(-9 - a^2 + a*b - b^2 + a*c +
b*c - c^2))/
(3*2^(2/3)*(54 + 2*a^3 - 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c +
12*a*b*c - 3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3 +
Sqrt[4*(-9 - a^2 + a*b - b^2 + a*c + b*c - c^2)^3 + (54 + 2*a^3
- 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c + 12*a*b*c -
3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3)^2])^(1/3)) -
(1/(6*2^(1/3)))*((1 + I*Sqrt[3])*(54 + 2*a^3 - 3*a^2*b - 3*a*b^2 +
2*b^3 - 3*a^2*c + 12*a*b*c - 3*b^2*c - 3*a*c^2 - 3*b*c^2 +
2*c^3 + Sqrt[4*(-9 - a^2 + a*b - b^2 + a*c + b*c - c^2)^3 + (54
+ 2*a^3 - 3*a^2*b - 3*a*b^2 + 2*b^3 - 3*a^2*c +
12*a*b*c - 3*b^2*c - 3*a*c^2 - 3*b*c^2 + 2*c^3)^2])^(1/3))}
Regards
Dimitris