Go to the documentation of this file.
   19 #include "libmesh/libmesh_config.h" 
   21 #ifdef LIBMESH_ENABLE_PERIODIC 
   23 #include "libmesh/periodic_boundaries.h" 
   24 #include "libmesh/point_locator_base.h" 
   25 #include "libmesh/elem.h" 
   26 #include "libmesh/periodic_boundary.h" 
   27 #include "libmesh/mesh_base.h" 
   34   for (
auto & pr : *
this)
 
   42   iterator i = this->find(
id);
 
   52   const_iterator i = this->find(
id);
 
   64                                           unsigned int side)
 const 
   74   std::set<const Elem *> candidate_elements;
 
   75   point_locator.operator()(p, candidate_elements);
 
   81   for(
const Elem * elem_it : candidate_elements)
 
   83       unsigned int s_neigh =
 
   94   libmesh_error_msg(
"Periodic boundary neighbor not found");
 
  104 #endif // LIBMESH_ENABLE_PERIODIC 
  
const unsigned int invalid_uint
A number which is used quite often to represent an invalid or uninitialized value.
 
virtual Point get_corresponding_pos(const Point &pt) const =0
This function should be overridden by derived classes to define how one finds corresponding nodes on ...
 
virtual std::unique_ptr< Elem > build_side_ptr(const unsigned int i, bool proxy=true)=0
 
The base class for defining periodic boundaries.
 
The libMesh namespace provides an interface to certain functionality in the library.
 
IterBase * end
Also have a polymorphic pointer to the end object, this prevents iterating past the end.
 
PeriodicBoundaryBase * boundary(boundary_id_type id)
 
This is the MeshBase class.
 
A Point defines a location in LIBMESH_DIM dimensional Real space.
 
const MeshBase & get_mesh() const
Get a const reference to this PointLocator's mesh.
 
const Elem * neighbor(boundary_id_type boundary_id, const PointLocatorBase &point_locator, const Elem *e, unsigned int side) const
 
This is the base class from which all geometric element types are derived.
 
boundary_id_type pairedboundary
 
This is the base class for point locators.