From cc8a232756d89c4fba7f1122818f2bffbd9af0c6 Mon Sep 17 00:00:00 2001 From: mattijs Date: Mon, 3 Jun 2013 13:34:21 +0100 Subject: [PATCH] ENH: subsetMesh: added -resultTime option --- .../mesh/manipulation/subsetMesh/subsetMesh.C | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/applications/utilities/mesh/manipulation/subsetMesh/subsetMesh.C b/applications/utilities/mesh/manipulation/subsetMesh/subsetMesh.C index 74c5fe0bf6..c7ad881527 100644 --- a/applications/utilities/mesh/manipulation/subsetMesh/subsetMesh.C +++ b/applications/utilities/mesh/manipulation/subsetMesh/subsetMesh.C @@ -168,6 +168,12 @@ int main(int argc, char *argv[]) "add exposed internal faces to specified patch instead of to " "'oldInternalFaces'" ); + argList::addOption + ( + "resultTime", + "time", + "specify a time for the resulting mesh" + ); #include "setRootCase.H" #include "createTime.H" runTime.functionObjects().off(); @@ -178,10 +184,12 @@ int main(int argc, char *argv[]) #include "createNamedMesh.H" - const word oldInstance = mesh.pointsInstance(); - const word setName = args[1]; - const bool overwrite = args.optionFound("overwrite"); + + word resultInstance = mesh.pointsInstance(); + const bool specifiedInstance = + args.optionFound("overwrite") + || args.optionReadIfPresent("resultTime", resultInstance); Info<< "Reading cell set from " << setName << endl << endl; @@ -347,13 +355,14 @@ int main(int argc, char *argv[]) // Write mesh and fields to new time // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - if (!overwrite) + if (!specifiedInstance) { runTime++; } else { - subsetter.subMesh().setInstance(oldInstance); + runTime.setTime(instant(resultInstance), 0); + subsetter.subMesh().setInstance(runTime.timeName()); } Info<< "Writing subsetted mesh and fields to time " << runTime.timeName()