SRC/dla_gbrcond.f(3)

πŸ’… SRC/dla_gbrcond.f(3) πŸ’…

Okay bestie, this is the Library Functions Manual page for SRC/dla_gbrcond.f, and it’s lowkey a whole vibe. Let’s get into it πŸ’–


✨ NAME ✨

SRC/dla_gbrcond.f β€” that’s the name on the page, periodt πŸŽ€


🌸 SYNOPSIS 🌸

πŸŽ€ Functions/Subroutines πŸŽ€

Here’s the function in all its glory:

double precision function dla_gbrcond (trans, n, kl, ku, ab, ldab, afb,
    ldafb, ipiv, cmode, c, info, work, iwork)

One-line vibe check: DLA_GBRCOND estimates the Skeel condition number for a general banded matrix. Slay ✨


πŸ’– Function/Subroutine Documentation πŸ’–

double precision function dla_gbrcond (character trans, integer n, integer
    kl, integer ku, double precision, dimension( ldab, * ) ab, integer ldab,
    double precision, dimension( ldafb, * ) afb, integer ldafb, integer,
    dimension( * ) ipiv, integer cmode, double precision, dimension( * ) c,
    integer info, double precision, dimension( * ) work, integer, dimension(
    * ) iwork)

This one is giving Skeel condition number for a general banded matrix β€” DLA_GBRCOND estimates the Skeel condition number for a general banded matrix. No cap πŸ’…

πŸ¦‹ Purpose πŸ¦‹

DLA_GBRCOND estimates the Skeel condition number of op(A) * op2(C), where op2 is determined by CMODE as follows:

CMODE =  1    op2(C) = C
CMODE =  0    op2(C) = I
CMODE = -1    op2(C) = inv(C)

The Skeel condition number

cond(A) = norminf( |inv(A)||A| )

is computed by computing scaling factors R such that diag(R)*A*op2(C) is row equilibrated and computing the standard infinity-norm condition number. Literally the whole recipe, bestie 🧚


πŸ“ Parameters πŸ“

  • TRANS β€” CHARACTER*1. Specifies the form of the system of equations:
    • = 'N': A * X = B (No transpose)
    • = 'T': A**T * X = B (Transpose)
    • = 'C': A**H * X = B (Conjugate Transpose = Transpose)
  • N β€” INTEGER. The number of linear equations, i.e., the order of the matrix A. N >= 0.
  • KL β€” INTEGER. The number of subdiagonals within the band of A. KL >= 0.
  • KU β€” INTEGER. The number of superdiagonals within the band of A. KU >= 0.
  • AB β€” DOUBLE PRECISION array, dimension (LDAB,N). On entry, the matrix A in band storage, in rows 1 to KL+KU+1. The j-th column of A is stored in the j-th column of the array AB as follows: AB(KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+kl).
  • LDAB β€” INTEGER. The leading dimension of the array AB. LDAB >= KL+KU+1.
  • AFB β€” DOUBLE PRECISION array, dimension (LDAFB,N). Details of the LU factorization of the band matrix A, as computed by DGBTRF. U is stored as an upper triangular band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and the multipliers used during the factorization are stored in rows KL+KU+2 to 2*KL+KU+1.
  • LDAFB β€” INTEGER. The leading dimension of the array AFB. LDAFB >= 2*KL+KU+1.
  • IPIV β€” INTEGER array, dimension (N). The pivot indices from the factorization A = P*L*U as computed by DGBTRF; row i of the matrix was interchanged with row IPIV(i).
  • CMODE β€” INTEGER. Determines op2(C) in the formula op(A) * op2(C) as follows:
    • CMODE = 1 op2(C) = C
    • CMODE = 0 op2(C) = I
    • CMODE = -1 op2(C) = inv(C)
  • C β€” DOUBLE PRECISION array, dimension (N). The vector C in the formula op(A) * op2(C).
  • INFO β€” INTEGER. Exit status: = 0: Successful exit. and i > 0: The ith argument is invalid.
  • WORK β€” DOUBLE PRECISION array, dimension (5*N). Workspace.
  • IWORK β€” INTEGER array, dimension (N). Workspace.

πŸ‘‘ Author πŸ‘‘

The author block is giving:

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

🌈 Definition at line 167 of file dla_gbrcond.f 🌈

Definition at line 167 of file dla_gbrcond.f.


🧚 Author 🧚

Generated automatically by Doxygen for LAPACK from the source code.


Cute sign-off: LAPACK Version 3.12.0, source SRC/dla_gbrcond.f(3) β€” date not listed in the footer, so no invented date, bestie πŸ’–

πŸ“¦ where this page comes from