SRC/dlaqsb.f(3)
π SRC/dlaqsb.f β the glow-up your band matrix deserves
okay bestie, gather round, because today we're talking about DLAQSB β a literal icon from the LAPACK library, living her best life at line 139 of dlaqsb.f. she scales symmetric/Hermitian band matrices using scaling factors computed by spbequ, and honestly? she ate. π
β¨ SYNOPSIS β¨
π§ Functions/Subroutines
subroutine dlaqsb (uplo, n, kd, ab, ldab, s, scond, amax, equed)
DLAQSB scales a symmetric/Hermitian band matrix, using scaling factors computed by spbequ. no cap, that's the whole vibe.
π¦ Function/Subroutine Documentation π¦
subroutine dlaqsb (character uplo, integer n, integer kd,
double precision, dimension( ldab, * ) ab, integer ldab,
double precision, dimension( * ) s, double precision scond,
double precision amax, character equed)
DLAQSB scales a symmetric/Hermitian band matrix, using scaling factors computed by spbequ. she's giving main character energy fr fr.
πΈ Purpose
DLAQSB equilibrates a symmetric band matrix A using the scaling factors in the vector S. literally her whole job and she does it flawlessly π
π Parameters
UPLOβUPLOisCHARACTER*1. it tells us whether the upper or lower triangular part of the symmetric matrix A is stored, and here are your options:= 'U': Upper triangular π= 'L': Lower triangular π¦
NβNisINTEGER. the order of the matrix A.N >= 0. respect the N, bestie, she's not optional.KDβKDisINTEGER. the number of super-diagonals of the matrix A ifUPLO = 'U', or the number of sub-diagonals ifUPLO = 'L'. must haveKD >= 0. keep it positive (or zero), ok?ABβABisDOUBLE PRECISIONarray, dimension(LDAB,N). ooooh this is the juicy one:- On entry: the upper or lower triangle of the symmetric band matrix A, stored in the first
KD+1rows of the array. The j-th column of A is stored in the j-th column of the array AB as follows:- if
UPLO = 'U',AB(kd+1+i-j,j) = A(i,j)formax(1,j-kd)<=i<=j; - if
UPLO = 'L',AB(1+i-j,j) = A(i,j)forj<=i<=min(n,j+kd).
- if
- On exit, if
INFO = 0, you get the triangular factor U or L from the Cholesky factorizationA = U**T*UorA = L*L**Tof the band matrix A, in the same storage format as A. it's giving transformation arc β¨
- On entry: the upper or lower triangle of the symmetric band matrix A, stored in the first
LDABβLDABisINTEGER. the leading dimension of the array AB. must beLDAB >= KD+1. don't skimp on the leading dimension bestie, she needs her space.SβSisDOUBLE PRECISIONarray, dimension(N). the scale factors for A. iconic.SCONDβSCONDisDOUBLE PRECISION. the ratio of the smallestS(i)to the largestS(i). tiny queen, big queen, the ratio is the moment πAMAXβAMAXisDOUBLE PRECISION. absolute value of largest matrix entry. she's the biggest vibe in the matrix fr fr.EQUEDβEQUEDisCHARACTER*1. tells you whether or not equilibration was done, and here's the tea:= 'N': No equilibration. nope, didn't happen π= 'Y': Equilibration was done, i.e., A has been replaced bydiag(S) * A * diag(S). yes bestie, slay π
π₯ 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. periodt. - 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 > LARGEorAMAX < SMALL, scaling is done. two little gatekeepers, love that for us π«Ά
π Author π
the absolute legends who made this happen:
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 139 of file dlaqsb.f. iykyk.
π Author π
Generated automatically by Doxygen for LAPACK from the source code. the robots did this one, and they lowkey snapped β¨
LAPACK β Version 3.12.0 π and that's the whole page bestie, SRC/dlaqsb.f(3) signed, sealed, delivered, no cap ππ¦π
π¦ 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