SSYTRS(3)

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

πŸ’… SSYTRS(3) β€” like, the LAPACK manual page, but make it make sense πŸ¦‹

okay bestie so this page literally lives at /home/abui...RC/ssytrs.f(3) and it's filed under the Library Functions Manual β€” yes, that's the whole vibe, we're in the library-functions section of the man pages and it ate ✨


πŸŽ€ NAME πŸŽ€

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

like... that's the file, that's literally the whole name, she's just a very long path and honestly? main character energy 🫢


🌸 SYNOPSIS 🌸

Functions/Subroutines

subroutine SSYTRS (uplo, n, nrhs, a, lda, ipiv, b, ldb, info)
    SSYTRS

✨ Function/Subroutine Documentation ✨

subroutine SSYTRS (character uplo, integer n, integer nrhs, real, dimension(
    lda, * ) a, integer lda, integer, dimension( * ) ipiv, real, dimension(
    ldb, * ) b, integer ldb, integer info)

SSYTRS πŸ‘‘ (yes she repeats her own name in the docs, iconic behaviour honestly)


πŸ’– Purpose πŸ’–

okay so here's the tea, straight from the doc block:

!>
!> SSYTRS 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 SSYTRF.
!>

so like. she solves A*X = B for a real symmetric matrix A, and she does it using the factorization A = U*D*U**T or A = L*D*L**T that SSYTRF already cooked up for you πŸ“ no cap, SSYTRF does the prep work, SSYTRS serves the look.


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

UPLO is a CHARACTER*1 and it's basically telling us where the factorization details are chilling β€” upper or lower triangular bestie:

  • 'U' β€” upper triangular, so the form is A = U*D*U**T
  • 'L' β€” lower triangular, so the form is A = L*D*L**T

N

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

N is an INTEGER β€” it's the order of the matrix A. and like, N >= 0, no negativity allowed πŸ’€


NRHS

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

NRHS is an INTEGER β€” the number of right hand sides, which is lowkey just the number of columns of the matrix B. also NRHS >= 0 🫢


A

!>          A is REAL array, dimension (LDA,N)
!>          The block diagonal matrix D and the multipliers used to
!>          obtain the factor U or L as computed by SSYTRF.
!>

A is a REAL array, dimension (LDA,N) β€” she holds the block diagonal matrix D plus the multipliers used to obtain the factor U or L, exactly as computed by SSYTRF πŸ’…


LDA

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

LDA is an INTEGER β€” the leading dimension of the array A, and it's gotta satisfy LDA >= max(1,N) ⭐


IPIV

!>          IPIV is INTEGER array, dimension (N)
!>          Details of the interchanges and the block structure of D
!>          as determined by SSYTRF.
!>

IPIV is an INTEGER array, dimension (N) β€” it carries the details of the interchanges and the block structure of D, as determined by SSYTRF 🧚


B

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

B is a REAL array, dimension (LDB,NRHS) β€” glow-up moment fr fr:

  • On entry β€” she's the right hand side matrix B
  • On exit β€” she's the solution matrix X πŸ”₯

LDB

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

LDB is an INTEGER β€” the leading dimension of the array B, and it must be LDB >= max(1,N) πŸ’œ


INFO

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

INFO is an INTEGER β€” the vibe check at the end:

  • = 0 β€” successful exit, we slayed πŸŽ‰
  • < 0 β€” if INFO = -i, the i-th argument had an illegal value 😭 (rude, but she's telling you which one)
⚠️ bestie if INFO comes back negative, do NOT ignore it β€” that's her literally pointing at the argument that's wrong. INFO = -i β†’ the i-th argument had an illegal value. periodt.

πŸ‘‘ Author πŸ‘‘

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

(genuinely a whole collab, the group chat of numerical linear algebra 🫢)


πŸ¦‹ Definition at line 119 of file ssytrs.f. πŸ¦‹


πŸ’« Author πŸ’«

Generated automatically by Doxygen for LAPACK from the source code. (so nobody hand-wrote this one, she was born this way ✨)


and that's the page bestie!! πŸ’– LAPACK, Version 3.12.0, living at /home/abui...RC/ssytrs.f(3) β€” mwah, go solve something symmetric πŸŽ€πŸ’…

πŸ“¦ where this page comes from