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

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

πŸ’… /home/abui...sytrs_aa.f(3)

okay bestie, so this is a page from the Library Functions Manual β€” specifically it's all about one little Fortran file living its best life at:

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

yes, that path is a whole meal, we don't talk about it 🫢


✨ NAME ✨

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

that's it. that's the name. iconic, honestly πŸ’…


🌸 SYNOPSIS 🌸

Functions/Subroutines

subroutine DSYTRS_AA (uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork,
    info)

DSYTRS_AA


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

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

DSYTRS_AA

πŸ’œ Purpose:

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

so like, real talk β€” this subroutine solves A*X = B where A is a real symmetric matrix, and it does it using the factorization A = U**T*T*U or A = L*T*L**T that DSYTRF_AA already computed for you. it's giving "trust the process, the factorization is already done" ✨


πŸŽ€ Parameters πŸŽ€

UPLO

!>          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**T*T*U;
!>          = 'L':  Lower triangular, form is A = L*T*L**T.
!>

this one's a CHARACTER*1 and it's literally just telling everyone which team the factorization is on β€” upper or lower triangular. 'U' = upper, form is A = U**T*T*U; 'L' = lower, form is A = L*T*L**T. pick a side bestie πŸ’…

N

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

INTEGER, the order of matrix A. must be N >= 0, no negatives, we don't do that here πŸ™ˆ

NRHS

!>          NRHS is INTEGER
!>          The number of right hand sides, i.e., the number of columns
!>          of the matrix B.  NRHS >= 0.
!>

INTEGER, the number of right hand sides β€” aka how many columns matrix B has. NRHS >= 0. so many right hands, so little time 😭

A

!>          A is DOUBLE PRECISION array, dimension (LDA,N)
!>          Details of factors computed by DSYTRF_AA.
!>

DOUBLE PRECISION array, dimension (LDA,N), and it's holding all the details of the factors that DSYTRF_AA computed. it's a hand-me-down and we respect it 🫢

LDA

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

INTEGER, the leading dimension of array A. gotta be LDA >= max(1,N). rules are rules ✨

IPIV

!>          IPIV is INTEGER array, dimension (N)
!>          Details of the interchanges as computed by DSYTRF_AA.
!>

INTEGER array, dimension (N), holding the details of the interchanges as computed by DSYTRF_AA. the receipts, basically 🧾

B

!>          B is DOUBLE PRECISION array, dimension (LDB,NRHS)
!>          On entry, the right hand side matrix B.
!>          On exit, the solution matrix X.
!>

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, main character energy, we love a transformation πŸ’–

LDB

!>          LDB is INTEGER
!>          The leading dimension of the array B.  LDB >= max(1,N).
!>

INTEGER, the leading dimension of array B, and it's gotta satisfy LDB >= max(1,N). same energy as LDA, different letter 😌

WORK

!>          WORK is DOUBLE PRECISION array, dimension (MAX(1,LWORK))
!>

DOUBLE PRECISION array, dimension (MAX(1,LWORK)). it's the workspace, it's doing the behind-the-scenes labor, no credit, no cap πŸ’€

LWORK

!>          LWORK is INTEGER
!>          The dimension of the array WORK. LWORK >= max(1,3*N-2).
!>

INTEGER, the dimension of the array WORK. and listen β€” LWORK >= max(1,3*N-2). do not skimp on the workspace, it will not slay 🚨

INFO

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

INTEGER, the vibe check at the end:

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

Definition at line 129 of file dsytrs_aa.f.


⭐ Author ⭐

Generated automatically by Doxygen for LAPACK from the source code.


and that's the whole page, bestie β€” no crumbs left behind πŸ“

LAPACK β€” Version 3.12.0 β€” from /home/abui...sytrs_aa.f(3) πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from