ZGELQF(3)
π ZGELQF(3) π
okay so this page lives in the Library Functions Manual, and itβs all about ZGELQF, bestie. The source file for this one is literally /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zgelqf.f π
πΈ NAME πΈ
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zgelqf.f
Thatβs the name, no cap. Itβs the zgelqf.f source file, and the manual is serving the ZGELQF routine. β¨
π SYNOPSIS π
β¨ Functions/Subroutines β¨
subroutine ZGELQF (m, n, a, lda, tau, work, lwork, info)β this is theZGELQFsubroutine, front and center, periodt.
π« Function/Subroutine Documentation π«
Hereβs the full signature, copied exactly because we do not play with literals:
subroutine ZGELQF (integer m, integer n, complex*16, dimension( lda, * ) a,
integer lda, complex*16, dimension( * ) tau, complex*16, dimension( * )
work, integer lwork, integer info)
π ZGELQF π
This is the ZGELQF routine, and yes, itβs giving main-character LAPACK energy. π«Ά
π₯ Purpose π₯
ZGELQF computes an LQ factorization of a complex M-by-N matrix A:
A = ( L 0 ) * Q
where:
Qis aN-by-Northogonal matrix;Lis a lower-triangularM-by-Mmatrix;0is aM-by-(N-M)zero matrix, ifM < N.
Thatβs the whole vibe check on the math, bestie. π
π§ Parameters π§
MβMisINTEGER. Itβs the number of rows of the matrixA. Constraint:M >= 0. β¨NβNisINTEGER. Itβs the number of columns of the matrixA. Constraint:N >= 0. β¨AβAisCOMPLEX*16array, dimension(LDA,N). On entry, theM-by-NmatrixA. On exit, the elements on and below the diagonal of the array contain them-by-min(m,n)lower trapezoidal matrixL(Lis lower triangular ifm <= n); the elements above the diagonal, with the arrayTAU, represent the unitary matrixQas a product of elementary reflectors (see Further Details). πLDAβLDAisINTEGER. Itβs the leading dimension of the arrayA. Constraint:LDA >= max(1,M). π¦TAUβTAUisCOMPLEX*16array, dimension(min(M,N)). These are the scalar factors of the elementary reflectors (see Further Details). πΈWORKβWORKisCOMPLEX*16array, dimension(MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK. πLWORKβLWORKisINTEGER. Itβs the dimension of the arrayWORK. Constraint:LWORK >= max(1,M). For optimum performance,LWORK >= M*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. πINFOβINFOisINTEGER.= 0: successful exit.< 0: ifINFO = -i, thei-th argument had an illegal value. π
π Author π
The author squad on this one is:
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Absolutely iconic credentials, fr fr. πβ¨
π Further Details π
The matrix Q is represented as a product of elementary reflectors:
Q = H(k)**H . . . H(2)**H H(1)**H, 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(1:i-1) = 0 and v(i) = 1; conjg(v(i+1:n)) is stored on exit in A(i,i+1:n), and tau in TAU(i). π§ββοΈπ«
π Definition at line 142 of file zgelqf.f.
π€ Author π€
Generated automatically by Doxygen for LAPACK from the source code.
β¨ and thatβs the whole page, bestie β¨ Cute little sign-off tea β: the footer says source/version LAPACK Version 3.12.0, and the footer path is /home/abui...RC/zgelqf.f(3). Date check: thereβs no date printed in this footer, so Iβm not inventing one β mwah π
π
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms