SRC/cunmtr.f(3)
β¨ NAME β¨
okay so bestie, this is the Library Functions Manual page for SRC/cunmtr.f(3) β yes, the CUNMTR subroutine's page, and it's literally here to do complex unitary matrix things. π
π SYNOPSIS π
π Functions/Subroutines π
subroutine cunmtr (side, uplo, trans, m, n, a, lda, tau, c, ldc, work,
lwork, info)
CUNMTR
π¦ Function/Subroutine Documentation π¦
subroutine cunmtr (character side, character uplo, character trans, integer
m, integer n, complex, dimension( lda, * ) a, integer lda, complex,
dimension( * ) tau, complex, dimension( ldc, * ) c, integer ldc,
complex, dimension( * ) work, integer lwork, integer info)
CUNMTR
πΈ Purpose πΈ
CUNMTR 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 of order nq, with nq = m if SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of nq-1 elementary reflectors, as returned by CHETRD:
if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1);
if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).
π Parameters π
SIDEβSIDE is CHARACTER*1= 'L': apply Q or Q**H from the Left;= 'R': apply Q or Q**H from the Right.
UPLOβUPLO is CHARACTER*1= 'U': Upper triangle of A contains elementary reflectors from CHETRD;= 'L': Lower triangle of A contains elementary reflectors from CHETRD.
TRANSβTRANS is CHARACTER*1= 'N': No transpose, apply Q;= 'C': Conjugate transpose, apply Q**H.
MβM is INTEGER- The number of rows of the matrix
C.M >= 0.
- The number of rows of the matrix
NβN is INTEGER- The number of columns of the matrix
C.N >= 0.
- The number of columns of the matrix
AβA is COMPLEX array, dimension(LDA,M) if SIDE = 'L'(LDA,N) if SIDE = 'R'- The vectors which define the elementary reflectors, as returned by
CHETRD.
LDAβLDA is INTEGER- The leading dimension of the array
A. LDA >= max(1,M)ifSIDE = 'L';LDA >= max(1,N)ifSIDE = 'R'.
- The leading dimension of the array
TAUβTAU is COMPLEX array, dimension(M-1) if SIDE = 'L'(N-1) if SIDE = 'R'TAU(i)must contain the scalar factor of the elementary reflectorH(i), as returned byCHETRD.
CβC is COMPLEX array, dimension (LDC,N)- On entry, the M-by-N matrix
C. - On exit,
Cis overwritten byQ*CorQ**H*CorC*Q**HorC*Q.
- On entry, the M-by-N matrix
LDCβLDC is INTEGER- The leading dimension of the array
C.LDC >= max(1,M).
- The leading dimension of the array
WORKβWORK is COMPLEX array, dimension (MAX(1,LWORK))- On exit, if
INFO = 0,WORK(1)returns the optimalLWORK.
- On exit, if
LWORKβLWORK is INTEGER- The dimension of the array
WORK. - If
SIDE = 'L',LWORK >= max(1,N); - if
SIDE = 'R',LWORK >= max(1,M). - For optimum performance
LWORK >= N*NBifSIDE = 'L', andLWORK >=M*NBifSIDE = 'R', whereNBis the optimal blocksize. - If
LWORK = -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.
- The dimension of the array
INFOβINFO is INTEGER= 0: successful exit< 0: if INFO = -i, the i-th argument had an illegal value
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 170 of file cunmtr.f.
π§ Author π§
Generated automatically by Doxygen for LAPACK from the source code.
π that's the whole manual page, bestie. Signing off from LAPACK Version 3.12.0, page SRC/cunmtr.f(3) β 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