Go to the documentation of this file.
42 #ifndef GeometricField_H
43 #define GeometricField_H
60 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
63 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
67 const GeometricField<Type, PatchField, GeoMesh>&
70 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
74 const tmp<GeometricField<Type, PatchField, GeoMesh>>&
82 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
85 public DimensionedField<Type, GeoMesh>
93 bool readOldTimeIfPresent();
112 typedef PatchField<Type>
Patch;
139 const word& patchFieldType = PatchField<Type>::calculatedType()
159 const PtrList<PatchField<Type>>&
176 const word& patchFieldName
262 mutable label timeIndex_;
309 const word& patchFieldType = PatchField<Type>::calculatedType()
332 const word& patchFieldType = PatchField<Type>::calculatedType()
352 const PtrList<PatchField<Type>>& ptfl
362 const word& patchFieldType = PatchField<Type>::calculatedType()
372 const word& patchFieldType = PatchField<Type>::calculatedType()
382 const PtrList<PatchField<Type>>& ptfl
390 const bool readOldTime =
true
446 const word& patchFieldType
456 const word& patchFieldType
491 const word& patchFieldType = PatchField<Type>::calculatedType()
504 const word& patchFieldType = PatchField<Type>::calculatedType()
517 const word& patchFieldType = PatchField<Type>::calculatedType()
529 const word& patchFieldType = PatchField<Type>::calculatedType()
596 const bool updateAccessTime =
true
772 template<class Type, template<class> class PatchField, class
GeoMesh>
787 #include "GeometricFieldI.H"
Defines the attributes of an object for which implicit objectRegistry management is supported,...
tmp< GeometricField< cmptType, PatchField, GeoMesh > > component(const direction) const
Return a component of the field.
void replace(const direction d, const GeometricField< cmptType, PatchField, GeoMesh > &gcf)
Replace specified field component with content from another field.
A class for handling words, derived from Foam::string.
A field of fields is a PtrList of fields with reference counting.
bool writeData(Ostream &) const
WriteData member function required by regIOobject.
A class for managing temporary objects.
Boundary(const BoundaryMesh &bmesh)
Construct from a BoundaryMesh, setting patches later.
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
const Internal::FieldType & primitiveField() const
Return a const-reference to the internal field.
void writeEntries(Ostream &os) const
Write dictionary entries of the individual boundary fields.
TypeName("GeometricField")
Runtime type information.
void operator=(const Boundary &)
Assignment to BoundaryField<Type, PatchField, BoundaryMesh>
const GeometricField< Type, PatchField, GeoMesh > & oldTime() const
Return old time field.
GeometricField(const IOobject &io, const Mesh &mesh, const dimensionSet &ds, const word &patchFieldType=PatchField< Type >::calculatedType())
Construct given IOobject, mesh, dimensions and patch type.
const Internal & v() const
GeoMesh::BoundaryMesh BoundaryMesh
Dimension set for the base types, which can be used to implement rigorous dimension checking for alge...
word select(bool final) const
Select the final iteration parameters if `final' is true.
const Internal & internalField() const
Return a const-reference to the dimensioned internal field.
void clip(const dimensioned< MinMax< Type >> &range)
Clip the field to be bounded within the specified range.
void evaluate()
Evaluate boundary conditions.
Field< Type >::cmptType cmptType
void min(const dimensioned< Type > &dt)
Use the minimum of the field and specified value.
void updateCoeffs()
Update the boundary condition coefficients.
bool needReference() const
Does the field need a reference level for solution.
void maxMin(const dimensioned< Type > &minVal, const dimensioned< Type > &maxVal)
Deprecated(2019-01) identical to clip()
label nOldTimes() const
Return the number of old time fields stored.
static tmp< GeometricField< Type, PatchField, GeoMesh > > New(const word &name, const Mesh &mesh, const dimensionSet &ds, const word &patchFieldType=PatchField< Type >::calculatedType())
Return tmp field from name, mesh, dimensions and patch type.
List< word > wordList
A List of words.
LduInterfaceFieldPtrsList< Type > interfaces() const
void storeOldTimes() const
Store the old-time fields.
GeoMesh::Mesh Mesh
Type of mesh on which this GeometricField is instantiated.
pTraits< Type >::cmptType cmptType
Component type.
void negate()
Negate the field inplace.
Generic templated field type.
void readField(const Internal &field, const dictionary &dict)
Read the boundary field.
void operator==(const Boundary &)
Forced assignment to.
void writeMinMax(Ostream &os) const
Helper function to write the min and max to an Ostream.
DimensionedField< Type, GeoMesh > Internal
Type of the internal field from which this GeometricField is derived.
List of coupled interface fields to be used in coupling.
const GeometricField< Type, PatchField, GeoMesh > & prevIter() const
Return previous iteration field.
wordList types() const
Return a list of the patch types.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
MESH::BoundaryMesh BoundaryMesh
void storeOldTime() const
Store the old-time field.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
OBJstream os(runTime.globalPath()/outputName)
Generic dimensioned Type class.
Generic mesh wrapper used by volMesh, surfaceMesh, pointMesh etc.
label timeIndex() const
Return the time index of the field.
Internal::FieldType & primitiveFieldRef(const bool updateAccessTime=true)
Return a reference to the internal field.
tmp< GeometricField< Type, PatchField, GeoMesh > > clone() const
Clone.
void correctBoundaryConditions()
Correct boundary field.
tmp< GeometricField< Type, PatchField, GeoMesh > > T() const
Return transpose (only if it is a tensor field)
void storePrevIter() const
Store the field as the previous iteration value.
Internal & ref(const bool updateAccessTime=true)
Return a reference to the dimensioned internal field.
Boundary & boundaryFieldRef(const bool updateAccessTime=true)
Return a reference to the boundary field.
void relax()
Relax field (for steady-state solution).
class FOAM_DEPRECATED_FOR(2017-05, "Foam::Enum") NamedEnum
virtual ~GeometricField()
Destructor.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
void max(const dimensioned< Type > &dt)
Use the maximum of the field and specified value.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
friend Ostream & operator(Ostream &, const GeometricField< Type, PatchField, GeoMesh > &)
Generic GeometricField class.
A min/max value pair with additional methods. In addition to conveniently storing values,...
void writeEntry(const word &keyword, Ostream &os) const
Write boundary field as dictionary entry.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
lduInterfaceFieldPtrsList scalarInterfaces() const
Boundary boundaryInternalField() const