SGTTRS(3)

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

🌸 SGTTRS (3) β€” the tridiagonal-solve bestie we deserve ✨

ok so this is a page from the Library Functions Manual, and the star of the show lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/sgttrs.f β€” yes that's a whole mouthful, she's got a long address, we still love her πŸ’–


✨ NAME ✨

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

that's it. that's the name. she's a file path and she's iconic for it πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

Functions/Subroutines

subroutine SGTTRS (trans, n, nrhs, dl, d, du, du2, ipiv, b, ldb, info)

SGTTRS πŸ’« (yes the heading literally just says her name again, main character energy fr)


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

subroutine SGTTRS (character trans, integer n, integer nrhs, real,
    dimension( * ) dl, real, dimension( * ) d, real, dimension( * ) du,
    real, dimension( * ) du2, integer, dimension( * ) ipiv, real, dimension(
    ldb, * ) b, integer ldb, integer info)

SGTTRS (she said it twice, she's confident πŸ’…)

🌈 Purpose 🌈

ok so listen bestie, here's the vibe:

!>
!> SGTTRS solves one of the systems of equations
!>    A*X = B  or  A**T*X = B,
!> with a tridiagonal matrix A using the LU factorization computed
!> by SGTTRF.
!>

so basically she takes your system of equations β€” either A*X = B or A**T*X = B β€” with a tridiagonal matrix A, and she solves it using the LU factorization that SGTTRF already computed for you. no cap, that's the whole job 🫢


πŸŽ€ Parameters πŸŽ€

  • TRANS β€” TRANS is CHARACTER*1. this tells her which form of the system of equations you want, and your options are:
    • = 'N': A * X = B (No transpose)
    • = 'T': A**T* X = B (Transpose)
    • = 'C': A**T* X = B (Conjugate transpose = Transpose)

(yes 'T' and 'C' do the same thing here, that's not a typo, that's just how it is πŸ’€)

  • N β€” N is INTEGER. the order of the matrix A. literally just how big she is ✨
  • NRHS β€” NRHS is INTEGER. the number of right hand sides, i.e., the number of columns of the matrix B. and important: NRHS >= 0. she does not do negative columns, don't even try πŸ™ˆ
  • DL β€” DL is REAL array, dimension (N-1). the (n-1) multipliers that define the matrix L from the LU factorization of A. the L girlies πŸ’œ
  • D β€” D is REAL array, dimension (N). the n diagonal elements of the upper triangular matrix U from the LU factorization of A. the diagonal queen πŸ‘‘
  • DU β€” DU is REAL array, dimension (N-1). the (n-1) elements of the first super-diagonal of U. first super-diagonal, so fancy πŸŽ€
  • DU2 β€” DU2 is REAL array, dimension (N-2). the (n-2) elements of the second super-diagonal of U. okay second super-diagonal, she's showing off now ✨
  • IPIV β€” IPIV is INTEGER array, dimension (N). the pivot indices; for 1 <= i <= n, row i of the matrix was interchanged with row IPIV(i). and here's the tea: IPIV(i) will always be either i or i+1; IPIV(i) = i indicates a row interchange was not required. so she's never out here swapping rows all wild, she keeps it neighbors-only 🫢
  • B β€” B is REAL array, dimension (LDB,NRHS). on entry, the matrix of right hand side vectors B. on exit, B is overwritten by the solution vectors X. so like… she eats your B and leaves X behind. she ate and left no crumbs fr fr πŸ”₯
  • LDB β€” LDB is INTEGER. the leading dimension of the array B. and LDB >= max(1,N) β€” gotta be at least that, no discussion πŸ’…
  • INFO β€” INFO is INTEGER. the receipts:
    • = 0: successful exit πŸŽ‰
    • < 0: if INFO = -i, the i-th argument had an illegal value 😭 (so INFO tells you which argument acted up, helpful king)

🌸 Author 🌸

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

a whole squad, we love a collaborative effort πŸ’–

Definition at line 136 of file sgttrs.f. (iykyk, she's anchored to line 136 exactly, don't @ me)


⭐ Author ⭐

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


ok that's the whole page bestie, go solve your tridiagonal systems, you got this πŸ’œπŸ¦‹

LAPACK β€” Version 3.12.0 β€” /home/abui...RC/sgttrs.f(3) πŸŽ€ that's the version, that's the date string, that's the sign-off, mwah πŸ’‹

πŸ“¦ where this page comes from