Opened 8 years ago

Last modified 6 years ago

#12646 new defect

Make Gram-Schmidt work again

Reported by: johanbosman Owned by: jason, was
Priority: major Milestone: sage-6.4
Component: linear algebra Keywords: Gram-Schmidt
Cc: rbeezer Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description

sage: M = Matrix(RealField(100), 2, 2, [1, 2, 3, 4])
sage: M.gram_schmidt()
---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call last)
...
NotImplementedError: Gram-Scmidt orthogonalization not implemented for matrices over inexact rings, except for RDF and CDF

This used to work in older Sage versions. And Schmidt lacks an h in the error message.

Change History (6)

comment:1 follow-up: Changed 8 years ago by mderickx

  • Cc rbeezer added

I ran in to this also when trying to use Johan his code at http://www.sagenb.org/home/pub/3154/ . It seems that this was changed in #10791 . I added Rob Beezer as a CC since he might probably have something usefull to say on how to fix this (I'm not blaming you Rob, reading the ticket the general implementation was broken and the old code is still available in modules.misc).

ps. Johan: you might find the following code snippet usefull:

#this broke because of #10791
#G, _ = M.gram_schmidt()
#this is a workaround:
from sage.modules.misc import gram_schmidt
G, _ = gram_schmidt(list(M))
v = []

comment:2 in reply to: ↑ 1 Changed 8 years ago by rbeezer

Replying to mderickx:

I added Rob Beezer as a CC since he might probably have something useful to say

Thanks, Marten, for including me.

  1. I wouldn't trust the old code on RealField(100) (or much else for that matter).
  2. The QR decomposition for RDF/CDF matrices would be my alternate suggestion. That's only 53-bit so that could be a downside if you need more precision.
  3. Or as Marten has suggested, all the old code is still available and unharmed if you want to take the extra step to import it.

Rob

comment:3 Changed 7 years ago by jdemeyer

  • Milestone changed from sage-5.11 to sage-5.12

comment:4 Changed 6 years ago by vbraun_spam

  • Milestone changed from sage-6.1 to sage-6.2

comment:5 Changed 6 years ago by vbraun_spam

  • Milestone changed from sage-6.2 to sage-6.3

comment:6 Changed 6 years ago by vbraun_spam

  • Milestone changed from sage-6.3 to sage-6.4
Note: See TracTickets for help on using tickets.