ZUNM2R(3)
π NAME π
okay bestie, this is the zunm2r.f(3) page from the Library Functions Manual, and the source file path is /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zunm2r.f. itβs giving LAPACK internals, no cap π«Ά
β¨ SYNOPSIS β¨
under Functions/Subroutines we have this icon:
subroutine ZUNM2R (side, trans, m, n, k, a, lda, tau, c, ldc, work,
info)
ZUNM2R multiplies a general matrix by the unitary matrix from a QR factorization determined by cgeqrf (unblocked algorithm). periodt π
πΈ Function/Subroutine Documentation πΈ
hereβs the full signature, bestie:
subroutine ZUNM2R (character side, character trans, integer m, integer n,
integer k, complex*16, dimension( lda, * ) a, integer lda, complex*16,
dimension( * ) tau, complex*16, dimension( ldc, * ) c, integer ldc,
complex*16, dimension( * ) work, integer info)
ZUNM2R multiplies a general matrix by the unitary matrix from a QR factorization determined by cgeqrf (unblocked algorithm). same energy, still iconic β¨
π― Purpose:
ZUNM2R overwrites the general complex m-by-n matrix C with
Q * C if SIDE = 'L' and TRANS = 'N', or
Q**H* C if SIDE = 'L' and TRANS = 'C', or
C * Q if SIDE = 'R' and TRANS = 'N', or
C * Q**H if SIDE = 'R' and TRANS = 'C',
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 ZGEQRF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'. π
π Parameters
SIDEβ isCHARACTER*1;= 'L': applyQorQ**Hfrom the Left;= 'R': applyQorQ**Hfrom the Right. choose your main character side wisely πTRANSβ isCHARACTER*1;= 'N': applyQ(No transpose);= 'C': applyQ**H(Conjugate transpose). yes bestie, weβre conjugating and transposing, stay with me π¦Mβ isINTEGER; the number of rows of the matrixC.M >= 0. no negative row vibes allowed π«Nβ isINTEGER; the number of columns of the matrixC.N >= 0. again, keep it non-negative, queen πKβ isINTEGER; the number of elementary reflectors whose product defines the matrixQ. IfSIDE = 'L',M >= K >= 0; ifSIDE = 'R',N >= K >= 0. the math is mathing π₯Aβ is aCOMPLEX*16array, dimension(LDA,K). The i-th column must contain the vector which defines the elementary reflectorH(i), fori = 1,2,...,k, as returned byZGEQRFin the firstkcolumns of its array argumentA.Ais modified by the routine but restored on exit. it gets temporarily messed with and then fixed β we love a comeback β¨LDAβ isINTEGER; the leading dimension of the arrayA. IfSIDE = 'L',LDA >= max(1,M); ifSIDE = 'R',LDA >= max(1,N). respect the leading dimension, bestie πTAUβ is aCOMPLEX*16array, dimension(K).TAU(i)must contain the scalar factor of the elementary reflectorH(i), as returned byZGEQRF. iconic scalar-factor behavior πCβ is aCOMPLEX*16array, dimension(LDC,N). On entry, the m-by-n matrixC. On exit,Cis overwritten byQ*CorQ**H*CorC*Q**HorC*Q. she gets overwritten, thatβs just her journey πLDCβ isINTEGER; the leading dimension of the arrayC.LDC >= max(1,M). leading dimension check, always πWORKβ is aCOMPLEX*16array, dimension(N)ifSIDE = 'L',(M)ifSIDE = 'R'. workspace but make it cute π§INFOβ isINTEGER;= 0: successful exit;< 0: ifINFO = -i, the i-th argument had an illegal value. ifINFOis negative, somebodyβs argument was not invited to the function π
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Definition at line 157 of file zunm2r.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code.
byeee bestie π β this footer sign-off is brought to you by LAPACK Version 3.12.0 and the path /home/abui...RC/zunm2r.f(3); no separate date is printed on the page, just so you know π«Άβ¨
π¦ 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