CLA_HERPVGRW(3)

๐Ÿ“ฆ version 3.12.0, in opensuse-leap 16.0

๐Ÿ’… 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_HERPVGRW computes 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) matrix A could be poor. This also means that the !> solution X, 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's CHARACTER*1, and it tells you which triangle is doing the work:
    • = 'U': the upper triangle of A is stored ๐Ÿ”ผโœจ
    • = 'L': the lower triangle of A is stored ๐Ÿ’…
  • N โ€” INTEGER. The number of linear equations, i.e. the order of the matrix A. Must be N >= 0. No negative orders, babe, that's not a thing ๐Ÿ’€
  • INFO โ€” INTEGER. The value of INFO returned from SSYTRF, .i.e., the pivot in column INFO is exactly 0. (That .i.e. is verbatim, I would never ๐Ÿ™ˆ)
  • A โ€” COMPLEX array, dimension (LDA,N). On entry, the N-by-N matrix A. The whole thing, the star of the show ๐Ÿ‘‘
  • LDA โ€” INTEGER. The leading dimension of the array A. LDA >= max(1,N) โ€” that's a hard requirement, not a suggestion ๐Ÿซถ
  • AF โ€” COMPLEX array, dimension (LDAF,N). The block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by CHETRF. Like, the factorization's whole lewk ๐Ÿ’–
  • LDAF โ€” INTEGER. The leading dimension of the array AF. LDAF >= max(1,N). Same rules, different array โœจ
  • IPIV โ€” INTEGER array, dimension (N). Details of the interchanges and the block structure of D as determined by CHETRF. The receipts of who swapped with who ๐Ÿ•ต๏ธโ€โ™€๏ธ
  • WORK โ€” REAL array, 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