TESTING/LIN/clavsp.f(3)
π¦ TESTING/LIN/clavsp.f(3)
okay so bestie, this page is from the Library Functions Manual, and the main character is CLAVSP β a LAPACK testing routine that does packed symmetric-factor matrix-vector stuff. Letβs get into it π
β¨
πΈ NAME πΈ
TESTING/LIN/clavsp.f
π SYNOPSIS π
Functions/Subroutines
subroutine clavsp (uplo, trans, diag, n, nrhs, a, ipiv, b, ldb, info)
CLAVSP
π¦ Function/Subroutine Documentation π¦
subroutine clavsp
subroutine clavsp (character uplo, character trans, character diag, integer
n, integer nrhs, complex, dimension( * ) a, integer, dimension( * )
ipiv, complex, dimension( ldb, * ) b, integer ldb, integer info)
CLAVSP
π‘ Purpose
CLAVSP 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 one of the factors from the symmetric factorization computed by CSPTRF.
CSPTRF produces a factorization of the form
U * D * U^T or L * D * L^T,
where U (or L) is a product of permutation and unit upper (lower) triangular matrices, U^T (or L^T) is the transpose of U (or L), and D is symmetric and block diagonal with 1 x 1 and 2 x 2 diagonal blocks. The multipliers for the transformations and the upper or lower triangular parts of the diagonal blocks are stored columnwise in packed format in the linear array A.
If TRANS = 'N' or 'n', CLAVSP multiplies either by U or U * D (or L or L * D).
If TRANS = 'C' or 'c', CLAVSP multiplies either by U^T or D * U^T (or L^T or D * L^T).
tiny tea, bestie: thePurposeblock saysTRANS = 'C'or'c'here, while theTRANSargument notes below say'T'or't'. Iβm just relaying whatβs on the page π
π¬ Argument rundown
UPLOβCHARACTER*1. On entry,UPLOspecifies whether the triangular matrix stored inAis upper or lower triangular.UPLO = 'U'or'u'β the matrix is upper triangular.UPLO = 'L'or'l'β the matrix is lower triangular. Unchanged on exit.TRANSβCHARACTER*1. On entry,TRANSspecifies the operation to be performed as follows:TRANS = 'N'or'n'βx := A*x.TRANS = 'T'or't'βx := A^T*x. Unchanged on exit.DIAGβCHARACTER*1. On entry,DIAGspecifies whether the diagonal blocks are assumed to be unit matrices, as follows:DIAG = 'U'or'u'β diagonal blocks are unit matrices.DIAG = 'N'or'n'β diagonal blocks are non-unit. Unchanged on exit.NβINTEGER. On entry,Nspecifies the order of the matrixA.Nmust be at least zero. Unchanged on exit.NRHSβINTEGER. On entry,NRHSspecifies the number of right hand sides, i.e., the number of vectorsxto be multiplied byA.NRHSmust be at least zero. Unchanged on exit.AβCOMPLEX array, dimension( N*(N+1)/2 ). On entry,Acontains a block diagonal matrix and the multipliers of the transformations used to obtain it, stored as a packed triangular matrix. Unchanged on exit.IPIVβINTEGER array, dimension( N ). On entry,IPIVcontains the vector of pivot indices as determined byCSPTRF. IfIPIV( K ) = K, no interchange was done. IfIPIV( K ) <> KbutIPIV( K ) > 0, then rowKwas interchanged with rowIPIV( K )and a1 x 1pivot block was used. IfIPIV( K ) < 0andUPLO = 'U', then rowK-1was exchanged with row| IPIV( K ) |and a2 x 2pivot block was used. IfIPIV( K ) < 0andUPLO = 'L', then rowK+1was exchanged with row| IPIV( K ) |and a2 x 2pivot block was used.BβCOMPLEX array, dimension( LDB, NRHS ). On entry,BcontainsNRHSvectors of lengthN. On exit,Bis overwritten with the productA * B.LDBβINTEGER. On entry,LDBcontains the leading dimension ofBas declared in the calling program.LDBmust be at leastmax( 1, N ). Unchanged on exit.INFOβINTEGER.INFOis the error flag. On exit, a value of0indicates a successful exit. A negative value, say-K, indicates that theK-th argument has an illegal value.
π Author
Univ. of TennesseeUniv. of California BerkeleyUniv. of Colorado DenverNAG Ltd.
Definition at line 129 of file clavsp.f.
π¨οΈ Author
Generated automatically by Doxygen for LAPACK from the source code.
later bestie! This oneβs from LAPACK, Version 3.12.0, and the footer says TESTING/LIN/clavsp.f(3) ππ«Άβ¨
π¦ 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