BLAS/SRC/strsv.f(3)
π BLAS/SRC/strsv.f(3) β Library Functions Manual β¨
okay bestie, settle in, because this is the BLAS/SRC/strsv.f page from the Library Functions Manual and it's literally the definition of "small but mighty" π«Ά
πΈ NAME πΈ
BLAS/SRC/strsv.f β no cap, that's the whole name, that's the whole vibe π
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine strsv (uplo, trans, diag, n, a, lda, x, incx)β STRSV π
π¦ Function/Subroutine Documentation π¦
subroutine strsv (character uplo, character trans, character diag, integer
n, real, dimension(lda,*) a, integer lda, real, dimension(*) x, integer
incx)
STRSV π
π― Purpose:
!>
!> STRSV 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.
!>
!> No test for singularity or near-singularity is included in this
!> routine. Such tests must be performed before calling this routine.
!>
so basically: give it a triangular matrix A and a right-hand side vector b, and it hands you back x. iconic behaviour, honestly π
β οΈ big heads-up bestie: this routine does not check whether your matrix is singular or near-singular. zero vibe checks included. you gotta do those tests yourself before you call it, fr fr π
π Parameters π
UPLOβUPLO is CHARACTER*1. on entry,UPLOtells us whether the matrix is an upper or lower triangular matrix, like:
!> 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,TRANSsays which equations we're solving, and it's giving options:
!> TRANS = 'N' or 'n' A*x = b.
!>
!> TRANS = 'T' or 't' A**T*x = b.
!>
!> TRANS = 'C' or 'c' A**T*x = b.
(yes, 'T' and 'C' do the exact same thing here β they're twins, not that deep π)
DIAGβDIAG is CHARACTER*1. on entry,DIAGspecifies whether or notAis unit triangular:
!> 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,Nspecifies the order of the matrixA.Nmust be at least zero. (zero is allowed, we love an inclusive queen π)AβA is REAL array, dimension ( LDA, N ). okay so listen:
!> Before entry with UPLO = 'U' or 'u', the leading n by n
!> upper triangular part of the array A must contain the upper
!> triangular matrix and the strictly lower triangular part of
!> A is not referenced.
!> Before entry with UPLO = 'L' or 'l', the leading n by n
!> lower triangular part of the array A must contain the lower
!> triangular matrix and the strictly upper triangular part of
!> A is not referenced.
!> Note that when DIAG = 'U' or 'u', the diagonal elements of
!> A are not referenced either, but are assumed to be unity.
so half of your array is main character and the other half is literally not even invited to the party π and if DIAG = 'U'/'u', the diagonal also gets ghosted β it's assumed to be unity.
LDAβLDA is INTEGER. on entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, n ). πXβX is REAL array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). before entry, the incremented arrayXmust contain the n element right-hand side vectorb. on exit,Xis overwritten with the solution vectorx. π so yeah, it's an in-place glow-up:bgoes in,xcomes out, the originalbis gone, don't come for me πINCXβINCX is INTEGER. on entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. periodt, zero is not allowed π«
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
the whole squad showed up for this one π«Ά
β 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.
!>
Level 2 BLAS routine, written on 22-October-1986 and still serving looks π₯ the way this routine has been iconic since before most of us were born is genuinely unreal.
π Definition π
Definition at line 148 of file strsv.f. π
π Author π
Generated automatically by Doxygen for LAPACK from the source code. (not a human, just a very efficient little robot π€β¨)
and that's the whole page bestie!! π this came straight from LAPACK, Version 3.12.0, on BLAS/SRC/strsv.f(3) β go forth and solve those triangular systems, you absolute icon π
ππ
π¦ 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