39 #ifndef GeometricField_H 40 #define GeometricField_H 58 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
61 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
65 const GeometricField<Type, PatchField, GeoMesh>&
68 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
72 const tmp<GeometricField<Type, PatchField, GeoMesh>>&
80 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
83 public DimensionedField<Type, GeoMesh>
91 bool readOldTimeIfPresent();
110 typedef PatchField<Type>
Patch;
120 const BoundaryMesh& bmesh_;
159 const PtrList<PatchField<Type>>&
193 const Internal&
field,
252 mutable label timeIndex_;
299 const word& patchFieldType=PatchField<Type>::calculatedType()
320 const word& patchFieldType=PatchField<Type>::calculatedType()
338 const PtrList<PatchField<Type>>&
348 const PtrList<PatchField<Type>>&
373 #ifndef NoConstructFromTmp 388 #ifndef NoConstructFromTmp 404 #ifndef NoConstructFromTmp 417 const word& patchFieldType
430 #ifndef NoConstructFromTmp 458 inline const Internal&
v()
const;
619 friend Ostream& operator<< <Type, PatchField, GeoMesh>
625 friend Ostream& operator<< <Type, PatchField, GeoMesh>
633 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
bool needReference() const
Does the field need a reference level for solution.
void operator=(const Boundary &)
Assignment to BoundaryField<Type, PatchField, BoundaryMesh>
void storeOldTime() const
Store the old-time field.
Boundary(const BoundaryMesh &)
Construct from a BoundaryMesh.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
GeoMesh::BoundaryMesh BoundaryMesh
Type of boundary mesh on which this.
A list of keyword definitions, which are a keyword followed by any number of values (e...
MESH::BoundaryMesh BoundaryMesh
pTraits< Type >::cmptType cmptType
Component type.
void evaluate()
Evaluate boundary conditions.
GeoMesh::Mesh Mesh
Type of mesh on which this GeometricField is instantiated.
const Internal::FieldType & primitiveField() const
Return a const-reference to the internal field.
TypeName("GeometricField")
Runtime type information.
Generic GeometricField class.
wordList types() const
Return a list of the patch types.
Generic dimensioned Type class.
Boundary boundaryInternalField() const
Return BoundaryField of the cell values neighbouring.
void operator==(const Boundary &)
Forced assignment to.
DimensionedField< Type, GeoMesh > Internal
Type of the internal field from which this GeometricField is derived.
lduInterfaceFieldPtrsList scalarInterfaces() const
Return a list of pointers for each patch field with only those.
void writeEntry(const word &keyword, Ostream &os) const
Write boundary field as dictionary entry.
void readField(const Internal &field, const dictionary &dict)
Read the boundary field.
const T * operator()(const label) const
Return element const pointer.
void updateCoeffs()
Update the boundary condition coefficients.
void writeMinMax(Ostream &os) const
Helper function to write the min and max to an Ostream.
Dimension set for the base types.
const GeometricField< Type, PatchField, GeoMesh > & oldTime() const
Return old time field.
void negate()
Negate this field.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
Pre-declare SubField and related Field type.
A class for handling words, derived from string.
const Internal & internalField() const
Return a const-reference to the dimensioned internal field.
bool writeData(Ostream &) const
WriteData member function required by regIOobject.
label timeIndex() const
Return the time index of the field.
word select(bool final) const
Select the final iteration parameters if `final' is true.
void operator*=(const FieldField< PatchField, scalar > &)
tmp< FieldField< PatchField, cmptType > > component(const direction) const
Return a component field of the field.
void min(const dimensioned< Type > &)
const Field< Type > & field() const
GeometricField(const IOobject &, const Mesh &, const dimensionSet &, const word &patchFieldType=PatchField< Type >::calculatedType())
Constructor given IOobject, mesh, dimensions and patch type.
void operator+=(const FieldField< PatchField, Type > &)
label nOldTimes() const
Return the number of old time fields stored.
Internal::FieldType & primitiveFieldRef()
Return a reference to the internal field.
void operator/=(const FieldField< PatchField, scalar > &)
virtual ~GeometricField()
Destructor.
void replace(const direction, const FieldField< PatchField, cmptType > &)
Replace a component field of the field.
Internal & ref()
Return a reference to the dimensioned internal field.
static const GeometricField< Type, PatchField, GeoMesh > & null()
Return a null geometric field.
List< word > wordList
A List of words.
pTraits< Type >::cmptType cmptType
Component type.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
PatchField< Type > Patch
Type of the patch field of which the.
tmp< FieldField< PatchField, Type > > T() const
Return the field transpose (only defined for second rank tensors)
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
void max(const dimensioned< Type > &)
LduInterfaceFieldPtrsList< Type > interfaces() const
Return a list of pointers for each patch field with only those.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const GeometricField< Type, PatchField, GeoMesh > & prevIter() const
Return previous iteration field.
void correctBoundaryConditions()
Correct boundary field.
const Internal & v() const
Return a const-reference to the dimensioned internal field.
Generic mesh wrapper used by volMesh, surfaceMesh, pointMesh etc.
void operator-=(const FieldField< PatchField, Type > &)
A class for managing temporary objects.
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
void scale(const GeometricField< Type, PatchField, GeoMesh > &, const GeometricField< Type, PatchField, GeoMesh > &)
void storePrevIter() const
Store the field as the previous iteration value.
List of coupled interface fields to be used in coupling.
void relax()
Relax field (for steady-state solution).
void storeOldTimes() const
Store the old-time fields.