SGEEQU(3)
π SGEEQU(3) β the whole manual page, bestie
okay so this is the man page for SGEEQU(3), and it lives in the LAPACK fam β Version 3.12.0 to be exact. The source file is:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/sgeequ.f
and it's filed under the Library Functions Manual. Buckle up, we're getting into matrix equilibration and honestly? it's giving main character energy. π
β¨ NAME β¨
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/sgeequ.f
like, yes, the NAME section is literally just the path to the file. no notes. iconic behaviour. π
π¦ SYNOPSIS π¦
Functions/Subroutines
subroutine SGEEQU (m, n, a, lda, r, c, rowcnd, colcnd, amax, info)
SGEEQU
πΈ Function/Subroutine Documentation πΈ
subroutine SGEEQU (integer m, integer n, real, dimension( lda, * ) a,
integer lda, real, dimension( * ) r, real, dimension( * ) c, real
rowcnd, real colcnd, real amax, integer info)
<b>SGEEQU</b>
π Purpose π
!> !> SGEEQU computes row and column scalings intended to equilibrate an !> M-by-N matrix A and reduce its condition number. R returns the row !> scale factors and C the column scale factors, chosen to try to make !> the largest element in each row and column of the matrix B with !> elements B(i,j)=R(i)*A(i,j)*C(j) have absolute value 1. !> !> R(i) and C(j) are restricted to be between SMLNUM = smallest safe !> number and BIGNUM = largest safe number. Use of these scaling !> factors is not guaranteed to reduce the condition number of A but !> works well in practice. !>
so basically it's out here trying to make your matrix behave β scale each row and column so the biggest element in each one lands at absolute value 1. R is your row scalers, C is your column scalers, and the whole thing rides on B(i,j)=R(i)*A(i,j)*C(j). Also super important: R(i) and C(j) are restricted to live between SMLNUM (smallest safe number) and BIGNUM (largest safe number). and ngl, using these factors is not guaranteed to reduce the condition number of A β it just works well in practice, bestie. no cap. π
π Parameters π
Mβ INTEGER, the number of rows of the matrix A. Must beM >= 0. yes zero is allowed, we love an empty-ish matrix.Nβ INTEGER, the number of columns of the matrix A. Must beN >= 0. same deal, zero is chill.Aβ REAL array, dimension(LDA,N). This is the M-by-N matrix whose equilibration factors are to be computed. it's the star of the show, the main character, the moment. πC... wait no, order! let me not skip. πLDAβ INTEGER, the leading dimension of the array A. Must beLDA >= max(1,M). don't mess with this one, fr fr.Rβ REAL array, dimension(M). IfINFO = 0orINFO > M, R contains the row scale factors for A.Cβ REAL array, dimension(N). IfINFO = 0, C contains the column scale factors for A. (notice the difference: C only shows up whenINFO = 0, notINFO > M. iykyk.)ROWCNDβ REAL. IfINFO = 0orINFO > M, ROWCND contains the ratio of the smallestR(i)to the largestR(i). And like, ifROWCND >= 0.1andAMAXis neither too large nor too small, it is not worth scaling by R. so just... don't bother, girl.COLCNDβ REAL. IfINFO = 0, COLCND contains the ratio of the smallestC(i)to the largestC(i). IfCOLCND >= 0.1, it is not worth scaling by C. same vibe check, different axis. π¦AMAXβ REAL. Absolute value of largest matrix element. IfAMAXis very close to overflow or very close to underflow, the matrix should be scaled. that's the danger zone, bestie, take it seriously. πINFOβ INTEGER, the receipts:= 0: successful exit π< 0: ifINFO = -i, the i-th argument had an illegal value β like, you passed something bad and it's telling you which one> 0: ifINFO = i, and i is<= M: the i-th row of A is exactly zero> M: the (i-M)-th column of A is exactly zero
π§ Author π§
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 137 of file sgeequ.f.
β Author (yes, again) β
Generated automatically by Doxygen for LAPACK from the source code.
and that's the whole page, bestie β LAPACK Version 3.12.0, dated to that path up there, generated by Doxygen from the source, slay. π«Άβ¨
π¦ 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