From 11752041d3a4591b9eac0b3fbf4ff2fde3aae292 Mon Sep 17 00:00:00 2001 From: andy Date: Tue, 11 Aug 2009 16:43:59 +0100 Subject: [PATCH] Added option to change dictionary in /constant - could do with a 'nice' way to treat parent folders - constant, system, time dirs etc --- .../changeDictionary/changeDictionary.C | 25 +++++++++++++++---- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/applications/utilities/preProcessing/changeDictionary/changeDictionary.C b/applications/utilities/preProcessing/changeDictionary/changeDictionary.C index 6ff9bbce18..917ddb0f1b 100644 --- a/applications/utilities/preProcessing/changeDictionary/changeDictionary.C +++ b/applications/utilities/preProcessing/changeDictionary/changeDictionary.C @@ -72,10 +72,12 @@ namespace Foam int main(int argc, char *argv[]) { -# include "addRegionOption.H" -# include "setRootCase.H" -# include "createTime.H" -# include "createNamedMesh.H" + argList::validOptions.insert("constant", ""); + #include "addRegionOption.H" + + #include "setRootCase.H" + #include "createTime.H" + #include "createNamedMesh.H" fileName regionPrefix = ""; if (regionName != fvMesh::defaultRegion) @@ -83,6 +85,8 @@ int main(int argc, char *argv[]) regionPrefix = regionName; } + bool constant = args.options().found("constant"); + // Get the replacement rules from a dictionary IOdictionary dict ( @@ -196,12 +200,23 @@ int main(int argc, char *argv[]) Info<< "Loading dictionary " << fieldName << endl; const word oldTypeName = IOdictionary::typeName; const_cast(IOdictionary::typeName) = word::null; + + word instance = ""; + if (constant) + { + instance = runTime.constant(); + } + else + { + instance = runTime.timeName(); + } + IOdictionary fieldDict ( IOobject ( fieldName, - runTime.timeName(), + instance, mesh, IOobject::MUST_READ, IOobject::NO_WRITE,