20 #ifndef LIBMESH_GHOST_POINT_NEIGHBORS_H 21 #define LIBMESH_GHOST_POINT_NEIGHBORS_H 24 #include "libmesh/ghosting_functor.h" 31 #ifdef LIBMESH_ENABLE_PERIODIC 32 class PeriodicBoundaries;
52 #ifdef LIBMESH_ENABLE_PERIODIC 63 #ifdef LIBMESH_ENABLE_PERIODIC 76 virtual std::unique_ptr<GhostingFunctor>
clone ()
const override 77 {
return std::make_unique<GhostPointNeighbors>(*this); }
79 #ifdef LIBMESH_ENABLE_PERIODIC 105 map_type & coupled_elements)
override;
108 #ifdef LIBMESH_ENABLE_PERIODIC 115 #endif // LIBMESH_GHOST_POINT_NEIGHBORS_H virtual void mesh_reinit()
GhostingFunctor subclasses which cache data will need to initialize that cache.
This abstract base class defines the interface by which library code and user code can report associa...
The definition of the const_element_iterator struct.
We're using a class instead of a typedef to allow forward declarations and future flexibility...
const PeriodicBoundaries * _periodic_bcs
std::map< const Elem *, const CouplingMatrix *, CompareDofObjectsByPIDAndThenID > map_type
What elements do we care about and what variables do we care about on each element?
GhostingFunctor()
Constructor.
The libMesh namespace provides an interface to certain functionality in the library.
uint8_t processor_id_type
This is the MeshBase class.
virtual void set_periodic_boundaries(const PeriodicBoundaries *)
virtual void delete_remote_elements() override
GhostingFunctor subclasses with relatively long-lasting caches may want to delete the no-longer-relev...
virtual void operator()(const MeshBase::const_element_iterator &range_begin, const MeshBase::const_element_iterator &range_end, processor_id_type p, map_type &coupled_elements) override
For the specified range of active elements, find their point neighbors and interior_parent elements...
virtual std::unique_ptr< GhostingFunctor > clone() const
A clone() is needed because GhostingFunctor can not be shared between different meshes.
This class implements the original default geometry ghosting requirements in libMesh: point neighbors...
virtual GhostPointNeighbors(const MeshBase &mesh) void redistribute() override
Constructor.