CPOCON(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸ’… CPOCON πŸ’…

ok so this is a page from the Library Functions Manual, and honestly? it's giving math-girlie excellence. we're looking at cpocon.f(3) β€” yes, that whole path is literally the name, don't come for me:

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cpocon.f

bestie, it's a LAPACK routine and it's lowkey iconic. let's get into it 🫢


✨ NAME ✨

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cpocon.f β€” that's the file, that's the whole name, that's the vibe. periodt.


🌸 SYNOPSIS 🌸

Functions/Subroutines

  • subroutine CPOCON (uplo, n, a, lda, anorm, rcond, work, rwork, info) β€” CPOCON. that's it, that's the function. she's here, she's ready πŸ’…

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine CPOCON (character uplo, integer n, complex, dimension( lda, * ) a, integer lda, real anorm, real rcond, complex, dimension( * ) work, real, dimension( * ) rwork, integer info)

CPOCON


πŸŽ€ Purpose πŸŽ€

!> !> CPOCON estimates the reciprocal of the condition number (in the !> 1-norm) of a complex Hermitian positive definite matrix using the !> Cholesky factorization A = U**H*U or A = L*L**H computed by CPOTRF. !> !> An estimate is obtained for norm(inv(A)), and the reciprocal of the !> condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))). !>

ok so real talk: she takes your Cholesky factorization (the A = U**H*U or A = L*L**H situation that CPOTRF already did for you) and she's like "how sketchy is this matrix, actually?" she estimates norm(inv(A)), then flips it into RCOND = 1 / (ANORM * norm(inv(A))). math girlie behavior, no cap πŸ”₯


πŸ’– Parameters πŸ’–

  • UPLO
!> UPLO is CHARACTER*1 !> = 'U': Upper triangle of A is stored; !> = 'L': Lower triangle of A is stored.

which triangle of A we're keeping. 'U' = upper, 'L' = lower. pick your fighter πŸŽ€

  • N
!> N is INTEGER !> The order of the matrix A. N >= 0.

the order of the matrix A, and she's gotta be N >= 0. negative? absolutely not, blocked πŸ™ˆ

  • A
!> A is COMPLEX array, dimension (LDA,N) !> The triangular factor U or L from the Cholesky factorization !> A = U**H*U or A = L*L**H, as computed by CPOTRF.

the triangular factor U or L from that Cholesky factorization (A = U**H*U or A = L*L**H), straight outta CPOTRF. she's the main character, dimension (LDA,N) πŸ’…

  • LDA
!> LDA is INTEGER !> The leading dimension of the array A. LDA >= max(1,N).

leading dimension of A. rule is LDA >= max(1,N). don't test her ⭐

  • ANORM
!> ANORM is REAL !> The 1-norm (or infinity-norm) of the Hermitian matrix A.

the 1-norm (or infinity-norm, either one bestie) of the Hermitian matrix A. literally the size of the problem πŸ¦‹

  • 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.

the output glow-up ✨ it's the reciprocal of A's condition number, computed as RCOND = 1/(ANORM * AINVNM), where AINVNM is the estimate of the 1-norm of inv(A) that she cooks up in this very routine. iykyk πŸ’œ

  • WORK
!> WORK is COMPLEX array, dimension (2*N)

scratch space, complex, dimension (2*N). she works hard so you don't have to πŸ’€

  • RWORK
!> RWORK is REAL array, dimension (N)

more scratch space, but real this time, dimension (N). equal opportunity workspace 🌈

  • INFO
!> INFO is INTEGER !> = 0: successful exit !> < 0: if INFO = -i, the i-th argument had an illegal value

the vibe check at the end 😭 = 0 means successful exit, slay. < 0 means INFO = -i and the i-th argument had an illegal value β€” somebody did NOT read the parameter list, and it shows.


πŸ‘‘ Author πŸ‘‘

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

the whole squad came together for this one, we love a collab πŸ«ΆπŸ’–

Definition at line 119 of file cpocon.f.


🌟 Author 🌟

Generated automatically by Doxygen for LAPACK from the source code. (yes, the robots did the paperwork, we're just here for the vibes 🧚)


and that's the whole page, bestie! this doc came to you courtesy of LAPACK, Version 3.12.0, straight from /home/abui...RC/cpocon.f(3) β€” stay conditioned, stay positive definite, and remember: RCOND is just a girl estimating reciprocals πŸ’…πŸ’–βœ¨

πŸ“¦ where this page comes from