SRC/ssycon_rook.f(3)

🌸 SRC/ssycon_rook.f(3) β€” from the Library Functions Manual πŸ’…

okay so bestie, welcome to the glow-up of a genuinely iconic LAPACK page πŸŽ€ this is SRC/ssycon_rook.f and she is that girl β€” a Fortran file that estimates condition numbers and does it flawlessly. let's get into it ✨


✨ NAME ✨

SRC/ssycon_rook.f β€” literally the file, that's her name, no notes πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

Functions/Subroutines

  • subroutine ssycon_rook (uplo, n, a, lda, ipiv, anorm, rcond, work, iwork, info) β€” this is the main character right here πŸ‘‘
  • SSYCON_ROOK β€” the label, the name, the brand ✨

πŸ‘‘ Function/Subroutine Documentation πŸ‘‘

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 β€” say it with your chest πŸ’…

🎯 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))). !>

so like. the whole vibe is: you already ran SSYTRF_ROOK, you got your factorization A = U*D*U**T or A = L*D*L**T, and now this routine slides in to give you RCOND β€” the reciprocal of the condition number in the 1-norm 🧚 it estimates norm(inv(A)) and then hits you with RCOND = 1 / (ANORM * norm(inv(A))). math but make it cute πŸ˜­πŸ’œ

🌈 Parameters

  • UPLO β€” is CHARACTER*1. tells us whether the factorization details are chilling as an upper or lower triangular matrix, bestie:
    • = 'U': upper triangular, form is A = U*D*U**T;
    • = 'L': lower triangular, form is A = L*D*L**T.
  • N β€” is INTEGER. the order of the matrix A. N >= 0. periodt ✨
  • A β€” is REAL array, dimension (LDA,N). the block diagonal matrix D plus the multipliers used to obtain the factor U or L, as computed by SSYTRF_ROOK. iconic πŸ”₯
  • LDA β€” is INTEGER. the leading dimension of the array A. LDA >= max(1,N). don't skip this one πŸ™ˆ
  • IPIV β€” is INTEGER array, dimension (N). all the tea about the interchanges and the block structure of D, as determined by SSYTRF_ROOK πŸ“
  • ANORM β€” is REAL. the 1-norm of the original matrix A πŸ’–
  • 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. she's the output, she's the moment ⭐
  • WORK β€” is REAL array, dimension (2*N). workspace, doing her thing πŸ’…
  • IWORK β€” is INTEGER array, dimension (N). more workspace, integer flavored πŸŽ€
  • INFO β€” is INTEGER:
    • = 0: successful exit, we love a win 🌸
    • < 0: if INFO = -i, the i-th argument had an illegal value β€” bestie someone passed a bad argument, call it out πŸ’€

🌟 Author

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

the whole squad showed up 🫢

πŸ’œ 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 !> !>

shoutout to everyone who built her πŸ˜­πŸ’–

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

go look, she's literally right there πŸ‘‘


πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for LAPACK from the source code. the robots did this one πŸ€–βœ¨


and that's the whole page bestie, no cap, every flag and every line accounted for πŸ’… this cutie is from LAPACK, Version 3.12.0 and her file is SRC/ssycon_rook.f(3) β€” go estimate some condition numbers, you're gonna slay πŸ¦‹πŸŒˆπŸ’–

πŸ“¦ where this page comes from