CLAQSP(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸ’… CLAQSP(3) β€” like, the whole manual page, bestie

okay so first things first: this page lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/claqsp.f β€” yeah that path is a lot, and the header/footer are out here truncating it to /home/abui...RC/claqsp.f(3) with <pink>Library Functions Manual</pink> vibes. That's the manual section of record, iykyk. ✨


🌸 SYNOPSIS 🌸

Functions/Subroutines

subroutine CLAQSP (uplo, n, ap, s, scond, amax, equed)

CLAQSP scales a symmetric/Hermitian matrix in packed storage, using scaling factors computed by sppequ. 🫢


πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine CLAQSP (character uplo, integer n, complex, dimension( * ) ap,
    real, dimension( * ) s, real scond, real amax, character equed)

Same deal, one more time for the people in the back: CLAQSP scales a symmetric/Hermitian matrix in packed storage, using scaling factors computed by sppequ. πŸ’–

✨ Purpose ✨

!>
!> CLAQSP equilibrates a symmetric matrix A using the scaling factors
!> in the vector S.
!>

so basically: it takes your matrix A, grabs the scale factors sitting in S, and equilibrates. balance era. πŸŽ€

🌈 Parameters 🌈

  • UPLO β€” it's a CHARACTER*1, and it tells us which triangle of the symmetric matrix A we're actually keeping:
    • = 'U': Upper triangular
    • = 'L': Lower triangular
  • N β€” INTEGER, the order of the matrix A. Constraint: N >= 0. no negative sizes bestie it's not that kind of function πŸ™ˆ
  • AP β€” COMPLEX array, dimension (N*(N+1)/2).
    • On entry: the upper or lower triangle of the symmetric matrix A, packed columnwise in a linear array. The j-th column of A is stored in the array AP like this:
      • if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
      • if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.
    • On exit: the equilibrated matrix, diag(S) * A * diag(S), in the same storage format as A. it literally got a glow-up in place πŸ’…
  • S β€” REAL array, dimension (N). The scale factors for A. πŸ‘‘
  • SCOND β€” REAL. Ratio of the smallest S(i) to the largest S(i). it's giving range check πŸ”₯
  • AMAX β€” REAL. Absolute value of largest matrix entry. the big one, literally 😭
  • EQUED β€” CHARACTER*1, specifies whether or not equilibration was done:
    • = 'N': No equilibration.
    • = 'Y': Equilibration was done, i.e., A has been replaced by diag(S) * A * diag(S). slay, it happened πŸŽ€

🧚 Internal Parameters 🧚

!>  THRESH is a threshold value used to decide if scaling should be done
!>  based on the ratio of the scaling factors.  If SCOND < THRESH,
!>  scaling is done.
!>
!>  LARGE and SMALL are threshold values used to decide if scaling should
!>  be done based on the absolute size of the largest matrix element.
!>  If AMAX > LARGE or AMAX < SMALL, scaling is done.
!>

so THRESH is the vibe check on the ratio of the scaling factors β€” if SCOND < THRESH, scaling happens. and LARGE / SMALL are the vibe checks on raw size β€” if AMAX > LARGE or AMAX < SMALL, scaling happens too. multiple bouncers, same club 🫢


πŸ‘‘ Author πŸ‘‘

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

Definition at line 125 of file claqsp.f. ⭐


🌸 Author (again, but the meta one) 🌸

Generated automatically by Doxygen for LAPACK from the source code. not a human, just automation being iconic πŸ’€


ok but fr fr β€” keep THRESH, LARGE and SMALL exactly as described, they're internal thresholds and not extra arguments you can pass. no inventing, no cap. 🧚

that's the whole page, bestie β€” every flag, every formula, every author, nothing skipped, periodt. πŸ’œ

LAPACK β€” Version 3.12.0, page /home/abui...RC/claqsp.f(3), dated by its footer. bye bye, drink water, go equilibrate something 🌈✨

πŸ“¦ where this page comes from