DORMR3(3)
πΈ DORMR3(3) β LAPACK, Library Functions Manual πΈ
okay so bestie, welcome to the dormr3 page π this is LAPACK, Library Functions Manual energy, and we're about to make a Fortran subroutine feel like a main character.
β¨ NAME β¨
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/dormr3.f
yes, that's literally the whole NAME section β it's just the file path, no cap π that's the whole vibe, the path is the name.
π¦ SYNOPSIS π¦
Functions/Subroutines
subroutine DORMR3 (side, trans, m, n, k, l, a, lda, tau, c, ldc, work,
info)
DORMR3 multiplies a general matrix by the orthogonal matrix from a RZ factorization determined by stzrzf (unblocked algorithm). slay π
π Function/Subroutine Documentation π
subroutine DORMR3 (character side, character trans, integer m, integer n,
integer k, integer l, double precision, dimension( lda, * ) a, integer
lda, double precision, dimension( * ) tau, double precision, dimension(
ldc, * ) c, integer ldc, double precision, dimension( * ) work, integer
info)
DORMR3 multiplies a general matrix by the orthogonal matrix from a RZ factorization determined by stzrzf (unblocked algorithm). again, iconic β¨
π Purpose
!>
!> DORMR3 overwrites the general real m by n matrix C with
!>
!> Q * C if SIDE = 'L' and TRANS = 'N', or
!>
!> Q**T* C if SIDE = 'L' and TRANS = 'C', or
!>
!> C * Q if SIDE = 'R' and TRANS = 'N', or
!>
!> C * Q**T if SIDE = 'R' and TRANS = 'C',
!>
!> where Q is a real orthogonal matrix defined as the product of k
!> elementary reflectors
!>
!> Q = H(1) H(2) . . . H(k)
!>
!> as returned by DTZRZF. Q is of order m if SIDE = 'L' and of order n
!> if SIDE = 'R'.
!>
translation for the girlies π«Ά: it overwrites that m-by-n real matrix C, and depending on which side you're applying from and whether you're transposing, you get Q * C, Q**T* C, C * Q, or C * Q**T. And Q? It's a real orthogonal matrix built as the product of k elementary reflectors, Q = H(1) H(2) . . . H(k), exactly like DTZRZF handed them to you. Q is order m when SIDE = 'L' and order n when SIDE = 'R'. periodt π
π Parameters
SIDEβSIDEisCHARACTER*1. Set it to'L'to applyQorQ**Tfrom the Left, or'R'to applyQorQ**Tfrom the Right. pick your side bestie πTRANSβTRANSisCHARACTER*1.'N'means applyQ(No transpose);'T'means applyQ**T(Transpose). no in-between, choose your fighter.MβMisINTEGER. It's the number of rows of the matrixC, andM >= 0. zero rows is valid, we don't judge πNβNisINTEGER. Number of columns of the matrixC, andN >= 0.KβKisINTEGER. The number of elementary reflectors whose product defines the matrixQ. IfSIDE = 'L', thenM >= K >= 0; ifSIDE = 'R', thenN >= K >= 0. respect the bounds fr fr βLβLisINTEGER. The number of columns of the matrixAcontaining the meaningful part of the Householder reflectors. IfSIDE = 'L', thenM >= L >= 0; ifSIDE = 'R', thenN >= L >= 0.AβAisDOUBLE PRECISION array, dimension(LDA,M)ifSIDE = 'L', or(LDA,N)ifSIDE = 'R'. The i-th row must contain the vector which defines the elementary reflectorH(i), fori = 1,2,...,k, as returned byDTZRZFin the lastkrows of its array argumentA. Heads up:Ais modified by the routine but restored on exit β it comes back home safe π β¨LDAβLDAisINTEGER. The leading dimension of the arrayA, andLDA >= max(1,K).TAUβTAUisDOUBLE PRECISION array, dimension(K).TAU(i)must contain the scalar factor of the elementary reflectorH(i), as returned byDTZRZF.CβCisDOUBLE PRECISION array, dimension(LDC,N). On entry, them-by-nmatrixC. On exit,Cis overwritten byQ*CorQ**T*CorC*Q**TorC*Q. she's been through it but she's thriving πLDCβLDCisINTEGER. The leading dimension of the arrayC, andLDC >= max(1,M).WORKβWORKisDOUBLE PRECISION array, dimension(N)ifSIDE = 'L', or(M)ifSIDE = 'R'. do the math before you pass it, iykyk.INFOβINFOisINTEGER.= 0: successful exit π< 0: ifINFO = -i, the i-th argument had an illegal value. rude but informative π
π§ 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:
!>
that's it. that's the further details. it's giving "nothing further, your honor" π (the block is literally empty, bestie β no secret lore here.)
Definition at line 176 of file dormr3.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code. not a human, just a very diligent robot π€β¨
aaand that's the page! the sign-off from the footer, for the record: this is LAPACK, Version 3.12.0, from /home/abui...RC/dormr3.f(3) β mwah, go multiply something π
π
π¦ 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