Mike,

"Right eigenvectors" should be column vectors placed on the right side
of the matrix.  The output is a triple for each eigenvalue: eigenvalue
first, then a list of eigenvectors.  While the eigenvectors print as
rows, they will behave like columns when you want them to.  Indexing
into the output just takes some thought:

sage: spectrum = M.eigenvectors_right()
sage: evalue = spectrum[0][0]
sage: evector = spectrum[0][1][0]
sage: M*evector-evalue*evector
(-3.33066907388e-16 + 9.47634626984e-17*I, 5.55111512313e-17)

So for the first eigenvalue, the output (up to rounding-off) is the
zero vector, as expected if the items are really an eigenvalue and
right eigenvector of M.

Rob

On Jun 5, 7:03 pm, Mike Witt <msg...@gmail.com> wrote:
> I'm confused about this, and hoping for some clarification ...
>
> sage: M=matrix([[0, .707-.707*i],[.707+.707*i, 0]])
> sage: M = M.change_ring(CDF)
> sage: M
> [              0 0.707 - 0.707*I]
> [0.707 + 0.707*I               0]
> sage: M.eigenvectors_left()
> ([0.999848988598 + 5.55111512313e-17*I, -0.999848988598 -  
> 5.55111512313e-17*I], [0.707106781187    0.5 + 0.5*I]
> [0.707106781187   -0.5 - 0.5*I])
> sage: M.eigenvectors_right()
> ([0.999848988598 + 5.55111512313e-17*I, -0.999848988598 -  
> 5.55111512313e-17*I], [0.707106781187 0.707106781187]
> [   0.5 + 0.5*I   -0.5 - 0.5*I])
>
> I believe that eigenvectors_left() is giving me the answers that
> I expected. But I don't understand the values returned by  
> eigenvectors_right().
> I *thought* that eigenvectors_right() was the one I wanted to call in  
> order
> to get "regular old eigenvectors" (as a mathematical novice such as  
> myself
> would be expecting to see).
>
> Thanks,
>
> -Mike

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to