Conformal-Voronoi 2D automatic mesher with grid or read initial points and point position relaxation with optional "squarification". More...
Public Member Functions | |
ClassName ("CV2D") | |
CV2D (const Time &runTime, const dictionary &controlDict) | |
~CV2D () | |
const cv2DControls & | meshControls () const |
const point2D & | toPoint2D (const Foam::point &) const |
const point2DField | toPoint2D (const pointField &) const |
Foam::point | toPoint3D (const point2D &) const |
point2DFromPoint | toPoint2D (const Point &) const |
PointFromPoint2D | toPoint (const point2D &) const |
Foam::point | toPoint3D (const Point &) const |
void | insertPoints (const point2DField &points, const scalar nearness) |
void | insertPoints (const fileName &pointFileName) |
void | insertGrid () |
void | insertSurfacePointPairs () |
void | boundaryConform () |
void | removeSurfacePointPairs () |
void | movePoint (const Vertex_handle &vh, const Point &P) |
void | newPoints () |
void | extractPatches (wordList &patchNames, labelList &patchSizes, EdgeMap< label > &mapEdgesRegion, EdgeMap< label > &indirectPatchEdge) const |
void | writePoints (const fileName &fName, bool internalOnly) const |
void | writeTriangles (const fileName &fName, bool internalOnly) const |
void | writeFaces (const fileName &fName, bool internalOnly) const |
void | calcDual (point2DField &dualPoints, faceList &dualFaces, wordList &patchNames, labelList &patchSizes, EdgeMap< label > &mapEdgesRegion, EdgeMap< label > &indirectPatchEdge) const |
void | writePatch (const fileName &fName) const |
void | write () const |
Public Attributes | |
const typedef point2D & | point2DFromPoint |
const typedef Point & | PointFromPoint2D |
Conformal-Voronoi 2D automatic mesher with grid or read initial points and point position relaxation with optional "squarification".
There are a substantial number of options to this mesher read from CV2DMesherDict file e.g.:
Min cell size used in tolerances when inserting points for boundary conforming. Also used to as the grid spacing using in insertGrid. minCellSize 0.05;
Feature angle used to insert feature points 0 = all features, 180 = no features featureAngle 45;
Maximum quadrant angle allowed at a concave corner before additional "mitering" lines are added maxQuadAngle 110;
Should the mesh be square-dominated or of unbiased hexagons squares yes;
Near-wall region where cells are aligned with the wall specified as a number of cell layers nearWallAlignedDist 3;
Chose if the cell orientation should relax during the iterations or remain fixed to the x-y directions relaxOrientation no;
Insert near-boundary point mirror or point-pairs insertSurfaceNearestPointPairs yes;
Mirror near-boundary points rather than insert point-pairs mirrorPoints no;
Insert point-pairs vor dual-cell vertices very near the surface insertSurfaceNearPointPairs yes;
Choose if to randomise the initial grid created by insertGrid. randomiseInitialGrid yes;
Perturbation fraction, 1 = cell-size. randomPurturbation 0.1;
Number of relaxation iterations. nIterations 5;
Relaxation factor at the start of the iteration sequence. 0.5 is a sensible maximum and < 0.2 converges better. relaxationFactorStart 0.8;
Relaxation factor at the end of the iteration sequence. Should be <= relaxationFactorStart relaxationFactorEnd 0;
writeInitialTriangulation no; writeFeatureTriangulation no; writeNearestTriangulation no; writeInsertedPointPairs no; writeFinalTriangulation yes;
Maximum number of iterations used in boundaryConform. maxBoundaryConformingIter 5;
minEdgeLenCoeff 0.5; maxNotchLenCoeff 0.3; minNearPointDistCoeff 0.25; ppDistCoeff 0.05;
CV2D | ( | const Time & | runTime, |
const dictionary & | controlDict | ||
) |
~CV2D | ( | ) |
ClassName | ( | "CV2D" | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void insertPoints | ( | const point2DField & | points, |
const scalar | nearness | ||
) |
void insertPoints | ( | const fileName & | pointFileName | ) |
void insertGrid | ( | ) |
void insertSurfacePointPairs | ( | ) |
void boundaryConform | ( | ) |
void removeSurfacePointPairs | ( | ) |
|
inline |
void newPoints | ( | ) |
void extractPatches | ( | wordList & | patchNames, |
labelList & | patchSizes, | ||
EdgeMap< label > & | mapEdgesRegion, | ||
EdgeMap< label > & | indirectPatchEdge | ||
) | const |
void calcDual | ( | point2DField & | dualPoints, |
faceList & | dualFaces, | ||
wordList & | patchNames, | ||
labelList & | patchSizes, | ||
EdgeMap< label > & | mapEdgesRegion, | ||
EdgeMap< label > & | indirectPatchEdge | ||
) | const |
void writePatch | ( | const fileName & | fName | ) | const |
void write | ( | ) | const |
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.