SRC/zla_syrpvgrw.f(3)

πŸ’œ SRC/zla_syrpvgrw.f πŸ’œ

okay so this is a page from the LAPACK manual β€” Library Functions Manual energy, we love her β€” and today's main character is SRC/zla_syrpvgrw.f, bestie. she's a Fortran file, she's lowkey iconic, and she does exactly one (1) thing but she does it well. let's get into it 🫢


✨ SYNOPSIS ✨

πŸŽ€ Functions/Subroutines

double precision function zla_syrpvgrw (uplo, n, info, a, lda, af, ldaf,
    ipiv, work)

ZLA_SYRPVGRW computes the reciprocal pivot growth factor norm(A)/norm(U) for a symmetric indefinite matrix. that's the whole vibe. no cap. πŸ’…


🌸 Function/Subroutine Documentation 🌸

double precision function zla_syrpvgrw (character*1 uplo, integer n, integer
    info, complex*16, dimension( lda, * ) a, integer lda, complex*16,
    dimension( ldaf, * ) af, integer ldaf, integer, dimension( * ) ipiv,
    double precision, dimension( * ) work)

ZLA_SYRPVGRW computes the reciprocal pivot growth factor norm(A)/norm(U) for a symmetric indefinite matrix. yes she's a double precision function, yes she takes nine arguments, yes she ate πŸ”₯

πŸ¦‹ Purpose

!> !> ZLA_SYRPVGRW 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. !>

translating from manpage-speak: if this number comes back way less than 1, the stability of the LU factorization of the (equilibrated) matrix A could be poor 😭 and that means your solution X, your estimated condition numbers, and your error bounds could all be unreliable. so like… vibe check your factorization, honestly. 🩷

(also yes, The norm is used. has a lil double space in it β€” that's literally how the source has it, i'm not touching it. πŸ™ˆ)

πŸ‘‘ Parameters

  • UPLO β€” UPLO is CHARACTER*1
    • = 'U': Upper triangle of A is stored;
    • = 'L': Lower triangle of A is stored.
  • N β€” N is INTEGER. The number of linear equations, i.e., the order of the matrix A. N >= 0.
  • INFO β€” INFO is INTEGER. The value of INFO returned from ZSYTRF, .i.e., the pivot in column INFO is exactly 0.
  • A β€” A is COMPLEX*16 array, dimension (LDA,N). On entry, the N-by-N matrix A.
  • LDA β€” LDA is INTEGER. The leading dimension of the array A. LDA >= max(1,N).
  • AF β€” AF is COMPLEX*16 array, dimension (LDAF,N). The block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by ZSYTRF.
  • LDAF β€” LDAF is INTEGER. The leading dimension of the array AF. LDAF >= max(1,N).
  • IPIV β€” IPIV is INTEGER array, dimension (N). Details of the interchanges and the block structure of D as determined by ZSYTRF.
  • WORK β€” WORK is DOUBLE PRECISION array, dimension (2*N).

(yeah WORK gets literally no extra commentary, she's just out here doing her job. respect. ⭐)

πŸ’– Author

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

🧚 Definition

Definition at line 121 of file zla_syrpvgrw.f.


🌈 Author (again, but the meta one)

Generated automatically by Doxygen for LAPACK from the source code. not me being auto-generated by Doxygen, that's so real of her πŸ’€


anyway bestie, that's the whole page β€” no notes, she's perfect. this little cutie is LAPACK Version 3.12.0, dated with love, and pulled straight from SRC/zla_syrpvgrw.f(3). go forth and check your pivot growth factors, ily, bye πŸŽ€πŸ’œβœ¨

πŸ“¦ where this page comes from