DORGHR(3)
π NAME π
So like, bestie, this whole page is about one file β literally the source file itself, and it lives at:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/dorghr.f
That's the main character. That's what we're looking at. Anyway, this is the dorghr.f page from the Library Functions Manual, so buckle up. π
β¨ SYNOPSIS β¨
π«Ά Functions/Subroutines
subroutine DORGHR (n, ilo, ihi, a, lda, tau, work, lwork, info)β yup, that's the one.DORGHR.
π Function/Subroutine Documentation π
subroutine DORGHR (integer n, integer ilo, integer ihi, double precision,
dimension( lda, * ) a, integer lda, double precision, dimension( * )
tau, double precision, dimension( * ) work, integer lwork, integer info)
DORGHR π¦
πΈ Purpose:
okay so here's the vibe β this routine is:
!>
!> DORGHR generates a real orthogonal matrix Q which is defined as the
!> product of IHI-ILO elementary reflectors of order N, as returned by
!> DGEHRD:
!>
!> Q = H(ilo) H(ilo+1) . . . H(ihi-1).
!>
So it literally builds Q out of those elementary reflectors that DGEHRD handed you. Iconic behavior, no cap. β¨
π Parameters
NβN is INTEGER. The order of the matrixQ.N >= 0. That's it, that's the vibe check.
!> N is INTEGER
!> The order of the matrix Q. N >= 0.
!>
ILOβILO is INTEGER.
!> ILO is INTEGER
!>
IHIβIHI is INTEGER. And here's the important part, bestie, listen up:ILOandIHImust have the same values as in the previous call ofDGEHRD.Qis equal to the unit matrix except in the submatrixQ(ilo+1:ihi,ilo+1:ihi). And the rules are1 <= ILO <= IHI <= N, ifN > 0;ILO=1andIHI=0, ifN=0. Don't mess with those, fr fr. π
!> IHI is INTEGER
!>
!> ILO and IHI must have the same values as in the previous call
!> of DGEHRD. Q is equal to the unit matrix except in the
!> submatrix Q(ilo+1:ihi,ilo+1:ihi).
!> 1 <= ILO <= IHI <= N, if N > 0; ILO=1 and IHI=0, if N=0.
!>
AβA is DOUBLE PRECISION array, dimension (LDA,N). On entry? Those vectors that define the elementary reflectors, as returned byDGEHRD. On exit? Boom, you got theN-by-Northogonal matrixQ. Glow-up arc. π₯
!> A is DOUBLE PRECISION array, dimension (LDA,N)
!> On entry, the vectors which define the elementary reflectors,
!> as returned by DGEHRD.
!> On exit, the N-by-N orthogonal matrix Q.
!>
LDAβLDA is INTEGER. The leading dimension of the arrayA.LDA >= max(1,N). Respect the leading dimension or perish π
!> LDA is INTEGER
!> The leading dimension of the array A. LDA >= max(1,N).
!>
TAUβTAU is DOUBLE PRECISION array, dimension (N-1).TAU(i)must contain the scalar factor of the elementary reflectorH(i), as returned byDGEHRD.
!> TAU is DOUBLE PRECISION array, dimension (N-1)
!> TAU(i) must contain the scalar factor of the elementary
!> reflector H(i), as returned by DGEHRD.
!>
WORKβWORK is DOUBLE PRECISION array, dimension (MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK. cute little bonus value π
!> WORK is DOUBLE PRECISION array, dimension (MAX(1,LWORK))
!> On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
!>
LWORKβLWORK is INTEGER. The dimension of the arrayWORK.LWORK >= IHI-ILO. For optimum performanceLWORK >= (IHI-ILO)*NB, whereNBis the optimal blocksize.
And the big one, bestie: ifLWORK = -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. That's the-1cheat code, iykyk. β
!> LWORK is INTEGER
!> The dimension of the array WORK. LWORK >= IHI-ILO.
!> For optimum performance LWORK >= (IHI-ILO)*NB, where NB is
!> the optimal blocksize.
!>
!> If LWORK = -1, then a workspace query is assumed; the routine
!> only calculates the optimal size of the WORK array, returns
!> this value as the first entry of the WORK array, and no error
!> message related to LWORK is issued by XERBLA.
!>
INFOβINFO is INTEGER.= 0: successful exit π.< 0: ifINFO = -i, thei-th argument had an illegal value π.
!> 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.
Legends, all of them. π«Ά
π Definition at line 125 of file dorghr.f.
That's the spot. Line 125 of dorghr.f. Go look. π§
π Author
Generated automatically by Doxygen for LAPACK from the source code. Not written by a human hand, just robot magic β¨
and that's the whole page, bestie β LAPACK Version 3.12.0, dated /home/abui...RC/dorghr.f(3), and honestly? She ate. periodt. ππ
π¦ 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