Zones: Now derived from PtrListDictionary to provide faster lookup

Now the HashTable underlying PtrListDictionary is used for zone lookup by name
which is a lot faster than the linear search method used previously if there are
a large number of zones.
This commit is contained in:
Henry Weller
2024-03-28 20:25:29 +00:00
parent 4ad52ea108
commit 3123551bfa
36 changed files with 340 additions and 302 deletions

View File

@ -272,11 +272,11 @@ Foam::autoPtr<Foam::fvMesh> Foam::loadOrCreateMesh
// Determine zones
// ~~~~~~~~~~~~~~~
wordList pointZoneNames(mesh.pointZones().names());
wordList pointZoneNames(mesh.pointZones().toc());
Pstream::scatter(pointZoneNames);
wordList faceZoneNames(mesh.faceZones().names());
wordList faceZoneNames(mesh.faceZones().toc());
Pstream::scatter(faceZoneNames);
wordList cellZoneNames(mesh.cellZones().names());
wordList cellZoneNames(mesh.cellZones().toc());
Pstream::scatter(cellZoneNames);
if (!haveMesh)