ENH: additional constructor and methods for regionProperties

- can now construct with READ_IF_PRESENT and use count() to determine
  if it was loaded. names() and sortedNames() for a collected overview.
This commit is contained in:
Mark Olesen
2018-10-01 16:01:02 +02:00
parent e6a60f2de6
commit 501326b27a
6 changed files with 142 additions and 82 deletions

View File

@ -121,41 +121,27 @@ int main(int argc, char *argv[])
fileName decompDictFile;
args.readIfPresent("decomposeParDict", decompDictFile);
// Get all region names
wordList regionNames;
wordList regionDirs;
if (allRegions)
{
Info<< "Decomposing all regions in regionProperties" << nl << endl;
regionProperties rp(runTime);
forAllConstIters(rp, iter)
{
const wordList& regions = iter();
forAll(regions, i)
{
if (!regionNames.found(regions[i]))
{
regionNames.append(regions[i]);
}
}
}
regionDirs = regionNames;
regionNames = regionProperties(runTime).names();
Info<< "Decomposing all regions in regionProperties" << nl
<< " " << flatOutput(regionNames) << nl << endl;
}
else
{
regionNames.resize(1, fvMesh::defaultRegion);
regionDirs.resize(1, word::null);
if (args.readIfPresent("region", regionNames.first()))
{
regionDirs.first() = regionNames.first();
}
regionNames.resize(1);
regionNames.first() =
args.lookupOrDefault<word>("region", fvMesh::defaultRegion);
}
forAll(regionNames, regioni)
{
const word& regionName = regionNames[regioni];
const word& regionDir = regionDirs[regioni];
const word& regionDir =
(regionName == fvMesh::defaultRegion ? word::null : regionName);
Info<< "\n\nDecomposing mesh " << regionName << nl << endl;
Info<< "Create mesh..." << flush;