Hi,
  At present the code for printing the eigenvectors of a matrix gives 
output in different "formats" depending on the field used. For RDF/CDF, the 
output appears an a single line.

sage: matrix(CDF, [ [2, 1], [1, 2]]).eigenvectors_right() 
[(3.0, [(0.707106781187, 0.707106781187)], 1), (1.0, [(0.707106781187, 
-0.707106781187)], 1)]

For other rings such as ZZ, QQ, GF(), the output is split into multiple 
lines. Essentially, the eigenvectors are printed one vector per line.

sage: matrix(ZZ, [ [2, 1], [1, 2]]).eigenvectors_right()
[(3, [
(1, 1)
], 1), (1, [
(1, -1)
], 1)]

Personally, I feel that the latter output appears "broken," not to mention 
that the output is inconsistent across different rings.

The fix for this is quite simple. One needs to stop passing the parameter 
"cr=True" when calling this function:
Sequence(vecs, universe=V, check = False, immutable=True, cr=True)

The question is: should we stop passing the keyword cr=True when printing 
out eigenvectors of a matrix? Maybe a vote is in order?

1. [ ] Stop passing the keyword cr=True (i.e. make the other fields output 
as in RDF/CDF)
2. [ ] Stop passing the keyword cr=True but only when called from 
eigenvectors_right()
3. [ ] Keep the current output format (i.e. don't touch any of this code)
4. [ ] Keep the current output format AND change RDF/CDF to give output 
similar to the other fields

To keep the second option in context, note that eventually 
Freemodule_submodule_with_basis_field_with_*.basis() is called and it is 
there that the Sequence(..., cr=True) is called. What the second option 
proposes is that only the output of eigenvectors_right/left() be changed 
and the output of the Freemodule*.basis() be left as it is now.

My choice would be
2. [x] Stop passing the keyword cr=True but only when called from 
eigenvectors_right()

Relevant ticket: http://trac.sagemath.org/sage_trac/ticket/12514

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

Reply via email to