52void executeFunctionObjects
73 objects.size() + constObjects.size()
76 const auto nameMatcher = [&](
const word&
name) ->
bool
84 #define ReadFields(FieldType) \
85 readFields<FieldType>(mesh, objects, nameMatcher, storedObjects);
111 #undef ReadPointFields
112 #define ReadPointFields(FieldType) \
113 readFields<FieldType>(pMesh, objects, nameMatcher, storedObjects);
124 #undef ReadUniformFields
125 #define ReadUniformFields(FieldType) \
126 readUniformFields<FieldType>(constObjects, nameMatcher, storedObjects);
134 Info<<
nl <<
"Executing functionObjects" <<
endl;
145 while (!storedObjects.empty())
147 storedObjects.back()->checkOut();
148 storedObjects.pop_back();
153int main(
int argc,
char *argv[])
157 "Execute the set of functionObjects specified in the selected"
158 " dictionary or on the command-line for the"
159 " selected set of times on the selected set of fields"
172 if (
args.found(
"list"))
184 if (
args.found(
"fields"))
191 if (
args.found(
"field"))
216 runTime.setTime(timeDirs[timei], timei);
220 switch (
mesh.readUpdate())
224 functionsPtr->movePoints(
mesh);
231 functionsPtr->updateMesh(mpm);
242 <<
"Unhandled enumeration"
247 fields.resetFieldFilters(fieldFilters);
251 const bool oldThrowingIOErr =
FatalIOError.throwing(
true);
255 executeFunctionObjects
262 timei == timeDirs.
size()-1
Field reading functions for post-processing utilities.
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects.
DimensionedField< scalar, volMesh > Internal
A HashTable with keys but without contents that is similar to std::unordered_set.
List of IOobjects with searching and retrieving facilities. Implemented as a HashTable,...
static FOAM_NO_DANGLING_REFERENCE const pointMesh & New(const polyMesh &mesh, Args &&... args)
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
bool contains(const T &val) const
True if the value is contained in the list.
void size(const label n)
Older name for setAddressableSize.
Extract command arguments and options from the supplied argc and argv parameters.
static void addNote(const string ¬e)
Add extra notes for the usage information.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
List of function objects with start(), execute() and end() functions that is called for each object.
static autoPtr< functionObjectList > New(const argList &args, const Time &runTime, dictionary &controlDict, HashSet< wordRe > &requiredFields)
Construct and return a functionObjectList for an application.
static void list()
Print a list of functionObject configuration files in the directories located using Foam::findEtcDirs...
bool execute(bool writeProperties=true)
Called at each ++ or += of the time-loop.
bool end()
Called when Time::run() determines that the time-loop exits.
static bool postProcess
Global post-processing mode switch.
Helper class to manage file-based field selections.
Mesh data needed to do the Finite Volume discretisation.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
Mesh representing a set of points created from polyMesh.
static bool print(Ostream &os)
Print profiling information to specified output.
static void addOptions(const bool constant=true, const bool withZero=false)
Add timeSelector options to argList::validOptions.
static instantList select0(Time &runTime, const argList &args)
Return the set of times selected based on the argList options and also set the runTime to the first i...
A wordRe is a Foam::word, but can contain a regular expression for matching words or strings.
A class for handling words, derived from Foam::string.
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.
UniformDimensionedField< sphericalTensor > uniformDimensionedSphericalTensorField
GeometricField< vector, fvsPatchField, surfaceMesh > surfaceVectorField
wordList ReadFields(const typename GeoMesh::Mesh &mesh, const IOobjectList &objects, PtrList< GeometricField< Type, PatchField, GeoMesh > > &fields, const bool syncPar=true, const bool readOldTime=false)
Read Geometric fields of templated type.
List< word > wordList
List of word.
GeometricField< vector, fvPatchField, volMesh > volVectorField
GeometricField< tensor, pointPatchField, pointMesh > pointTensorField
GeometricField< scalar, pointPatchField, pointMesh > pointScalarField
UniformDimensionedField< symmTensor > uniformDimensionedSymmTensorField
GeometricField< sphericalTensor, pointPatchField, pointMesh > pointSphericalTensorField
GeometricField< scalar, fvPatchField, volMesh > volScalarField
UniformDimensionedField< scalar > uniformDimensionedScalarField
messageStream Info
Information stream (stdout output on master, null elsewhere).
GeometricField< vector, pointPatchField, pointMesh > pointVectorField
List< instant > instantList
List of instants.
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
UniformDimensionedField< tensor > uniformDimensionedTensorField
GeometricField< symmTensor, pointPatchField, pointMesh > pointSymmTensorField
Ostream & endl(Ostream &os)
Add newline and flush stream.
GeometricField< tensor, fvPatchField, volMesh > volTensorField
GeometricField< tensor, fvsPatchField, surfaceMesh > surfaceTensorField
UniformDimensionedField< vector > uniformDimensionedVectorField
GeometricField< sphericalTensor, fvPatchField, volMesh > volSphericalTensorField
GeometricField< sphericalTensor, fvsPatchField, surfaceMesh > surfaceSphericalTensorField
errorManip< error > abort(error &err)
IOerror FatalIOError
Error stream (stdout output on all processes), with additional 'FOAM FATAL IO ERROR' header text and ...
GeometricField< symmTensor, fvPatchField, volMesh > volSymmTensorField
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
GeometricField< symmTensor, fvsPatchField, surfaceMesh > surfaceSymmTensorField
messageStream Warning
Warning stream (stdout output on master, null elsewhere), with additional 'FOAM Warning' header text.
constexpr char nl
The newline '\n' character (0x0a).
Foam::argList args(argc, argv)
multivariateSurfaceInterpolationScheme< scalar >::fieldTable fields
#define forAll(list, i)
Loop across all elements in list.