CLA_HERPVGRW(3)
๐ NAME ๐
Okay so bestie, this page is about a file โ literally the source file itself, no cap:
/home/abuild/rpmbuild/BUILD/lapack-
static-3.12.0-build/lapack-3.12.0/SRC/cla_herpvgrw.f
That's it, that's the name section. It's giving "the man page is just pointing at its own source file" energy and honestly? Iconic. This lives in the Library Functions Manual, so jot that down ๐
โจ SYNOPSIS โจ
Functions/Subroutines
real function CLA_HERPVGRW (uplo, n, info, a, lda, af, ldaf, ipiv, work)
CLA_HERPVGRW
๐ฆ Function/Subroutine Documentation ๐ฆ
Here's the whole signature in all its glory, bestie โ type it exactly, do NOT freestyle:
real function CLA_HERPVGRW (character*1 uplo, integer n, integer info,
complex, dimension( lda, * ) a, integer lda, complex, dimension( ldaf, *
) af, integer ldaf, integer, dimension( * ) ipiv, real, dimension( * )
work)
CLA_HERPVGRW โจ (yes it gets its own little encore line, it's the main character)
๐งฎ Purpose
!> !> !>CLA_HERPVGRWcomputes the reciprocal pivot growth factor !>norm(A)/norm(U). The norm is used. If this is !> much less than 1, the stability of the LU factorization of the > (equilibrated) matrixAcould be poor. This also means that the !> solutionX, estimated condition numbers, and error bounds could be !> unreliable. !>
So like โ the tea โ โ this routine hands you the reciprocal pivot growth factor norm(A)/norm(U). And ngl, tiny heads-up: the source literally says "The norm is used" with the norm name justโฆ not there ๐ I'm not inventing anything, that's verbatim, don't come for me.
The important bit: if that value is much less than 1, the stability of the LU factorization of the (equilibrated) matrix A could be poor ๐ญ and that means the solution X, the estimated condition numbers, and the error bounds could all be unreliable. So like, vibe check your results, fr fr.
๐ Parameters ๐
UPLOโ it'sCHARACTER*1, and it tells you which triangle is doing the work:= 'U': the upper triangle ofAis stored ๐ผโจ= 'L': the lower triangle ofAis stored ๐
NโINTEGER. The number of linear equations, i.e. the order of the matrixA. Must beN >= 0. No negative orders, babe, that's not a thing ๐INFOโINTEGER. The value ofINFOreturned fromSSYTRF, .i.e., the pivot in columnINFOis exactly 0. (That.i.e.is verbatim, I would never ๐)AโCOMPLEXarray, dimension(LDA,N). On entry, theN-by-NmatrixA. The whole thing, the star of the show ๐LDAโINTEGER. The leading dimension of the arrayA.LDA >= max(1,N)โ that's a hard requirement, not a suggestion ๐ซถAFโCOMPLEXarray, dimension(LDAF,N). The block diagonal matrixDand the multipliers used to obtain the factorUorLas computed byCHETRF. Like, the factorization's whole lewk ๐LDAFโINTEGER. The leading dimension of the arrayAF.LDAF >= max(1,N). Same rules, different array โจIPIVโINTEGERarray, dimension(N). Details of the interchanges and the block structure ofDas determined byCHETRF. The receipts of who swapped with who ๐ต๏ธโโ๏ธWORKโREALarray, dimension(2*N). Scratch space, it's literally just vibing there and helping out ๐ธ
๐ Author ๐
Absolute legends, all four of them:
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
๐ Where it lives
Definition at line 121 of file cla_herpvgrw.f. Go look, it's right there ๐
โญ Author (the auto-generated one) โญ
Generated automatically by Doxygen for LAPACK from the source code. Not a human, just a very diligent little robot ๐คโจ
And that's the whole page, bestie!! ๐ซถ This cutie is from LAPACK, Version 3.12.0, and the whole thing is stamped /home/abui..._herpvgrw.f(3) โ mwah, slay, 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