ZTRT06(3)
πΈ ZTRT06(3) β the vibe check for triangular condition numbers π
okay so bestie, this is a man page from the LAPACK library, and honestly? it's a whole little icon. it lives at /home/abui...IN/ztrt06.f(3) and it's a Fortran file: /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/LIN/ztrt06.f.
it's a library functions manual entry, and we're gonna get into it. periodt. β¨
β¨ SYNOPSIS β¨
Functions/Subroutines π§
subroutine ZTRT06 (rcond, rcondc, uplo, diag, n, a, lda, rwork, rat)
that's it, that's the function. it's called ZTRT06. iconic name, no notes. π
π Function/Subroutine Documentation π
subroutine ZTRT06 (double precision rcond, double precision rcondc,
character uplo, character diag, integer n, complex*16, dimension( lda, * )
a, integer lda, double precision, dimension( * ) rwork, double
precision rat)
so this is the full signature with all the types spelled out, because Fortran is not subtle and honestly we love that for it. π«Ά
π Purpose
ZTRT06 computes a test ratio comparing RCOND (the reciprocal condition number of a triangular matrix A) and RCONDC, the estimate computed by ZTRCON. Information about the triangular matrix A is used if one estimate is zero and the other is non-zero to decide if underflow in the estimate is justified.
okay so basically: ZTRT06 computes a test ratio that compares RCOND (the reciprocal condition number of a triangular matrix A, computed the direct way) against RCONDC (the estimate that ZTRCON spat out). and when one of them is zero and the other one isn't? it peeks at A itself to figure out whether that underflow is actually justified. detective behavior, lowkey. π΅οΈββοΈ
π Parameters
RCONDβDOUBLE PRECISION. this is the estimate of the reciprocal condition number you get by forming the explicit inverse of matrix A and computingRCOND = 1/( norm(A) * norm(inv(A)) ). doing it the long way, respect. πͺRCONDCβDOUBLE PRECISION. the estimate of the reciprocal condition number computed byZTRCON. that's the other one, the fancy one. β¨UPLOβCHARACTER. tells you whether matrix A is upper or lower triangular:= 'U': upper triangular= 'L': lower triangular
DIAGβCHARACTER. tells you whether A is unit triangular or not:= 'N': non-unit triangular= 'U': unit triangular
NβINTEGER. the order of matrix A. constraint:N >= 0. no negative girlies allowed. π ββοΈAβCOMPLEX*16 array, dimension (LDA,N). the triangular matrix A itself, main character energy:- if
UPLO = 'U', the leading n by n upper triangular part of A contains the upper triangular matrix, and the strictly lower triangular part of A is not referenced. - if
UPLO = 'L', the leading n by n lower triangular part of A contains the lower triangular matrix, and the strictly upper triangular part of A is not referenced. - if
DIAG = 'U', the diagonal elements of A are also not referenced and are assumed to be1.
- if
LDAβINTEGER. the leading dimension of the array A. constraint:LDA >= max(1,N). don't skimp on it. πRWORKβDOUBLE PRECISION array, dimension (N). it's workspace. that's literally all it says, bestie. it's giving "just trust me". πRATβDOUBLE PRECISION. the test ratio, the star of the show:- if both
RCONDandRCONDCare nonzero:RAT = MAX( RCOND, RCONDC )/MIN( RCOND, RCONDC ) - 1. - if
RAT = 0, the two estimates are exactly the same. twin behavior. π―ββοΈ
- if both
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
four whole institutions collaborated on this and honestly? teamwork makes the dream work. π«Ά
Definition at line120of fileztrt06.f.
πΈ Author (the meta one)
Generated automatically by Doxygen for LAPACK from the source code. so yes, a robot wrote this man page and it ate. π€π
and that's the whole thing, bestie β we got every flag, every constraint, every "not referenced", every last decimal. no details left behind. ππ₯
LAPACK β Version 3.12.0 π and the original header/footer lived at /home/abui...IN/ztrt06.f(3), dated by that very version. mwah, bye! πππ¦
π¦ 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