/home/abui...trs_rook.f(3)

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

πŸ’… NAME πŸ’…

ok so bestie, this whole page is literally about one file path and one iconic little subroutine, and the file is:

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

that's it, that's the name section, it's giving "my whole identity is a path" energy but we respect it 🫢


✨ SYNOPSIS ✨

Functions/Subroutines

  • subroutine DSYTRS_ROOK (uplo, n, nrhs, a, lda, ipiv, b, ldb, info) β€” the one and only, the main character, DSYTRS_ROOK πŸ’…

πŸŽ€ Function/Subroutine Documentation πŸŽ€

subroutine DSYTRS_ROOK (character uplo, integer n, integer nrhs, double
    precision, dimension( lda, * ) a, integer lda, integer, dimension( * )
    ipiv, double precision, dimension( ldb, * ) b, integer ldb, integer
    info)

DSYTRS_ROOK β€” say it with me, DSYTRS_ROOK ✨

🌸 Purpose 🌸

okok so here's the vibe, straight from the source:

!>
!> DSYTRS_ROOK solves a system of linear equations A*X = B with
!> a real symmetric matrix A using the factorization A = U*D*U**T or
!> A = L*D*L**T computed by DSYTRF_ROOK.
!>

so like, it solves stuff. A*X = B, real symmetric A, using the factorization that DSYTRF_ROOK already did for you. no cap, it's a solver. it does not do the factorizing, that's somebody else's job, it just uses what's already there πŸ”₯


πŸ’œ Parameters πŸ’œ

  • UPLO β€” UPLO is CHARACTER*1. it tells everyone whether the factorization details are chillin' as an upper or lower triangular matrix:
!>          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**T;
!>          = 'L':  Lower triangular, form is A = L*D*L**T.
!>
  • N β€” N is INTEGER. the order of the matrix A. constraint era: N >= 0.
!>          N is INTEGER
!>          The order of the matrix A.  N >= 0.
!>
  • NRHS β€” NRHS is INTEGER. the number of right hand sides, aka literally the number of columns of the matrix B. also NRHS >= 0. bestie we love a non-negative 🫢
!>          NRHS is INTEGER
!>          The number of right hand sides, i.e., the number of columns
!>          of the matrix B.  NRHS >= 0.
!>
  • A β€” A is a DOUBLE PRECISION array, dimension (LDA,N). it's holding the block diagonal matrix D plus all the multipliers used to obtain the factor U or L, exactly as computed by DSYTRF_ROOK. like it literally picked up the tab from DSYTRF_ROOK and carried it in πŸ’€
!>          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. rule: LDA >= max(1,N).
!>          LDA is INTEGER
!>          The leading dimension of the array A.  LDA >= max(1,N).
!>
  • IPIV β€” IPIV is an INTEGER array, dimension (N). it's the receipts: details of the interchanges and the block structure of D, as determined by DSYTRF_ROOK. iykyk πŸ”
!>          IPIV is INTEGER array, dimension (N)
!>          Details of the interchanges and the block structure of D
!>          as determined by DSYTRF_ROOK.
!>
  • B β€” B is a DOUBLE PRECISION array, dimension (LDB,NRHS). on entry it's the right hand side matrix B; on exit it's the solution matrix X. glow-up arc, honestly πŸ‘‘
!>          B is DOUBLE PRECISION array, dimension (LDB,NRHS)
!>          On entry, the right hand side matrix B.
!>          On exit, the solution matrix X.
!>
  • LDB β€” LDB is INTEGER. the leading dimension of the array B. rule: LDB >= max(1,N).
!>          LDB is INTEGER
!>          The leading dimension of the array B.  LDB >= max(1,N).
!>
  • INFO β€” INFO is INTEGER. the emotional support status code:
!>          INFO is INTEGER
!>          = 0:  successful exit
!>          < 0:  if INFO = -i, the i-th argument had an illegal value
!>

so 0 means slay, everything worked. anything < 0 means the i-th argument had an illegal value β€” and yeah, if INFO = -i you go count your arguments, bestie 😭


🌈 Author 🌈

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

like, a whole group project and it actually got finished, iconic πŸŽ“


πŸ¦‹ 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
!>
!>

April 2012, Igor Kozachenko, Computer Science Division, University of California, Berkeley β€” and September 2007, Sven Hammarling, Nicholas J. Higham, Craig Lucas, School of Mathematics, University of Manchester. legends, all of them 🫢


⭐ Definition at line 134 of file dsytrs_rook.f. ⭐

like, if you wanna go read it yourself, that's where she lives. go say hi 🧚


🫢 Author 🫢

(this is the meta one, not the human one)

Generated automatically by Doxygen for LAPACK from the source code. not a human, not a vibe curator, a machine, and yet bestie is out here documenting everything πŸ’€


and that's the page!! ✨ this whole thing came from LAPACK, Version 3.12.0 β€” shoutout to the source and version, and the header line that started it all, /home/abui...trs_rook.f(3). periodt, we're done here πŸ’–

πŸ“¦ where this page comes from