Re: Re: Strange answer from Eigensytem
- To: mathgroup at christensen.cybernetics.net
- Subject: [mg927] Re: [mg847] Re: Strange answer from Eigensytem
- From: hannibal at caesar.physik.uni-oldenburg.de (Dr. L. Hannibal)
- Date: Wed, 3 May 1995 00:06:12 -0400
Daniel Lichtblau wrote:
> I am not certain whether this is due to bugs or honest limitations in
>the algorithm. When you have multiple eigenvalues with a matrix of machine
>numbers, expect trouble.
The matrix given by G.Landry has multiple eigenvalues:
Try a symbolic form
In[4]:= a={{0,0,0,x},{0,0,-x,0},{0,y,0,0},{-y,0,0,0}}
Out[4]= {{0, 0, 0, x}, {0, 0, -x, 0}, {0, y, 0, 0}, {-y, 0, 0, 0}}
and calculate the eigenvalues:
In[5]:= Eigensystem[a]
Out[5]= {{-I Sqrt[x] Sqrt[y], -I Sqrt[x] Sqrt[y], I Sqrt[x] Sqrt[y],
I Sqrt[x] -I Sqrt[x]
> I Sqrt[x] Sqrt[y]}, {{---------, 0, 0, 1}, {0, ----------, 1, 0},
Sqrt[y] Sqrt[y]
-I Sqrt[x] I Sqrt[x]
> {----------, 0, 0, 1}, {0, ---------, 1, 0}}}
Sqrt[y] Sqrt[y]
If you now replace numerical values for x and y, you get the correct answer,
whereas the I can reproduce the fault on my machine (IBM workstation):
In[8]:= a/. {x->1.,y->.21}
Out[8]= {{0, 0, 0, 1.}, {0, 0, -1., 0}, {0, 0.21, 0, 0}, {-0.21, 0, 0, 0}}
In[9]:= Eigensystem[%]
Out[9]= {{0. + 0.458258 I, 0. - 0.458258 I, 0. - 0.458258 I,
> 0. + 0.458258 I}, {{0. + 0. I, 0.909091 + 0. I, 0. - 0.416598 I,
-17
> 4.17175 10 + 0. I}, {0. + 0. I, 0.909091 + 0. I, 0. + 0.416598 I,
-17
> 4.17175 10 + 0. I}, {0. + 0. I, 0. + 0. I, 1. + 0. I,
-313
> 0. - 8.14982 10 I}, {0. + 0. I, 0. + 0. I, 1. + 0. I,
-313
> 0. + 8.14982 10 I}}}
So the algorithm really needs to be improved.
Ludger