53 #ifndef backgroundMeshDecomposition_H 54 #define backgroundMeshDecomposition_H 101 const Time& runTime_;
144 scalar minCellSizeLimit_;
155 scalar maxCellWeightCoeff_;
160 void initialRefinement();
172 scalar& weightEstimate
184 void buildPatchAndTree();
196 ClassName(
"backgroundMeshDecomposition");
228 template<
class Po
intType>
246 const scalar radiusSqr
266 template<
class Po
intType>
282 bool includeOwnProcessor =
false 288 const scalar& radiusSqr
294 const scalar radiusSqr
cachedRandom rndGen(label(0),-1)
labelList processorNearestPosition(const List< point > &pts) const
What is the nearest processor to the given position?
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A list of keyword definitions, which are a keyword followed by any number of values (e...
ClassName("backgroundMeshDecomposition")
Runtime type information.
labelList overlapProcessors(const point ¢re, const scalar radiusSqr) const
bool positionOnThisProcessor(const point &pt) const
Is the given position inside the domain of this decomposition.
This class describes the interaction of (usually) a face and a point. It carries the info of a succes...
const labelList & cellLevel() const
Return the cell level of the underlying mesh.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
static autoPtr< mapDistribute > buildMap(const List< label > &toProc)
Build a mapDistribute for the supplied destination processor data.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
const labelList & pointLevel() const
Return the point level of the underlying mesh.
treeDataPrimitivePatch< bPatch > treeDataBPatch
const fvMesh & mesh() const
Return access to the underlying mesh.
A list of faces which address into the list of points.
Refinement of (split) hexes using polyTopoChange.
labelList processorPosition(const List< PointType > &pts) const
What processor is the given position on?
Encapsulation of data needed to search on PrimitivePatches.
Abstract base class for decomposition.
Container with cells to refine. Refinement given as single direction.
PrimitivePatch< face, List, const pointField > bPatch
Simple random number generator.
pointIndexHit findLine(const point &start, const point &end) const
Find nearest intersection of line between start and end, (exposing.
bool overlapsThisProcessor(const treeBoundBox &box) const
Does the given box overlap the faces of the boundary of this.
const decompositionMethod & decomposer() const
Return the current decomposition method.
bool overlapsOtherProcessors(const point ¢re, const scalar &radiusSqr) const
Non-pointer based hierarchical recursive searching.
Mesh data needed to do the Finite Volume discretisation.
Standard boundBox + extra functionality for use in octree.
const indexedOctree< treeDataBPatch > & tree() const
Return access to the underlying tree.
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...
autoPtr< mapDistribute > distributePoints(List< PointType > &points) const
Distribute supplied the points to the appropriate processor.
autoPtr< mapDistributePolyMesh > distribute(volScalarField &cellWeights)
Redistribute the background mesh based on a supplied weight field,.
Mesh consisting of general polyhedral cells.
CGAL data structures used for 3D Delaunay meshing.
List< List< pointIndexHit > > intersectsProcessors(const List< point > &starts, const List< point > &ends, bool includeOwnProcessor=false) const
Which processors are intersected by the line segment, returns all.
const treeBoundBox & procBounds() const
Return the boundBox of this processor.
~backgroundMeshDecomposition()
Destructor.
pointIndexHit findLineAny(const point &start, const point &end) const
Find any intersection of line between start and end, (exposing.