3#ifndef _EXAMPLES_REGULAR_GRID_UPSCALING_MYOBSERVER_H_
4#define _EXAMPLES_REGULAR_GRID_UPSCALING_MYOBSERVER_H_
12 namespace regulargridupscaling {
39 MyObserver(
int spacetreeId,
double h,
int flopsPerCell);
66 TraversalObserver*
clone(
int spacetreeId)
override;
static tarch::logging::Log _log
void enterCell(const peano4::grid::GridTraversalEvent &event) override
Event is invoked per cell.
static double FractionOfCellsYieldingIntegrationTask
double _accumulator
I use an accumulator just to ensure that the flop calculations are not removed.
std::vector< peano4::grid::GridControlEvent > getGridControlEvents() override
void leaveCell(const peano4::grid::GridTraversalEvent &event) override
void endTraversal(const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > &h) override
static int IntegrationAccuracy
MyObserver(int spacetreeId, double h, int flopsPerCell)
TraversalObserver * clone(int spacetreeId) override
I use the clone to create one observer object per traversal thread.
void beginTraversal(const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > &h) override
Begin the traversal.
static constexpr int RanksObserverTemplate
This code is taken from the original ExaHyPE project written by colleagues from the University of Tre...