hecon_rook(3)

πŸ’– hecon_rook(3) πŸ’–

okay so bestie, you found a Library Functions Manual page, and it's a long one β€” this is hecon_rook, and it's basically the condition-number-estimate queen of the LAPACK rook family πŸ‘‘. She comes in two parts and we're on part one, so buckle up πŸŽ€


✨ NAME ✨

hecon_rook β€” {he,sy}con_rook: condition number estimate

🌸 SYNOPSIS 🌸

πŸ¦‹ Functions πŸ¦‹

  • subroutine checon_rook (uplo, n, a, lda, ipiv, anorm, rcond, work, info) β€” CHECON_ROOK estimates the reciprocal of the condition number for HE matrices using factorization obtained with one of the bounded diagonal pivoting methods (max 2 interchanges)
  • subroutine csycon_rook (uplo, n, a, lda, ipiv, anorm, rcond, work, info) β€” CSYCON_ROOK
  • subroutine dsycon_rook (uplo, n, a, lda, ipiv, anorm, rcond, work, iwork, info) β€” DSYCON_ROOK
  • subroutine ssycon_rook (uplo, n, a, lda, ipiv, anorm, rcond, work, iwork, info) β€” SSYCON_ROOK
  • subroutine zhecon_rook (uplo, n, a, lda, ipiv, anorm, rcond, work, info) β€” ZHECON_ROOK estimates the reciprocal of the condition number for HE matrices using factorization obtained with one of the bounded diagonal pivoting methods (max 2 interchanges)
  • subroutine zsycon_rook (uplo, n, a, lda, ipiv, anorm, rcond, work, info) β€” ZSYCON_ROOK

🫢 Detailed Description 🫢

so the original page has this heading and then just… nothing under it. truly gave us nothing and left πŸ’€. iconic minimalism honestly. moving on!

⭐ Function Documentation ⭐


πŸ’… subroutine checon_rook πŸ’…

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

CHECON_ROOK estimates the reciprocal of the condition number for HE matrices using factorization obtained with one of the bounded diagonal pivoting methods (max 2 interchanges)

🌈 Purpose 🌈

okay so here's the vibe: CHECON_ROOK 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_ROOK.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).

like… she's out here approximating the inverse's norm so you don't have to, and that's on periodt πŸ’…

πŸŽ€ Parameters πŸŽ€

  • UPLO

UPLO is CHARACTER*1 β€” it 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.
  • N

N is INTEGER β€” the order of the matrix A. N >= 0.

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

  • LDA

LDA is INTEGER β€” the leading dimension of the array A. LDA >= max(1,N).

  • IPIV

IPIV is INTEGER array, dimension (N) β€” details of the interchanges and the block structure of D as determined by CHETRF_ROOK.

  • ANORM

ANORM is REAL β€” the 1-norm of the original matrix A.

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

  • WORK

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

  • INFO

INFO is INTEGER

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

πŸ‘‘ Author πŸ‘‘

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

🧚 Contributors 🧚

  • December 2016, Igor Kozachenko, Computer Science Division, University of California, Berkeley
  • September 2007, Sven Hammarling, Nicholas J. Higham, Craig Lucas, School of Mathematics, University of Manchester

Definition at line 137 of file checon_rook.f.


πŸ“ subroutine csycon_rook πŸ“

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

CSYCON_ROOK

🌈 Purpose 🌈

CSYCON_ROOK estimates the reciprocal of the condition number (in the 1-norm) of a complex symmetric matrix A using the factorization A = U*D*U**T or A = L*D*L**T computed by CSYTRF_ROOK.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).

note the **T bestie β€” this one's symmetric, not Hermitian, so it's transpose and not conjugate-transpose. the way that little H vs T changes everything 😭

πŸŽ€ Parameters πŸŽ€

  • UPLO

UPLO is CHARACTER*1 β€” it 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**T;
  • = 'L': Lower triangular, form is A = L*D*L**T.
  • N

N is INTEGER β€” the order of the matrix A. N >= 0.

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

  • LDA

LDA is INTEGER β€” the leading dimension of the array A. LDA >= max(1,N).

  • IPIV

IPIV is INTEGER array, dimension (N) β€” details of the interchanges and the block structure of D as determined by CSYTRF_ROOK.

  • ANORM

ANORM is REAL β€” the 1-norm of the original matrix A.

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

  • WORK

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

  • INFO

INFO is INTEGER

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

πŸ‘‘ Author πŸ‘‘

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

🧚 Contributors 🧚

  • April 2012, Igor Kozachenko, Computer Science Division, University of California, Berkeley
  • September 2007, Sven Hammarling, Nicholas J. Higham, Craig Lucas, School of Mathematics, University of Manchester

Definition at line 137 of file csycon_rook.f.


πŸ¦‹ subroutine dsycon_rook πŸ¦‹

subroutine dsycon_rook (character uplo, integer n, double precision,
dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, double
precision anorm, double precision rcond, double precision, dimension( *
) work, integer, dimension( * ) iwork, integer info)

DSYCON_ROOK

🌈 Purpose 🌈

DSYCON_ROOK estimates the reciprocal of the condition number (in the 1-norm) of a real symmetric matrix A using the factorization A = U*D*U**T or A = L*D*L**T computed by DSYTRF_ROOK.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).

double precision version, and yes she brought her own IWORK along for the ride β€” extra baggage but make it useful πŸŽ€

πŸŽ€ Parameters πŸŽ€

  • UPLO

UPLO is CHARACTER*1 β€” it 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**T;
  • = 'L': Lower triangular, form is A = L*D*L**T.
  • N

N is INTEGER β€” the order of the matrix A. N >= 0.

  • A

A is DOUBLE PRECISION array, dimension (LDA,N) β€” the block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by DSYTRF_ROOK.

  • LDA

LDA is INTEGER β€” the leading dimension of the array A. LDA >= max(1,N).

  • IPIV

IPIV is INTEGER array, dimension (N) β€” details of the interchanges and the block structure of D as determined by DSYTRF_ROOK.

  • ANORM

ANORM is DOUBLE PRECISION β€” the 1-norm of the original matrix A.

  • RCOND

RCOND is DOUBLE PRECISION β€” 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.

  • WORK

WORK is DOUBLE PRECISION array, dimension (2*N).

  • IWORK

IWORK is INTEGER array, dimension (N).

  • INFO

INFO is INTEGER

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

πŸ‘‘ Author πŸ‘‘

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

🧚 Contributors 🧚

  • April 2012, Igor Kozachenko, Computer Science Division, University of California, Berkeley
  • September 2007, Sven Hammarling, Nicholas J. Higham, Craig Lucas, School of Mathematics, University of Manchester

Definition at line 142 of file dsycon_rook.f.


πŸ’œ subroutine ssycon_rook πŸ’œ

subroutine ssycon_rook (character uplo, integer n, real, dimension( lda, * )
a, integer lda, integer, dimension( * ) ipiv, real anorm, real rcond,
real, dimension( * ) work, integer, dimension( * ) iwork, integer info)

SSYCON_ROOK

🌈 Purpose 🌈

SSYCON_ROOK estimates the reciprocal of the condition number (in the 1-norm) of a real symmetric matrix A using the factorization A = U*D*U**T or A = L*D*L**T computed by SSYTRF_ROOK.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).

πŸŽ€ Parameters πŸŽ€

  • UPLO β€”
  • UPLO β€” 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**T; = 'L': lower triangular, form is A = L*D*L**T. πŸ’…
  • N β€” INTEGER. The order of matrix A. N >= 0. ✨
  • A β€” REAL array, dimension (LDA,N). Holds the block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by SSYTRF_ROOK. 🫢
  • LDA β€” INTEGER. The leading dimension of array A. LDA >= max(1,N). 🌸
  • IPIV β€” INTEGER array, dimension (N). Details of the interchanges and the block structure of D as determined by SSYTRF_ROOK. πŸŽ€
  • ANORM β€” REAL. The 1-norm of the original matrix A. ⭐
  • RCOND β€” REAL. The reciprocal of the condition number of matrix A, computed as RCOND = 1/(ANORM * AINVNM), where AINVNM is an estimate of the 1-norm of inv(A) computed in this routine. πŸ”₯
  • WORK β€” REAL array, dimension (2*N). πŸ’–
  • IWORK β€” INTEGER array, dimension (N). πŸ¦‹
  • INFO β€” INTEGER. = 0: successful exit; < 0: if INFO = -i, the i-th argument had an illegal value. πŸ’€

πŸ‘‘ Author

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

🫢 Contributors

  • December 2016, Igor Kozachenko, Computer Science Division, University of California, Berkeley
  • September 2007, Sven Hammarling, Nicholas J. Higham, Craig Lucas, School of Mathematics, University of Manchester

πŸ“ Definition at line 142 of file ssycon_rook.f.


πŸ¦‹ subroutine zhecon_rook

   subroutine zhecon_rook (character uplo, integer n, complex*16, dimension(
       lda, * ) a, integer lda, integer, dimension( * ) ipiv, double precision
       anorm, double precision rcond, complex*16, dimension( * ) work, integer
       info)

ZHECON_ROOK estimates the reciprocal of the condition number for THE matrices using a factorization obtained with one of the bounded diagonal pivoting methods (max 2 interchanges). 😭✨

✨ Purpose

ZHECON_ROOK 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_ROOK. 🧚

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))). πŸ’œ

πŸ’… Parameters

  • UPLO β€” 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. 🌈
  • N β€” INTEGER. The order of matrix A. N >= 0. ⭐
  • A β€” COMPLEX*16 array, dimension (LDA,N). The block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by CHETRF_ROOK. πŸ’–
  • LDA β€” INTEGER. The leading dimension of array A. LDA >= max(1,N). 🌸
  • IPIV β€” INTEGER array, dimension (N). Details of the interchanges and the block structure of D as determined by CHETRF_ROOK. πŸŽ€
  • ANORM β€” DOUBLE PRECISION. The 1-norm of the original matrix A. πŸ”₯
  • RCOND β€” DOUBLE PRECISION. The reciprocal of the condition number of matrix A, computed as RCOND = 1/(ANORM * AINVNM), where AINVNM is an estimate of the 1-norm of inv(A) computed in this routine. πŸ‘‘
  • WORK β€” COMPLEX*16 array, dimension (2*N). πŸ¦‹
  • INFO β€” INTEGER. = 0: successful exit; < 0: if INFO = -i, the i-th argument had an illegal value. πŸ’€

πŸ‘‘ Author

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

🫢 Contributors

  • June 2017, Igor Kozachenko, Computer Science Division, University of California, Berkeley
  • September 2007, Sven Hammarling, Nicholas J. Higham, Craig Lucas, School of Mathematics, University of Manchester

πŸ“ Definition at line 137 of file zhecon_rook.f.


πŸ¦‹ subroutine zsycon_rook

   subroutine zsycon_rook (character uplo, integer n, complex*16, dimension(
       lda, * ) a, integer lda, integer, dimension( * ) ipiv, double precision
       anorm, double precision rcond, complex*16, dimension( * ) work, integer
       info)

ZSYCON_ROOK 🫢

✨ Purpose

ZSYCON_ROOK estimates the reciprocal of the condition number (in the 1-norm) of a complex symmetric matrix A using the factorization A = U*D*U**T or A = L*D*L**T computed by ZSYTRF_ROOK. 🌟

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))). πŸ’œ

πŸ’… Parameters

  • UPLO β€” 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**T; = 'L': Lower triangular, form is A = L*D*L**T. 🌈
  • N β€” INTEGER. The order of matrix A. N >= 0. ⭐
  • A β€” COMPLEX*16 array, dimension (LDA,N). The block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by ZSYTRF_ROOK. πŸ’–
  • LDA β€” INTEGER. The leading dimension of array A. LDA >= max(1,N). 🌸
  • IPIV β€” INTEGER array, dimension (N). Details of the interchanges and the block structure of D as determined by ZSYTRF_ROOK. πŸŽ€
  • ANORM β€” DOUBLE PRECISION. The 1-norm of the original matrix A. πŸ”₯
  • RCOND β€” DOUBLE PRECISION. The reciprocal of the condition number of matrix A, computed as RCOND = 1/(ANORM * AINVNM), where AINVNM is an estimate of the 1-norm of inv(A) computed in this routine. πŸ‘‘
  • WORK β€” COMPLEX*16 array, dimension (2*N). πŸ¦‹
  • INFO β€” INTEGER. = 0: successful exit; < 0: if INFO = -i, the i-th argument had an illegal value. πŸ’€

πŸ‘‘ Author

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

🫢 Contributors

  • December 2016, Igor Kozachenko, Computer Science Division, University of California, Berkeley
  • September 2007, Sven Hammarling, Nicholas J. Higham, Craig Lucas, School of Mathematics, University of Manchester

πŸ“ Definition at line 137 of file zsycon_rook.f.


πŸ‘‘ Author

Generated automatically by Doxygen for LAPACK from the source code.

Signing off from LAPACK Version 3.12.0, page hecon_rook(3) β€” the footer didn’t give us a date, so no date tea today, just source-code sparkle πŸ§šβœ¨πŸ’–

πŸ“¦ where this page comes from