SG++-Doxygen-Documentation
|
Abstract class for "cloneable" linear systems. More...
#include <CloneableSLE.hpp>
Public Member Functions | |
virtual void | clone (std::unique_ptr< CloneableSLE > &clone) const =0 |
Pure virtual method for cloning the linear system. More... | |
CloneableSLE () | |
Constructor. More... | |
bool | isCloneable () const override |
~CloneableSLE () override | |
Destructor. More... | |
Public Member Functions inherited from sgpp::optimization::SLE | |
virtual size_t | countNNZ () |
Count all non-zero entries. More... | |
virtual size_t | getDimension () const =0 |
Pure virtual method returning the dimension (number of rows/columns) of the system. More... | |
virtual double | getMatrixEntry (size_t i, size_t j)=0 |
Pure virtual method for retrieving a matrix entry. More... | |
virtual bool | isMatrixEntryNonZero (size_t i, size_t j)=0 |
Pure virtual method for checking if a matrix entry vanishes or not. More... | |
virtual void | matrixVectorMultiplication (const base::DataVector &x, base::DataVector &y) |
Multiply the matrix with a vector. More... | |
SLE () | |
Constructor. More... | |
virtual | ~SLE () |
Destructor. More... | |
Abstract class for "cloneable" linear systems.
This class is needed in the case that matrix entry lookups are not possible concurrently (e.g. for hierarchization systems with Clenshaw-Curtis grids).
|
inline |
Constructor.
|
inlineoverride |
Destructor.
References clone().
|
pure virtual |
Pure virtual method for cloning the linear system.
It should generate a pointer to the cloned object and it's used for parallel computations (e.g. the getMatrixEntry() method might not be thread-safe).
[out] | clone | pointer to cloned object |
Implemented in sgpp::optimization::HierarchisationSLE, and sgpp::optimization::FullSLE.
Referenced by ~CloneableSLE().
|
inlineoverridevirtual |
Reimplemented from sgpp::optimization::SLE.