30 template<
class Type,
class GeoMesh>
44 name +
'_' + funcName,
60 dict.subDict(funcName),
71 if (
mesh.time().completeCase())
84 template<
class Type,
class GeoMesh>
92 const Type& defaultValue
99 name +
'_' + funcName,
113 dict.isDict(funcName)
116 dict.subDict(funcName),
125 if (funcPtr_.valid())
127 if (
mesh.time().completeCase())
129 funcPtr_->evaluate();
132 else if (
dict.found(funcName))
145 template<
class Type,
class GeoMesh>
158 funcName_(udff.funcName_),
161 udff.funcPtr_.
valid()
162 ? udff.funcPtr_->
clone(*this)
171 template<
class Type,
class GeoMesh>
178 funcName_(udff.funcName_),
181 udff.funcPtr_.
valid()
182 ? udff.funcPtr_->
clone(*this)
193 template<
class Type,
class GeoMesh>
205 template<
class Type,
class GeoMesh>
210 if (funcPtr_.valid())
217 template<
class Type,
class GeoMesh>
220 if (funcPtr_.valid())
222 return funcPtr_->update();
231 template<
class Type,
class GeoMesh>
234 if (funcPtr_.valid())
241 template<
class Type,
class GeoMesh>
248 if (udff.funcPtr_.valid())
250 writeEntry(os, udff.funcName_, *udff.funcPtr_);
Base class for run-time selectable internal and patch field initialisation evaluation and update with...
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const dimensionSet & dimensions() const
Return dimensions.
PrimitiveField< Type > & primitiveFieldRef()
Return a reference to the internal field.
const GeoMesh & mesh() const
Return mesh.
const PrimitiveField< Type > & primitiveField() const
Return a const-reference to the primitive field.
Pre-declare SubField and related Field type.
DimensionedField with a corresponding run-time selected function to evaluate and update the field.
virtual bool write(const bool write=true) const
Write using setting from DB.
void map(const bool evaluate)
Map and optionally evaluate.
FunctionalDimensionedField(const word &name, const word &funcName, const GeoMesh &, const dimensionSet &dimensions, const dictionary &)
Construct from name, mesh, dimensions, field and dictionary.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Dimension set for the base types.
A class for handling words, derived from string.
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
bool valid(const PtrList< ModelType > &l)
void evaluate(GeometricField< Type, GeoMesh > &result, const Function1< Type > &func, const GeometricField< Type, GeoMesh > &x)
word name(const LagrangianState state)
Return a string representation of a Lagrangian state enumeration.
tmp< DimensionedField< TypeR, GeoMesh, Field > > New(const tmp< DimensionedField< TypeR, GeoMesh, Field >> &tdf1, const word &name, const dimensionSet &dimensions)
void writeEntry(Ostream &os, const word &key, const DimensionedFieldFunction< DimensionedFieldType > &f)
points setSize(newPointi)