SLAVSY
Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
November 2006
November 2006
Purpose
SLAVSY 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 SSYTRF.
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')
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 SSYTRF.
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')
Arguments
| UPLO |
(input) CHARACTER*1
Specifies whether the factor stored in A is upper or lower
triangular. = 'U': Upper triangular = 'L': Lower triangular |
| TRANS |
(input) CHARACTER*1
Specifies the operation to be performed:
= 'N': x := A*x = 'T': x := A'*x = 'C': x := A'*x |
| DIAG |
(input) 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 |
(input) INTEGER
The number of rows and columns of the matrix A. N >= 0.
|
| NRHS |
(input) INTEGER
The number of right hand sides, i.e., the number of vectors
x to be multiplied by A. NRHS >= 0. |
| A |
(input) REAL array, dimension (LDA,N)
The block diagonal matrix D and the multipliers used to
obtain the factor U or L as computed by SSYTRF. |
| LDA |
(input) INTEGER
The leading dimension of the array A. LDA >= max(1,N).
|
| IPIV |
(input) INTEGER array, dimension (N)
The pivot indices from SSYTRF.
|
| B |
(input/output) 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 |
(input) INTEGER
The leading dimension of the array B. LDB >= max(1,N).
|
| INFO |
(output) INTEGER
= 0: successful exit
< 0: if INFO = -k, the k-th argument had an illegal value |