17 #include "libmesh/vector_value.h" 52 virtual unsigned int divisionIndex(
const Point & pt)
const = 0;
54 virtual unsigned int divisionIndex(
const Elem & elem)
const = 0;
virtual unsigned int divisionIndex(const Point &pt) const =0
Return the index of the division to which the point belongs.
MeshDivision(const InputParameters ¶meters)
virtual void initialize()
Set up any data members that would be necessary to obtain the division indices.
bool coversEntireMesh() const
Returns whether the entire mesh is covered by the division of the mesh, whether every point and eleme...
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...
Base class for MeshDivision objects.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
const MooseMesh & _mesh
Mesh that is being divided.
auto max(const L &left, const R &right)
virtual ~MeshDivision()
MeshDivision destructor.
Interface for notifications that the mesh has changed.
unsigned int _num_divs
Number of divisions in the division.
Every object that can be built by the factory should be derived from this class.
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
unsigned int INVALID_DIVISION_INDEX
Invalid subdomain id to return when outside the mesh division.
unsigned int getNumDivisions() const
Return the number of divisions.
bool _mesh_fully_indexed
Whether the mesh is fully covered / indexed, all elements and points have a valid index...
void setNumDivisions(const unsigned int ndivs)
Set the number of divisions.
const FEProblemBase *const _fe_problem
Pointer to the problem, needed to retrieve pointers to various objects.
const InputParameters & parameters() const
Get the parameters of the object.
static InputParameters validParams()
Class constructor.
virtual void meshChanged() override
By default, meshChanged will cause a re-initialization of the necessary data members.