36 #ifndef DistributedDelaunayMesh_H 37 #define DistributedDelaunayMesh_H 43 #include "indexedVertex.H" 56 template<
class Triangulation>
65 typedef typename Triangulation::Point
Point;
67 typedef typename Triangulation::Finite_vertices_iterator
69 typedef typename Triangulation::Finite_cells_iterator
71 typedef typename Triangulation::All_cells_iterator
86 bool distributeBoundBoxes(
const boundBox& bb);
89 bool isLocal(
const Vertex_handle& v)
const;
91 bool isLocal(
const label localProcIndex)
const;
96 const scalar radiusSqr
99 bool checkProcBoundaryCell
101 const Cell_handle& cit,
105 void findProcessorBoundaryCells
110 void markVerticesToRefer
123 labelPairHashSet& receivedVertices
181 labelPairHashSet& receivedVertices,
182 bool iterateReferral =
true 188 template<
class Po
intIterator>
193 bool printErrors =
true scalar calculateLoadUnbalance() const
A HashTable with keys but without contents.
Triangulation::All_cells_iterator All_cells_iterator
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
static autoPtr< mapDistribute > buildMap(const List< label > &toProc)
Build a mapDistribute for the supplied destination processor data.
The vertex and cell classes must have an index defined.
labelPairHashSet rangeInsertReferredWithInfo(PointIterator begin, PointIterator end, bool printErrors=true)
Inserts points into the triangulation if the point is within.
bool distribute(const boundBox &bb)
DistributedDelaunayMesh(const Time &runTime)
Construct from components.
A bounding box defined in terms of the points at its extremities.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A class for handling words, derived from string.
Triangulation::Cell_handle Cell_handle
Triangulation::Vertex_handle Vertex_handle
Triangulation::Finite_vertices_iterator Finite_vertices_iterator
Triangulation::Point Point
void operator=(const DistributedDelaunayMesh< Triangulation > &)=delete
Disallow default bitwise assignment.
Triangulation::Finite_cells_iterator Finite_cells_iterator
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
Store a background polyMesh to use for the decomposition of space and queries for parallel conformalV...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
DelaunayMesh< Triangulation >::labelPairHashSet labelPairHashSet
~DistributedDelaunayMesh()
Destructor.
void sync(const boundBox &bb)
Refer vertices so that the processor interfaces are consistent.
A HashTable to objects of type <T> with a label key.