From 6e9801e7e809af589bfb98bdb7444a0fde2da30a Mon Sep 17 00:00:00 2001 From: Henry Weller Date: Sun, 1 Sep 2019 15:30:09 +0100 Subject: [PATCH] functionObjectList: Added support for arguments to added to the object list If the functionObject requires an object list rather than a field list the non-named arguments are now inserted into the object list, for example functions { #includeFunc writeObjects(kEpsilon:G) } which is equivalent to functions { #includeFunc writeObjects(objects = (kEpsilon:G)) } --- .../functionObjectList/functionObjectList.C | 26 ++++++++++++++++--- .../simpleFoam/pitzDaily/system/controlDict | 2 +- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.C b/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.C index b45a25fc08..1895b03e47 100644 --- a/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.C +++ b/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.C @@ -349,17 +349,37 @@ bool Foam::functionObjectList::readFunctionObject // fields to requiredFields if (args.size() == 1) { - funcDict.set("field", args[0]); - funcDict.set("fields", args); + if (funcDict.found("objects")) + { + funcDict.set("objects", args); + } + else + { + funcDict.set("field", args[0]); + funcDict.set("fields", args); + } } else if (args.size() > 1) { - funcDict.set("fields", args); + if (funcDict.found("objects")) + { + funcDict.set("objects", args); + } + else + { + funcDict.set("fields", args); + } } // Insert named arguments forAll(namedArgs, i) { + if (!funcDict.found(namedArgs[i].first())) + { + IOWarningInFunction(funcDict) + << "Keyword " << namedArgs[i].first() << " not found" << endl; + } + IStringStream entryStream ( namedArgs[i].first() + ' ' + namedArgs[i].second() + ';' diff --git a/tutorials/incompressible/simpleFoam/pitzDaily/system/controlDict b/tutorials/incompressible/simpleFoam/pitzDaily/system/controlDict index 4adb8dca8e..24168c4410 100644 --- a/tutorials/incompressible/simpleFoam/pitzDaily/system/controlDict +++ b/tutorials/incompressible/simpleFoam/pitzDaily/system/controlDict @@ -57,7 +57,7 @@ cacheTemporaryObjects functions { - #includeFunc writeObjects(objects = (kEpsilon:G)) + #includeFunc writeObjects(kEpsilon:G) } // ************************************************************************* //