SRC/zunmtr.f(3)
NAME
SRC/zunmtr.f β okay bestie, this is the page for the ZUNMTR subroutine, and it lives in the Library Functions Manual. Itβs giving βcomplex matrix, but make it coutureβ energy β¨
SYNOPSIS
Functions/Subroutines
subroutine zunmtr (side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info)βZUNMTR
π¦ Function/Subroutine Documentation π¦
π«Ά subroutine zunmtr π«Ά
subroutine zunmtr (character side, character uplo, character trans, integer m, integer n, complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension( * ) tau, complex*16, dimension( ldc, * ) c, integer ldc, complex*16, dimension( * ) work, integer lwork, integer info)
ZUNMTR β okay so this is the main character subroutine, no cap.
β¨ Purpose β¨
ZUNMTR 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 ZHETRD:
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': applyQorQ**Hfrom the Left;= 'R': applyQorQ**Hfrom the Right.
UPLOβUPLO is CHARACTER*1= 'U': Upper triangle ofAcontains elementary reflectors fromZHETRD;= 'L': Lower triangle ofAcontains elementary reflectors fromZHETRD.
TRANSβTRANS is CHARACTER*1= 'N': No transpose, applyQ;= 'C': Conjugate transpose, applyQ**H.
MβM is INTEGERThe number of rows of the matrixC.M >= 0.NβN is INTEGERThe number of columns of the matrixC.N >= 0.AβA is COMPLEX*16 array, dimension(LDA,M)ifSIDE = 'L'/(LDA,N)ifSIDE = 'R'; the vectors which define the elementary reflectors, as returned byZHETRD.LDAβLDA is INTEGERThe leading dimension of the arrayA.LDA >= max(1,M)ifSIDE = 'L';LDA >= max(1,N)ifSIDE = 'R'.TAUβTAU is COMPLEX*16 array, dimension(M-1)ifSIDE = 'L'/(N-1)ifSIDE = 'R';TAU(i)must contain the scalar factor of the elementary reflectorH(i), as returned byZHETRD.CβC is COMPLEX*16 array, dimension (LDC,N)On entry, theM-by-NmatrixC. On exit,Cis overwritten byQ*CorQ**H*CorC*Q**HorC*Q.LDCβLDC is INTEGERThe leading dimension of the arrayC.LDC >= max(1,M).WORKβWORK is COMPLEX*16 array, dimension (MAX(1,LWORK))On exit, ifINFO = 0,WORK(1)returns the optimalLWORK.LWORKβLWORK is INTEGER- The dimension of the array
WORK. - If
SIDE = 'L',LWORK >= max(1,N); ifSIDE = '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: 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 169 of file zunmtr.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
Okay bestie, thatβs the whole page π The footer tea is LAPACK Version 3.12.0 and source page SRC/zunmtr.f(3) β thatβs the official sign-off, no cap π«Άβ¨
π¦ 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