/home/abui.../dsyequb.f(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸ’… 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). If INFO = 0, S contains the scale factors for A. πŸ“
  • SCOND β€” SCOND is DOUBLE PRECISION. If INFO = 0, S contains the ratio of the smallest S(i) to the largest S(i). If SCOND >= 0.1 and AMAX is 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. If AMAX is 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, not N. respect the workspace.
  • INFO β€” INFO is INTEGER. the vibe check:
    • = 0: successful exit ✨
    • < 0: if INFO = -i, the i-th argument had an illegal value 😭
    • > 0: if INFO = 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