Teuchos - Trilinos Tools Package
Version of the Day
|
Stores one entry of a sparse matrix. More...
#include <Teuchos_MatrixMarket_Raw_Adder.hpp>
Public Member Functions | |
Element () | |
Default constructor: an invalid entry of the matrix. More... | |
Element (const Ordinal i, const Ordinal j, const Scalar &Aij) | |
Create a sparse matrix entry at (i,j) with value Aij. More... | |
bool | operator== (const Element &rhs) |
Ignore the matrix value for comparisons. More... | |
bool | operator!= (const Element &rhs) |
Ignore the matrix value for comparisons. More... | |
bool | operator< (const Element &rhs) const |
Lexicographic order first by row index, then by column index. More... | |
template<class BinaryFunction > | |
void | merge (const Element &rhs, const BinaryFunction &f) |
Merge rhs into this Element, using custom binary function. More... | |
void | merge (const Element &rhs, const bool replace=false) |
Merge rhs into this Element, either by addition or replacement. More... | |
Ordinal | rowIndex () const |
Row index (zero-based) of this Element. More... | |
Ordinal | colIndex () const |
Column index (zero-based) of this Element. More... | |
Scalar | value () const |
Value (A(rowIndex(), colIndex()) of this Element. More... | |
Stores one entry of a sparse matrix.
Scalar | The type of entries of the sparse matrix. |
Ordinal | The type of indices of the sparse matrix. |
This class is mainly useful as an implementation detail of Adder. We expose it to users only if they wish to convert the sparse matrix read in by Adder into a storage format other than CSR (compressed sparse row).
An array of Elements implements the so-called "array of structs" representation of a coordinate format sparse matrix. An Element has a row and column index (each of type Ordinal) and a value (of type Scalar). Elements also have equality and ordering comparisons. The equality comparison only tests the row and column index, and is intended to simplify merging matrix entries with the same row and column indices. The ordering comparison means that std::sort of a sequence of Elements will put them in an order suitable for extracting the CSR (compressed sparse row) representation of the sparse matrix.
Definition at line 87 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
Default constructor: an invalid entry of the matrix.
Definition at line 90 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
Create a sparse matrix entry at (i,j) with value Aij.
Definition at line 97 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
Ignore the matrix value for comparisons.
Definition at line 101 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
Ignore the matrix value for comparisons.
Definition at line 106 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
Lexicographic order first by row index, then by column index.
Definition at line 111 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
Merge rhs into this Element, using custom binary function.
This replaces the current value Aij with f(rhs.value_, Aij). The object f must be a binary function that takes two Scalar arguments and returns a Scalar.
Definition at line 127 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
|
inline |
Row index (zero-based) of this Element.
Definition at line 165 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
Column index (zero-based) of this Element.
Definition at line 168 of file Teuchos_MatrixMarket_Raw_Adder.hpp.
|
inline |
Value (A(rowIndex(), colIndex()) of this Element.
Definition at line 171 of file Teuchos_MatrixMarket_Raw_Adder.hpp.