BLAS/SRC/dtpsv.f(3)

✨ NAME ✨

BLAS/SRC/dtpsv.f β€” bestie, this is the file that brings you DTPSV, and she is that girl πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

Functions/Subroutines

  • subroutine dtpsv (uplo, trans, diag, n, ap, x, incx) β€” DTPSV

πŸ’– Function/Subroutine Documentation πŸ’–

🌸 subroutine dtpsv (character uplo, character trans, character diag, integer n, double precision, dimension() ap, double precision, dimension() x, integer incx) 🌸

DTPSV

πŸŽ€ Purpose:

DTPSV solves one of the systems of equations

A*x = b,   or   A**T*x = b,

where b and x are n element vectors and A is an n by n unit, or non-unit, upper or lower triangular matrix, supplied in packed form.

⚠️ Okay so listen β€” no test for singularity or near-singularity is included in this routine. None. Zero. She does not check. Such tests must be performed before calling this routine, bestie. Do not come for her when your matrix is singular. 🫢

πŸ’… Parameters

  • UPLO β€” UPLO is CHARACTER*1. On entry, UPLO specifies whether the matrix is an upper or lower triangular matrix as follows:
    • UPLO = 'U' or 'u' β†’ A is an upper triangular matrix.
    • UPLO = 'L' or 'l' β†’ A is a lower triangular matrix.
  • TRANS β€” TRANS is CHARACTER*1. On entry, TRANS specifies the equations to be solved as follows:
    • TRANS = 'N' or 'n' β†’ A*x = b.
    • TRANS = 'T' or 't' β†’ A**T*x = b.
    • TRANS = 'C' or 'c' β†’ A**T*x = b.
  • DIAG β€” DIAG is CHARACTER*1. On entry, DIAG specifies whether or not A is unit triangular as follows:
    • DIAG = 'U' or 'u' β†’ A is assumed to be unit triangular.
    • DIAG = 'N' or 'n' β†’ A is not assumed to be unit triangular.
  • N β€” N is INTEGER. On entry, N specifies the order of the matrix A. N must be at least zero.
  • AP β€” AP is DOUBLE PRECISION array, dimension at least ( ( n*( n + 1 ) )/2 ).

Before entry with UPLO = 'U' or 'u', the array AP must contain the upper triangular matrix packed sequentially, column by column, so that AP( 1 ) contains a( 1, 1 ), AP( 2 ) and AP( 3 ) contain a( 1, 2 ) and a( 2, 2 ) respectively, and so on. 🌈

Before entry with UPLO = 'L' or 'l', the array AP must contain the lower triangular matrix packed sequentially, column by column, so that AP( 1 ) contains a( 1, 1 ), AP( 2 ) and AP( 3 ) contain a( 2, 1 ) and a( 3, 1 ) respectively, and so on. 🌈

Note that when DIAG = 'U' or 'u', the diagonal elements of A are not referenced, but are assumed to be unity. Not me pointing at the invisible ones πŸ‘€
  • X β€” X is DOUBLE PRECISION array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented array X must contain the n element right-hand side vector b. On exit, X is overwritten with the solution vector x. Yeah she does not keep your original b, she replaces it, that's just how she is 😭
  • INCX β€” INCX is INTEGER. On entry, INCX specifies the increment for the elements of X. INCX must not be zero. Seriously. Zero is not it. πŸ’€

πŸ‘‘ Author

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

🌟 Further Details:

Level 2 Blas routine.

-- Written on 22-October-1986.
   Jack Dongarra, Argonne National Lab.
   Jeremy Du Croz, Nag Central Office.
   Sven Hammarling, Nag Central Office.
   Richard Hanson, Sandia National Labs.

🧚 Definition at line 143 of file dtpsv.f.


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for LAPACK from the source code.


okay that's the whole page bestie, you ate, go solve your triangular systems πŸ’–

Version 3.12.0 Β· Tue Nov 28 2023 12:08:41 β€” yeah she's got a birthday, and it's iconic, mwah πŸŽ€βœ¨