SG++-Doxygen-Documentation
|
This class implements abstract hierarchisation and dehierarchisation routines on the sparse grid by logging the operations into three arrays rather than actually applying them to the data vector object. More...
#include <OperationStencilHierarchisation.hpp>
Public Types | |
typedef std::vector< unsigned int > | IndexStencil |
typedef std::vector< float > | WeightStencil |
Public Member Functions | |
void | doDehierarchisation (DataVector &alpha) override=0 |
Implements the dehierarchisation on a sparse grid The results are queried via get{Surplus,Neighbor,Weight}Stencil(). More... | |
void | doHierarchisation (DataVector &node_values) override=0 |
Implements the abstract hierarchisation on a sparse grid. More... | |
virtual const IndexStencil & | getNeighborStencil () const =0 |
Access to the results of the hierarchisation operation. More... | |
virtual size_t | getStencilSize () const =0 |
The number of operations performed, i.e. More... | |
virtual const IndexStencil & | getSurplusStencil () const =0 |
Access to the results of the hierarchisation operation. More... | |
virtual const WeightStencil & | getWeightStencil () const =0 |
Access to the results of the hierarchisation operation. More... | |
OperationStencilHierarchisation () | |
Constructor. More... | |
~OperationStencilHierarchisation () override | |
Destructor. More... | |
Public Member Functions inherited from sgpp::base::OperationHierarchisation | |
OperationHierarchisation () | |
Constructor. More... | |
virtual | ~OperationHierarchisation () |
Destructor. More... | |
This class implements abstract hierarchisation and dehierarchisation routines on the sparse grid by logging the operations into three arrays rather than actually applying them to the data vector object.
To apply the operations to e.g. a valid DataVector obejct alpha associated with the grid, just run a loop over the stencils and perform
alpha[surplus[i]] += weight[i]*alpha[neighbor[i]]
Obviously the inverse operation (dehierarchisation resp. hierarchisation) can be applied by reversing the loop and using "-" instead of "+".
typedef std::vector<unsigned int> sgpp::base::OperationStencilHierarchisation::IndexStencil |
typedef std::vector<float> sgpp::base::OperationStencilHierarchisation::WeightStencil |
|
inline |
Constructor.
|
inlineoverride |
Destructor.
References alpha, doDehierarchisation(), doHierarchisation(), getNeighborStencil(), getStencilSize(), getSurplusStencil(), and getWeightStencil().
|
overridepure virtual |
Implements the dehierarchisation on a sparse grid The results are queried via get{Surplus,Neighbor,Weight}Stencil().
alpha | dummy array |
Implements sgpp::base::OperationHierarchisation.
Implemented in sgpp::base::OperationStencilHierarchisationModLinear, and sgpp::base::OperationStencilHierarchisationLinear.
Referenced by ~OperationStencilHierarchisation().
|
overridepure virtual |
Implements the abstract hierarchisation on a sparse grid.
The results are queried via get{Surpluses,Neighbors,Weights}.
node_values | dummy array |
Implements sgpp::base::OperationHierarchisation.
Implemented in sgpp::base::OperationStencilHierarchisationModLinear, and sgpp::base::OperationStencilHierarchisationLinear.
Referenced by ~OperationStencilHierarchisation().
|
pure virtual |
Access to the results of the hierarchisation operation.
This is an index array whose contents refer to the indices associated with the grid points by means of the storage scheme used.
Implemented in sgpp::base::OperationStencilHierarchisationModLinear, and sgpp::base::OperationStencilHierarchisationLinear.
Referenced by ~OperationStencilHierarchisation().
|
pure virtual |
The number of operations performed, i.e.
the length of each of the three arrays.
Implemented in sgpp::base::OperationStencilHierarchisationModLinear, and sgpp::base::OperationStencilHierarchisationLinear.
Referenced by ~OperationStencilHierarchisation().
|
pure virtual |
Access to the results of the hierarchisation operation.
This is an index array whose contents refer to the indices associated with the grid points by means of the storage scheme used.
Implemented in sgpp::base::OperationStencilHierarchisationModLinear, and sgpp::base::OperationStencilHierarchisationLinear.
Referenced by ~OperationStencilHierarchisation().
|
pure virtual |
Access to the results of the hierarchisation operation.
Implemented in sgpp::base::OperationStencilHierarchisationModLinear, and sgpp::base::OperationStencilHierarchisationLinear.
Referenced by ~OperationStencilHierarchisation().