SRC/claqsb.f(3)
π SRC/claqsb.f π
okay so bestie, this page is from the LAPACK Library Functions Manual β like, the library functions manual energy is immaculate. it's SRC/claqsb.f and it's about one (1) very specific little subroutine. let's get into it π«Ά
β¨ SYNOPSIS β¨
π§ Functions/Subroutines
subroutine claqsb (uplo, n, kd, ab, ldab, s, scond, amax, equed)β CLAQSB scales a symmetric/Hermitian band matrix, using scaling factors computed byspbequ. that's the whole vibe, honestly π
πΈ Function/Subroutine Documentation πΈ
π subroutine claqsb (character uplo, integer n, integer kd, complex, dimension( ldab, * ) ab, integer ldab, real, dimension( * ) s, real scond, real amax, character equed)
CLAQSB scales a symmetric/Hermitian band matrix, using scaling factors computed by spbequ. no cap, that's literally what it does.
π Purpose:
!>
!> CLAQSB equilibrates a symmetric band matrix A using the scaling
!> factors in the vector S.
!>
π¦ Parameters
UPLOβUPLO is CHARACTER*1β tells us whether the upper or lower triangular part of the symmetric matrixAis the one being stored:
!> = 'U': Upper triangular
!> = 'L': Lower triangular
!>
NβN is INTEGERβ the order of the matrixA. constraint:N >= 0.KDβKD is INTEGERβ the number of super-diagonals of the matrixAifUPLO = 'U', or the number of sub-diagonals ifUPLO = 'L'. constraint:KD >= 0.ABβAB is COMPLEX array, dimension (LDAB,N)β okay this one has lore. on entry, it's the upper or lower triangle of the symmetric band matrixA, stored in the firstKD+1rows of the array. thej-th column ofAlives in thej-th column of the arrayABlike this:
!> if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;
!> if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).
!>
and on exit, if INFO = 0, you get the triangular factor U or L from the Cholesky factorization A = U**H *U or A = L*L**H of the band matrix A, in the same storage format as A. same format, new content β it's giving glow-up β¨
LDABβLDAB is INTEGERβ the leading dimension of the arrayAB. constraint:LDAB >= KD+1. do not disrespect it πSβS is REAL array, dimension (N)β the scale factors forA. icon behavior.SCONDβSCOND is REALβ ratio of the smallestS(i)to the largestS(i). tiny-to-big ratio realness.AMAXβAMAX is REALβ absolute value of largest matrix entry. main character of the matrix, lowkey.EQUEDβEQUED is 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).
!>
π 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 real: THRESH gatekeeps via the SCOND ratio (if SCOND < THRESH, scaling happens), and LARGE / SMALL gatekeep via the absolute size of the biggest matrix element (if AMAX > LARGE or AMAX < SMALL, scaling happens). three thresholds, three vibe checks π₯
π Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
π Definition at line 140 of file claqsb.f.
β Author β
Generated automatically by Doxygen for LAPACK from the source code. not a human writing this one, it's a whole robot doing its thing π€π«
k that's the page!! it's LAPACK, Version 3.12.0, and the whole thing is filed under SRC/claqsb.f(3) β mwah, bye bestie πππ¦
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms