15#include "libmesh/point_neighbor_coupling.h"
29 "element_side_neighbor_layers>=1 & element_side_neighbor_layers<=10",
30 "The number of additional geometric elements to make available when "
31 "using distributed mesh. No effect with replicated mesh.");
46std::unique_ptr<GhostingFunctor>
55 std::ostringstream oss;
56 std::string layers =
_layers == 1 ?
"layer" :
"layers";
58 oss <<
"ElementPointNeighborLayers (" <<
_layers <<
" " << layers <<
')';
76 auto functor = std::make_unique<PointNeighborCoupling>();
registerMooseObject("MooseApp", ElementPointNeighborLayers)
ElementPointNeighborLayers is used to increase the halo or stencil depth of each processor's partitio...
virtual std::unique_ptr< GhostingFunctor > clone() const override
A clone() is needed because GhostingFunctor can not be shared between different meshes.
ElementPointNeighborLayers(const InputParameters ¶meters)
virtual void internalInitWithMesh(const MeshBase &) override
Called before this RM is attached.
unsigned short _layers
Size of the halo or stencil of elements available in each local processors partition.
static InputParameters validParams()
virtual bool operator>=(const RelationshipManager &rhs) const override
Whether this relationship manager provides more or the same amount and type of ghosting as the rhs.
virtual std::string getInfo() const override
Method for returning relationship manager information (suitable for console output).
Intermediate base class for RelationshipManagers that are simply built using ghosting functors.
static InputParameters validParams()
std::unique_ptr< GhostingFunctor > _functor
Factory & getFactory()
Retrieve a writable reference to the Factory associated with this App.
MooseApp & _app
The MOOSE application this is associated with.
RelationshipManagers are used for describing what kinds of non-local resources are needed for an obje...
virtual bool baseGreaterEqual(const RelationshipManager &rhs) const
Whether the base class provides more or the same amount and type of ghosting as the rhs.
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...