38 #ifndef GeometricField_H
39 #define GeometricField_H
54 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
61 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
73 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
77 public OldTimeField<GeometricField<Type, GeoMesh, PrimitiveField>>
99 typedef typename GeoMesh::template PatchField<Type>
Patch;
105 typedef typename GeoMesh::template FieldSource<Type>
Source;
144 template<
class Type2,
class GeoMesh2,
template<
class>
class PrimitiveField2>
218 const PrimitiveField<Type>&,
233 template<
template<
class>
class PrimitiveField2>
249 template<
template<
class>
class PrimitiveField2>
264 template<
template<
class>
class PrimitiveField2>
279 template<
template<
class>
class PrimitiveField2>
297 template<
template<
class>
class PrimitiveField2>
314 template<
template<
class>
class PrimitiveField2>
336 template<
template<
class>
class PrimitiveField2>
413 template<
template<
class>
class PrimitiveField2>
431 template<
template<
class>
class PrimitiveField2>
449 template<
template<
class>
class PrimitiveField2>
471 template<
template<
class>
class PrimitiveField2>
557 template<
template<
class>
class PrimitiveField2>
566 template<
template<
class>
class PrimitiveField2>
599 template<
template<
class>
class PrimitiveField2>
609 template<
template<
class>
class PrimitiveField2>
626 template<
template<
class>
class PrimitiveField2>
634 template<
template<
class>
class PrimitiveField2>
669 template<
template<
class>
class PrimitiveField2>
678 template<
template<
class>
class PrimitiveField2>
686 template<
template<
class>
class PrimitiveField2>
695 template<
template<
class>
class PrimitiveField2>
703 template<
template<
class>
class PrimitiveField2>
708 template<
template<
class>
class PrimitiveField2>
715 template<
template<
class>
class PrimitiveField2>
720 template<
template<
class>
class PrimitiveField2>
727 template<
template<
class>
class PrimitiveField2>
732 template<
template<
class>
class PrimitiveField2>
739 template<
template<
class>
class PrimitiveField2>
744 template<
template<
class>
class PrimitiveField2>
754 friend Ostream& operator<< <Type, GeoMesh, PrimitiveField>
760 friend Ostream& operator<< <Type, GeoMesh, PrimitiveField>
768 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
GeoMesh::Mesh Mesh
Type of mesh on which this DimensionedField is instantiated.
PrimitiveField< Type > FieldType
Type of the field from which this DimensionedField is derived.
pTraits< Type >::cmptType cmptType
Component type.
Generic GeometricBoundaryField class.
Part of a geometric field used for setting the values associated with optional sources.
Generic GeometricField class.
void max(const dimensioned< Type > &)
tmp< GeometricField< Type, GeoMesh, Field > > T() const
Return transpose (only if it is a tensor field)
Sources & sourcesRef()
Return a reference to the sources.
bool writeData(Ostream &) const
WriteData member function required by regIOobject.
void writeMinMax(Ostream &os) const
Helper function to write the min and max to an Ostream.
void relax()
Relax current field with respect to the cached previous iteration.
GeometricFieldSources< Type, GeoMesh, PrimitiveField > Sources
Type of the field sources.
TypeName("GeometricField")
Runtime type information.
void maxMin(const dimensioned< Type > &minDt, const dimensioned< Type > &maxDt)
GeoMesh::Mesh Mesh
Type of mesh on which this GeometricField is instantiated.
const GeometricField< Type, GeoMesh, Field > & prevIter() const
Return previous iteration field.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
Internal::FieldType & primitiveFieldRef()
Return a reference to the primitive field.
Boundary & boundaryFieldRefNoStoreOldTimes()
Return a reference to the boundary field without storing old times.
tmp< GeometricField< cmptType, GeoMesh, Field > > component(const direction) const
Return a component of the field.
const Sources & sources() const
Return const-reference to the sources.
void operator=(const GeometricField< Type, GeoMesh, PrimitiveField > &)
DimensionedField< Type, GeoMesh, PrimitiveField > Base
Type of the field from which this GeometricField is derived.
const Internal & internalField() const
Return a const-reference to the dimensioned internal field.
void operator+=(const GeometricField< Type, GeoMesh, PrimitiveField2 > &)
void operator==(const GeometricField< Type, GeoMesh, PrimitiveField2 > &)
DimensionedField< Type, GeoMesh, PrimitiveField > Internal
Type of the internal field from which this GeometricField is derived.
void min(const dimensioned< Type > &)
const Internal & operator()() const
Return a const-reference to the dimensioned internal field.
GeoMesh::template FieldSource< Type > Source
Type of the field source of which the Sources is composed.
friend class GeometricField
Declare friendship with other geometric fields.
Internal & internalFieldRef()
Return a reference to the dimensioned internal field.
Field< Type >::cmptType cmptType
Component type of the elements of the field.
void replace(const direction, const GeometricField< cmptType, GeoMesh, PrimitiveField2 > &)
Replace a component field of the field.
tmp< GeometricField< Type, GeoMesh, PrimitiveField > > clone() const
Clone.
bool needReference() const
Does the field need a reference level for solution.
GeometricBoundaryField< Type, GeoMesh, PrimitiveField > Boundary
Type of the boundary field.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
virtual ~GeometricField()
Destructor.
const Internal::FieldType & primitiveField() const
Return a const-reference to the primitive field.
void reset(const GeometricField< Type, GeoMesh, PrimitiveField2 > &)
Reset the field contents to the given field.
scalar relaxationFactor() const
Return the field relaxation factor read from fvSolution.
const Internal & v() const
Return a const-reference to the dimensioned internal field.
void clearPrevIter()
Delete the previous iteration field.
void storePrevIter() const
Store the field as the previous iteration value.
word select(bool final) const
Select the final iteration parameters if `final' is true.
void operator-=(const GeometricField< Type, GeoMesh, PrimitiveField2 > &)
void correctBoundaryConditions()
Correct boundary field.
void operator/=(const GeometricField< scalar, GeoMesh, PrimitiveField2 > &)
USING_OLD_TIME_FIELD(GeometricField)
Use old-time methods from the base class.
GeoMesh::template PatchField< Type > Patch
Type of the patch field of which the Boundary is composed.
void operator*=(const GeometricField< scalar, GeoMesh, PrimitiveField2 > &)
static tmp< GeometricField< Type, GeoMesh, PrimitiveField > > New(const word &name, const Internal &, const PtrList< Patch > &, const HashPtrTable< Source > &=HashPtrTable< Source >())
Return a temporary field constructed from name,.
tmp< GeometricField< Type, GeoMesh, PrimitiveField > > cloneUnSliced() const
Clone un-sliced.
A HashTable specialisation for hashing pointers.
An STL-conforming hash table.
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 templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
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.
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...
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
List< word > wordList
A List of words.
word patchFieldType(const PatchField &pf)