I have a 6x6 matrix with integer entries, whose eigenvalues are also integers. I wanted the Jordan canonical form, and the associated matrix to make the similarity transformation. The Jordan form comes out nicely, but I can't get the transformation matrix. I've included the error output below - the error seems more severe without setting base_ring=QQ. I've also include a legitimate transformation matrix I worked up by hand (with some help from SAGE!).
Is this expected behavior? Any usage hints or workarounds? Thanks. Rob m=matrix(QQ, [[2,0,1,1,0,0],[0,2,1,1,0,0],[2,0,1,0,0,1],[2,0,0,1,1,0], [0,2,1,0,0,1],[0,2,0,1,1,0]]) m.jordan_form() [4|0|0 0|0 0] [-+-+---+---] [0|2|0 0|0 0] [-+-+---+---] [0|0|0 1|0 0] [0|0|0 0|0 0] [-+-+---+---] [0|0|0 0|0 1] [0|0|0 0|0 0] p=m.jordan_form(base_ring=QQ, transformation=True) Traceback (click to the left for traceback) ... ValueError: cannot compute the basis of the Jordan block of size 2 with eigenvalue 0 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/rob/.sage/sage_notebook/worksheets/admin/46/code/98.py", line 6, in <module> p=m.jordan_form(base_ring=QQ, transformation=True) File "/opt/sage-3.1.2/local/lib/python2.5/site-packages/ SQLAlchemy-0.4.6-py2.5.egg/", line 1, in <module> File "matrix2.pyx", line 4125, in sage.matrix.matrix2.Matrix.jordan_form (sage/matrix/matrix2.c:23429) ValueError: cannot compute the basis of the Jordan block of size 2 with eigenvalue 0 p=matrix(QQ,[[1,1,0,1,3,1],[1,-1,0,1,3,1],[1,0,1,1,0,1], [1,0,-1,-3,-6,0],[1,-2,1,0,0,-8],[1,-2,-1,-2,-6,-3]]) p.inverse()*m*p == m.jordan_form() True --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---