SRC/dlaqge.f(3)

πŸ’– NAME πŸ’–

Okay so this is the SRC/dlaqge.f(3) page from the Library Functions Manual, bestie β€” it’s all about the dlaqge routine and it’s lowkey iconic. No cap, this is the Fortran source page for that subroutine. πŸ’…

✨ SYNOPSIS ✨

πŸŽ€ Functions/Subroutines πŸŽ€

  • subroutine dlaqge (m, n, a, lda, r, c, rowcnd, colcnd, amax, equed) β€” DLAQGE scales a general rectangular matrix, using row and column scaling factors computed by sgeequ.

🧚 Function/Subroutine Documentation 🧚

πŸ¦‹ subroutine dlaqge

subroutine dlaqge (integer m, integer n, double precision, dimension( lda, * ) a, integer lda, double precision, dimension( * ) r, double precision, dimension( * ) c, double precision rowcnd, double precision colcnd, double precision amax, character equed)

DLAQGE scales a general rectangular matrix, using row and column scaling factors computed by sgeequ.

🌸 Purpose 🌸

Okay so the purpose is literally this: DLAQGE equilibrates a general M by N matrix A using the row and column scaling factors in the vectors R and C. Periodt.

πŸ“ Parameters πŸ“

  • M β€” M is INTEGER; it’s the number of rows of the matrix A. M >= 0.
  • N β€” N is INTEGER; it’s the number of columns of the matrix A. N >= 0.
  • A β€” A is DOUBLE PRECISION array, dimension (LDA,N). On entry, it’s the M by N matrix A. On exit, it’s the equilibrated matrix. See EQUED for the form of the equilibrated matrix. ✨
  • LDA β€” LDA is INTEGER; it’s the leading dimension of the array A. LDA >= max(M,1).
  • R β€” R is DOUBLE PRECISION array, dimension (M); these are the row scale factors for A.
  • C β€” C is DOUBLE PRECISION array, dimension (N); these are the column scale factors for A.
  • ROWCND β€” ROWCND is DOUBLE PRECISION; ratio of the smallest R(i) to the largest R(i).
  • COLCND β€” COLCND is DOUBLE PRECISION; ratio of the smallest C(i) to the largest C(i).
  • AMAX β€” AMAX is DOUBLE PRECISION; absolute value of largest matrix entry.
  • EQUED β€” EQUED is CHARACTER*1; specifies the form of equilibration that was done.
    • = 'N': No equilibration
    • = 'R': Row equilibration, i.e., A has been premultiplied by diag(R).
    • = 'C': Column equilibration, i.e., A has been postmultiplied by diag(C).
    • = 'B': Both row and column equilibration, i.e., A has been replaced by diag(R) * A * diag(C).

πŸ”₯ Internal Parameters πŸ”₯

  • THRESH β€” threshold value used to decide if row or column scaling should be done based on the ratio of the row or column scaling factors. If ROWCND < THRESH, row scaling is done, and if COLCND < THRESH, column scaling is done.
  • LARGE and SMALL β€” threshold values used to decide if row scaling should be done based on the absolute size of the largest matrix element. If AMAX > LARGE or AMAX < SMALL, row scaling is done.

🫢 Author 🫢

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

Definition at line 140 of file dlaqge.f.

🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code.

Byeee bestie πŸ’… β€” this page is from LAPACK Version 3.12.0, source file SRC/dlaqge.f(3). The footer doesn’t show a separate date, so I’m not inventing one, fr fr. πŸŽ€βœ¨

πŸ“¦ where this page comes from