SPBEQU(3)
β¨ SPBEQU(3) β¨
Okay so bestie, welcome to SPBEQU(3) from the Library Functions Manual β this page is also chilling at /home/abui...RC/spbequ.f(3). Itβs giving βtiny Fortran routine with main character energy,β and weβre gonna get into every single detail. π«Ά
π¦ NAME π¦
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/spbequ.f β thatβs the file this whole page is about, no cap.
πΈ SYNOPSIS πΈ
π§ Functions/Subroutines π§
subroutine SPBEQU (uplo, n, kd, ab, ldab, s, scond, amax, info)
SPBEQU
SPBEQU
π Function/Subroutine Documentation π
subroutine SPBEQU (character uplo, integer n, integer kd, real, dimension(
ldab, * ) ab, integer ldab, real, dimension( * ) s, real scond, real
amax, integer info)
SPBEQU
π― Purpose π―
Not me getting emotional over a band-matrix equilibration routine π β but okay, hereβs the tea: SPBEQU computes row and column scalings intended to equilibrate a symmetric positive definite band matrix A and reduce its condition number (with respect to the two-norm). S contains the scale factors, S(i) = 1/sqrt(A(i,i)), chosen so that the scaled matrix B with elements B(i,j) = S(i)*A(i,j)*S(j) has ones on the diagonal. This choice of S puts the condition number of B within a factor N of the smallest possible condition number over all possible diagonal scalings. Iconic behavior, honestly. β¨
π§Έ Parameters π§Έ
UPLOisCHARACTER*1= 'U':Upper triangular ofAis stored;= 'L':Lower triangular ofAis stored.
NisINTEGERThe order of the matrixA.N >= 0.KDisINTEGERThe number of superdiagonals of the matrixAifUPLO = 'U', or the number of subdiagonals ifUPLO = 'L'.KD >= 0.ABisREAL array, dimension (LDAB,N)The upper or lower triangle of the symmetric band matrixA, stored in the firstKD+1rows of the array. Thej-th column ofAis stored in thej-th column of the arrayABas follows:
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).
LDABisINTEGERThe leading dimension of the arrayA.LDAB >= KD+1.SisREAL array, dimension (N)IfINFO = 0,Scontains the scale factors forA.SCONDisREALIfINFO = 0,Scontains the ratio of the smallestS(i)to the largestS(i). IfSCOND >= 0.1andAMAXis neither too large nor too small, it is not worth scaling byS.AMAXisREALAbsolute value of largest matrix element. IfAMAXis very close to overflow or very close to underflow, the matrix should be scaled.INFOisINTEGER= 0:successful exit< 0:ifINFO = -i, thei-th argument had an illegal value.> 0:ifINFO = i, thei-th diagonal element is nonpositive.
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 128 of file spbequ.f.
π«Ά Author π«Ά
Generated automatically by Doxygen for LAPACK from the source code.
Cute sign-off time π
: this footer gives LAPACK Version 3.12.0 and the source path /home/abui...RC/spbequ.f(3) β no date shown, so weβre not inventing one, bestie. Bye and stay iconic πβ¨
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms