diff --git a/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C b/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C index 559bb4a715..8d0867f0ed 100644 --- a/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C +++ b/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C @@ -56,6 +56,14 @@ int main(int argc, char *argv[]) "specify a list of fields to be reconstructed. Eg, '(U T p)' - " "regular expressions not currently supported" ); + argList::addOption + ( + "lagrangianFields", + "list", + "specify a list of lagrangian fields to be reconstructed. Eg, '(U d)' -" + "regular expressions not currently supported, " + "positions always included." + ); argList::addBoolOption ( "noLagrangian", @@ -73,6 +81,20 @@ int main(int argc, char *argv[]) const bool noLagrangian = args.optionFound("noLagrangian"); + HashSet selectedLagrangianFields; + if (args.optionFound("lagrangianFields")) + { + if (noLagrangian) + { + FatalErrorIn(args.executable()) + << "Cannot specify noLagrangian and lagrangianFields " + << "options together." + << exit(FatalError); + } + + args.optionLookup("lagrangianFields")() >> selectedLagrangianFields; + } + // determine the processor count directly label nProcs = 0; while (isDir(args.path()/(word("processor") + name(nProcs)))) @@ -403,84 +425,96 @@ int main(int argc, char *argv[]) cloudName, mesh, procMeshes.meshes(), - sprayObjs + sprayObjs, + selectedLagrangianFields ); reconstructLagrangianFieldFields