69#ifndef functionObjects_fieldsExpression_H
70#define functionObjects_fieldsExpression_H
79namespace functionObjects
88 public fvMeshFunctionObject
105 const word& typeName,
111 template<
class Type,
class FOType>
115 template<
class Type,
class FOType>
120 template<
class FOType>
124 virtual bool calc() = 0;
165 virtual bool write();
168 virtual bool clear();
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
const word & name() const noexcept
Return the name of this functionObject.
Intermediate class for handling field expression function objects (e.g. add, subtract etc....
virtual ~fieldsExpression()=default
Destructor.
fieldsExpression(const fieldsExpression &)=delete
No copy construct.
wordList fieldNames_
Names of fields to process.
virtual bool read(const dictionary &dict)
Read the fieldsExpression data.
word resultName_
Name of result fields.
void setResultName(const word &typeName, const wordList &defaultArg=wordList::null())
bool calcType(FOType &fo)
Call 'calcFieldTypes' for the given 'Type' and functionObject.
bool calcAllTypes(FOType &fo)
Call 'calcType' for the given functionObject.
virtual bool clear()
Clear the result fields from the objectRegistry.
TypeName("fieldsExpression")
Runtime type information.
bool calcFieldTypes(FOType &fo)
Call 'calcFieldType' for the given functionObject.
virtual bool execute()
Calculate the result fields.
virtual bool write()
Write the result fields.
virtual bool calc()=0
Calculate expression.
void operator=(const fieldsExpression &)=delete
No copy assignment.
Specialization of Foam::functionObject for an Foam::fvMesh, providing a reference to the Foam::fvMesh...
A class for handling words, derived from Foam::string.
List< word > wordList
A List of words.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.