COMBINATORIAL_BLAS  1.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Attributes | Friends | List of all members
SpCCols< IT, NT > Class Template Reference

#include <SpCCols.h>

Inheritance diagram for SpCCols< IT, NT >:
SpMat< IT, NT, SpCCols< IT, NT > >

Public Member Functions

 SpCCols ()
 
 SpCCols (IT size, IT nRow, IT nCol)
 
 SpCCols (const SpTuples< IT, NT > &rhs, bool transpose)
 
 SpCCols (const SpCCols< IT, NT > &rhs)
 
 SpCCols ()
 
SpCCols< IT, NT > & operator= (const SpCCols< IT, NT > &rhs)
 
SpCCols< IT, NT > & operator+= (const SpCCols< IT, NT > &rhs)
 
void RowSplit (int numsplits)
 
void ColSplit (int parts, vector< SpCCols< IT, NT > > &matrices)
 
void CreateImpl (const vector< IT > &essentials)
 
void CreateImpl (IT size, IT nRow, IT nCol, tuple< IT, IT, NT > *mytuples)
 
Arr< IT, NT > GetArrays () const
 
vector< IT > GetEssentials () const
 
IT getnrow () const
 
IT getncol () const
 
IT getnnz () const
 
int getnsplit () const
 
- Public Member Functions inherited from SpMat< IT, NT, SpCCols< IT, NT > >
void Create (const vector< IT > &essentials)
 
void Create (IT size, IT nRow, IT nCol, tuple< IT, IT, NT > *mytuples)
 
SpMat< IT, NT, SpCCols< IT, NT > > operator() (const vector< IT > &ri, const vector< IT > &ci) const
 
void SpGEMM (SpMat< IT, NT, SpCCols< IT, NT > > &A, SpMat< IT, NT, SpCCols< IT, NT > > &B, bool isAT, bool isBT)
 
void Split (SpMat< IT, NT, SpCCols< IT, NT > > &partA, SpMat< IT, NT, SpCCols< IT, NT > > &partB)
 
void Merge (SpMat< IT, NT, SpCCols< IT, NT > > &partA, SpMat< IT, NT, SpCCols< IT, NT > > &partB)
 
Arr< IT, NT > GetArrays () const
 
vector< IT > GetEssentials () const
 
auto GetInternal () const
 
auto GetInternal (int i) const
 
int getnsplit () const
 
void Transpose ()
 
bool operator== (const SpMat< IT, NT, SpCCols< IT, NT > > &rhs) const
 
ofstream & put (ofstream &outfile) const
 
ifstream & get (ifstream &infile)
 
bool isZero () const
 
IT getnrow () const
 
IT getncol () const
 
IT getnnz () const
 

Static Public Attributes

static const IT esscount
 

Friends

template<typename SR , typename IU , typename NU , typename RHS , typename LHS >
void csc_gespmv_dense (const SpCCols< IU, NU > &A, const RHS *x, LHS *y)
 dense vector More...
 
template<typename SR , typename IU , typename NUM , typename IVT , typename OVT >
int csc_gespmv_sparse (const SpCCols< IU, NUM > &A, const int32_t *indx, const IVT *numx, int32_t nnzx, int32_t *&sendindbuf, OVT *&sendnumbuf, int *&sdispls, int p_c)
 sparse vector More...
 

Detailed Description

template<class IT, class NT>
class SpCCols< IT, NT >

Definition at line 33 of file SpCCols.h.

Constructor & Destructor Documentation

template<class IT, class NT>
SpCCols< IT, NT >::SpCCols ( )
template<class IT, class NT>
SpCCols< IT, NT >::SpCCols ( IT  size,
IT  nRow,
IT  nCol 
)
template<class IT, class NT>
SpCCols< IT, NT >::SpCCols ( const SpTuples< IT, NT > &  rhs,
bool  transpose 
)
template<class IT, class NT>
SpCCols< IT, NT >::SpCCols ( const SpCCols< IT, NT > &  rhs)
template<class IT, class NT>
SpCCols< IT, NT >::SpCCols ( )

Member Function Documentation

template<class IT, class NT>
void SpCCols< IT, NT >::ColSplit ( int  parts,
vector< SpCCols< IT, NT > > &  matrices 
)
Attention
Destroys calling object (*this)
template<class IT, class NT>
void SpCCols< IT, NT >::CreateImpl ( const vector< IT > &  essentials)
template<class IT, class NT>
void SpCCols< IT, NT >::CreateImpl ( IT  size,
IT  nRow,
IT  nCol,
tuple< IT, IT, NT > *  mytuples 
)
template<class IT, class NT>
Arr<IT,NT> SpCCols< IT, NT >::GetArrays ( ) const
template<class IT, class NT>
vector<IT> SpCCols< IT, NT >::GetEssentials ( ) const
template<class IT, class NT>
IT SpCCols< IT, NT >::getncol ( ) const
inline

Definition at line 59 of file SpCCols.h.

template<class IT, class NT>
IT SpCCols< IT, NT >::getnnz ( ) const
inline

Definition at line 60 of file SpCCols.h.

template<class IT, class NT>
IT SpCCols< IT, NT >::getnrow ( ) const
inline

Definition at line 58 of file SpCCols.h.

template<class IT, class NT>
int SpCCols< IT, NT >::getnsplit ( ) const
inline

Definition at line 61 of file SpCCols.h.

template<class IT, class NT>
SpCCols<IT,NT>& SpCCols< IT, NT >::operator+= ( const SpCCols< IT, NT > &  rhs)
template<class IT, class NT>
SpCCols<IT,NT>& SpCCols< IT, NT >::operator= ( const SpCCols< IT, NT > &  rhs)
template<class IT, class NT>
void SpCCols< IT, NT >::RowSplit ( int  numsplits)

Friends And Related Function Documentation

template<class IT, class NT>
template<typename SR , typename IU , typename NU , typename RHS , typename LHS >
void csc_gespmv_dense ( const SpCCols< IU, NU > &  A,
const RHS *  x,
LHS *  y 
)
friend

dense vector

template<class IT, class NT>
template<typename SR , typename IU , typename NUM , typename IVT , typename OVT >
int csc_gespmv_sparse ( const SpCCols< IU, NUM > &  A,
const int32_t *  indx,
const IVT *  numx,
int32_t  nnzx,
int32_t *&  sendindbuf,
OVT *&  sendnumbuf,
int *&  sdispls,
int  p_c 
)
friend

sparse vector

Member Data Documentation

template<class IT, class NT>
Csc<IT, NT>* SpCCols< IT, NT >::dcsc

Definition at line 66 of file SpCCols.h.

template<class IT, class NT>
Csc<IT, NT>** SpCCols< IT, NT >::dcscarr

Definition at line 67 of file SpCCols.h.

template<class IT, class NT>
const IT SpCCols< IT, NT >::esscount
static

Definition at line 56 of file SpCCols.h.


The documentation for this class was generated from the following file: