From 133149a1dd221a309084a99bf4b69a517fb901a4 Mon Sep 17 00:00:00 2001 From: mattijs Date: Thu, 14 Sep 2023 16:12:53 +0100 Subject: [PATCH] ENH: snappyHexMesh: mutliple inside points. Fixes #2981 --- etc/caseDicts/annotated/snappyHexMeshDict | 2 ++ .../meshRefinement/meshRefinementBaffles.C | 23 ++++++++---- .../refinementSurfaces/surfaceZonesInfo.C | 36 +++++++++++++++---- .../refinementSurfaces/surfaceZonesInfo.H | 20 +++++++---- 4 files changed, 60 insertions(+), 21 deletions(-) diff --git a/etc/caseDicts/annotated/snappyHexMeshDict b/etc/caseDicts/annotated/snappyHexMeshDict index c49c1f2941..35a7dd184f 100644 --- a/etc/caseDicts/annotated/snappyHexMeshDict +++ b/etc/caseDicts/annotated/snappyHexMeshDict @@ -225,6 +225,8 @@ castellatedMeshControls //cellZone sphere; //cellZoneInside inside; // outside/insidePoint //insidePoint (1 1 1); // if (cellZoneInside == insidePoint) + // or alternative multiple insidePoints: + //insidePoints ((1 1 1)); // if (cellZoneInside == insidePoint) //- Optional specification of what to do with faceZone faces: // internal : keep them as internal faces (default) diff --git a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBaffles.C b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBaffles.C index 2c99fecf15..57822b772c 100644 --- a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBaffles.C +++ b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBaffles.C @@ -3344,24 +3344,33 @@ void Foam::meshRefinement::zonify << nl << endl; // Collect per surface the -insidePoint -cellZone - pointField insidePoints(locationSurfaces.size()); - labelList insidePointCellZoneIDs(locationSurfaces.size(), -1); + // Usually only a single inside point per surface so no clever + // counting - just use DynamicField + DynamicField insidePoints(locationSurfaces.size()); + DynamicList