Go to the documentation of this file.
20 #ifndef LIBMESH_DEFAULT_COUPLING_H
21 #define LIBMESH_DEFAULT_COUPLING_H
24 #include "libmesh/ghosting_functor.h"
30 class PeriodicBoundaries;
50 #ifdef LIBMESH_ENABLE_PERIODIC
68 #ifdef LIBMESH_ENABLE_PERIODIC
103 map_type & coupled_elements)
override;
108 #ifdef LIBMESH_ENABLE_PERIODIC
117 #endif // LIBMESH_DEFAULT_COUPLING_H
We're using a class instead of a typedef to allow forward declarations and future flexibility.
virtual void redistribute() override
GhostingFunctor subclasses with relatively long-lasting caches may want to redistribute those caches ...
DefaultCoupling()
Constructor.
The libMesh namespace provides an interface to certain functionality in the library.
std::unordered_map< const Elem *, const CouplingMatrix * > map_type
What elements do we care about and what variables do we care about on each element?
const CouplingMatrix * _dof_coupling
void set_dof_coupling(const CouplingMatrix *dof_coupling)
void set_mesh(const MeshBase *mesh)
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 the elements which will be coupled to them in the sp...
This is the MeshBase class.
This abstract base class defines the interface by which library code and user code can report associa...
virtual void delete_remote_elements() override
GhostingFunctor subclasses with relatively long-lasting caches may want to delete the no-longer-relev...
uint8_t processor_id_type
The definition of the const_element_iterator struct.
This class implements the default algebraic coupling in libMesh: elements couple to themselves,...
virtual void mesh_reinit() override
If we have periodic boundaries, then we'll need the mesh to have an updated point locator whenever we...
void set_periodic_boundaries(const PeriodicBoundaries *periodic_bcs)
This class defines a coupling matrix.
const PeriodicBoundaries * _periodic_bcs
void set_n_levels(unsigned int n_levels)