38 #ifndef DimensionedField_H
39 #define DimensionedField_H
54 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
55 class DimensionedField;
57 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
64 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
76 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
80 public PrimitiveField<Type>,
81 public OldTimeField<DimensionedField<Type, GeoMesh, PrimitiveField>>
95 typedef typename GeoMesh::Mesh
Mesh;
101 typedef PrimitiveField<Type>
Base;
104 typedef typename PrimitiveField<Type>::cmptType
cmptType;
112 const GeoMesh& mesh_;
121 bool readIfPresent(
const word& fieldDictEntry =
"value");
131 template<
class Type2,
class GeoMesh2,
template<
class>
class PrimitiveField2>
150 const PrimitiveField<Type>&
159 const tmp<PrimitiveField<Type>>&
169 const bool checkIOFlags
178 const bool checkIOFlags =
true
188 const word& fieldDictEntry=
"value"
197 const word& fieldDictEntry=
"value"
213 template<
template<
class>
class PrimitiveField2>
220 template<
template<
class>
class PrimitiveField2>
234 template<
template<
class>
class PrimitiveField2>
239 const bool checkIOFlags =
true
243 template<
template<
class>
class PrimitiveField2>
249 const bool checkIOFlags =
true
257 const bool checkIOFlags =
true
261 template<
template<
class>
class PrimitiveField2>
269 template<
template<
class>
class PrimitiveField2>
294 const PrimitiveField<Type>&
304 const tmp<PrimitiveField<Type>>&
326 template<
template<
class>
class PrimitiveField2>
350 const word& fieldDictEntry =
"value"
354 inline const GeoMesh&
mesh()
const;
369 inline virtual void transfer(PrimitiveField<Type>&);
381 template<
template<
class>
class PrimitiveField2>
389 template<
template<
class>
class PrimitiveField2>
403 template<
template<
class>
class PrimitiveField2>
410 template<
template<
class>
class PrimitiveField2>
418 template<
template<
class>
class PrimitiveField2>
427 template<
template<
class>
class PrimitiveField2>
462 template<
template<
class>
class PrimitiveField2>
467 template<
template<
class>
class PrimitiveField2>
475 template<
template<
class>
class PrimitiveField2>
480 template<
template<
class>
class PrimitiveField2>
488 template<
template<
class>
class PrimitiveField2>
493 template<
template<
class>
class PrimitiveField2>
500 template<
template<
class>
class PrimitiveField2>
505 template<
template<
class>
class PrimitiveField2>
512 template<
template<
class>
class PrimitiveField2>
517 template<
template<
class>
class PrimitiveField2>
524 template<
template<
class>
class PrimitiveField2>
529 template<
template<
class>
class PrimitiveField2>
539 friend Ostream& operator<< <Type, GeoMesh, PrimitiveField>
545 friend Ostream& operator<< <Type, GeoMesh, PrimitiveField>
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
void max(const dimensioned< Type > &)
Set the field to the maximum of its value and a given value.
static tmp< DimensionedField< Type, GeoMesh, PrimitiveField > > New(const word &name, const GeoMesh &mesh, const dimensionSet &, const PrimitiveField< Type > &)
Return a temporary field constructed from name, mesh,.
void readField(const dictionary &fieldDict, const word &fieldDictEntry="value")
PrimitiveField< Type >::cmptType cmptType
Component type of the elements of the field.
TypeName("DimensionedField")
Runtime type information.
void operator-=(const DimensionedField< Type, GeoMesh, PrimitiveField2 > &)
friend class DimensionedField
Declare friendship with other dimensioned fields.
void maxMin(const dimensioned< Type > &minDt, const dimensioned< Type > &maxDt)
Clip the field to between two values.
void replace(const direction, const DimensionedField< cmptType, GeoMesh, PrimitiveField2 > &)
Replace a component field of the field.
GeoMesh::Mesh Mesh
Base mesh type from which GeoMesh is constructed.
void operator=(const DimensionedField< Type, GeoMesh, PrimitiveField > &)
void operator+=(const DimensionedField< Type, GeoMesh, PrimitiveField2 > &)
const dimensionSet & dimensions() const
Return dimensions.
tmp< DimensionedField< Type, GeoMesh, PrimitiveField > > clone() const
Clone.
void operator/=(const DimensionedField< scalar, GeoMesh, PrimitiveField2 > &)
PrimitiveField< Type > & primitiveFieldRef()
Return a reference to the internal field.
GeoMesh GeoMesh_
Geometric mesh type.
PrimitiveField< Type > Base
Type of the field from which this DimensionedField is derived.
PrimitiveField< Type > FieldType
Type of the field from which this DimensionedField is derived.
void min(const dimensioned< Type > &)
Set the field to the minimum of its value and a given value.
bool writeData(Ostream &, const word &fieldDictEntry) const
USING_OLD_TIME_FIELD(DimensionedField)
Use old-time methods from the base class.
void reset(const DimensionedField< Type, GeoMesh, PrimitiveField2 > &)
Reset the field values to the given field.
dimensioned< Type > average() const
Calculate and return arithmetic average.
dimensioned< Type > weightedAverage(const DimensionedField< scalar, GeoMesh, PrimitiveField2 > &) const
Calculate and return weighted average.
const GeoMesh & mesh() const
Return mesh.
void operator==(const DimensionedField< Type, GeoMesh, PrimitiveField2 > &)
virtual void transfer(PrimitiveField< Type > &)
Transfer the list pointer from the given PrimitiveField.
const PrimitiveField< Type > & primitiveField() const
Return a const-reference to the primitive field.
void operator*=(const DimensionedField< scalar, GeoMesh, PrimitiveField2 > &)
tmp< DimensionedField< cmptType, GeoMesh, Field > > component(const direction) const
Return a component field of the field.
tmp< DimensionedField< Type, GeoMesh, Field > > T() const
Return the field transpose (only defined for second rank tensors)
virtual ~DimensionedField()
Destructor.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
const word & name() const
Return name.
Class to add into field types to provide old-time storage and retrieval.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Dimension set for the base types.
Generic dimensioned Type class.
regIOobject is an abstract class derived from IOobject to handle automatic object registration with t...
A class for managing temporary objects.
A class for handling words, derived from string.
A class representing the concept of 0 used to avoid unnecessary manipulations for objects that are kn...
const dimensionSet invalid