#11595: Update exact eigenspace routines
-------------------------------+--------------------------------------------
Reporter: rbeezer | Owner: jason, was
Type: enhancement | Status: closed
Priority: minor | Milestone: sage-4.7.2
Component: linear algebra | Resolution: fixed
Keywords: | Work_issues:
Upstream: N/A | Reviewer: Martin Raum, Leif Leonhardy
Author: Rob Beezer | Merged: sage-4.7.2.alpha3
Dependencies: |
-------------------------------+--------------------------------------------
Changes (by leif):
* reviewer: Martin Raum => Martin Raum, Leif Leonhardy
Old description:
> This patch overhauls the generic code for eigenspaces of exact matrices.
>
> 1. Removed plain `eigenspaces()`, which was deprecated 3 years ago.
> This required three replacements by `eigenspaces_left()` in code outside
> the `sage/matrix` directory.
>
> 2. Right eigenspaces were not being cached. This is fixed by explicity
> performning the caching in the method before working on the transpose.
>
> 3. Warning about inexact rings have been removed and replaced by
> exceptions. These exceptions, and the documentation, suggest the
> eigenmatrix routines for RDF/CDF matrices where accuracy and speed should
> be much better (or code for symbolic matrices).
>
> 4. Documentation has been improved.
>
> 5. Only about 4 very minor changes were required outside of the matrix
> code to make doctests pass.
>
> 6. If basis matrices of eigenspaces over QQbar are hanging, then #11544
> might need to be a dependency. Strictly speaking it is not required to
> build, but could be needed to pass doctests.
>
> 7. One change in behavior - the new `format` command, and its default
> value of "all". This will cause eigenspaces of matrices over the
> rationals formed with algebraic numbers from `QQbar`. This is consistent
> with how the `eigenvalues()` method behaves for rational matrices. When
> it is not possible to compute eigenvalues this way, the failure is
> graceful and suggests the `format='galois'` option. This required just
> one change outside of the eigen-stuff code (eigenspaces of graphs). See
> discussion at:
> http://groups.google.com/group/sage-
> devel/browse_thread/thread/c67266a5581abff9/
>
> '''Apply''':
> 1. [attachment:trac_11595-exact-eigenspaces.patch]
> 1. [attachment:trac_11595-exact-eigenspaces-format-v1.patch]
New description:
This patch overhauls the generic code for eigenspaces of exact matrices.
1. Removed plain `eigenspaces()`, which was deprecated 3 years ago. This
required three replacements by `eigenspaces_left()` in code outside the
`sage/matrix` directory.
2. Right eigenspaces were not being cached. This is fixed by explicity
performning the caching in the method before working on the transpose.
3. Warning about inexact rings have been removed and replaced by
exceptions. These exceptions, and the documentation, suggest the
eigenmatrix routines for RDF/CDF matrices where accuracy and speed should
be much better (or code for symbolic matrices).
4. Documentation has been improved.
5. Only about 4 very minor changes were required outside of the matrix
code to make doctests pass.
6. If basis matrices of eigenspaces over QQbar are hanging, then #11544
might need to be a dependency. Strictly speaking it is not required to
build, but could be needed to pass doctests.
7. One change in behavior - the new `format` command, and its default
value of "all". This will cause eigenspaces of matrices over the
rationals formed with algebraic numbers from `QQbar`. This is consistent
with how the `eigenvalues()` method behaves for rational matrices. When
it is not possible to compute eigenvalues this way, the failure is
graceful and suggests the `format='galois'` option. This required just
one change outside of the eigen-stuff code (eigenspaces of graphs). See
discussion at:
http://groups.google.com/group/sage-
devel/browse_thread/thread/c67266a5581abff9/
'''Apply''':
1. [attachment:trac_11595-exact-eigenspaces.patch]
1. [attachment:trac_11595-exact-eigenspaces-format-v1.patch]
1. [attachment:trac_11595-fix_noisy_zero_doctest_errors.reviewer.patch]
--
Comment:
Reviewer patch is up, fixing two doctest errors in
`sage/matrix/matrix2.pyx`.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11595#comment:13>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.