Updates:
        Labels: -NeedsReview PassedReview

Comment #3 on issue 3189 by pr...@goodok.ru: Calculate eigenvectors numericly if it impossible calculate symbolical
http://code.google.com/p/sympy/issues/detail?id=3189

For floats this issue solved,
But we can try to apply this method and for complex floats.

In [40]: m = Matrix(2, 2, [1, 0, 0, I])

In [41]: m.eigenvals()
Out[41]:
⎧            3/4   ___             3/4   ___       ⎫
⎪1   ⅈ   (-1)   ⋅╲╱ 2      1   (-1)   ⋅╲╱ 2    ⅈ   ⎪
⎨─ + ─ + ─────────────: 1, ─ - ───────────── + ─: 1⎬
⎪2   2         2           2         2         2   ⎪
⎩                                                  ⎭

In [43]: m.eigenvects()
NotImplementedError: Can't evaluate eigenvector for eigenvalue 1/2 - (-1)**(3/4)*sqrt(2)/2 + I/2


In [42]: v = m.eigenvals().keys()[0]
In [46]: v.simplify()
Out[46]:
        3/4   ___
1   (-1)   ⋅╲╱ 2    ⅈ
─ - ───────────── + ─
2         2         2

In [47]: v.evalf()
Out[47]: 1.0 + 0.e-22⋅ⅈ

----

( The simplify() works bad in this case too. )

--
You received this message because you are subscribed to the Google Groups 
"sympy-patches" group.
To post to this group, send email to sympy-patches@googlegroups.com.
To unsubscribe from this group, send email to 
sympy-patches+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy-patches?hl=en.

Reply via email to