1#ifndef _fei_CSRMat_hpp_
2#define _fei_CSRMat_hpp_
12#include "fei_macros.hpp"
13#include "fei_FillableMat.hpp"
14#include "fei_SparseRowGraph.hpp"
15#include "fei_CSVec.hpp"
24 CSRMat(
const FillableMat& fmat);
30 std::vector<double>& getPackedCoefs() {
return packedcoefs_;}
31 const std::vector<double>& getPackedCoefs()
const {
return packedcoefs_;}
33 unsigned getNumRows()
const {
return srg_.
rowNumbers.size();}
35 CSRMat& operator=(
const FillableMat& src);
39 bool operator==(
const CSRMat& rhs)
const;
41 bool operator!=(
const CSRMat& rhs)
const;
45 std::vector<double> packedcoefs_;
56 bool storeResultZeros=
false);
60 bool storeResultZeros=
false);
62void add_CSRMat_to_FillableMat(
const CSRMat& csrm, FillableMat& fm);
std::vector< int > rowNumbers
void multiply_CSRMat_CSRMat(const CSRMat &A, const CSRMat &B, CSRMat &C, bool storeResultZeros)
void multiply_trans_CSRMat_CSRMat(const CSRMat &A, const CSRMat &B, CSRMat &C, bool storeResultZeros)
void multiply_trans_CSRMat_CSVec(const CSRMat &A, const CSVec &x, CSVec &y)
void multiply_CSRMat_CSVec(const CSRMat &A, const CSVec &x, CSVec &y)