/home/abui.../dsyequb.f(3)
π dsyequb.f β like, the whole manual page, bestie π«Ά
okay so this is a page from the Library Functions Manual for /home/abui.../dsyequb.f(3), and ngl it's giving big "LAPACK internals" energy. it's a Fortran source file page, and the actual file lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/dsyequb.f π
β¨ NAME β¨
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/dsyequb.f β yes bestie, the NAME section is literally just the path. iconic, honestly. π
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine DSYEQUB (uplo, n, a, lda, s, scond, amax, work, info)β DSYEQUB π¦
π Function/Subroutine Documentation π
so here's the full signature, no cap:
subroutine DSYEQUB (character uplo, integer n, double precision, dimension(
lda, * ) a, integer lda, double precision, dimension( * ) s, double
precision scond, double precision amax, double precision, dimension( * )
work, integer info)
DSYEQUB β¨
π Purpose π
!> !> DSYEQUB computes row and column scalings intended to equilibrate a !> symmetric matrix A (with respect to the Euclidean norm) and reduce !> its condition number. The scale factors S are computed by the BIN !> algorithm (see references) so that the scaled matrix B with elements > B(i,j) = S(i)*A(i,j)*S(j) has a condition number within a factor N of !> the smallest possible condition number over all possible diagonal !> scalings. !>
like, literally it's out here balancing your symmetric matrix so the condition number stops being dramatic π it uses the BIN algorithm (refs below, iykyk), and the scaled matrix B with elements B(i,j) = S(i)*A(i,j)*S(j) ends up with a condition number within a factor N of the smallest possible one over all diagonal scalings. ate. π
π¦ Parameters π¦
UPLOβUPLO is CHARACTER*1. which triangle are we vibing with?= 'U': Upper triangle of A is stored;= 'L': Lower triangle of A is stored.
NβN is INTEGER. the order of the matrix A.N >= 0. (zero is allowed, she's valid π)AβA is DOUBLE PRECISION array, dimension (LDA,N). the N-by-N symmetric matrix whose scaling factors are to be computed. main character matrix energy πLDAβLDA is INTEGER. the leading dimension of the array A.LDA >= max(1,N). don't skip this one fr fr.SβS is DOUBLE PRECISION array, dimension (N). IfINFO = 0, S contains the scale factors for A. πSCONDβSCOND is DOUBLE PRECISION. IfINFO = 0, S contains the ratio of the smallestS(i)to the largestS(i). IfSCOND >= 0.1andAMAXis neither too large nor too small, it is not worth scaling by S. so like, if this checks out, don't bother β she's fine as is πAMAXβAMAX is DOUBLE PRECISION. largest absolute value of any matrix element. IfAMAXis very close to overflow or very close to underflow, the matrix should be scaled. π¨ like, actual warning territory.WORKβWORK is DOUBLE PRECISION array, dimension (2*N). yes,2*N, notN. respect the workspace.INFOβINFO is INTEGER. the vibe check:= 0: successful exit β¨< 0: ifINFO = -i, the i-th argument had an illegal value π> 0: ifINFO = i, the i-th diagonal element is nonpositive.
π§ Author π§
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
the whole squad co-signed this one π«Ά
β References β
Livne, O.E. and Golub, G.H., "Scaling by Binormalization", Numerical Algorithms, vol. 35, no. 1, pp. 97-120, January 2004. DOI 10.1023/B:NUMA.0000016606.32820.69 Tech report version: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.3.1679
like, cite your sources bestie, it's the law πβ¨
π Where she lives π
Definition at line 130 of file dsyequb.f.
π Author (the meta one) π
Generated automatically by Doxygen for LAPACK from the source code. (not a human, just a robot doing her little thing π€π )
okay and that's the whole page, periodt. π this footer slays: LAPACK, Version 3.12.0, dated /home/abui.../dsyequb.f(3) β go off, queen ππ
π¦ 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