20 #ifndef LIBMESH_SIBLING_COUPLING_H 21 #define LIBMESH_SIBLING_COUPLING_H 24 #include "libmesh/ghosting_functor.h" 69 map_type & coupled_elements)
override;
75 virtual std::unique_ptr<GhostingFunctor>
clone ()
const override 76 {
return std::make_unique<SiblingCoupling>(*this); }
85 #endif // LIBMESH_SIBLING_COUPLING_H SiblingCoupling(const SiblingCoupling &other)
Constructor.
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.
void set_dof_coupling(const CouplingMatrix *dof_coupling)
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?
The libMesh namespace provides an interface to certain functionality in the library.
SiblingCoupling()
Constructor.
uint8_t processor_id_type
virtual std::unique_ptr< GhostingFunctor > clone() const override
A clone() is needed because GhostingFunctor can not be shared between different meshes.
const CouplingMatrix * _dof_coupling
This class adds coupling (for use in send_list construction) between active elements and all descenda...
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 any sibling elements which should be evaluable too...
This class defines a coupling matrix.