44 #ifndef fvsPatchField_H 45 #define fvsPatchField_H 59 class fvPatchFieldMapper;
72 Ostream& operator<<(Ostream&, const fvsPatchField<Type>&);
131 (dynamic_cast<const fvsPatchFieldType&>(ptf), p, iF, m)
238 const word& actualPatchType,
271 template<
class Type2>
307 if (
type() == patch_.type())
312 typename patchConstructorTable::iterator patchTypeCstrIter
313 = patchConstructorTablePtr_->find(patch_.type());
317 != patchConstructorTablePtr_->end();
336 return internalField_;
342 return internalField_;
415 #define makeFvsPatchField(fvsPatchTypeField) \ 417 defineNamedTemplateTypeNameAndDebug(fvsPatchTypeField, 0); \ 419 int fvsPatchTypeField::disallowGenericFvsPatchField \ 421 debug::debugSwitch("disallowGenericFvsPatchField", 0) \ 423 defineTemplateRunTimeSelectionTable(fvsPatchTypeField, patch); \ 424 defineTemplateRunTimeSelectionTable(fvsPatchTypeField, patchMapper); \ 425 defineTemplateRunTimeSelectionTable(fvsPatchTypeField, dictionary); 428 #define addToPatchFieldRunTimeSelection(PatchTypeField, typePatchTypeField) \ 429 addToRunTimeSelectionTable \ 432 typePatchTypeField, \ 435 addToRunTimeSelectionTable \ 438 typePatchTypeField, \ 441 addToRunTimeSelectionTable \ 444 typePatchTypeField, \ 450 #define makeFvsPatchTypeField(PatchTypeField, typePatchTypeField) \ 451 defineTypeNameAndDebug(typePatchTypeField, 0); \ 452 addToPatchFieldRunTimeSelection(PatchTypeField, typePatchTypeField) 455 #define makeTemplateFvsPatchTypeField(fieldType, type) \ 456 defineNamedTemplateTypeNameAndDebug \ 458 CAT4(type, FvsPatch, CAPITALIZE(fieldType), Field), \ 461 addToPatchFieldRunTimeSelection \ 463 CAT3(fvsPatch, CAPITALIZE(fieldType), Field), \ 464 CAT4(type, FvsPatch, CAPITALIZE(fieldType), Field) \ 467 #define makeFvsPatchFields(type) \ 468 FOR_ALL_FIELD_TYPES(makeTemplateFvsPatchTypeField, type) 470 #define makeFvsPatchFieldTypeName(fieldType, type) \ 471 defineNamedTemplateTypeNameAndDebug \ 473 CAT4(type, FvsPatch, CAPITALIZE(fieldType), Field), \ 477 #define makeFvsPatchFieldTypeNames(type) \ 478 FOR_ALL_FIELD_TYPES(makeFvsPatchFieldTypeName, type) 480 #define makeFvsPatchTypeFieldTypedef(fieldType, type) \ 481 typedef type##FvsPatchField<fieldType> \ 482 CAT4(type, FvsPatch, CAPITALIZE(fieldType), Field); 484 #define makeFvsPatchTypeFieldTypedefs(type) \ 485 FOR_ALL_FIELD_TYPES(makeFvsPatchTypeFieldTypedef, type) virtual void operator*=(const fvsPatchField< scalar > &)
virtual bool fixesValue() const
Return true if this patch field fixes a value.
virtual void write(Ostream &) const
Write.
TypeName("fvsPatchField")
Runtime type information.
const Field< Type > & primitiveField() const
Return internal field reference.
const objectRegistry & db() const
Return local objectRegistry.
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
A list of keyword definitions, which are a keyword followed by any number of values (e...
virtual void operator==(const fvsPatchField< Type > &)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
static tmp< fvsPatchField< Type > > NewCalculatedType(const fvPatch &)
Return a pointer to a new calculatedFvsPatchField created on.
calculatedFvsPatchField< Type > Calculated
virtual void operator/=(const fvsPatchField< scalar > &)
static tmp< fvsPatchField< Type > > New(const word &, const fvPatch &, const DimensionedField< Type, surfaceMesh > &)
Return a pointer to a new patchField created on freestore given.
Pre-declare SubField and related Field type.
tmp< fvsPatchField< Type > > clone() const
Disallow clone without setting internal field reference.
virtual bool coupled() const
Return true if this patch field is coupled.
A class for handling words, derived from string.
bool overridesConstraint() const
Return true if this overrides the underlying constraint type.
void check(const fvsPatchField< Type > &) const
Check fvsPatchField<Type> against given fvsPatchField<Type>
Foam::fvPatchFieldMapper.
declareRunTimeSelectionTable(tmp, fvsPatchField, patch,(const fvPatch &p, const DimensionedField< Type, surfaceMesh > &iF),(p, iF))
fvsPatchField(const fvPatch &, const DimensionedField< Type, surfaceMesh > &)
Construct from patch and internal field.
virtual void operator-=(const fvsPatchField< Type > &)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual void rmap(const fvsPatchField< Type > &, const labelList &)
Reverse map the given fvsPatchField onto this fvsPatchField.
const fvPatch & patch() const
Return patch.
virtual void operator+=(const fvsPatchField< Type > &)
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
virtual void operator=(const UList< Type > &)
Foam::calculatedFvsPatchField.
const DimensionedField< Type, surfaceMesh > & internalField() const
Return dimensioned internal field reference.
A class for managing temporary objects.
Registry of regIOobjects.
static const word & calculatedType()
Return the type of the calculated for of fvsPatchField.
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
static int disallowGenericFvsPatchField
Debug switch to disallow the use of genericFvsPatchField.