SRC/cgemlqt.f(3)
πΈ SRC/cgemlqt.f πΈ
okay bestie, this page is from the Library Functions Manual, and the main character is SRC/cgemlqt.f π
no cap, itβs giving βLAPACK girl explains a complex matrix update,β and honestly? iconic.
β¨ NAME β¨
SRC/cgemlqt.f β thatβs the name, periodt. π«Ά
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine cgemlqt (side, trans, m, n, k, mb, v, ldv, t, ldt, c, ldc,
work, info)
CGEMLQT π₯
π Function/Subroutine Documentation π
hereβs the full signature, bestie β character for character, no editing:
subroutine cgemlqt (character side, character trans, integer m, integer n,
integer k, integer mb, complex, dimension( ldv, * ) v, integer ldv,
complex, dimension( ldt, * ) t, integer ldt, complex, dimension( ldc, *
) c, integer ldc, complex, dimension( * ) work, integer info)
and the name is CGEMLQT β¨
π¦ Purpose π¦
okay so CGEMLQT overwrites the general complex M-by-N matrix C with:
SIDE = 'L' SIDE = 'R'
TRANS = 'N': Q C C Q
TRANS = 'C': Q**H C C Q**H
where Q is a complex unitary matrix defined as the product of K elementary reflectors:
Q = H(1) H(2) . . . H(K) = I - V T V**H
generated using the compact WY representation as returned by CGELQT.
Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'. π
π Parameters π
πΈ SIDE πΈ
SIDE is CHARACTER*1
= 'L': applyQorQ**Hfrom the Left;= 'R': applyQorQ**Hfrom the Right.
π TRANS π
TRANS is CHARACTER*1
= 'N': No transpose, applyQ;= 'C': Conjugate transpose, applyQ**H.
π M π
M is INTEGER
The number of rows of the matrix C. M >= 0.
π§ N π§
N is INTEGER
The number of columns of the matrix C. N >= 0.
π₯ K π₯
K is INTEGER
The number of elementary reflectors whose product defines the matrix Q.
- If
SIDE = 'L',M >= K >= 0; - if
SIDE = 'R',N >= K >= 0.
π MB π
MB is INTEGER
The block size used for the storage of T. K >= MB >= 1.
This must be the same value of MB used to generate T in CGELQT.
π V π
V is COMPLEX array, dimension
(LDV,M) if SIDE = 'L',
(LDV,N) if SIDE = 'R'
The i-th row must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by CGELQT in the first K rows of its array argument A.
π LDV π
LDV is INTEGER
The leading dimension of the array V. LDV >= max(1,K).
πΈ T πΈ
T is COMPLEX array, dimension (LDT,K)
The upper triangular factors of the block reflectors as returned by CGELQT, stored as a MB-by-K matrix.
π«Ά LDT π«Ά
LDT is INTEGER
The leading dimension of the array T. LDT >= MB.
π C π
C is COMPLEX array, dimension (LDC,N)
On entry, the M-by-N matrix C.
On exit, C is overwritten by Q C, Q**H C, C Q**H or C Q.
π¦ LDC π¦
LDC is INTEGER
The leading dimension of the array C. LDC >= max(1,M).
β WORK β
WORK is COMPLEX array. The dimension of WORK is N*MB if SIDE = 'L', or M*MB if SIDE = 'R'.
π 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.
Definition at line 151 of file cgemlqt.f.
π§ Author π§
Generated automatically by Doxygen for LAPACK from the source code.
okay bestie, thatβs the whole page π the footerβs source/version/date slot reads LAPACK, Version 3.12.0, and SRC/cgemlqt.f(3) β thatβs the stamp at the very bottom, periodt. πβ¨
π¦ 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