#include <MyObserver.h>
|
| MyObserver (int spacetreeId, double h, int flopsPerCell) |
|
virtual | ~MyObserver () |
|
void | beginTraversal (const tarch::la::Vector< DIMENSIONS, double > &x, const tarch::la::Vector< DIMENSIONS, double > &h) override |
|
void | endTraversal (const tarch::la::Vector< DIMENSIONS, double > &x, const tarch::la::Vector< DIMENSIONS, double > &h) override |
|
void | enterCell (const peano4::grid::GridTraversalEvent &event) override |
|
void | leaveCell (const peano4::grid::GridTraversalEvent &event) override |
|
TraversalObserver * | clone (int spacetreeId) override |
| I use the clone to create one observer object per traversal thread. More...
|
|
std::vector< peano4::grid::GridControlEvent > | getGridControlEvents () override |
|
|
static tarch::logging::Log | _log |
|
Definition at line 18 of file MyObserver.h.
◆ MyObserver()
examples::regulargridupscaling::MyObserver::MyObserver |
( |
int |
spacetreeId, |
|
|
double |
h, |
|
|
int |
flopsPerCell |
|
) |
| |
◆ ~MyObserver()
examples::regulargridupscaling::MyObserver::~MyObserver |
( |
| ) |
|
|
virtual |
◆ beginTraversal()
void examples::regulargridupscaling::MyObserver::beginTraversal |
( |
const tarch::la::Vector< DIMENSIONS, double > & |
x, |
|
|
const tarch::la::Vector< DIMENSIONS, double > & |
h |
|
) |
| |
|
override |
◆ clone()
peano4::grid::TraversalObserver * examples::regulargridupscaling::MyObserver::clone |
( |
int |
spacetreeId | ) |
|
|
override |
I use the clone to create one observer object per traversal thread.
So between different spacetrees of one spacetree set, there can be no race condition. Yet, the clone() itself could be called in parallel.
Definition at line 66 of file MyObserver.cpp.
◆ endTraversal()
void examples::regulargridupscaling::MyObserver::endTraversal |
( |
const tarch::la::Vector< DIMENSIONS, double > & |
x, |
|
|
const tarch::la::Vector< DIMENSIONS, double > & |
h |
|
) |
| |
|
override |
◆ enterCell()
void examples::regulargridupscaling::MyObserver::enterCell |
( |
const peano4::grid::GridTraversalEvent & |
event | ) |
|
|
override |
◆ getGridControlEvents()
std::vector< peano4::grid::GridControlEvent > examples::regulargridupscaling::MyObserver::getGridControlEvents |
( |
| ) |
|
|
override |
◆ leaveCell()
void examples::regulargridupscaling::MyObserver::leaveCell |
( |
const peano4::grid::GridTraversalEvent & |
event | ) |
|
|
override |
◆ _accumulator
double examples::regulargridupscaling::MyObserver::_accumulator |
|
private |
I use an accumulator just to ensure that the flop calculations are not removed.
Definition at line 29 of file MyObserver.h.
◆ _flopsPerCell
const int examples::regulargridupscaling::MyObserver::_flopsPerCell |
|
private |
◆ _h
const double examples::regulargridupscaling::MyObserver::_h |
|
private |
◆ _log
tarch::logging::Log examples::regulargridupscaling::MyObserver::_log |
|
staticprivate |
◆ _spacetreeId
const int examples::regulargridupscaling::MyObserver::_spacetreeId |
|
private |
◆ _taskAccumulator
double examples::regulargridupscaling::MyObserver::_taskAccumulator |
|
private |
◆ FractionOfCellsYieldingIntegrationTask
double examples::regulargridupscaling::MyObserver::FractionOfCellsYieldingIntegrationTask |
|
static |
◆ IntegrationAccuracy
int examples::regulargridupscaling::MyObserver::IntegrationAccuracy |
|
static |
◆ RanksObserverTemplate
constexpr int examples::regulargridupscaling::MyObserver::RanksObserverTemplate = 1 |
|
staticconstexpr |
The documentation for this class was generated from the following files: