ZGELQ2(3)
NAME
okay so bestie, this whole page is zgelq2.f(3) from the Library Functions Manual β and the NAME section is literally this source path:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zgelq2.f
SYNOPSIS
Functions/Subroutines
subroutine ZGELQ2 (m, n, a, lda, tau, work, info)
ZGELQ2 computes the LQ factorization of a general rectangular matrix using an unblocked algorithm. β¨ no cap.
π Function/Subroutine Documentation π
subroutine ZGELQ2 (integer m, integer n, complex*16, dimension( lda, * ) a,
integer lda, complex*16, dimension( * ) tau, complex*16, dimension( * )
work, integer info)
yes it's the same subroutine, but now with the full types. ZGELQ2 computes the LQ factorization of a general rectangular matrix using an unblocked algorithm. π
β¨ Purpose β¨
so what's the actual vibe? ZGELQ2 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.
πΈ Parameters πΈ
MβM is INTEGER; it's the number of rows of the matrixA.M >= 0.NβN is INTEGER; it's the number of columns of the matrixA.N >= 0.AβA is COMPLEX*16 array, dimension (LDA,N). On entry, thembynmatrixA. On exit, the elements on and below the diagonal of the array contain thembymin(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βLDA is INTEGER; the leading dimension of the arrayA.LDA >= max(1,M).TAUβTAU is COMPLEX*16 array, dimension (min(M,N)); the scalar factors of the elementary reflectors (see Further Details).WORKβWORK is COMPLEX*16 array, dimension (M).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 π¦
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 128 of file zgelq2.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
xoxo π
the footer deets are LAPACK / Version 3.12.0 / /home/abui...RC/zgelq2.f(3) β that's the source/version + date-line moment, periodt. π
π¦ 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