SLAVSP(3)
π
SLAVSP(3) β the girlies' guide to slavsp.f
ok so first things first, the manual name is slavsp.f(3) and she lives in Library Functions Manual. Her full home address is literally:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/LIN/slavsp.f
like she's got a whole government name, we love a documented queen π
β¨ NAME β¨
SLAVSP β she's the one who does the matrix-vector multiply after SSPTRF has already done the factorization. bestie she is the follow-up act π
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine SLAVSP (uplo, trans, diag, n, nrhs, a, ipiv, b, ldb, info)β the short version, iykyk
π¦ Function/Subroutine Documentation π¦
subroutine SLAVSP (character uplo, character trans, character diag, integer n,
integer nrhs, real, dimension( * ) a, integer, dimension( * ) ipiv,
real, dimension( ldb, * ) b, integer ldb, integer info)
SLAVSP
π Purpose π
!> !> SLAVSP performs one of the matrix-vector operations !> x := A*x or x := A'*x, !> where x is an N element vector and A is one of the factors !> from the block U*D*U' or L*D*L' factorization computed by SSPTRF. !> !> If TRANS = 'N', multiplies by U or U * D (or L or L * D) !> If TRANS = 'T', multiplies by U' or D * U' (or L' or D * L' ) !> If TRANS = 'C', multiplies by U' or D * U' (or L' or D * L' ) !>
translation bestie: you hand her the packed factor from SSPTRF, she multiplies your vector(s) by it. no cap, that's the whole vibe β¨
π Parameters π
- UPLO β ohhh okay so
UPLOisCHARACTER*1and it specifies whether the factor stored inAis upper or lower triangular. pick your fighter:= 'U':Upper triangular π«= 'L':Lower triangular π
!> UPLO is CHARACTER*1 !> Specifies whether the factor stored in A is upper or lower !> triangular. !> = 'U': Upper triangular !> = 'L': Lower triangular !>
- TRANS β
CHARACTER*1, specifies the operation to be performed. she's got three moods:= 'N':x := A*x= 'T':x := A'*x= 'C':x := A'*x
!> TRANS is CHARACTER*1 !> Specifies the operation to be performed: !> = 'N': x := A*x !> = 'T': x := A'*x !> = 'C': x := A'*x !>
- DIAG β
CHARACTER*1, specifies whether or not the diagonal blocks are unit matrices. if the diagonal blocks are assumed to be unit, thenA = UorA = L, otherwiseA = U*DorA = L*D. iconic either way:= 'U':Diagonal blocks are assumed to be unit matrices.= 'N':Diagonal blocks are assumed to be non-unit matrices.
!> DIAG is CHARACTER*1 !> Specifies whether or not the diagonal blocks are unit !> matrices. If the diagonal blocks are assumed to be unit, !> then A = U or A = L, otherwise A = U*D or A = L*D. !> = 'U': Diagonal blocks are assumed to be unit matrices. !> = 'N': Diagonal blocks are assumed to be non-unit matrices. !>
- N β
INTEGER, the number of rows and columns of the matrixA. constraint:N >= 0. as she should π«Ά
!> N is INTEGER !> The number of rows and columns of the matrix A. N >= 0. !>
- NRHS β
INTEGER, the number of right hand sides, i.e., the number of vectorsxto be multiplied byA. constraint:NRHS >= 0. multiple besties, multiple vectors, we stan a multitasker π
!> NRHS is INTEGER !> The number of right hand sides, i.e., the number of vectors !> x to be multiplied by A. NRHS >= 0. !>
- A β
REAL array, dimension (N*(N+1)/2). it's the block diagonal matrixDand the multipliers used to obtain the factorUorL, stored as a packed triangular matrix as computed bySSPTRF. packed! she does not waste space, she is lowkey efficient like that π₯
!> A is REAL array, dimension (N*(N+1)/2) !> The block diagonal matrix D and the multipliers used to !> obtain the factor U or L, stored as a packed triangular !> matrix as computed by SSPTRF. !>
- IPIV β
INTEGER array, dimension (N). the pivot indices fromSSPTRF. keep 'em, you'll need 'em.
!> IPIV is INTEGER array, dimension (N) !> The pivot indices from SSPTRF. !>
- B β
REAL array, dimension (LDB,NRHS). on entry,BcontainsNRHSvectors of lengthN. on exit,Bis overwritten with the productA * B. π heads up bestie, she will eat your input, that's not a bug that's the design:
!> B is REAL array, dimension (LDB,NRHS) !> On entry, B contains NRHS vectors of length N. !> On exit, B is overwritten with the product A * B. !>
- LDB β
INTEGER, the leading dimension of the arrayB. constraint:LDB >= max(1,N). do not skip this one, she will notice π
!> LDB is INTEGER !> The leading dimension of the array B. LDB >= max(1,N). !>
- INFO β
INTEGER, the receipts:= 0:successful exit β¨< 0:ifINFO = -k, thek-th argument had an illegal value π
!> INFO is INTEGER !> = 0: successful exit !> < 0: if INFO = -k, the k-th argument had an illegal value !>
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 128 of file slavsp.f.
π Author (again, yes really) π
Generated automatically by Doxygen for LAPACK from the source code. she's auto-generated and she's still main character energy, we love to see it π
π ok that's the whole page, no notes. every flag documented, every constraint honored, periodt.
πΈ signed off with LAPACK, Version 3.12.0, and stamped from /home/abui...IN/slavsp.f(3) β mwah, go multiply something π
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms