CUNMRZ(3)
π CUNMRZ(3) β cunmrz.f, from the Library Functions Manual π
okay bestie, so this little icon lives at /home/abuild/rpmbuild/BUILD/lapack-3.12.0-build/lapack-3.12.0/SRC/cunmrz.f and honestly? it's giving "quietly doing the most important math in the room." come sit with me π«Ά
β¨ SYNOPSIS β¨
Functions/Subroutines πΈ
subroutine CUNMRZ (side, trans, m, n, k, l, a, lda, tau, c, ldc, work,
lwork, info)
CUNMRZ β that's her name, that's her whole brand π
π₯ Function/Subroutine Documentation π₯
subroutine CUNMRZ (character side, character trans, integer m, integer n,
integer k, integer l, complex, dimension( lda, * ) a, integer lda,
complex, dimension( * ) tau, complex, dimension( ldc, * ) c, integer
ldc, complex, dimension( * ) work, integer lwork, integer info)
CUNMRZ β¨ (yes she's spelled all-caps, we respect the drama)
π Purpose π
okay so listen β CUNMRZ 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)
as returned by CTZRZF. and like, Q is of order M if SIDE = 'L', and of order N if SIDE = 'R'. periodt π
π¦ Parameters π¦
SIDEβSIDEisCHARACTER*1, no cap:= 'L': applyQorQ**Hfrom the Left;= 'R': applyQorQ**Hfrom the Right.
TRANSβTRANSisCHARACTER*1:= 'N': No transpose, applyQ;= 'C': Conjugate transpose, applyQ**H.
MβMisINTEGER. the number of rows of the matrixC. literallyM >= 0.NβNisINTEGER. the number of columns of the matrixC.N >= 0, always.KβKisINTEGER. the number of elementary reflectors whose product defines the matrixQ. so like:- If
SIDE = 'L',M >= K >= 0; - if
SIDE = 'R',N >= K >= 0.
- If
LβLisINTEGER. the number of columns of the matrixAcontaining the meaningful part of the Householder reflectors. aka:- If
SIDE = 'L',M >= L >= 0, - if
SIDE = 'R',N >= L >= 0.
- If
AβAisCOMPLEXarray, dimension
(LDA,M) if SIDE = 'L',
(LDA,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 CTZRZF in the last k rows of its array argument A. heads up bestie: A is modified by the routine but restored on exit. iconic behavior honestly, she cleans up after herself π§
LDAβLDAisINTEGER. the leading dimension of the arrayA.LDA >= max(1,K).TAUβTAUisCOMPLEXarray, dimension(K).TAU(i)must contain the scalar factor of the elementary reflectorH(i), as returned byCTZRZF.CβCisCOMPLEXarray, 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βLDCisINTEGER. the leading dimension of the arrayC.LDC >= max(1,M).WORKβWORKisCOMPLEXarray, dimension(MAX(1,LWORK)). on exit, ifINFO = 0,WORK(1)returns the optimalLWORK. slay, she tells you what she wanted πLWORKβLWORKisINTEGER. the dimension of the arrayWORK.- If
SIDE = 'L',LWORK >= max(1,N); - if
SIDE = 'R',LWORK >= max(1,M). - For good performance,
LWORKshould generally be larger. ngl, give her room to breathe. - 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.
- If
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.
π Contributors: π
A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA
β Further Details: β
(yes the original really is just an empty !> here β she's mysterious like that, no notes, no cap π)
Definition at line 185 of file cunmrz.f. that's her address, go say hi π
π Author π
Generated automatically by Doxygen for LAPACK from the source code. (a bot wrote this one, but like respectfully)
and that's the whole page bestie!! πβ¨ this is LAPACK Version 3.12.0, and the whole thing lives at /home/abui...RC/cunmrz.f(3) β mwah, go forth and multiply your unitary matrices π
ππ¦πΈ
π¦ 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