DQLT02(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

okay bestie, this is DQLT02(3) from the Library Functions Manual ✨ β€” header folded in, vibe check passed, and yes we are about to read a LAPACK test subroutine page together. 🫢

πŸ’– NAME πŸ’–

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/LIN/dqlt02.f

That's the file path, exactly, no cap. πŸŽ€

✨ SYNOPSIS ✨

πŸ¦‹ Functions/Subroutines πŸ¦‹

  • subroutine DQLT02 (m, n, k, a, af, q, l, lda, tau, work, lwork, rwork, result) β€” the main character subroutine, and then the source just says DQLT02 again right under it, iconic.
subroutine DQLT02 (m, n, k, a, af, q, l, lda, tau, work, lwork, rwork,
           result)
           DQLT02

🌈 Function/Subroutine Documentation 🌈

πŸ’« subroutine DQLT02 πŸ’«

Here's the full typed signature, character for character, because we do not play fast and loose with Fortran signatures:

subroutine DQLT02 (integer m, integer n, integer k, double precision,
     dimension( lda, * ) a, double precision, dimension( lda, * ) af, double
     precision, dimension( lda, * ) q, double precision, dimension( lda, * )
     l, integer lda, double precision, dimension( * ) tau, double precision,
     dimension( lwork ) work, integer lwork, double precision, dimension( * )
     rwork, double precision, dimension( * ) result)

And the title line after it is just DQLT02, because the source said so. Slay. πŸ’…

🌸 Purpose 🌸

bestie, here's the tea: DQLT02 tests DORGQL. DORGQL generates an m-by-n matrix Q with orthonormal columns that is defined as the product of k elementary reflectors. πŸ”₯

Given the QL factorization of an m-by-n matrix A, DQLT02 generates the orthogonal matrix Q defined by the factorization of the last k columns of A. Then it compares L(m-n+1:m,n-k+1:n) with Q(1:m,m-n+1:m)'*A(1:m,n-k+1:n), and checks that the columns of Q are orthonormal. It's giving orthonormal excellence, fr fr. πŸ¦‹

πŸŽ€ Parameters πŸŽ€

  • M β€” INTEGER. The number of rows of the matrix Q to be generated. M >= 0.
  • N β€” INTEGER. The number of columns of the matrix Q to be generated. M >= N >= 0.
  • K β€” INTEGER. The number of elementary reflectors whose product defines the matrix Q. N >= K >= 0.
  • A β€” DOUBLE PRECISION array, dimension (LDA,N). The m-by-n matrix A which was factorized by DQLT01.
  • AF β€” DOUBLE PRECISION array, dimension (LDA,N). Details of the QL factorization of A, as returned by DGEQLF. See DGEQLF for further details.
  • Q β€” DOUBLE PRECISION array, dimension (LDA,N). That's the whole note, bestie β€” no extra lore.
  • L β€” DOUBLE PRECISION array, dimension (LDA,N). Same energy: just the array and its dimension.
  • LDA β€” INTEGER. The leading dimension of the arrays A, AF, Q and L. LDA >= M.
  • TAU β€” DOUBLE PRECISION array, dimension (N). The scalar factors of the elementary reflectors corresponding to the QL factorization in AF.
  • WORK β€” DOUBLE PRECISION array, dimension (LWORK). Short and sweet, just like the source says.
  • LWORK β€” INTEGER. The dimension of the array WORK.
  • RWORK β€” DOUBLE PRECISION array, dimension (M). Another one where the source keeps it minimal.
  • RESULT β€” DOUBLE PRECISION array, dimension (2). The test ratios:
    • RESULT(1) = norm( L - Q'*A ) / ( M * norm(A) * EPS )
    • RESULT(2) = norm( I - Q'*Q ) / ( M * EPS )

πŸ‘‘ Author πŸ‘‘

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

Definition at line 134 of file dqlt02.f.

⭐ Author ⭐

Generated automatically by Doxygen for LAPACK from the source code. Automation ate, no cap. πŸ’…


cute sign-off bestie: this is LAPACK Version 3.12.0, footer tag /home/abui...IN/dqlt02.f(3), and the original doesn't list a date β€” so I'm not inventing one, periodt. πŸŽ€βœ¨

πŸ“¦ where this page comes from