ZQRT02(3)

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

✨ NAME ✨

Okay so this is the zqrt02.f(3) page, and it lives in the Library Functions Manual β€” yes bestie, that's the manual-name vibe check. The NAME line is literally this path:

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


🌸 SYNOPSIS 🌸

✨ Functions/Subroutines ✨

   subroutine ZQRT02 (m, n, k, a, af, q, r, lda, tau, work, lwork, rwork,
       result)
       ZQRT02

πŸ’… Function/Subroutine Documentation πŸ’…

Here's the full signature, copied exactly because we do not mess with types, periodt:

   subroutine ZQRT02 (integer m, integer n, integer k, complex*16, dimension(
       lda, * ) a, complex*16, dimension( lda, * ) af, complex*16, dimension(
       lda, * ) q, complex*16, dimension( lda, * ) r, integer lda, complex*16,
       dimension( * ) tau, complex*16, dimension( lwork ) work, integer lwork,
       double precision, dimension( * ) rwork, double precision, dimension( * )
       result)
       ZQRT02

πŸŽ€ Purpose πŸŽ€

Okay so ZQRT02 is the test bestie for ZUNGQR. ZUNGQR generates an m-by-n matrix Q with orthonormal columns that is defined as the product of k elementary reflectors β€” and ZQRT02 is here to vibe-check that.

Given the QR factorization of an m-by-n matrix A, ZQRT02 generates the orthogonal matrix Q defined by the factorization of the first k columns of A. Then it compares R(1:n,1:k) with Q(1:m,1:n)'*A(1:m,1:k), and checks that the columns of Q are orthonormal. Iconic behavior, honestly. πŸ”₯

πŸ“ Parameters πŸ“

  • M β€” M is INTEGER. It's the number of rows of the matrix Q to be generated. Constraint: M >= 0. 🫢
  • N β€” N is INTEGER. It's the number of columns of the matrix Q to be generated. Constraint: M >= N >= 0.
  • K β€” K is INTEGER. It's the number of elementary reflectors whose product defines the matrix Q. Constraint: N >= K >= 0.
  • A β€” A is COMPLEX*16 array, dimension (LDA,N). It's the m-by-n matrix A which was factorized by ZQRT01.
  • AF β€” AF is COMPLEX*16 array, dimension (LDA,N). It holds details of the QR factorization of A, as returned by ZGEQRF. See ZGEQRF for further details.
  • Q β€” Q is COMPLEX*16 array, dimension (LDA,N). πŸ’œ
  • R β€” R is COMPLEX*16 array, dimension (LDA,N). πŸŽ€
  • LDA β€” LDA is INTEGER. It's the leading dimension of the arrays A, AF, Q and R. Constraint: LDA >= M.
  • TAU β€” TAU is COMPLEX*16 array, dimension (N). It holds the scalar factors of the elementary reflectors corresponding to the QR factorization in AF.
  • WORK β€” WORK is COMPLEX*16 array, dimension (LWORK). ✨
  • LWORK β€” LWORK is INTEGER. It's the dimension of the array WORK.
  • RWORK β€” RWORK is DOUBLE PRECISION array, dimension (M). 🌸
  • RESULT β€” RESULT is DOUBLE PRECISION array, dimension (2). It holds the test ratios:
    • RESULT(1) = norm( R - 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 133 of file zqrt02.f.

πŸ‘‘ Author πŸ‘‘ β€” yes, again, because the page said it twice and we keep every detail, bestie

Generated automatically by Doxygen for LAPACK from the source code.


That's the whole page! Source/version vibes: LAPACK Version 3.12.0. Footer path: /home/abui...IN/zqrt02.f(3). Date on the footer: not shown, so no date to spill, ngl. Stay iconic and keep every path and formula exactly as written. πŸ’…βœ¨πŸ‘‘

πŸ“¦ where this page comes from