37 #ifndef functionObjects_fieldsExpression_H 38 #define functionObjects_fieldsExpression_H 47 namespace functionObjects
81 template<
class>
class GeoField,
82 template<
class ...>
class Op,
85 class Enable = Op<TypeA, TypeB>
89 const GeoField<TypeA>& a,
90 const GeoField<TypeB>&
b 96 template<
class>
class GeoField,
97 template<
class ...>
class Op,
105 template<
class>
class GeoField,
106 template<
class ...>
class Op,
115 template<
class>
class GeoField,
116 template<
class ...>
class Op,
124 template<
class>
class GeoField,
125 template<
class ...>
class Op 131 template<
template<
class>
class GeoField,
template<
class ...>
class Op>
135 template<
template<
class ...>
class Op>
139 virtual bool calc() = 0;
177 virtual bool write();
180 virtual bool clear();
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
virtual bool write()
Write the result fields.
const word & name() const
Return the name of this functionObject.
A list of keyword definitions, which are a keyword followed by any number of values (e...
void setResultName(const word &functionName, const wordList &defaultFieldNames=wordList::null())
Set the result name.
virtual bool read(const dictionary &)
Read the fieldsExpression data.
const dimensionedScalar b
Wien displacement law constant: default SI units: [m K].
static const List< word > & null()
Return a null List.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
wordList fieldNames_
Names of fields to process.
static List< word > fieldNames
bool foldA(const label i)
Fold the fields expression up one place.
fieldsExpression(const word &name, const Time &runTime, const dictionary &dict, const wordList &fieldNames=wordList::null(), const word &resultName=word::null)
Construct from Time and dictionary.
A functionName is a word starting with '#'.
virtual bool execute()
Calculate the result fields.
A class for handling words, derived from string.
virtual bool clear()
Clear the result fields from the objectRegistry.
static const word null
An empty word.
bool calcGeoFieldOp()
Calculate and store the fields expression for the given geometric.
bool foldAB(const label i)
Fold the fields expression up one place.
virtual ~fieldsExpression()
Destructor.
bool fold(const label i)
Fold the fields expression up one place.
word resultName_
Name of result fields.
bool calcOp()
Calculate and store the fields expression for the given operation.
virtual bool calc()=0
Perform calculation on the list of fields and return success.
void operator=(const fieldsExpression &)=delete
Disallow default bitwise assignment.
Specialisation of Foam::functionObject for an Foam::fvMesh, providing a reference to the Foam::fvMesh...
bool opAndStore(const GeoField< TypeA > &a, const GeoField< TypeB > &b)
Operate on the fields and store the result. Supported overload.
TypeName("fieldsExpression")
Runtime type information.