CGELQF(3)
π CGELQF(3) β Library Functions Manual π
okay bestie, welcome to CGELQF(3). The manual name is Library Functions Manual, and the header shorthand path is /home/abui...RC/cgelqf.f(3). This is the LAPACK LQ-factorization routine, and she is iconic. π
π NAME
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cgelqf.f β thatβs the source file this whole page is serving, no cap. π«Ά
π¦ SYNOPSIS
π§ Functions/Subroutines
subroutine CGELQF (m, n, a, lda, tau, work, lwork, info)
CGELQF β main character energy, obviously. π
β¨ Function/Subroutine Documentation
Hereβs the full signature, exactly as she appears:
subroutine CGELQF (integer m, integer n, complex, dimension( lda, * ) a,
integer lda, complex, dimension( * ) tau, complex, dimension( * ) work,
integer lwork, integer info)
CGELQF
π Purpose
Purpose, straight from the source-comment glow-up:
!>
!> CGELQF computes an LQ factorization of a complex M-by-N matrix A:
!>
!> A = ( L 0 ) * Q
!>
!> where:
!>
!> Q is a N-by-N orthogonal matrix;
!> L is a lower-triangular M-by-M matrix;
!> 0 is a M-by-(N-M) zero matrix, if M < N.
!>
!>
Translation for the group chat: she computes an LQ factorization of a complex M-by-N matrix A, with A = ( L 0 ) * Q. Q is N-by-N orthogonal, L is lower-triangular M-by-M, and 0 is M-by-(N-M) zero when M < N. slay. π
πΈ Parameters
MβM is INTEGER. Itβs the number of rows of matrixA;M >= 0. πNβN is INTEGER. Itβs the number of columns of matrixA;N >= 0. πAβA is COMPLEX array, dimension (LDA,N). On entry, itβs 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). not me explaining the whole glow-up at once πLDAβLDA is INTEGER. Itβs the leading dimension of the arrayA;LDA >= max(1,M). β¨TAUβTAU is COMPLEX array, dimension (min(M,N)). These are the scalar factors of the elementary reflectors (see Further Details). πWORKβWORK is COMPLEX array, dimension (MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK. πLWORKβLWORK is INTEGER. Itβs the dimension of the arrayWORK;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. β οΈ That-1is a query vibe, not a typo bestie. π«ΆINFOβINFO is INTEGER.= 0: successful exit.< 0: ifINFO = -i, thei-th argument had an illegal value. π¨
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π₯ Further Details
Source-comment block, preserved exactly because the math is doing the most:
!>
!> 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).
!>
So Q is a product of elementary reflectors, 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). obsessed with the clarity. π
Definition at line 142 of file cgelqf.f.
π Author (Doxygen edition)
Generated automatically by Doxygen for LAPACK from the source code. π€β¨
Cute sign-off bestie: this pageβs footer source/version vibe is LAPACK Version 3.12.0, and the footer path is /home/abui...RC/cgelqf.f(3) β now go factor something gorgeous! ππ
π¦ 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