SRC/checon.f(3)
π SRC/checon.f π
okay so bestie, buckle up β this is the manual page for SRC/checon.f, aka the LAPACK girlies' favorite little condition-number estimator π
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine checon (uplo, n, a, lda, ipiv, anorm, rcond, work, info)β CHECON, that's her π
πΈ Function/Subroutine Documentation πΈ
subroutine checon (character uplo, integer n, complex, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, real anorm, real rcond, complex, dimension( * ) work, integer info)
CHECON π«Ά
π¦ Purpose:
!>
!> CHECON estimates the reciprocal of the condition number of a complex
!> Hermitian matrix A using the factorization A = U*D*U**H or
!> A = L*D*L**H computed by CHETRF.
!>
!> An estimate is obtained for norm(inv(A)), and the reciprocal of the
!> condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
!>
So like, real talk: CHECON doesn't reinvent the wheel, she just takes the factorization CHETRF already gave you and asks "okay but HOW well-conditioned is this matrix, on a scale of slay to yikes" β¨ An estimate of norm(inv(A)) gets computed, and then the reciprocal condition number falls out as RCOND = 1 / (ANORM * norm(inv(A))). Math ate, no cap π
π Parameters π
UPLO
!> UPLO is CHARACTER*1
!> Specifies whether the details of the factorization are stored
!> as an upper or lower triangular matrix.
!> = 'U': Upper triangular, form is A = U*D*U**H;
!> = 'L': Lower triangular, form is A = L*D*L**H.
!>
UPLO is a CHARACTER*1 and she's basically the vibe check for where your factorization lives: pass 'U' for upper triangular, where the form is A = U*D*U**H, or 'L' for lower triangular, where it's A = L*D*L**H. Pick your lane, bestie π
N
!> N is INTEGER
!> The order of the matrix A. N >= 0.
!>
N is an INTEGER β the order of the matrix A, and she's gotta satisfy N >= 0. Periodt. π
A
!> A is COMPLEX array, dimension (LDA,N)
!> The block diagonal matrix D and the multipliers used to
!> obtain the factor U or L as computed by CHETRF.
!>
A is a COMPLEX array, dimension (LDA,N), and it's carrying the block diagonal matrix D plus all the multipliers used to get the factor U or L, exactly as computed by CHETRF. She's basically the receipts from CHETRF, okay? π§Ύπ
LDA
!> LDA is INTEGER
!> The leading dimension of the array A. LDA >= max(1,N).
!>
LDA is an INTEGER, the leading dimension of the array A, and the rule is LDA >= max(1,N). Don't play with her π
IPIV
!> IPIV is INTEGER array, dimension (N)
!> Details of the interchanges and the block structure of D
!> as determined by CHETRF.
!>
IPIV is an INTEGER array, dimension (N), holding the details of the interchanges and the block structure of D, as determined by CHETRF. Lowkey the lore of your pivots π
ANORM
!> ANORM is REAL
!> The 1-norm of the original matrix A.
!>
ANORM is REAL β the 1-norm of the original matrix A, capital-A original, before all the factorizing chaos β¨
RCOND
!> RCOND is REAL
!> The reciprocal of the condition number of the matrix A,
!> computed as RCOND = 1/(ANORM * AINVNM), where AINVNM is an
!> estimate of the 1-norm of inv(A) computed in this routine.
!>
RCOND is REAL and she's the moment π β the reciprocal of the condition number of the matrix A, computed as RCOND = 1/(ANORM * AINVNM), where AINVNM is an estimate of the 1-norm of inv(A) computed right here in this routine. she works hard, give her credit π
WORK
!> WORK is COMPLEX array, dimension (2*N)
!>
WORK is a COMPLEX array, dimension (2*N). That's it, that's the whole description β she's just here to do the work π«‘
INFO
!> INFO is INTEGER
!> = 0: successful exit
!> < 0: if INFO = -i, the i-th argument had an illegal value
!>
INFO is an INTEGER and the tea is:
= 0: successful exit, we love a happy ending π< 0: ifINFO = -i, the i-th argument had an illegal value π (check your args before you come for her)
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 123 of file checon.f. π
π Author π
Generated automatically by Doxygen for LAPACK from the source code. (machine-generated but still iconic π§)
aaaand that's the page bestie!! this whole vibe was brought to you by LAPACK, Version 3.12.0, dated SRC/checon.f(3) β mwah, go estimate some condition numbers responsibly π πβ¨
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms