44 std::vector<std::shared_ptr<
Rate<T>>> rate, std::shared_ptr<REACTIONS> reactions,
52 int extent(
int whichDirection)
const override
58 int x0,
int x1,
int y0,
int y1 )
override;
60 template <
typename VECT_TYPE,
typename F>
61 void functOverReactions(std::vector<VECT_TYPE>& vect, F&& f);
62 int _x0, _x1, _y0, _y1;
63 std::vector<size_t> _sizes;
64 std::vector<std::shared_ptr<Rate<T>>> _rate;
65 std::shared_ptr<REACTIONS> _reactions;
66 std::vector<BlockStructureD<2>*> _partners;
Interface of 2D post-processing steps.
void process(BlockLattice< T, DESCRIPTOR > &blockLattice) override
Execute post-processing step.
int extent() const override
Extent of application area (0 for purely local operations)
void processSubDomain(BlockLattice< T, DESCRIPTOR > &blockLattice, int x0, int x1, int y0, int y1) override
Execute post-processing step on a sublattice.
int extent(int whichDirection) const override
Extent of application area along a direction (0 or 1)
ReactionPostProcessor2D(int x0, int x1, int y0, int y1, std::vector< std::shared_ptr< Rate< T > > > rate, std::shared_ptr< REACTIONS > reactions, std::vector< BlockStructureD< 2 > * > partners)