Skip to content

GELQS, GEQRS outdated #709

Description

@angsch

Please consider deprecating GELQS and GEQRS.

  • There is no easy way to query the workspace to actually use the routines
  • The documentation has errors (especially GELQS)
  • The triangular system could do with a check of the diagonal for zeros, i.e., be solved with TRTRS, and not TRSM

GELS is a better and safer alternative. GELS wraps the matrix factorization (which GE[LQ,QR] require as input), the right-hand side transform and the solution of the triangular system in a coherent form. It solves a strict superset of what GE[LQ,QR]S can solve.

If you prefer to fix the routines rather than deprecating them, I am happy to create a PR.

Activity

  1. langou commented on Jun 1, 2023

    @langou
    Contributor

    Oh my. This is ugly. This happened on or before LAPACK 3.0. So back in 1999.

    I think the reason for GELQS to still exist in TESTING/LIN is because people still wanted to test DGELQF and DORMLQ and did not want to rewrite the tester. Ditto for QR.

    I am not sure what to do.

    Option 1: we remove/deprecate GELQS and GEQRS and rewrite the tester using GELS.

    Option 2: we rename GELQS and GEQRS and give them cryptic testing names. DGETQRS01 for example.

    Option 3: we just leave at that. Note that GELQS and GEQRS are not in liblapack.a. So we decide that this is not too much an issue.

    In any case, thanks for point this out.

    @angsch: @weslleyspereira and I are comfortable with any solution you deem appropriate and are happy with a PR.

  2. angsch commented on Jun 2, 2023

    @angsch
    CollaboratorAuthor

    I can give Option 1 a try; may take a bit of time though.

  3. self-assigned this
    on Jun 10, 2023
  4. added 5 commits that reference this issue on Aug 27, 2023
    d0402fa
    baa9b14
    f19fe80
    84b8551
    0d1e3ec
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions