TESTING/LIN/clavsy.f(3) Library Functions Manual TESTING/LIN/clavsy.f(3) NAME TESTING/LIN/clavsy.f SYNOPSIS Functions/Subroutines subroutine clavsy (uplo, trans, diag, n, nrhs, a, lda, ipiv, b, ldb, info) CLAVSY Function/Subroutine Documentation subroutine clavsy (character uplo, character trans, character diag, integer n, integer nrhs, complex, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, complex, dimension( ldb, * ) b, integer ldb, integer info) CLAVSY Purpose: CLAVSY 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 CSYTRF. 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') Parameters UPLO UPLO is CHARACTER*1 Specifies whether the factor stored in A is upper or lower triangular. = 'U': Upper triangular = 'L': Lower triangular TRANS TRANS is CHARACTER*1 Specifies the operation to be performed: = 'N': x := A*x = 'T': x := A'*x DIAG 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 N is INTEGER The number of rows and columns of the matrix A. N >= 0. NRHS NRHS is INTEGER The number of right hand sides, i.e., the number of vectors x to be multiplied by A. NRHS >= 0. A A is COMPLEX array, dimension (LDA,N) The block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by CSYTRF. Stored as a 2-D triangular matrix. LDA LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N). IPIV IPIV is INTEGER array, dimension (N) Details of the interchanges and the block structure of D, as determined by CSYTRF. If UPLO = 'U': If IPIV(k) > 0, then rows and columns k and IPIV(k) were interchanged and D(k,k) is a 1-by-1 diagonal block. (If IPIV( k ) = k, no interchange was done). If IPIV(k) = IPIV(k-1) < 0, then rows and columns k-1 and -IPIV(k) were interchanged, D(k-1:k,k-1:k) is a 2-by-2 diagonal block. If UPLO = 'L': If IPIV(k) > 0, then rows and columns k and IPIV(k) were interchanged and D(k,k) is a 1-by-1 diagonal block. (If IPIV( k ) = k, no interchange was done). If IPIV(k) = IPIV(k+1) < 0, then rows and columns k+1 and -IPIV(k) were interchanged, D(k:k+1,k:k+1) is a 2-by-2 diagonal block. B B is COMPLEX array, dimension (LDB,NRHS) On entry, B contains NRHS vectors of length N. On exit, B is overwritten with the product A * B. LDB LDB is INTEGER The leading dimension of the array B. LDB >= max(1,N). INFO 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 151 of file clavsy.f. Author Generated automatically by Doxygen for LAPACK from the source code. LAPACK Version 3.12.0 TESTING/LIN/clavsy.f(3)