SPTTRSV(l)

πŸ“¦ version 1.5, in ubuntu jammy

✨ SPTTRSV(l) ✨

okay bestie sit DOWN because we're about to talk about SPTTRSV β€” a LAPACK routine, specifically from LAPACK version 2.0 πŸ’– this is the SPTTRSV(l) manual page and she's giving linear algebra main character energy, no cap.


🌸 NAME 🌸

SPTTRSV β€” solve one of the triangular systems L**T* X = B, or L * X = B,

(yes the comma is staying, we don't edit her πŸ’…)


πŸ¦‹ SYNOPSIS πŸ¦‹

SUBROUTINE SPTTRSV( TRANS, N, NRHS, D, E, B, LDB, INFO )

    CHARACTER       TRANS

    INTEGER         INFO, LDB, N, NRHS

    REAL            D( * )

    REAL            B( LDB, * ), E( * )

πŸ’œ PURPOSE πŸ’œ

so like, what does she even DO? SPTTRSV solves one of the triangular systems

L**T* X = B, or  L * X = B,

where L is the Cholesky factor of a Hermitian positive definite tridiagonal matrix A such that

A = L*D*L**H

and that factorization is computed by SPTTRF, just so you know where she came from 🫢


πŸŽ€ ARGUMENTS πŸŽ€

  • TRANS (input) CHARACTER β€” tells us which form of the system of equations we're working with, like pick your fighter:
    • = 'N': L * X = B (No transpose)
    • = 'T': L**T * X = B (Transpose)
  • N (input) INTEGER β€” the order of the tridiagonal matrix A. constraint: N >= 0. periodt.
  • NRHS (input) INTEGER β€” the number of right hand sides, aka the number of columns of the matrix B. constraint: NRHS >= 0. yes she counted them herself πŸ’…
  • D (input) REAL array, dimension (N) β€” the n diagonal elements of the diagonal matrix D from the factorization computed by SPTTRF. πŸ“
  • E (input) COMPLEX array, dimension (N-1) β€” the (n-1) off-diagonal elements of the unit bidiagonal factor U or L from the factorization computed by SPTTRF (see UPLO). πŸ”₯
  • B (input/output) COMPLEX array, dimension (LDB,NRHS) β€” on entry, the right hand side matrix B. On exit, the solution matrix X. she literally transforms in front of you, iconic πŸ’–
  • LDB (input) INTEGER β€” the leading dimension of the array B. constraint: LDB >= max(1,N). do NOT skip this one, she WILL be upset πŸ™ˆ
  • INFO (output) INTEGER β€” the vibe check report:
    • = 0: successful exit ✨
    • < 0: if INFO = -i, the i-th argument had an illegal value πŸ’€
bestie listen β€” if INFO comes back negative, something you passed in was not it. go back and look at argument number i. not me being the one to tell you, but she's judging a little. 😭

🌈 that's the whole page, slay 🌈

this was a modified LAPACK routine, dated 12 May 1997, and you just read the SPTTRSV(l) page top to bottom. obsessed with you honestly. go solve a triangular system, you've got this πŸ‘‘πŸ’œπŸ§š

πŸ“¦ where this page comes from