Go to the documentation of this file.
48 #ifndef faePatchField_H
49 #define faePatchField_H
63 class faPatchFieldMapper;
70 class calculatedFaePatchField;
73 Ostream&
operator<<(Ostream&,
const faePatchField<Type>&);
88 const faPatch& patch_;
91 const DimensionedField<Type, edgeMesh>& internalField_;
132 (
dynamic_cast<const faePatchFieldType&
>(ptf),
p, iF, m)
249 template<
class Type2>
272 return internalField_;
278 return internalField_;
373 #define makeFaePatchTypeFieldTypeName(typePatchTypeField) \
375 defineNamedTemplateTypeNameAndDebug(typePatchTypeField, 0);
377 #define makeFaePatchFieldsTypeName(typePatchField) \
379 makeFaePatchTypeFieldTypeName(typePatchField##FaePatchScalarField); \
380 makeFaePatchTypeFieldTypeName(typePatchField##FaePatchVectorField); \
381 makeFaePatchTypeFieldTypeName(typePatchField##FaePatchSphericalTensorField); \
382 makeFaePatchTypeFieldTypeName(typePatchField##FaePatchSymmTensorField); \
383 makeFaePatchTypeFieldTypeName(typePatchField##FaePatchTensorField);
386 #define makeFaePatchTypeField(PatchTypeField, typePatchTypeField) \
388 defineNamedTemplateTypeNameAndDebug(typePatchTypeField, 0); \
390 addToRunTimeSelectionTable \
392 PatchTypeField, typePatchTypeField, patch \
395 addToRunTimeSelectionTable \
398 typePatchTypeField, \
402 addToRunTimeSelectionTable \
404 PatchTypeField, typePatchTypeField, dictionary \
408 #define makeFaePatchFields(type) \
410 makeFaePatchTypeField(faePatchScalarField, type##FaePatchScalarField); \
411 makeFaePatchTypeField(faePatchVectorField, type##FaePatchVectorField); \
412 makeFaePatchTypeField \
414 faePatchSphericalTensorField, \
415 type##FaePatchSphericalTensorField \
417 makeFaePatchTypeField(faePatchSymmTensorField, type##FaePatchSymmTensorField); \
418 makeFaePatchTypeField(faePatchTensorField, type##FaePatchTensorField);
421 #define makeFaePatchTypeFieldTypedefs(type) \
423 typedef type##FaePatchField<scalar> type##FaePatchScalarField; \
424 typedef type##FaePatchField<vector> type##FaePatchVectorField; \
425 typedef type##FaePatchField<sphericalTensor> \
426 type##FaePatchSphericalTensorField; \
427 typedef type##FaePatchField<symmTensor> type##FaePatchSymmTensorField; \
428 typedef type##FaePatchField<tensor> type##FaePatchTensorField;
virtual void operator==(const faePatchField< Type > &)
void check(const faePatchField< Type > &) const
Check faePatchField<Type> against given faePatchField<Type>
const objectRegistry & db() const
Return local objectRegistry.
A class for handling words, derived from Foam::string.
faePatchField<Type> abstract base class. This class gives a fat-interface to all derived classes cove...
virtual void write(Ostream &) const
Write.
A class for managing temporary objects.
static const word & calculatedType()
Return the type of the calculated for of faePatchField.
virtual bool fixesValue() const
Return true if this patch field fixes a value.
virtual void operator/=(const faePatchField< scalar > &)
static tmp< faePatchField< Type > > New(const word &, const faPatch &, const DimensionedField< Type, edgeMesh > &)
Return a pointer to a new patchField created on freestore given.
virtual void operator*=(const faePatchField< scalar > &)
virtual tmp< faePatchField< Type > > clone() const
Construct and return a clone.
declareRunTimeSelectionTable(tmp, faePatchField, patch,(const faPatch &p, const DimensionedField< Type, edgeMesh > &iF),(p, iF))
const DimensionedField< Type, edgeMesh > & internalField() const
Return dimensioned internal field reference.
static tmp< faePatchField< Type > > NewCalculatedType(const faePatchField< Type2 > &)
Return a pointer to a new calculatedFaePatchField created on.
const Field< Type > & primitiveField() const
Return internal field reference.
TypeName("faePatchField")
Runtime type information.
Registry of regIOobjects.
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
virtual void autoMap(const faPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
Generic templated field type.
virtual void rmap(const faePatchField< Type > &, const labelList &)
Reverse map the given faePatchField onto this faePatchField.
const faPatch & patch() const
Return patch.
virtual ~faePatchField()=default
Destructor.
virtual void operator-=(const faePatchField< Type > &)
virtual bool coupled() const
Return true if this patch field is coupled.
faePatchField(const faPatch &, const DimensionedField< Type, edgeMesh > &)
Construct from patch and internal field.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
calculatedFaePatchField< Type > Calculated
static int disallowGenericFaePatchField
Debug switch to disallow the use of.
virtual void operator+=(const faePatchField< Type > &)
Author Zeljko Tukovic, FMENA Hrvoje Jasak, Wikki Ltd.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Finite area patch class. Used for 2-D non-Euclidian finite area method.
virtual void operator=(const UList< Type > &)
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...