SRC/zla_gbrcond_c.f(3)

🌸 NAME 🌸

okay so this page is SRC/zla_gbrcond_c.f(3) from the Library Functions Manual, and the main-character function here is SRC/zla_gbrcond_c.f, aka the home of zla_gbrcond_c πŸ’…βœ¨

✨ SYNOPSIS ✨

Functions/Subroutines

       double precision function zla_gbrcond_c (trans, n, kl, ku, ab, ldab,
           afb, ldafb, ipiv, c, capply, info, work, rwork)
           ZLA_GBRCOND_C computes the infinity norm condition number of
           op(A)*inv(diag(c)) for general banded matrices.

This is the function and its one-liner glow-up: ZLA_GBRCOND_C computes the infinity norm condition number of op(A)*inv(diag(c)) for general banded matrices. 🫢

🧚 Function/Subroutine Documentation 🧚

       double precision function zla_gbrcond_c (character trans, integer n, integer
           kl, integer ku, complex*16, dimension( ldab, * ) ab, integer ldab,
           complex*16, dimension( ldafb, * ) afb, integer ldafb, integer,
           dimension( * ) ipiv, double precision, dimension( * ) c, logical capply,
           integer info, complex*16, dimension( * ) work, double precision,
           dimension( * ) rwork)

ZLA_GBRCOND_C computes the infinity norm condition number of op(A)*inv(diag(c)) for general banded matrices. No cap, that's the whole assignment. πŸ’–

🎯 Purpose

This function computes the infinity norm condition number of op(A) * inv(diag(C)) where C is a DOUBLE PRECISION vector. It's literally the condition-number math, bestie β€” and yes, C is a DOUBLE PRECISION vector. That detail matters πŸ’…

πŸŽ€ Parameters

TRANS

TRANS is CHARACTER*1 and it 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

N is INTEGER. It's the number of linear equations, i.e., the order of the matrix A. N >= 0.

KL

KL is INTEGER. It's the number of subdiagonals within the band of A. KL >= 0.

KU

KU is INTEGER. It's the number of superdiagonals within the band of A. KU >= 0.

AB

AB is COMPLEX*16 array, dimension (LDAB,N). On entry, it holds 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 like this:

AB(KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+kl)

LDAB

LDAB is INTEGER. It's the leading dimension of the array AB. LDAB >= KL+KU+1.

AFB

AFB is COMPLEX*16 array, dimension (LDAFB,N). It holds details of the LU factorization of the band matrix A, as computed by ZGBTRF. 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

LDAFB is INTEGER. It's the leading dimension of the array AFB. LDAFB >= 2*KL+KU+1.

IPIV

IPIV is INTEGER array, dimension (N). These are the pivot indices from the factorization A = P*L*U as computed by ZGBTRF; row i of the matrix was interchanged with row IPIV(i).

C

C is DOUBLE PRECISION array, dimension (N). It's the vector C in the formula op(A) * inv(diag(C)).

CAPPLY

CAPPLY is LOGICAL. If .TRUE. then access the vector C in the formula above.

INFO

INFO is INTEGER.

  • = 0: Successful exit.
  • i > 0: The ith argument is invalid.

WORK

WORK is COMPLEX*16 array, dimension (2*N). Workspace.

RWORK

RWORK is DOUBLE PRECISION array, dimension (N). Workspace.

πŸ‘‘ Author

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

πŸ“ Definition at line 159 of file zla_gbrcond_c.f.

🫢 Author 🫢

Generated automatically by Doxygen for LAPACK from the source code. (Yes bestie, the robots did the paperwork πŸ€–βœ¨)


okay that's the whole vibe check β€” footer energy is LAPACK, Version 3.12.0, SRC/zla_gbrcond_c.f(3), and there's no date printed on the footer. mwah πŸ’‹πŸŒΈ

πŸ“¦ where this page comes from