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

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

πŸ’– /home/abui.../dsytrs2.f(3) πŸ’–

okay so bestie, grab ur matcha πŸ“ because this page is from the Library Functions Manual and it's literally all about one (1) Fortran subroutine that solves linear systems. yes that kind. the symmetric kind. slay.

🌸 NAME 🌸

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

that's the whole name. it's a path. it's giving "my parents named me after the street they lived on." iconic honestly πŸ’…


✨ SYNOPSIS ✨

Functions/Subroutines

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

that's it. that's the vibe check. πŸ¦‹


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

subroutine DSYTRS2 (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 info)

DSYTRS2. say it with me. DSYTRS2. πŸ‘‘

πŸ’œ Purpose:

!>
!> DSYTRS2 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 and converted by DSYCONV.
!>

so basically: you hand it A*X = B, where A is a real symmetric matrix, and it's like "say less" and solves it. but only if you already did the factorization homework (A = U*D*U**T or A = L*D*L**T via DSYTRF, converted by DSYCONV). it's not doing the whole thing for you, it's the final-boss step. main character energy but make it linear algebra πŸ”₯


🧚 Parameters 🧚

  • UPLO β€” UPLO is CHARACTER*1. this tells it whether the factorization details are chilling in 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. pick one, bestie, it's not that deep πŸ’…
  • N β€” N is INTEGER. the order of the matrix A. N >= 0. keep it non-negative or it will simply not. 😭
  • NRHS β€” NRHS is INTEGER. the number of right hand sides, like… the number of columns of the matrix B. NRHS >= 0. also non-negative, also non-negotiable. ✨
  • A β€” A is DOUBLE PRECISION array, dimension (LDA,N). this is the block diagonal matrix D plus the multipliers used to obtain the factor U or L, as computed by DSYTRF.
🚨 okay this is the part everyone gets wrong: A is input / output. yes really. it's counter-intuitive, and you might think A is input only, but nope β€” A is input / output. and the reason is honestly kind of cute: at the start of the subroutine it permutes A into a form, and then at the end it permutes A right back to its original form. round trip. it comes home. 🫢
  • LDA β€” LDA is INTEGER. the leading dimension of the array A. LDA >= max(1,N). respect the max, it's a boundary thing. 🌸
  • IPIV β€” IPIV is INTEGER array, dimension (N). details of the interchanges and the block structure of D, as determined by DSYTRF. receipts from the previous function, basically. 🧾
  • B β€” B is 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. ⭐
  • LDB β€” LDB is INTEGER. the leading dimension of the array B. LDB >= max(1,N). same energy as LDA. πŸ’–
  • WORK β€” WORK is DOUBLE PRECISION array, dimension (N). it's the workspace. it works. that's the whole description and we respect the minimalism. πŸ’€
  • INFO β€” INFO is INTEGER. the vibe report:
    • = 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.

the whole squad collaborated. group project but everyone actually pulled their weight. 🌈

Definition at line 130 of file dsytrs2.f. (not line 129, not line 131. 130. periodt.) πŸ“

Generated automatically by Doxygen for LAPACK from the source code. so nobody hand-wrote this page β€” a robot did it, and honestly? it ate. πŸ€–βœ¨


and that's the whole page, bestie! πŸ¦‹ no cap, every flag, every bound, every max(1,N) accounted for. iykyk πŸ’œ

LAPACK Β· Version 3.12.0 Β· /home/abui.../dsytrs2.f(3) β€” mwah, see u in the next manpage πŸŽ€πŸ’…

πŸ“¦ where this page comes from