CXML
dmatvec_sdia
Matrix-vector product for symmetric diagonal storage (Serial
and Parallel Versions)
FORMAT
DMATVEC_SDIA
(job, a, ia, ndim, nz, w, x, y, n )
Arguments
job integer*4
On entry, defines the operation to be performed:
job = 0 : y = A * x
job = 1 : y = transp(A) * x
job = 2 : y = w - A * x
job = 3 : y = w - transp(A) * x
On exit, job is unchanged.
a real*8
On entry, a two-dimensional array with dimensions ndim
by nz containing the nonzero elements of the matrix A.
On exit, a is unchanged.
ia integer*4
On entry, a one-dimensional array of length at least
nz, containing the distances of the diagonals from the
main diagonal.
On exit, ia is unchanged.
ndim integer*4
On entry, the leading dimension of array A, as declared
in the calling subprogram; ndim >= n.
On exit, ndim is unchanged.
nz integer*4
On entry, the number of diagonals stored in array A.
On exit, nz is unchanged.
w real*8
On entry, a one-dimensional array of length at least n
containing the vector w when job = 2 or 3. The elements
are accessed with unit increment. When job = 0 or 1,
array W is not needed so w can be a dummy parameter.
On exit, w is unchanged.
x real*8
On entry, a one-dimensional array of length at least n,
containing the elements of vector x, accessed with unit
increment.
On exit, x is unchanged.
y real*8
On entry, a one-dimensional array of length at least n.
On exit, array Y is overwritten by the output vector y.
The elements of array Y are accessed with unit
increment.
n integer*4
On entry, the order of the matrix A.
On exit, n is unchanged.
Description
DMATVEC_SDIA obtains the matrix-vector product for a sparse matrix stored
using the symmetric diagonal storage scheme. Depending on the value of the
input parameter job, either the matrix or its transpose is used in the
operation.
This routine is available in both serial and parallel versions. The routine
names and parameter list are identical for both versions. For information
about linking to the serial or to the parallel library, refer to the CXML
Reference Manual.
CXML Home Page Index of CXML Routines