pbequ(3)

๐Ÿ’… pbequ(3) โ€” Library Functions Manual ๐Ÿ’…

Okay bestie, welcome to pbequ, the library function page that is literally all about equilibration. Itโ€™s giving โ€œmake your band matrix less unhingedโ€ energy, and weโ€™re gonna keep every single detail intact. ๐Ÿฆ‹โœจ


๐ŸŒธ NAME ๐ŸŒธ

pbequ โ€” pbequ: equilibration


โœจ SYNOPSIS โœจ

๐Ÿซถ Functions ๐Ÿซถ

  • cpbequ โ€”
subroutine cpbequ (uplo, n, kd, ab, ldab, s, scond, amax, info)

CPBEQU

  • dpbequ โ€”
subroutine dpbequ (uplo, n, kd, ab, ldab, s, scond, amax, info)

DPBEQU

  • spbequ โ€”
subroutine spbequ (uplo, n, kd, ab, ldab, s, scond, amax, info)

SPBEQU

  • zpbequ โ€”
subroutine zpbequ (uplo, n, kd, ab, ldab, s, scond, amax, info)

ZPBEQU


๐ŸŒˆ Detailed Description ๐ŸŒˆ

(The original page doesnโ€™t add extra prose here โ€” it rolls straight into the function docs, bestie. Periodt.) ๐Ÿ’–


๐Ÿ‘‘ Function Documentation ๐Ÿ‘‘

๐Ÿ’– subroutine cpbequ โ€” CPBEQU ๐Ÿ’–

   subroutine cpbequ (character uplo, integer n, integer kd, complex,
       dimension( ldab, * ) ab, integer ldab, real, dimension( * ) s, real
       scond, real amax, integer info)

CPBEQU

๐ŸŽฏ Purpose ๐ŸŽฏ

CPBEQU computes row and column scalings intended to equilibrate a Hermitian 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. Slay. โœจ

๐Ÿงฎ Parameters ๐Ÿงฎ

  • UPLO โ€” UPLO is CHARACTER*1
    • = 'U': Upper triangular of A is stored;
    • = 'L': Lower triangular of A is stored.
  • N โ€” N is INTEGER
    • The order of the matrix A. N >= 0.
  • KD โ€” KD is INTEGER
    • The number of superdiagonals of the matrix A if UPLO = 'U', or the number of subdiagonals if UPLO = 'L'. KD >= 0.
  • AB โ€” AB is COMPLEX array, dimension (LDAB,N)
    • The upper or lower triangle of the Hermitian band matrix A, stored in the first KD+1 rows of the array. The j-th column of A is stored in the j-th column of the array AB as 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).
  • LDAB โ€” LDAB is INTEGER
    • The leading dimension of the array A. LDAB >= KD+1.
  • S โ€” S is REAL array, dimension (N)
    • If INFO = 0, S contains the scale factors for A.
  • SCOND โ€” SCOND is REAL
    • The pageโ€™s wording: 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.
  • AMAX โ€” AMAX is REAL
    • Absolute value of largest matrix element. If AMAX is very close to overflow or very close to underflow, the matrix should be scaled.
  • INFO โ€” INFO is INTEGER
    • = 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.

Definition at line 129 of file cpbequ.f.


๐Ÿฆ‹ subroutine dpbequ โ€” DPBEQU ๐Ÿฆ‹

   subroutine dpbequ (character uplo, integer n, integer kd, double precision,
       dimension( ldab, * ) ab, integer ldab, double precision, dimension( * )
       s, double precision scond, double precision amax, integer info)

DPBEQU

๐ŸŽฏ Purpose ๐ŸŽฏ

DPBEQU 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 ๐Ÿงฎ

  • UPLO โ€” UPLO is CHARACTER*1
    • = 'U': Upper triangular of A is stored;
    • = 'L': Lower triangular of A is stored.
  • N โ€” N is INTEGER
    • The order of the matrix A. N >= 0.
  • KD โ€” KD is INTEGER
    • The number of superdiagonals of the matrix A if UPLO = 'U', or the number of subdiagonals if UPLO = 'L'. KD >= 0.
  • AB โ€” AB is DOUBLE PRECISION array, dimension (LDAB,N)
    • The upper or lower triangle of the symmetric band matrix A, stored in the first KD+1 rows of the array. The j-th column of A is stored in the j-th column of the array AB as 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).
  • LDAB โ€” LDAB is INTEGER
    • The leading dimension of the array A. LDAB >= KD+1.
  • S โ€” S is DOUBLE PRECISION array, dimension (N)
    • If INFO = 0, S contains the scale factors for A.
  • SCOND โ€” SCOND is DOUBLE PRECISION
    • The pageโ€™s wording: 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.
  • AMAX โ€” AMAX is DOUBLE PRECISION
    • Absolute value of largest matrix element. If AMAX is very close to overflow or very close to underflow, the matrix should be scaled.
  • INFO โ€” INFO is INTEGER
    • = 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.

Definition at line 128 of file dpbequ.f.


๐ŸŒธ subroutine spbequ โ€” SPBEQU ๐ŸŒธ

   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 ๐ŸŽฏ

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. No cap, this is the whole vibe. ๐Ÿซถ

๐Ÿงฎ Parameters ๐Ÿงฎ

  • UPLO โ€” UPLO is CHARACTER*1
    • = 'U': Upper triangular of A is stored;
    • = 'L': Lower triangular of A is stored.
  • N โ€” N is INTEGER
    • The order of the matrix A. N >= 0.
  • KD โ€” KD is INTEGER
    • The number of superdiagonals of the matrix A if UPLO = 'U', or the number of subdiagonals if UPLO = 'L'. KD >= 0.
  • AB โ€” AB is REAL array, dimension (LDAB,N)
    • The upper or lower triangle of the symmetric band matrix A, stored in the first KD+1 rows of the array. The j-th column of A is stored in the j-th column of the array AB as 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).
  • LDAB โ€” LDAB is INTEGER
    • The leading dimension of the array A. LDAB >= KD+1.
  • S โ€” S is REAL array, dimension (N)
    • If INFO = 0, S contains the scale factors for A.
  • SCOND โ€” SCOND is REAL
    • The pageโ€™s wording: 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.
  • AMAX โ€” AMAX is REAL
    • Absolute value of largest matrix element. If AMAX is very close to overflow or very close to underflow, the matrix should be scaled.
  • INFO โ€” INFO is INTEGER
    • = 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.

Definition at line 128 of file spbequ.f.


๐Ÿงš subroutine zpbequ โ€” ZPBEQU ๐Ÿงš

   subroutine zpbequ (character uplo, integer n, integer kd, complex*16,
       dimension( ldab, * ) ab, integer ldab, double precision, dimension( * )
       s, double precision scond, double precision amax, integer info)

ZPBEQU

๐ŸŽฏ Purpose ๐ŸŽฏ

ZPBEQU computes row and column scalings intended to equilibrate a Hermitian 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. Main character energy fr fr. ๐Ÿ”ฅ

๐Ÿงฎ Parameters ๐Ÿงฎ

  • UPLO โ€” UPLO is CHARACTER*1
    • = 'U': Upper triangular of A is stored;
    • = 'L': Lower triangular of A is stored.
  • N โ€” N is INTEGER
    • The order of the matrix A. N >= 0.
  • KD โ€” KD is INTEGER
    • The number of superdiagonals of the matrix A if UPLO = 'U', or the number of subdiagonals if UPLO = 'L'. KD >= 0.
  • AB โ€” (the rest of this parameterโ€™s details continue in part 2, bestie) ๐Ÿ’œ

โ€ฆokay so picking up right where we left off, bestie, here come the arrays and the outputs ๐Ÿ‘‘

  • AB โ€” a COMPLEX*16 array, dimension (LDAB,N). It's holding the upper or lower triangle of the Hermitian band matrix A, and it lives in the first KD+1 rows of the array. The j-th column of A sits in the j-th column of AB like this: if UPLO = 'U', then AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j; if UPLO = 'L', then AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).
  • LDAB โ€” an INTEGER. It's the leading dimension of the array A, and the vibe check is LDAB >= KD+1. No exceptions, periodt.
  • S โ€” a DOUBLE PRECISION array, dimension (N). If INFO = 0, S contains the scale factors for A. That's it, that's the whole job โœจ
  • SCOND โ€” a DOUBLE PRECISION. If INFO = 0, S contains the ratio of the smallest S(i) to the largest S(i). And the practical tea: if SCOND >= 0.1 and AMAX is neither too large nor too small, it is not worth scaling by S. So likeโ€ฆ don't bother, bestie ๐Ÿ’…
  • AMAX โ€” a DOUBLE PRECISION. Absolute value of the largest matrix element. If AMAX is very close to overflow or very close to underflow, the matrix should be scaled. That's your red flag moment ๐Ÿšจ
  • INFO โ€” an INTEGER, and it's the one telling you how it all went:
    • = 0: successful exit, slay ๐ŸŽ‰
    • < 0: if INFO = -i, the i-th argument had an illegal value. Not iconic, ngl ๐Ÿ˜ญ
    • > 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.

Definition at line 129 of file zpbequ.f.

๐Ÿงš Author (the meta one)

Generated automatically by Doxygen for LAPACK from the source code. Yes, the docs generated their own author section โ€” main character energy, honestly ๐Ÿซถ


Okay so that's the whole page, bestie! This absolute icon is from LAPACK, Version 3.12.0, and the footer tags it as pbequ(3) โ€” no date line in sight on this one, just the version and the page name doing their little bows. Go forth and equilibrate responsibly ๐ŸŒˆ๐Ÿ’–

๐Ÿ“ฆ where this page comes from