SRC/sptsv.f(3)

πŸ’– NAME πŸ’–

Okay so welcome to SRC/sptsv.f(3), bestie β€” this is the Library Functions Manual page for SRC/sptsv.f. That’s the whole name. No cap, it’s a Fortran source page for an LAPACK routine, and it’s lowkey iconic. 🫢


✨ SYNOPSIS ✨

🫢 Functions/Subroutines 🫢

  • subroutine sptsv (n, nrhs, d, e, b, ldb, info) β€” the main character. SPTSV computes the solution to system of linear equations A * X = B for PT matrices. Periodt. πŸ’…

Here’s the synopsis exactly as it appears:

       subroutine sptsv (n, nrhs, d, e, b, ldb, info)
            SPTSV computes the solution to system of linear equations A * X = B
           for PT matrices

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

Here’s the full signature with types, exactly as written:

   subroutine sptsv (integer n, integer nrhs, real, dimension( * ) d, real,
       dimension( * ) e, real, dimension( ldb, * ) b, integer ldb, integer
       info)
        SPTSV computes the solution to system of linear equations A * X = B for
       PT matrices

And yes, the source marks the purpose and parameter blurbs with !> comment prefixes β€” Doxygen’s little emo bangs β€” but here’s the clean tea. πŸ“

πŸŽ€ Purpose πŸŽ€

Okay so SPTSV computes the solution to a real system of linear equations A*X = B, where A is an N-by-N symmetric positive definite tridiagonal matrix, and X and B are N-by-NRHS matrices.

A is factored as A = L*D*L**T, and the factored form of A is then used to solve the system of equations. That’s the whole plot, and it ate. πŸ”₯

🌸 Parameters 🌸

Each parameter blurb in the original is also !>-prefixed; this is the un-styled version, bestie.

N

  • N is INTEGER β€” the order of the matrix A. N >= 0.

NRHS

  • NRHS is INTEGER β€” the number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0.

D

  • D is REAL array, dimension (N) β€” on entry, the n diagonal elements of the tridiagonal matrix A. On exit, the n diagonal elements of the diagonal matrix D from the factorization A = L*D*L**T.

E

  • E is REAL array, dimension (N-1) β€” on entry, the (n-1) subdiagonal elements of the tridiagonal matrix A. On exit, the (n-1) subdiagonal elements of the unit bidiagonal factor L from the L*D*L**T factorization of A. (E can also be regarded as the superdiagonal of the unit bidiagonal factor U from the U**T*D*U factorization of A.)

B

  • B is REAL array, dimension (LDB,NRHS) β€” on entry, the N-by-NRHS right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.

LDB

  • LDB is INTEGER β€” the leading dimension of the array B. LDB >= max(1,N).

INFO

  • INFO is INTEGER
    • = 0: successful exit
    • < 0: if INFO = -i, the i-th argument had an illegal value
    • > 0: if INFO = i, the leading principal minor of order i is not positive, and the solution has not been computed. The factorization has not been completed unless i = N.
Important caveat tea: if INFO comes back positive, the solution has not been computed, and the factorization has not been completed unless i = N. No cap, that’s a real warning. πŸ’€

πŸ‘‘ Author πŸ‘‘

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

Definition at line 113 of file sptsv.f.


πŸ€– Author (generated) πŸ€–

Generated automatically by Doxygen for LAPACK from the source code.


πŸ’œ Cute little sign-off: this page is from LAPACK, Version 3.12.0, and it’s SRC/sptsv.f(3). The footer is giving source/version energy, no date drama, just vibes. Slay, bestie. πŸŽ€βœ¨

πŸ“¦ where this page comes from