direct_real_gen_matmul computes a matrix-matrix or transposed matrix-matrix product involving a real, square, sparse nonsymmetric matrix stored in compressed column (Harwell–Boeing) format.
2Specification
#include "f11/nagcpp_f11mk.hpp"
template <typename ICOLZP, typename IROWIX, typename A, typename B, typename C>
void function direct_real_gen_matmul(const string trans, const double alpha, const ICOLZP &icolzp, const IROWIX &irowix, const A &a, const B &b, const double beta, C &&c, OptionalF11MKopt)
template <typename ICOLZP, typename IROWIX, typename A, typename B, typename C>
void function direct_real_gen_matmul(const string trans, const double alpha, const ICOLZP &icolzp, const IROWIX &irowix, const A &a, const B &b, const double beta, C &&c)
3Description
direct_real_gen_matmul computes either the matrix-matrix product , or the transposed matrix-matrix product , according to the value of the argument trans, where is a real sparse nonsymmetric matrix, of arbitrary sparsity pattern with nonzero elements, and are real dense matrices. The matrix is stored in compressed column (Harwell–Boeing) storage format. The array a stores all nonzero elements of , while arrays icolzp and irowix store the compressed column indices and row indices of respectively.
4References
None.
5Arguments
1: – stringInput
On entry: specifies whether or not the matrix is transposed.
is computed.
is computed.
Constraint:
or .
2: – doubleInput
On entry: , the scalar factor in the matrix multiplication.
On entry: the row index array of sparse matrix . See Section 2.1.3 in the F11 Chapter Introduction.
5: – double arrayInput
On entry: the array of nonzero values in the sparse matrix .
6: – double arrayInput
On entry: the matrix .
7: – doubleInput
On entry: the scalar factor .
8: – double arrayInput/Output
On entry: the matrix .
On exit: is overwritten by or depending on the value of trans.
9: – OptionalF11MKInput/Output
Optional parameter container, derived from Optional.
5.1Additional Quantities
1:
, the order of the matrix
2:
, the number of columns of matrices and
6Exceptions and Warnings
Errors or warnings detected by the function:
All errors and warnings have an associated numeric error code field, errorid, stored either as a member of the thrown exception object (see errorid), or as a member of
opt.ifail, depending on how errors
and warnings are being handled (see Error Handling for more details).