|
|
◆ csr_dusmm()
| void csr_dusmm |
( |
char |
trans, |
|
|
char |
order, |
|
|
int |
m, |
|
|
int |
n, |
|
|
int |
nrhs, |
|
|
double |
alpha, |
|
|
const double |
val[], |
|
|
const int |
rowptr[], |
|
|
const int |
colind[], |
|
|
int |
base, |
|
|
int |
ldb, |
|
|
const double |
b[], |
|
|
double |
beta, |
|
|
int |
ldc, |
|
|
double |
c[], |
|
|
int * |
info |
|
) |
| |
C <- αAB + βC or C <- αATB + βC (CSR)
- Purpose
- This function performs one of the following matrix-vector operations for a sparse matrix in CSR format.
C <- αAB + βC or C <- αA^TB + βC
where α and β are scalars, A or A^T is an m x n sparse matrix, B is an n x nrhs dense matrix, and C is an m x nrhs dense matrix.
- Parameters
-
| [in] | trans | Specifies the operation to be performed.
= 'N': C <- αAB + βC.
= 'T' or 'C': C <- αA^TB + βC. |
| [in] | order | Storage order of b[] and c[].
= 'C': Column major.
= 'R': Row major. |
| [in] | m | Number of rows of matrix A. (m >= 0) (If m = 0, returns without computation) |
| [in] | n | Number of columns of matrix A. (n >= 0) (If n = 0, returns without computation) |
| [in] | nrhs | Number of columns of matrices B and C. (nrhs >= 0) (if nrhs = 0, returns without computation) |
| [in] | alpha | Scalar α |
| [in] | val[] | Array val[lval] (lval >= nnz)
Values of nonzero elements of matrix A (where nnz is the number of nonzero elements). |
| [in] | rowptr[] | Array rowptr[lrowptr] (lrowptr >= n + 1)
Row pointers of matrix A. |
| [in] | colind[] | Array colind[lcolind] (lcolind >= nnz)
Column indices of matrix A (where nnz is the number of nonzero elements). |
| [in] | base | Indexing of rowptr[] and colind[].
= 0: Zero-based (C style) indexing: Starting index is 0.
= 1: One-based (Fortran style) indexing: Starting index is 1. |
| [in] | ldb | Leading dimension of two dimensional array b[]. (ldb >= n) |
| [in] | b[] | Array b[lb] (lb >= n*nrhs)
Matrix B. |
| [in] | beta | Scalar β. |
| [in] | ldc | Leading dimension of two dimensional array c[]. (ldc >= m) |
| [in,out] | c[] | Array c[lc] (lc >= m*nrhs)
[in] Input matrix C (If beta is supplied as zero, c[] needs not be set on input).
[out] Output matrix (= αAB + βC). |
| [out] | info | = 0: Successful exit.
= i < 0: The (-i)-th argument is invalid. |
|