42 #ifndef COO_MATRIX_PARTITION_VIEW_SUBCLASS_H
43 #define COO_MATRIX_PARTITION_VIEW_SUBCLASS_H
45 #include "AbstractLinAlgPack_MatrixOp.hpp"
46 #include "AbstractLinAlgPack_COOMatrixWithPartitionedView.hpp"
48 namespace AbstractLinAlgPack {
80 : m_(m), trans_(trans)
109 size_type
rows()
const;
112 size_type
cols()
const;
182 #endif // COO_MATRIX_PARTITION_VIEW_SUBCLASS_H
value_type transVtMtV(const DVectorSlice &vs_rhs1, BLAS_Cpp::Transp trans_rhs2, const DVectorSlice &vs_rhs3) const
(4) result = vs_rhs1' * op(M_rhs2) * vs_rhs3
void Vp_StMtV(DVectorSlice *vs_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const DVectorSlice &vs_rhs2, value_type beta) const
(2) vs_lhs = alpha * op(M_rhs1) * vs_rhs2 + beta * vs_lhs (BLAS xGEMV)
void set_trans(BLAS_Cpp::Transp trans)
M & m()
Get the underlying M object.
COOMatrixPartitionViewSubclass(BLAS_Cpp::Transp trans)
partitioned_view_type::partition_type partition_type
MatrixOp & operator=(const MatrixOp &m)
Implementation of MatrixOp abstract interface for COOMatrixWithPartitionedView::partition_type.
COOMatrixWithPartitionedView::partition_type M
COOMatrixPartitionViewSubclass()
void Mp_StM(DMatrixSlice *gms_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs) const
(1) gms_lhs += alpha * op(M_rhs) (BLAS xAXPY)
Base class for all matrices that support basic matrix operations.
Transp trans_not(Transp _trans)
COOMatrixPartitionViewSubclass(const M &m)
Class for a partition or a set of continous partitions in a partitioned COO matrix.
void Mp_StMtM(DMatrixSlice *gms_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const DMatrixSlice &gms_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta) const
(6) gms_lhs = alpha * op(M_rhs1) * op(gms_rhs2) + beta * gms_lhs (right) (xGEMM)
COOMatrixPartitionViewSubclass(const M &m, BLAS_Cpp::Transp trans)