Public Member Functions |
| SparseMatrix (const Field &F, size_t m=0, size_t n=0) |
| Constructor.
|
template<class VectStream > |
| SparseMatrix (const Field &F, VectStream &stream) |
| Constructor from a vector stream.
|
| SparseMatrix (MatrixStream< Field > &ms) |
| Constructor from a MatrixStream.
|
| SparseMatrix (const SparseMatrix< Field, Row > &B) |
| Copy constructor.
|
template<class VectorType > |
| SparseMatrix (const SparseMatrix< Field, VectorType > &B) |
| Row type Converter constructor.
|
| ~SparseMatrix () |
| Destructor.
|
template<class OutVector , class InVector > |
OutVector & | apply (OutVector &y, const InVector &x) const |
| Matrix-vector product .
|
template<class OutVector , class InVector > |
OutVector & | applyTranspose (OutVector &y, const InVector &x) const |
| Transpose matrix-vector product .
|
size_t | rowdim () const |
| Retreive row dimensions of Sparsemat matrix.
|
size_t | coldim () const |
| Retreive column dimensions of Sparsemat matrix.
|
std::istream & | read (std::istream &is, FileFormatTag format=FORMAT_DETECT) |
| Read the matrix from a stream in the given format.
|
std::ostream & | write (std::ostream &os, FileFormatTag format=FORMAT_PRETTY) const |
| Write the matrix to a stream in the given format.
|
const Field & | field () const |
| Access to the base field.
|
size_t | size () const |
| Retreive number of elements in the matrix.
|
std::istream & | read (std::istream &is, const Field &F, FileFormatTag format=FORMAT_DETECT) |
| Read a matrix from the given input stream using field read/write.
|
std::ostream & | write (std::ostream &os, const Field &F, FileFormatTag format=FORMAT_PRETTY) const |
| Write a matrix to the given output stream using field read/write.
|
void | setEntry (size_t i, size_t j, const Element &value) |
| Set an individual entry Setting the entry to 0 will remove it from the matrix.
|
Element & | refEntry (size_t i, size_t j) |
| Get a writeable reference to an entry in the matrix If there is no entry at the position (i, j), then a new entry with a value of zero is inserted and a reference to it is returned.
|
const Element & | getEntry (size_t i, size_t j) const |
| Get a read-only individual entry from the matrix.
|
Element & | getEntry (Element &x, size_t i, size_t j) const |
| Get an entry and store it in the given value This form is more in the Linbox style and is provided for interface compatibility with other parts of the library.
|
|
The raw iterator is a method for accessing all nonzero entries in the matrix in some unspecified order.
This can be used, e.g. to reduce all matrix entries modulo a prime before passing the matrix into an algorithm.
|
Iterator | Begin () |
| Begin.
|
ConstIterator | Begin () const |
| const Begin.
|
Iterator | End () |
| End.
|
ConstIterator | End () const |
| const End
|
Columns of rows iterator |
The columns of row iterator gives each of the rows of the matrix in ascending order.
Dereferencing the iterator yields a row vector in sparse sequence format
|
typedef Rep::iterator | RowIterator |
typedef Rep::const_iterator | ConstRowIterator |
RowIterator | rowBegin () |
ConstRowIterator | rowBegin () const |
RowIterator | rowEnd () |
ConstRowIterator | rowEnd () const |
Index iterator |
The index iterator gives the row, column indices of all matrix elements in the same order as the raw iterator above.
Its value type is an STL pair with the row and column indices, starting at 0, in the first and second positions, respectively.
|
Rep | _A |
| IndexedBegin.
|
size_t | _m |
| IndexedBegin.
|
size_t | _n |
| IndexedBegin.
|
class | SparseMatrixWriteHelper< Element, Row > |
| IndexedBegin.
|
class | SparseMatrixReadWriteHelper< Element, Row > |
| IndexedBegin.
|
IndexedIterator | IndexedBegin () |
| IndexedBegin.
|
ConstIndexedIterator | IndexedBegin () const |
| const IndexedBegin
|
IndexedIterator | IndexedEnd () |
| IndexedEnd.
|
ConstIndexedIterator | IndexedEnd () const |
| const IndexedEnd
|
Row & | getRow (size_t i) |
| Retrieve a row as a writeable reference.
|
Row & | operator[] (size_t i) |
| Retrieve a row as a writeable reference.
|
ConstRow & | operator[] (size_t i) const |
| Retrieve a row as a read-only reference.
|
Vector & | columnDensity (Vector &v) const |
| Compute the column density, i.e the number of entries per column.
|
SparseMatrixBase & | transpose (SparseMatrixBase &AT) const |
| Construct the transpose of this matrix and place it in the matrix given.
|
template<class _Field, class _Row = typename LinBox::Vector<_Field>::Sparse>
class LinBox::SparseMatrix< _Field, _Row >
vector of sparse rows.
This is a generic black box for a sparse matrix. It inherits LinBox::SparseMatrixBase, which implements all of the underlying accessors and iterators.
- Examples:
- examples/det.C, examples/minpoly.C, examples/rank.C, examples/smith.C, examples/smithvalence.C, examples/solve.C, examples/sparseelimdet.C, examples/sparseelimrank.C, and examples/valence.C.