Go to the documentation of this file.
37 #ifndef snappyRefineDriver_H
38 #define snappyRefineDriver_H
55 class refinementParameters;
58 class decompositionMethod;
59 class fvMeshDistribute;
104 void estimateCellSizeAndCount
110 label featureEdgeRefine
114 const label minRefine
118 label smallFeatureRefine
125 label surfaceOnlyRefine
139 label surfaceProximityBlock
146 label bigGapOnlyRefine
149 const bool spreadGapSize,
154 label danglingCellRefine
162 label refinementInterfaceRefine
169 void removeInsideCells
172 const label nBufferLayers
185 label directionalShellRefine
192 void mergeAndSmoothRatio
195 const label nSmoothExpansion,
204 void baffleAndSplitMesh
208 const bool handleSnapProblems,
219 void splitAndMergeBaffles
223 const bool handleSnapProblems,
259 const bool dryRun =
false
271 const bool prepareForSnapping,
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects.
FaceMergeType
Enumeration for what to do with co-planar patch faces on a single.
Simple container to keep together snap specific information.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
ClassName("snappyRefineDriver")
Runtime type information.
Simple container to keep together refinement specific information.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
void doRefine(const dictionary &refineDict, const refinementParameters &refineParams, const snapParameters &snapParams, const bool prepareForSnapping, const meshRefinement::FaceMergeType mergeType, const dictionary &motionDict)
Do all the refinement.
Abstract base class for domain decomposition.
A HashTable similar to std::unordered_map.
Helper class which maintains intersections of (changing) mesh with (static) surfaces.
static void addFaceZones(meshRefinement &meshRefiner, const refinementParameters &refineParams, const HashTable< Pair< word >> &faceZoneToPatches)
Helper: add faceZones and patches.
Sends/receives parts of mesh+fvfields to neighbouring processors. Used in load balancing.