Teuchos Package Browser (Single Doxygen Collection) Version of the Day
|
Adds entries with optional symmetry to a sparse matrix. More...
#include <Teuchos_MatrixMarket_SymmetrizingAdder.hpp>
Public Types | |
typedef AdderType::index_type | index_type |
The type of indices of the sparse matrix. | |
typedef AdderType::value_type | value_type |
The type of entries of the sparse matrix. | |
Public Member Functions | |
SymmetrizingAdder (const Teuchos::RCP< AdderType > &adder, const std::string &symmType) | |
Constructor. | |
void | operator() (const index_type i, const index_type j, const value_type &Aij) |
Add value A_ij to entry (i,j), and optionally symmetrize. | |
Teuchos::RCP< AdderType > | getAdder () const |
Persisting non-const view of the underlying adder object. | |
Private Attributes | |
Teuchos::RCP< AdderType > | adder_ |
The wrapped AdderType instance. | |
bool | symmetrize_ |
Whether to do symmetrization at all. | |
bool | conjugate_ |
Whether to conjugate when symmetrizing. | |
bool | skew_ |
Whether to negate when symmetrizing. | |
Adds entries with optional symmetry to a sparse matrix.
This class wraps any existing class (AdderType) with the interface shown below. Given the Matrix Market symmetry type, this class' corresponding operator() may invoke AdderType's operator() twice, in order to add entry (j,i) if entry (i,j) is to be added.
AdderType | A class with at least the following interface: class AdderType {
public:
};
AdderType::value_type value_type The type of entries of the sparse matrix. Definition: Teuchos_MatrixMarket_SymmetrizingAdder.hpp:117 AdderType::index_type index_type The type of indices of the sparse matrix. Definition: Teuchos_MatrixMarket_SymmetrizingAdder.hpp:115 |
Definition at line 112 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
typedef AdderType::index_type Teuchos::MatrixMarket::SymmetrizingAdder< AdderType >::index_type |
The type of indices of the sparse matrix.
Definition at line 115 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
typedef AdderType::value_type Teuchos::MatrixMarket::SymmetrizingAdder< AdderType >::value_type |
The type of entries of the sparse matrix.
Definition at line 117 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
|
inline |
Constructor.
adder | [in/out] The wrapped AdderType instance |
symmType | [in] Canonical Matrix Market string representing the symmetry storage type of the matrix data. |
Definition at line 125 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
|
inline |
Add value A_ij to entry (i,j), and optionally symmetrize.
Definition at line 135 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
|
inline |
Persisting non-const view of the underlying adder object.
This violates encapsulation, so please be careful with this.
Definition at line 162 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
|
private |
The wrapped AdderType instance.
Definition at line 168 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
|
private |
Whether to do symmetrization at all.
Definition at line 170 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
|
private |
Whether to conjugate when symmetrizing.
Definition at line 172 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.
|
private |
Whether to negate when symmetrizing.
Definition at line 174 of file Teuchos_MatrixMarket_SymmetrizingAdder.hpp.