polyTopoChange: Removed restrictive faceZone functionality

Now faceZones are handled directly by the applications and the new
faceZone::topoChange function so that any face can now be in any number of
zones, significantly increasing the flexibility and usefulness of faceZones.

This completes the generalisation of cellZone, faceZone and pointZone to support
multiple zones for each cell, face or point respectively.  Next step will be to
make zones polymorphic and run-time selectable so that they can alter during the
run and adapt to moving meshes for example.
This commit is contained in:
Henry Weller
2024-03-25 14:32:59 +00:00
parent 7c86fc69bb
commit a833a81560
41 changed files with 296 additions and 1379 deletions

View File

@ -187,9 +187,7 @@ Foam::label Foam::meshDualiser::addInternalFace
dualCell1, // nei
masterFacei, // masterFaceID
false, // flipFaceFlux
-1, // patchID
-1, // zoneID
false // zoneFlip
-1 // patchID
);
// pointField dualPoints(meshMod.points());
@ -212,9 +210,7 @@ Foam::label Foam::meshDualiser::addInternalFace
dualCell0, // nei
masterFacei, // masterFaceID
false, // flipFaceFlux
-1, // patchID
-1, // zoneID
false // zoneFlip
-1 // patchID
);
// pointField dualPoints(meshMod.points());
@ -253,9 +249,7 @@ Foam::label Foam::meshDualiser::addBoundaryFace
-1, // nei
masterFacei, // masterFaceID
false, // flipFaceFlux
patchi, // patchID
-1, // zoneID
false // zoneFlip
patchi // patchID
);
// pointField dualPoints(meshMod.points());