Comment #10 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
On 26.03.2012 08:56, Chris Smith wrote:
count_ops = 1972 ! Try make a real:
>>> >>> vals.keys()[0].expand(complex=True)
a/2 + Abs(a - 1)/2 + 1/2
>>> >>> vals.keys()[1].expand(complex=True)
a/2 - Abs(a - 1)/2 + 1/2
Yes, I thought of it later (#7).
But in this case the calculating of eigenvectors yield NotImplimentedError.
In [76]: a = Symbol('a', real=True)
In [77]: m = Matrix(2, 2, [a, 0, 0, 1])
In [78]: m.charpoly(x)
Out[78]: PurePoly(x**2 + (-a - 1)*x + a, x, domain='ZZ[a]')
In [79]: roots(m.charpoly(x))
Out[79]:
⎧a │a - 1│ 1 a │a - 1│ 1 ⎫
⎨─ - ─────── + ─: 1, ─ + ─────── + ─: 1⎬
⎩2 2 2 2 2 2 ⎭
In [80]: m.eigenvects()
NotImplementedError: Can't evaluate eigenvector for eigenvalue a/2 - Abs(a
- 1)/2 + 1/2
Well, I'll formulate the plan what we can to do later.
--
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.