GhostPointGenerator.hpp
Go to the documentation of this file.
1 
6 #ifndef GHOST_POINT_GENERATOR_HPP
7 #define GHOST_POINT_GENERATOR_HPP 1
8 
9 #include "../../tessellation/tessellation.hpp"
10 #include "computational_cell_2d.hpp"
11 #include <boost/container/flat_map.hpp>
12 
17 {
18 public:
27  virtual boost::container::flat_map<size_t, ComputationalCell> operator() (const Tessellation& tess,
28  const vector<ComputationalCell>& cells, double time,TracerStickerNames const&
29  tracerstickernames) const = 0;
30 
42  virtual Slope GetGhostGradient(const Tessellation& tess,const vector<ComputationalCell>& cells,
43  const vector<Slope>& gradients,size_t ghost_index,double time,const Edge& edge,
44  TracerStickerNames const& tracerstickernames) const = 0;
45 
47  virtual ~GhostPointGenerator(void);
53  vector<std::pair<size_t, size_t> > GetOuterEdgesIndeces(Tessellation const& tess)const;
54 };
55 
56 #endif // GHOST_POINT_GENERATOR_HPP
Abstract class for tessellation.
Interface between two cells.
Definition: Edge.hpp:13
virtual Slope GetGhostGradient(const Tessellation &tess, const vector< ComputationalCell > &cells, const vector< Slope > &gradients, size_t ghost_index, double time, const Edge &edge, TracerStickerNames const &tracerstickernames) const =0
Calculates the gradients for the ghost cells.
Class for spatial interpolations.
Abstract class for creating ghost points.
virtual boost::container::flat_map< size_t, ComputationalCell > operator()(const Tessellation &tess, const vector< ComputationalCell > &cells, double time, TracerStickerNames const &tracerstickernames) const =0
Calculates the ghost points.
vector< std::pair< size_t, size_t > > GetOuterEdgesIndeces(Tessellation const &tess) const
Finds the indeces of the outer edges points.
virtual ~GhostPointGenerator(void)
Virtual destructor.
Class for keeping the names of the tracers and stickers.