ENH: consolidate processorTopology handling for volume and area meshes

- relocate templating to factory method 'New'.
  Adds provisions for more general re-use.

- expose processor topology in globalMesh as topology()

- wrap proc->patch lookup as processorTopology::procPatchLookup method
  (failsafe). May consider using Map<label> for its storage in the
  future.
This commit is contained in:
Mark Olesen
2022-04-26 23:10:05 +02:00
parent dea2f23afd
commit 42de624344
29 changed files with 618 additions and 640 deletions

View File

@ -44,7 +44,7 @@ int main(int argc, char *argv[])
argList::noFunctionObjects();
argList::addNote
(
"Create a metis graph file representation for an OpenFOAM mesh"
"Create graph of OpenFOAM mesh connections"
);
#include "setRootCase.H"
@ -59,9 +59,9 @@ int main(int argc, char *argv[])
#include "createTime.H"
#include "createPolyMesh.H"
const globalMeshData& globData = mesh.globalData();
const labelListList& connectivity = globData;
// Adjacency table
const labelListList& connectivity =
mesh.globalData().topology().procNeighbours();
if (Pstream::master())
{

View File

@ -60,6 +60,7 @@ Description
#include "wedgePolyPatch.H"
#include "planeExtrusion.H"
#include "emptyPolyPatch.H"
#include "processorPolyPatch.H"
#include "processorMeshes.H"
#include "hexRef8Data.H"

View File

@ -57,6 +57,7 @@ Description
#include "fvMeshTools.H"
#include "topoSet.H"
#include "processorPolyPatch.H"
#include "processorMeshes.H"
using namespace Foam;