SRC/zgeqlf.f(3)
π NAME π
okay bestie, this page is SRC/zgeqlf.f(3) from the Library Functions Manual, and the name line is literally SRC/zgeqlf.f β it's the zgeqlf show, no cap. ZGEQLF is the main character here, and it's doing a QL factorization of a complex matrix. iconic behavior, honestly. π«Άβ¨
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine zgeqlf (m, n, a, lda, tau, work, lwork, info)
ZGEQLF
π Function/Subroutine Documentation π
subroutine zgeqlf (integer m, integer n, complex*16, dimension( lda, * ) a,
integer lda, complex*16, dimension( * ) tau, complex*16, dimension( * )
work, integer lwork, integer info)
ZGEQLF
πΈ Purpose πΈ
okay so ZGEQLF computes a QL factorization of a complex M-by-N matrix A:
A = Q * L
that's the whole vibe. periodt. π
π Parameters π
MβMisINTEGER. it's the number of rows of the matrixA, and bestie,M >= 0. no neg rows allowed, fr fr. πNβNisINTEGER. it's the number of columns of the matrixA, andN >= 0. same energy, no cap. π¦AβAisCOMPLEX*16array, dimension(LDA,N). on entry, it's theM-by-NmatrixA. on exit: ifm >= n, the lower triangle of the subarrayA(m-n+1:m,1:n)contains theN-by-Nlower triangular matrixL; ifm <= n, the elements on and below the(n-m)-th superdiagonal contain theM-by-Nlower trapezoidal matrixL; the remaining elements, with the arrayTAU, represent the unitary matrixQas a product of elementary reflectors (see Further Details). lowkey a lot, but she ate. πLDAβLDAisINTEGER. it's the leading dimension of the arrayA, andLDA >= max(1,M). do not skip this one, bestie. πTAUβTAUisCOMPLEX*16array, dimension(min(M,N)). it holds the scalar factors of the elementary reflectors (see Further Details). cute little tau squad. πWORKβWORKisCOMPLEX*16array, dimension(MAX(1,LWORK)). on exit, ifINFO = 0,WORK(1)returns the optimalLWORK. noted. β¨LWORKβLWORKisINTEGER. it's the dimension of the arrayWORK.LWORK >= 1, ifMIN(M,N) = 0, andLWORK >= N, otherwise. for optimum performanceLWORK >= N*NB, whereNBis the optimal blocksize. ifLWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of theWORKarray, returns this value as the first entry of theWORKarray, and no error message related toLWORKis issued byXERBLA. iykyk, workspace-query behavior is its own little side quest. π§INFOβINFOisINTEGER.= 0:successful exit. slay. π< 0:ifINFO = -i, thei-th argument had an illegal value. not the vibe, but that's the rule. π
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
bestie, the author credits are giving collab era, and we respect it. π«Ά
π Further Details π
the matrix Q is represented as a product of elementary reflectors:
Q = H(k) . . . H(2) H(1), where k = min(m,n).
each H(i) has the form:
H(i) = I - tau * v * v**H
where tau is a complex scalar, and v is a complex vector with v(m-k+i+1:m) = 0 and v(m-k+i) = 1; v(1:m-k+i-1) is stored on exit in A(1:m-k+i-1,n-k+i), and tau in TAU(i). that's the whole further-details tea, no cap. ππ
Definition at line 138 of file zgeqlf.f.
Author π (the auto-generated one)
Generated automatically by Doxygen for LAPACK from the source code.
okay bestie, that's the whole page β brought to you by LAPACK, Version 3.12.0, with the SRC/zgeqlf.f(3) source tag on the footer vibe. πβ¨π
π¦ 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