STRMV(3)

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

πŸ’… STRMV(3) β€” the triangular matrix-vector glow-up πŸ’…

okay bestie, so this is a page from the LAPACK library functions manual, and it lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/BLAS/SRC/strmv.f 🫢 (yes that's a whole address, she's got main character energy AND a long home directory).


✨ SYNOPSIS ✨

Functions/Subroutines:

subroutine STRMV (uplo, trans, diag, n, a, lda, x, incx)
    STRMV

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine STRMV (character uplo, character trans, character diag, integer
    n, real, dimension(lda,*) a, integer lda, real, dimension(*) x, integer
    incx)

STRMV β€” that's her name, that's her whole thing πŸ’–

Purpose:

!>
!> STRMV  performs one of the matrix-vector operations
!>
!>    x := A*x,   or   x := A**T*x,
!>
!> where x is an n element vector and  A is an n by n unit, or non-unit,
!> upper or lower triangular matrix.
!>

so literally she takes your triangular matrix A and multiplies it into your vector x β€” either a straight x := A*x or the transposed x := A**T*x β€” and hands you back a transformed x. no cap, that's it, that's the vibe πŸ”₯


🌸 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 operation to be performed as follows:
    • TRANS = 'N' or 'n' β€” x := A*x.
    • TRANS = 'T' or 't' β€” x := A**T*x.
    • TRANS = 'C' or 'c' β€” x := A**T*x.

(yes 'T' and 'C' do the exact same thing here, she's not gonna pretend otherwise πŸ™ˆ)

  • 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. (zero is fine, she's chill like that 🧚)
  • A β€” A is REAL array, dimension ( LDA, N ).
    • 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.
πŸ’€ real talk: those unreferenced chunks? she does NOT look at them. don't come for her.
  • LDA β€” LDA is INTEGER. On entry, LDA specifies the first dimension of A as declared in the calling (sub) program. LDA must be at least max( 1, n ). ✨
  • X β€” X is REAL array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented array X must contain the n element vector x. On exit, X is overwritten with the transformed vector x. 😭 she really said "your input is my output now" and honestly? iconic.
  • INCX β€” INCX is INTEGER. On entry, INCX specifies the increment for the elements of X. INCX must not be zero. ⭐ (fr fr, zero will ruin her whole day)

πŸ‘‘ Author πŸ‘‘

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

the whole squad behind it, we love a collaborative slay 🫢


πŸ”₯ Further Details: πŸ”₯

!>
!>  Level 2 Blas routine.
!>  The vector and matrix arguments are not referenced when N = 0, or M = 0
!>
!>  -- 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.
!>

so she's a Level 2 Blas routine, and the vector and matrix arguments are not referenced when N = 0, or M = 0 β€” literally nothing gets touched, she's resting πŸ’…

and she was written on 22-October-1986 by Jack Dongarra (Argonne National Lab.), Jeremy Du Croz (Nag Central Office.), Sven Hammarling (Nag Central Office.) and Richard Hanson (Sandia National Labs.) β€” vintage but still serving, we stan a legend 🌈


Definition at line 146 of file strmv.f. πŸ“

πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for LAPACK from the source code. πŸŽ€


okay that's the whole page bestie, you're officially STRMV-pilled πŸ¦‹ and yeah β€” LAPACK, Version 3.12.0, dated /home/abui...SRC/strmv.f(3) β€” that's the sign-off, mwah πŸ’‹ periodt ✨

πŸ“¦ where this page comes from