polyTopoChange: Removed unused cell-from-face/point inflation support

The concept of cell inflation from faces or points proved unworkable in general
and has been replaced by the more flexible and robust cell-splitting combined
with conservative interpolative mapping and mesh morphing as appropriate.
This commit is contained in:
Henry Weller
2024-03-06 20:30:53 +00:00
parent dbff8d0f1c
commit 92da31039e
17 changed files with 20 additions and 390 deletions

View File

@ -40,10 +40,7 @@ Description
#include "IFstream.H"
#include "polyTopoChange.H"
#include "polyTopoChangeMap.H"
#include "volMesh.H"
#include "surfaceMesh.H"
#include "volFields.H"
#include "surfaceFields.H"
#include "pointFields.H"
#include "ReadFields.H"
@ -96,7 +93,8 @@ int main(int argc, char *argv[])
if (fields) Info<< "Reading geometric fields" << nl << endl;
#include "readVolFields.H"
#include "readSurfaceFields.H"
// Cannot reliable map surfaceFields to new internal faces
// #include "readSurfaceFields.H"
#include "readPointFields.H"
Info<< endl;

View File

@ -1252,9 +1252,6 @@ int main(int argc, char *argv[])
{
meshMod.addCell
(
-1, // masterPointID
-1, // masterEdgeID
-1, // masterFaceID
celli, // masterCellID
-1 // zoneID
);

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2024 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -209,9 +209,6 @@ void Foam::extrude2DMesh::setRefinement
{
meshMod.addCell
(
-1, // masterPointID,
-1, // masterEdgeID,
-1, // masterFaceID,
celli + offset, // masterCellID,
mesh_.cellZones().whichZone(celli) // zoneID
);

View File

@ -249,9 +249,6 @@ void Foam::mergePolyMesh::addMesh(const polyMesh& m)
renumberCells[celli] = meshMod_.addCell
(
-1, // Master point
-1, // Master edge
-1, // Master face
-1, // Master cell
zoneID // Zone for cell
);

View File

@ -110,9 +110,6 @@ int main(int argc, char *argv[])
List<objectMap>(0), // facesFromEdges,
List<objectMap>(0), // facesFromFaces,
mesh.cellMap(), // cellMap,
List<objectMap>(0), // cellsFromPoints,
List<objectMap>(0), // cellsFromEdges,
List<objectMap>(0), // cellsFromFaces,
List<objectMap>(0), // cellsFromCells,
labelList(0), // reversePointMap,
labelList(0), // reverseFaceMap,

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2024 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -969,9 +969,6 @@ void Foam::meshDualiser::setRefinement
pointToDualCells_[pointi].setSize(1);
pointToDualCells_[pointi][0] = meshMod.addCell
(
pointi, // masterPointID,
-1, // masterEdgeID,
-1, // masterFaceID,
-1, // masterCellID,
-1 // zoneID
);
@ -1013,9 +1010,6 @@ void Foam::meshDualiser::setRefinement
{
pointToDualCells_[pointi][pCelli] = meshMod.addCell
(
pointi, // masterPointID
-1, // masterEdgeID
-1, // masterFaceID
-1, // masterCellID
mesh_.cellZones().whichZone(pCells[pCelli]) // zoneID
);
@ -1037,9 +1031,6 @@ void Foam::meshDualiser::setRefinement
pointToDualCells_[pointi].setSize(1);
pointToDualCells_[pointi][0] = meshMod.addCell
(
pointi, // masterPointID,
-1, // masterEdgeID,
-1, // masterFaceID,
-1, // masterCellID,
-1 // zoneID
);

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2024 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -68,10 +68,6 @@ Usage
#include "meshTools.H"
#include "OFstream.H"
#include "meshDualiser.H"
#include "ReadFields.H"
#include "volFields.H"
#include "surfaceFields.H"
#include "pointFields.H"
using namespace Foam;
@ -376,11 +372,6 @@ int main(int argc, char *argv[])
"disable the default behaviour of preserving faceZones by having"
" multiple faces in between cells"
);
argList::addBoolOption
(
"noFields",
"do not update fields"
);
#include "setRootCase.H"
#include "createTime.H"
@ -429,7 +420,6 @@ int main(int argc, char *argv[])
Info<< "Generating multiple cells for points on concave feature edges."
<< nl << endl;
}
const bool fields = !args.optionFound("noFields");
// Face(centre)s that need inclusion in the dual mesh
@ -477,19 +467,6 @@ int main(int argc, char *argv[])
);
// Read objects in time directory
IOobjectList objects(mesh, runTime.name());
if (fields) Info<< "Reading geometric fields" << nl << endl;
#include "readVolFields.H"
#include "readSurfaceFields.H"
#include "readPointFields.H"
Info<< endl;
// Topo change container
polyTopoChange meshMod(mesh.boundaryMesh().size());
@ -511,7 +488,7 @@ int main(int argc, char *argv[])
// Create mesh, return map from old to new mesh.
autoPtr<polyTopoChangeMap> map = meshMod.changeMesh(mesh, false);
// Update fields
// Update mesh objects
mesh.topoChange(map);
// Optionally inflate mesh

View File

@ -517,9 +517,6 @@ autoPtr<polyTopoChangeMap> reorderMesh
List<objectMap>(0), // facesFromEdges,
List<objectMap>(0), // facesFromFaces,
cellOrder, // cellMap,
List<objectMap>(0), // cellsFromPoints,
List<objectMap>(0), // cellsFromEdges,
List<objectMap>(0), // cellsFromFaces,
List<objectMap>(0), // cellsFromCells,
identityMap(mesh.nPoints()), // reversePointMap,
reverseFaceOrder, // reverseFaceMap,