https://mooseframework.inl.gov
Loading...
Searching...
No Matches
ElementPointNeighborLayers.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
13
14#include "libmesh/default_coupling.h"
15
16namespace libMesh
17{
18class GhostingFunctor;
19}
20
26{
27public:
29
31
33
38 virtual std::unique_ptr<GhostingFunctor> clone() const override;
39
40 virtual std::string getInfo() const override;
41
42 virtual bool operator>=(const RelationshipManager & rhs) const override;
43
44protected:
45 virtual void internalInitWithMesh(const MeshBase &) override;
46
49 unsigned short _layers;
50};
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.
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.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
RelationshipManagers are used for describing what kinds of non-local resources are needed for an obje...
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...