gelqf(3)
๐ธ gelqf(3) โ Library Functions Manual ๐ธ
๐ท๏ธ NAME
gelqf โ gelqf: LQ factor. That's the whole name section, bestie โ short, sweet, and iconic. ๐
โจ SYNOPSIS โจ
Functions
subroutine cgelqf (m, n, a, lda, tau, work, lwork, info)โCGELQFsubroutine dgelqf (m, n, a, lda, tau, work, lwork, info)โDGELQFsubroutine sgelqf (m, n, a, lda, tau, work, lwork, info)โSGELQFsubroutine zgelqf (m, n, a, lda, tau, work, lwork, info)โZGELQF
๐ Detailed Description
Okay so this heading is here, but the original doesn't put any extra prose under it โ it's giving "just a heading, bestie." We're moving straight to the function docs. ๐ซถ
๐งฎ Function Documentation
๐ subroutine cgelqf โ CGELQF
subroutine cgelqf (integer m, integer n, complex, dimension( lda, * ) a, integer lda, complex, dimension( * ) tau, complex, dimension( * ) work, integer lwork, integer info)
CGELQF
Purpose:
CGELQF computes an LQ factorization of a complex M-by-N matrix A:
A = ( L 0 ) * Q
where:
Qis a N-by-N orthogonal matrix;Lis a lower-triangular M-by-M matrix;0is a M-by-(N-M) zero matrix, if M < N.
Parameters
MโMisINTEGER. The number of rows of the matrixA.M >= 0. No cap, bestie. โจNโNisINTEGER. The number of columns of the matrixA.N >= 0. ๐ฆAโAisCOMPLEXarray, dimension(LDA,N). On entry, the M-by-N matrixA. On exit, the elements on and below the diagonal of the array contain the m-by-min(m,n) lower trapezoidal matrixL(Lis lower triangular if m <= n); the elements above the diagonal, with the arrayTAU, represent the unitary matrixQas a product of elementary reflectors (see Further Details). ๐LDAโLDAisINTEGER. The leading dimension of the arrayA.LDA >= max(1,M).TAUโTAUisCOMPLEXarray, dimension(min(M,N)). The scalar factors of the elementary reflectors (see Further Details). ๐WORKโWORKisCOMPLEXarray, dimension(MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK. ๐LWORKโLWORKisINTEGER. The dimension of the arrayWORK.LWORK >= 1, ifMIN(M,N) = 0, andLWORK >= M, otherwise. For optimum performanceLWORK >= 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, the i-th argument had an illegal value. ๐
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
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 143 of file cgelqf.f.
๐ subroutine dgelqf โ DGELQF
subroutine dgelqf (integer m, integer n, double precision, dimension( lda, * ) a, integer lda, double precision, dimension( * ) tau, double precision, dimension( * ) work, integer lwork, integer info)
DGELQF
Purpose:
DGELQF computes an LQ factorization of a real M-by-N matrix A:
A = ( L 0 ) * Q
where:
Qis a N-by-N orthogonal matrix;Lis a lower-triangular M-by-M matrix;0is a M-by-(N-M) zero matrix, if M < N.
Parameters
MโMisINTEGER. The number of rows of the matrixA.M >= 0. โจNโNisINTEGER. The number of columns of the matrixA.N >= 0. ๐ฆAโAisDOUBLE PRECISIONarray, dimension(LDA,N). On entry, the M-by-N matrixA. On exit, the elements on and below the diagonal of the array contain the m-by-min(m,n) lower trapezoidal matrixL(Lis lower triangular if m <= n); the elements above the diagonal, with the arrayTAU, represent the orthogonal matrixQas a product of elementary reflectors (see Further Details). ๐LDAโLDAisINTEGER. The leading dimension of the arrayA.LDA >= max(1,M).TAUโTAUisDOUBLE PRECISIONarray, dimension(min(M,N)). The scalar factors of the elementary reflectors (see Further Details). ๐WORKโWORKisDOUBLE PRECISIONarray, dimension(MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK. ๐LWORKโLWORKisINTEGER. The dimension of the arrayWORK.LWORK >= 1, ifMIN(M,N) = 0, andLWORK >= M, otherwise. For optimum performanceLWORK >= 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, the i-th argument had an illegal value. ๐
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
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**T
where tau is a real scalar, and v is a real vector with v(1:i-1) = 0 and v(i) = 1; v(i+1:n) is stored on exit in A(i,i+1:n), and tau in TAU(i). ๐ง
Definition at line 143 of file dgelqf.f.
๐ subroutine sgelqf โ SGELQF
subroutine sgelqf (integer m, integer n, real, dimension( lda, * ) a, integer lda, real, dimension( * ) tau, real, dimension( * ) work, integer lwork, integer info)
SGELQF
Purpose:
SGELQF computes an LQ factorization of a real M-by-N matrix A:
A = ( L 0 ) * Q
where:
Qis a N-by-N orthogonal matrix;Lis a lower-triangular M-by-M matrix;0is a M-by-(N-M) zero matrix, if M < N.
Parameters
MโMisINTEGER. The number of rows of the matrixA.M >= 0. โจNโNisINTEGER. The number of columns of the matrixA.N >= 0. ๐ฆAโAisREALarray, dimension(LDA,N). On entry, the M-by-N matrixA. On exit, the elements on and below the diagonal of the array contain the m-by-min(m,n) lower trapezoidal matrixL(Lis lower triangular if m <= n); the elements above the diagonal, with the arrayTAU, represent the orthogonal matrixQas a product of elementary reflectors (see Further Details). ๐LDAโLDAisINTEGER. The leading dimension of the arrayA.LDA >= max(1,M).TAUโTAUisREALarray, dimension(min(M,N)). The scalar factors of the elementary reflectors (see Further Details). ๐WORKโWORKisREALarray, dimension(MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK. ๐LWORKโLWORKisINTEGER. The dimension of the arrayWORK.LWORK >= 1, ifMIN(M,N) = 0, andLWORK >= M, otherwise. For optimum performanceLWORK >= 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, the i-th argument had an illegal value. ๐
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
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**T
where tau is a real scalar, and v is a real vector with v(1:i-1) = 0 and v(i) = 1; v(i+1:n) is stored on exit in A(i,i+1:n), and tau in TAU(i). ๐ง
Definition at line 143 of file sgelqf.f.
๐ subroutine zgelqf โ ZGELQF
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
Purpose:
ZGELQF computes an LQ factorization of a complex M-by-N matrix A:
A = ( L 0 ) * Q
where:
Qis a N-by-N orthogonal matrix;Lis a lower-triangular M-by-M matrix;0is a M-by-(N-M) zero matrix, if M < N.
Parameters
M
okay so picking up right where we left off with the parameters, bestie โ no cap, every single one is here: ๐
MโMis anINTEGER. It's the number of rows of the matrixA. The vibe check isM >= 0. ๐NโNis anINTEGER. It's the number of columns of the matrixA. AlsoN >= 0. ๐AโAis aCOMPLEX*16array, 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). ๐ฆLDAโLDAis anINTEGER. It's the leading dimension of the arrayA. AndLDA >= max(1,M). periodt. โจTAUโTAUis aCOMPLEX*16array, dimension(min(M,N)). It holds the scalar factors of the elementary reflectors (see Further Details). ๐ธWORKโWORKis aCOMPLEX*16array, dimension(MAX(1,LWORK)). On exit, ifINFO = 0, thenWORK(1)returns the optimalLWORK. ๐LWORKโLWORKis anINTEGER. It's the dimension of the arrayWORK. The rules are:LWORK >= 1, if MIN(M,N) = 0, and LWORK >= M, otherwise.For optimum performance,LWORK >= M*NB, whereNBis the optimal blocksize. Important: 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โINFOis anINTEGER.= 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: ๐ฆ
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 143 of file zgelqf.f.
๐ค Author (the Doxygen one) ๐ค
Generated automatically by Doxygen for LAPACK from the source code.
This iconic page is from LAPACK Version 3.12.0, and the footer says gelqf(3). No date was given, but honestly the vibes are timeless. Bye bestie, go forth and LQ-factorize. ๐โจ
๐ฆ 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