This class acts as a wrapper for a pre-existing NAGSparse Matrix. To be used for interface between LinBox and computer algebra systems such as Maple that can encode sparse matrices in the NAGSparse format
|
Public Types |
typedef _Field | Field |
typedef Field::Element | Element |
Public Methods |
| TriplesBB () |
| TriplesBB (Field F, std::vector< Element > values, std::vector< size_t > rowP, std::vector< size_t > colP, size_t rows, size_t cols, bool RowSortFlag=false, bool ColSortFlag=false) |
| TriplesBB (Field F, size_t rows, size_t cols, size_t reserve=0) |
| ~TriplesBB () |
| TriplesBB (const TriplesBB< Field > &) |
const TriplesBB< Field > & | operator= (const TriplesBB< Field > &) |
template<class OutVector, class InVector> OutVector & | apply (OutVector &, const InVector &) const |
template<class OutVector, class InVector> OutVector & | applyTranspose (OutVector &, const InVector &) const |
size_t | rowdim () const |
size_t | coldim () const |
size_t | size () const |
void | addEntry (const Element &e, const size_t i, const size_t j) |
const Field & | field () const |
const std::vector< Element > & | getData () const |
const std::vector< size_t > & | getRows () const |
const std::vector< size_t > & | getCols () const |
Protected Methods |
template<class OutVector, class InVector> void | _apply (OutVector &, const InVector &, std::vector< size_t >::const_iterator, std::vector< size_t >::const_iterator) const |
size_t | _max (size_t s1, size_t s2) const |
Protected Attributes |
Field | _F |
std::vector< Element > | _values |
| _values contains the nonzero elements of the BlackBox
|
std::vector< size_t > | _RowV |
| _RowV & _ColV are vectors containing the row & column indices
|
std::vector< size_t > | _ColV |
| _RowV & _ColV are vectors containing the row & column indices
|
size_t | _rows |
| The number of rows, columns.
|
size_t | _cols |
| The number of rows, columns.
|
std::vector< FieldAXPY< Field > > | _faxpy |
bool | _RowSortFlag |
bool | _ColSortFlag |