CGBCON(3)
π CGBCON(3) β the whole entire vibe π
okay bestie so this page comes from the LAPACK fam, version 3.12.0, and the actual source file it's describing lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cgbcon.f β yes that's a whole mouthful, no cap. It's a Library Functions Manual page and it's literally all about one little subroutine. Buckle up. π
β¨ NAME β¨
CGBCON β the glow-up star of this whole document, straight out of the file /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cgbcon.f.
π¦ SYNOPSIS π¦
Functions/Subroutines
subroutine CGBCON (norm, n, kl, ku, ab, ldab, ipiv, anorm, rcond, work, rwork, info)β she's the icon, she's the moment, she's the one function this page is about.
πΈ Function/Subroutine Documentation πΈ
subroutine CGBCON (character norm, integer n, integer kl, integer ku,
complex, dimension( ldab, * ) ab, integer ldab, integer, dimension( * )
ipiv, real anorm, real rcond, complex, dimension( * ) work, real,
dimension( * ) rwork, integer info)
Purpose π«
so basically, CGBCON estimates the reciprocal of the condition number of a complex general band matrix A, in either the 1-norm or the infinity-norm, using the LU factorization computed by CGBTRF. like she's doing the condition-number math for you, using work that's already been done. obsessed.
an estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as:
RCOND = 1 / ( norm(A) * norm(inv(A)) ).
that's the whole formula, fr fr. memorize it or don't, but there it is. π§
Parameters π«Ά
NORM
NORM is CHARACTER*1. she specifies whether the 1-norm condition number or the infinity-norm condition number is required:
= '1'or'O': 1-norm;= 'I': Infinity-norm.
N
N is INTEGER. the order of the matrix A. N >= 0. (she cannot be negative, bestie, that's not a vibe.)
KL
KL is INTEGER. the number of subdiagonals within the band of A. KL >= 0.
KU
KU is INTEGER. the number of superdiagonals within the band of A. KU >= 0.
AB
AB is COMPLEX array, dimension (LDAB,N). details of the LU factorization of the band matrix A, as computed by CGBTRF. 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. yes that's the layout. yes it's specific. she said what she said. π
LDAB
LDAB is INTEGER. the leading dimension of the array AB. LDAB >= 2*KL+KU+1. respect the bound or perish.
IPIV
IPIV is INTEGER array, dimension (N). the pivot indices; for 1 <= i <= N, row i of the matrix was interchanged with row IPIV(i).
ANORM
ANORM is REAL.
- if
NORM = '1'or'O', the 1-norm of the original matrixA. - if
NORM = 'I', the infinity-norm of the original matrixA.
RCOND
RCOND is REAL. the reciprocal of the condition number of the matrix A, computed as RCOND = 1/(norm(A) * norm(inv(A))). she's the output of the whole operation, the main character honestly. π
WORK
WORK is COMPLEX array, dimension (2*N).
RWORK
RWORK is REAL array, dimension (N).
INFO
INFO is INTEGER.
= 0: successful exit (slay).< 0: ifINFO = -i, thei-th argument had an illegal value (not slay).
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 145 of file cgbcon.f.
β Author β
Generated automatically by Doxygen for LAPACK from the source code.
okay that's the whole page, bestie β every flag, every bound, every line reference, all of it accounted for. π«‘
and that's a wrap on CGBCON(3) from LAPACK, Version 3.12.0, sourced from /home/abui...RC/cgbcon.f(3) β mwah, go estimate some condition numbers, ily πβ¨
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms