DTPTRS(3)

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

πŸ’– NAME πŸ’–

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

okay so that's the whole file path bestie, it's literally the source file for this routine β€” that's the name, that's the vibe 🫢


✨ SYNOPSIS ✨

🌸 Functions/Subroutines 🌸

subroutine DTPTRS (uplo, trans, diag, n, nrhs, ap, b, ldb, info)
    DTPTRS

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

subroutine DTPTRS (character uplo, character trans, character diag, integer
    n, integer nrhs, double precision, dimension( * ) ap, double precision,
    dimension( ldb, * ) b, integer ldb, integer info)
    DTPTRS

πŸ¦‹ Purpose πŸ¦‹

!> !> DTPTRS solves a triangular system of the form !> !> A * X = B or A**T * X = B, !> !> where A is a triangular matrix of order N stored in packed format, !> and B is an N-by-NRHS matrix. A check is made to verify that A is !> nonsingular. !>

translation: it solves A * X = B or A**T * X = B where A is triangular of order N and packed (no wasted zeros, we love an efficient queen πŸ‘‘), and B is an N-by-NRHS matrix. And yes, it checks that A isn't singular, because we do not compute solutions for a broken matrix, periodt πŸ’…

πŸ“ Parameters πŸ“

πŸ’œ UPLO

!> UPLO is CHARACTER*1 !> = 'U': A is upper triangular; !> = 'L': A is lower triangular. !>
  • 'U' β†’ A is upper triangular
  • 'L' β†’ A is lower triangular

πŸ’œ TRANS

!> TRANS is CHARACTER*1 !> Specifies the form of the system of equations: !> = 'N': A * X = B (No transpose) !> = 'T': AT * X = B (Transpose) !> = 'C': AH * X = B (Conjugate transpose = Transpose) !>

this one picks which system you're solving, like choosing your main character equation:

  • 'N' β†’ A * X = B (no transpose, stay as you are bestie)
  • 'T' β†’ A**T * X = B (transpose)
  • 'C' β†’ A**H * X = B (conjugate transpose β€” and yeah, it's literally the same as transpose here, iykyk)

πŸ’œ DIAG

!> DIAG is CHARACTER*1 !> = 'N': A is non-unit triangular; !> = 'U': A is unit triangular. !>
  • 'N' β†’ A is non-unit triangular
  • 'U' β†’ A is unit triangular

πŸ’œ N

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

the order of matrix A. gotta be N >= 0 🫢

πŸ’œ NRHS

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

the number of right hand sides β€” aka how many columns B has. NRHS >= 0, no cap 🌈

πŸ’œ AP

!> AP is DOUBLE PRECISION array, dimension (N*(N+1)/2) !> The upper or lower triangular matrix A, packed columnwise in !> a linear array. The j-th column of A is stored in the array !> AP as follows: !> if UPLO = 'U', AP(i + (j-1)j/2) = A(i,j) for 1<=i<=j; !> if UPLO = 'L', AP(i + (j-1)(2*n-j)/2) = A(i,j) for j<=i<=n. !>

DOUBLE PRECISION array, dimension (N*(N+1)/2). It's A itself but packed columnwise into one linear array β€” the j-th column lives here like this:

if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.

(keeping the lowercase n in that second one exactly as written, don't come for me 😭)

πŸ’œ B

!> B is DOUBLE PRECISION array, dimension (LDB,NRHS) !> On entry, the right hand side matrix B. !> On exit, if INFO = 0, the solution matrix X. !>

DOUBLE PRECISION array, dimension (LDB,NRHS).

  • on entry β†’ the right hand side matrix B
  • on exit, if INFO = 0 β†’ the solution matrix X ✨ glow up complete

πŸ’œ LDB

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

the leading dimension of array B. requirement: 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 i-th diagonal element of A is zero, !> indicating that the matrix is singular and the !> solutions X have not been computed. !>
  • = 0 β†’ successful exit, we ate πŸ’…
  • < 0 β†’ if INFO = -i, the i-th argument had an illegal value πŸ™ˆ
  • > 0 β†’ if INFO = i, the i-th diagonal element of A is zero, meaning the matrix is singular and the solutions X have not been computed πŸ’€ (no solutions for you, that's the whole point of the singularity check fr fr)

πŸ‘‘ Author πŸ‘‘

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

⭐ Definition at line 129 of file dtptrs.f. ⭐


🌸 Author 🌸

Generated automatically by Doxygen for LAPACK from the source code.


and that's the whole page bestie, no notes πŸ’–

sign-off time: this is LAPACK Version 3.12.0, and the footer of the original page is /home/abui...RC/dtptrs.f(3) β€” so yeah, that's the source/version stamp and the date slot, we're keeping it cute and complete πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from