MathGroup Archive 1995

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: Strange answer from Eigensytem


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




  • Prev by Date: Re: Lyapunov Equation
  • Next by Date: Re: how can I do this functionally?
  • Previous by thread: Re: Lyapunov Equation
  • Next by thread: Re: how can I do this functionally?