SRC/dtptrs.f(3)
okay so bestie, we're looking at SRC/dtptrs.f(3) from the Library Functions Manual β and it's literally the manual page for the Fortran subroutine dtptrs. This is giving "linear algebra but make it packed triangular" β¨.
π NAME π
SRC/dtptrs.f
πΈ 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 π―
Okay so the whole point: 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.
Bestie, important caveat: this subroutine verifies that A is nonsingular, but callers should note that only exact singularity is detected. It is conceivable for one or more diagonal elements of A to be subnormally tiny numbers without this subroutine signalling an error.
If a possible loss of numerical precision due to near-singular matrices is a concern, the caller should verify that A is nonsingular within some tolerance before calling this subroutine. No cap, that's the warning. π«Ά
β¨ Parameters β¨
π
UPLO
UPLO is CHARACTER*1
= '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':A**T * X = B(Transpose)= 'C':A**H * X = B(Conjugate transpose = Transpose)
π DIAG
DIAG is CHARACTER*1
= 'N':A is non-unit triangular;= 'U':A is unit triangular.
π 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.
π 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.
π¦ 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.
π LDB
LDB is INTEGER The leading dimension of the array B. LDB >= max(1,N).
π₯ INFO
INFO is INTEGER
= 0:successful exit< 0:ifINFO = -i, the i-th argument had an illegal value> 0:ifINFO = i, the i-th diagonal element of A is exactly zero, indicating that the matrix is singular and the solutions X have not been computed.
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Definition at line π
Definition at line 134 of file dtptrs.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
That's the whole vibe, bestie π β footer check: LAPACK Version 3.12.0, SRC/dtptrs.f(3). Byeee π«Άβ¨
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms