TESTING/LIN/cqlt03.f(3)
TESTING/LIN/cqlt03.f(3) π
Okay bestie, this page is from the Library Functions Manual, and the whole main-character name is TESTING/LIN/cqlt03.f. Yes, that's the name. Slay. π
β¨ NAME β¨
TESTING/LIN/cqlt03.f β that's it, that's the name, and she's serving exact source-file energy. π«Ά
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine cqlt03 (m, n, k, af, c, cc, q, lda, tau, work, lwork, rwork, result)
And the routine in question? CQLT03. Iconic. Periodt. β¨
π Function/Subroutine Documentation π
Purpose
So CQLT03 tests CUNMQL, which computes Q*C, Q'*C, C*Q or C*Q'. Like, it's checking all the multiplication angles, no cap. π₯
Then CQLT03 compares the results of a call to CUNMQL with the results of forming Q explicitly by a call to CUNGQL and then performing matrix multiplication by a call to CGEMM. It's giving "trust but verify" but with complex matrices. π
Here's the full signature, exact and unbothered:
subroutine cqlt03 (integer m, integer n, integer k, complex, dimension( lda, * ) af, complex, dimension( lda, * ) c, complex, dimension( lda, * ) cc, complex, dimension( lda, * ) q, integer lda, complex, dimension( * ) tau, complex, dimension( lwork ) work, integer lwork, real, dimension( * ) rwork, real, dimension( * ) result)
Routine name: CQLT03. She's right there in the source, glowing. π
Parameters
MβINTEGER. The order of the orthogonal matrixQ.M >= 0.NβINTEGER. The number of rows or columns of the matrixC;Cis m-by-n ifQis applied from the left, or n-by-m ifQis applied from the right.N >= 0.KβINTEGER. The number of elementary reflectors whose product defines the orthogonal matrixQ.M >= K >= 0.AFβCOMPLEXarray, dimension(LDA,N). It holds the details of the QL factorization of an m-by-n matrix, as returned byCGEQLF. SeeCGEQLFfor further details.CβCOMPLEXarray, dimension(LDA,N). The C matrix, doing her thing.CCβCOMPLEXarray, dimension(LDA,N). Same dimension energy, different name.QβCOMPLEXarray, dimension(LDA,M). The Q matrix, living her best life.LDAβINTEGER. The leading dimension of the arraysAF,C,CC, andQ.TAUβCOMPLEXarray, dimension(min(M,N)). The scalar factors of the elementary reflectors corresponding to the QL factorization inAF.WORKβCOMPLEXarray, dimension(LWORK).LWORKβINTEGER. The length ofWORK.LWORKmust be at leastM, and should beM*NB, whereNBis the blocksize for this environment.RWORKβREALarray, dimension(M).RESULTβREALarray, dimension(4). The test ratios compare two techniques for multiplying a random matrixCby an m-by-m orthogonal matrixQ.
The four RESULT formulas, exactly:
RESULT(1) = norm( Q*C - Q*C ) / ( M * norm(C) * EPS )
RESULT(2) = norm( C*Q - C*Q ) / ( M * norm(C) * EPS )
RESULT(3) = norm( Q'*C - Q'*C )/ ( M * norm(C) * EPS )
RESULT(4) = norm( C*Q' - C*Q' )/ ( M * norm(C) * EPS )
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 134 of file cqlt03.f.
π€ Author (auto-generated note) π€
Generated automatically by Doxygen for LAPACK from the source code.
And that's the tea, bestie. This page's footer energy is LAPACK Version 3.12.0 and TESTING/LIN/cqlt03.f(3) β no separate date line shown, so we're not inventing one. Just exact version vibes and a cute little sign-off. π«Άππ
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms