pointPatchField< Type > Class Template Referenceabstract

Abstract base class for point-mesh patch fields. More...

Inheritance diagram for pointPatchField< Type >:
[legend]

Public Types

typedef Type value_type
 The Field value_type. More...
 
typedef DimensionedField< Type, pointMeshInternal
 The internal field type associated with the patch field. More...
 
typedef pointPatch Patch
 The patch type for the patch field. More...
 
typedef calculatedPointPatchField< Type > Calculated
 Type for a calculated patch. More...
 

Public Member Functions

 TypeName ("pointPatchField")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, pointPatchField, pointPatch,(const pointPatch &p, const DimensionedField< Type, pointMesh > &iF),(p, iF))
 
 declareRunTimeSelectionTable (autoPtr, pointPatchField, patchMapper,(const pointPatchField< Type > &ptf, const pointPatch &p, const DimensionedField< Type, pointMesh > &iF, const pointPatchFieldMapper &m),(dynamic_cast< const pointPatchFieldType & >(ptf), p, iF, m))
 
 declareRunTimeSelectionTable (autoPtr, pointPatchField, dictionary,(const pointPatch &p, const DimensionedField< Type, pointMesh > &iF, const dictionary &dict),(p, iF, dict))
 
 pointPatchField (const pointPatch &, const DimensionedField< Type, pointMesh > &)
 Construct from patch and internal field. More...
 
 pointPatchField (const pointPatch &, const DimensionedField< Type, pointMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 pointPatchField (const pointPatchField< Type > &, const pointPatch &, const DimensionedField< Type, pointMesh > &, const pointPatchFieldMapper &)
 Construct by mapping given patchField<Type> onto a new patch. More...
 
 pointPatchField (const pointPatchField< Type > &)
 Construct as copy. More...
 
virtual autoPtr< pointPatchField< Type > > clone () const =0
 Construct and return a clone. More...
 
 pointPatchField (const pointPatchField< Type > &, const DimensionedField< Type, pointMesh > &)
 Construct as copy setting internal field reference. More...
 
virtual autoPtr< pointPatchField< Type > > clone (const DimensionedField< Type, pointMesh > &iF) const =0
 Construct and return a clone setting internal field reference. More...
 
virtual ~pointPatchField ()=default
 Destructor. More...
 
const objectRegistrydb () const
 Return local objectRegistry. More...
 
label size () const
 Return size. More...
 
const pointPatchpatch () const
 Return patch. More...
 
const DimensionedField< Type, pointMesh > & internalField () const
 Return dimensioned internal field reference. More...
 
const Field< Type > & primitiveField () const
 Return internal field reference. More...
 
const wordpatchType () const
 Optional patch type. More...
 
wordpatchType ()
 Optional patch type. More...
 
virtual bool fixesValue () const
 Return true if this patch field fixes a value. More...
 
virtual bool coupled () const
 Return true if this patch field is coupled. More...
 
bool updated () const
 Return true if the boundary condition has already been updated. More...
 
tmp< Field< Type > > patchInternalField () const
 Return field created from appropriate internal field values. More...
 
template<class Type1 >
tmp< Field< Type1 > > patchInternalField (const Field< Type1 > &iF) const
 Return field created from appropriate internal field values. More...
 
template<class Type1 >
tmp< Field< Type1 > > patchInternalField (const Field< Type1 > &iF, const labelList &meshPoints) const
 Return field created from selected internal field values. More...
 
template<class Type1 >
void addToInternalField (Field< Type1 > &iF, const Field< Type1 > &pF) const
 Given the internal field and a patch field,. More...
 
template<class Type1 >
void addToInternalField (Field< Type1 > &iF, const Field< Type1 > &pF, const labelList &points) const
 Given the internal field and a patch field,. More...
 
template<class Type1 >
void setInInternalField (Field< Type1 > &iF, const Field< Type1 > &pF, const labelList &meshPoints) const
 Given the internal field and a patch field,. More...
 
template<class Type1 >
void setInInternalField (Field< Type1 > &iF, const Field< Type1 > &pF) const
 Given the internal field and a patch field,. More...
 
virtual const wordconstraintType () const
 Return the constraint type this pointPatchField implements. More...
 
virtual void autoMap (const pointPatchFieldMapper &)
 Map (and resize as needed) from self given a mapping object. More...
 
virtual void rmap (const pointPatchField< Type > &, const labelList &)
 Reverse map the given pointPatchField onto this pointPatchField. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void initEvaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 Initialise evaluation of the patch field (do nothing) More...
 
virtual void evaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 Evaluate the patch field. More...
 
virtual void write (Ostream &) const
 Write. More...
 
virtual void operator= (const pointPatchField< Type > &)
 
virtual void operator+= (const pointPatchField< Type > &)
 
virtual void operator-= (const pointPatchField< Type > &)
 
virtual void operator*= (const pointPatchField< scalar > &)
 
virtual void operator/= (const pointPatchField< scalar > &)
 
virtual void operator= (const Field< Type > &)
 
virtual void operator+= (const Field< Type > &)
 
virtual void operator-= (const Field< Type > &)
 
virtual void operator*= (const Field< scalar > &)
 
virtual void operator/= (const Field< scalar > &)
 
virtual void operator= (const Type &)
 
virtual void operator+= (const Type &)
 
virtual void operator-= (const Type &)
 
virtual void operator*= (const scalar)
 
virtual void operator/= (const scalar)
 
virtual void operator== (const pointPatchField< Type > &)
 
virtual void operator== (const Field< Type > &)
 
virtual void operator== (const Type &)
 
void negate ()
 Negate the field inplace. Dummy placeholder for FieldField. More...
 
void normalise ()
 Normalise the field inplace. Dummy placeholder for FieldField. More...
 
template<class Type2 >
Foam::autoPtr< Foam::pointPatchField< Type > > NewCalculatedType (const pointPatchField< Type2 > &pf)
 
template<class Type1 >
Foam::tmp< Foam::Field< Type1 > > patchInternalField (const Field< Type1 > &iF, const labelList &meshPoints) const
 
template<class Type1 >
Foam::tmp< Foam::Field< Type1 > > patchInternalField (const Field< Type1 > &iF) const
 

Static Public Member Functions

static autoPtr< pointPatchField< Type > > New (const word &patchFieldType, const pointPatch &p, const DimensionedField< Type, pointMesh > &iF)
 Return a pointer to a new patchField created on freestore given. More...
 
static autoPtr< pointPatchField< Type > > New (const word &patchFieldType, const word &actualPatchType, const pointPatch &p, const DimensionedField< Type, pointMesh > &iF)
 Return a pointer to a new patchField created on freestore given. More...
 
static autoPtr< pointPatchField< Type > > New (const pointPatchField< Type > &, const pointPatch &, const DimensionedField< Type, pointMesh > &, const pointPatchFieldMapper &)
 Return a pointer to a new patchField created on freestore from. More...
 
static autoPtr< pointPatchField< Type > > New (const pointPatch &, const DimensionedField< Type, pointMesh > &, const dictionary &)
 Return a pointer to a new patchField created on freestore. More...
 
template<class Type2 >
static autoPtr< pointPatchField< Type > > NewCalculatedType (const pointPatchField< Type2 > &)
 Return a pointer to a new calculatedPointPatchField created on. More...
 
static const wordcalculatedType ()
 Return the type of the calculated form of pointPatchField. More...
 

Static Public Attributes

static int disallowGenericPointPatchField
 Debug switch to disallow the use of genericPointPatchField. More...
 

Friends

Ostreamoperator (Ostream &, const pointPatchField< Type > &)
 

Detailed Description

template<class Type>
class Foam::pointPatchField< Type >

Abstract base class for point-mesh patch fields.

The base-field does not store values as they are part of the "internal field". There are derived classes to store constraint values e.g. fixedValuePointPatchField derived from the generic valuePointPatchField which ensures the values in the "internal field" are reset to the fixed-values by applying the stored values.

Source files

Definition at line 75 of file pointPatchField.H.

Member Typedef Documentation

◆ value_type

typedef Type value_type

The Field value_type.

Definition at line 98 of file pointPatchField.H.

◆ Internal

The internal field type associated with the patch field.

Definition at line 101 of file pointPatchField.H.

◆ Patch

typedef pointPatch Patch

The patch type for the patch field.

Definition at line 104 of file pointPatchField.H.

◆ Calculated

Type for a calculated patch.

Definition at line 107 of file pointPatchField.H.

Constructor & Destructor Documentation

◆ pointPatchField() [1/5]

pointPatchField ( const pointPatch p,
const DimensionedField< Type, pointMesh > &  iF 
)

Construct from patch and internal field.

Definition at line 36 of file pointPatchField.C.

◆ pointPatchField() [2/5]

pointPatchField ( const pointPatch p,
const DimensionedField< Type, pointMesh > &  iF,
const dictionary dict 
)

Construct from patch, internal field and dictionary.

Definition at line 50 of file pointPatchField.C.

References dict, keyType::LITERAL, and dictionary::readIfPresent().

Here is the call graph for this function:

◆ pointPatchField() [3/5]

pointPatchField ( const pointPatchField< Type > &  ptf,
const pointPatch p,
const DimensionedField< Type, pointMesh > &  iF,
const pointPatchFieldMapper  
)

Construct by mapping given patchField<Type> onto a new patch.

Definition at line 67 of file pointPatchField.C.

◆ pointPatchField() [4/5]

pointPatchField ( const pointPatchField< Type > &  ptf)

Construct as copy.

Definition at line 83 of file pointPatchField.C.

◆ pointPatchField() [5/5]

pointPatchField ( const pointPatchField< Type > &  ptf,
const DimensionedField< Type, pointMesh > &  iF 
)

Construct as copy setting internal field reference.

Definition at line 96 of file pointPatchField.C.

◆ ~pointPatchField()

virtual ~pointPatchField ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "pointPatchField< Type >"  )

Runtime type information.

◆ declareRunTimeSelectionTable() [1/3]

declareRunTimeSelectionTable ( autoPtr  ,
pointPatchField< Type >  ,
pointPatch  ,
(const pointPatch &p, const DimensionedField< Type, pointMesh > &iF)  ,
(p, iF)   
)

◆ declareRunTimeSelectionTable() [2/3]

declareRunTimeSelectionTable ( autoPtr  ,
pointPatchField< Type >  ,
patchMapper  ,
(const pointPatchField< Type > &ptf, const pointPatch &p, const DimensionedField< Type, pointMesh > &iF, const pointPatchFieldMapper &m)  ,
(dynamic_cast< const pointPatchFieldType & >(ptf), p, iF, m)   
)

◆ declareRunTimeSelectionTable() [3/3]

declareRunTimeSelectionTable ( autoPtr  ,
pointPatchField< Type >  ,
dictionary  ,
(const pointPatch &p, const DimensionedField< Type, pointMesh > &iF, const dictionary &dict ,
(p, iF, dict  
)

◆ clone() [1/2]

virtual autoPtr< pointPatchField< Type > > clone ( ) const
pure virtual

Construct and return a clone.

Implemented in exprValuePointPatchField< Type >, angularOscillatingDisplacementPointPatchVectorField, angularOscillatingVelocityPointPatchVectorField, oscillatingDisplacementPointPatchVectorField, oscillatingVelocityPointPatchVectorField, surfaceSlipDisplacementPointPatchVectorField, timeVaryingMappedFixedValuePointPatchField< Type >, uniformInterpolatedDisplacementPointPatchVectorField, waveDisplacementPointPatchVectorField, genericPointPatchField< Type >, lumpedPointDisplacementPointPatchVectorField, zeroFixedValuePointPatchField< Type >, cyclicACMIPointPatchField< Type >, cyclicAMIPointPatchField< Type >, uniformFixedValuePointPatchField< Type >, basicSymmetryPointPatchField< Type >, calculatedPointPatchField< Type >, fixedValuePointPatchField< Type >, fixedValuePointPatchField< vector >, valuePointPatchField< Type >, valuePointPatchField< vector >, zeroGradientPointPatchField< Type >, cyclicPointPatchField< Type >, cyclicSlipPointPatchField< Type >, emptyPointPatchField< Type >, nonuniformTransformCyclicPointPatchField< Type >, processorPointPatchField< Type >, processorCyclicPointPatchField< Type >, symmetryPointPatchField< Type >, symmetryPlanePointPatchField< Type >, wedgePointPatchField< Type >, codedFixedValuePointPatchField< Type >, fixedNormalSlipPointPatchField< Type >, slipPointPatchField< Type >, timeVaryingUniformFixedValuePointPatchField< Type >, sixDoFRigidBodyDisplacementPointPatchVectorField, uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField, waveMakerPointPatchVectorField, and coupledPointPatchField< Type >.

◆ clone() [2/2]

◆ New() [1/4]

Foam::autoPtr< Foam::pointPatchField< Type > > New ( const word patchFieldType,
const pointPatch p,
const DimensionedField< Type, pointMesh > &  iF 
)
static

Return a pointer to a new patchField created on freestore given.

patch and internal field (does not set the patch field values)

Definition at line 93 of file pointPatchFieldNew.C.

References Foam::New(), and p.

Here is the call graph for this function:

◆ New() [2/4]

Foam::autoPtr< Foam::pointPatchField< Type > > New ( const word patchFieldType,
const word actualPatchType,
const pointPatch p,
const DimensionedField< Type, pointMesh > &  iF 
)
static

Return a pointer to a new patchField created on freestore given.

patch and internal field (does not set the patch field values). Allows override of constraint type

Definition at line 32 of file pointPatchFieldNew.C.

References DebugInFunction, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, FatalErrorInLookup, and p.

Here is the call graph for this function:

◆ New() [3/4]

Foam::autoPtr< Foam::pointPatchField< Type > > New ( const pointPatchField< Type > &  ptf,
const pointPatch p,
const DimensionedField< Type, pointMesh > &  iF,
const pointPatchFieldMapper pfMapper 
)
static

Return a pointer to a new patchField created on freestore from.

a given pointPatchField mapped onto a new patch

Definition at line 172 of file pointPatchFieldNew.C.

References DebugInFunction, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInLookup, and p.

Here is the call graph for this function:

◆ New() [4/4]

Foam::autoPtr< Foam::pointPatchField< Type > > New ( const pointPatch p,
const DimensionedField< Type, pointMesh > &  iF,
const dictionary dict 
)
static

Return a pointer to a new patchField created on freestore.

from dictionary

Definition at line 105 of file pointPatchFieldNew.C.

References DebugInFunction, dict, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, Foam::nl, and p.

Here is the call graph for this function:

◆ NewCalculatedType() [1/2]

static autoPtr< pointPatchField< Type > > NewCalculatedType ( const pointPatchField< Type2 > &  )
static

Return a pointer to a new calculatedPointPatchField created on.

freestore without setting patchField values

◆ db()

Return local objectRegistry.

Definition at line 112 of file pointPatchField.C.

Referenced by waveMakerPointPatchVectorField::g(), timeVaryingUniformFixedValuePointPatchField< Type >::timeVaryingUniformFixedValuePointPatchField(), sixDoFRigidBodyDisplacementPointPatchVectorField::updateCoeffs(), and uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField::updateCoeffs().

Here is the caller graph for this function:

◆ size()

label size ( ) const
inline

Return size.

Definition at line 270 of file pointPatchField.H.

References pointPatchField< Type >::patch(), and pointPatch::size().

Referenced by genericPointPatchField< Type >::genericPointPatchField().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ patch()

◆ internalField()

◆ primitiveField()

const Field< Type > & primitiveField ( ) const
inline

Return internal field reference.

Definition at line 289 of file pointPatchField.H.

◆ patchType() [1/2]

const word & patchType ( ) const
inline

Optional patch type.

Definition at line 295 of file pointPatchField.H.

◆ patchType() [2/2]

word & patchType ( )
inline

Optional patch type.

Definition at line 301 of file pointPatchField.H.

◆ fixesValue()

virtual bool fixesValue ( ) const
inlinevirtual

Return true if this patch field fixes a value.

Reimplemented in fixedValuePointPatchField< Type >, and fixedValuePointPatchField< vector >.

Definition at line 307 of file pointPatchField.H.

◆ coupled()

virtual bool coupled ( ) const
inlinevirtual

Return true if this patch field is coupled.

Reimplemented in cyclicAMIPointPatchField< Type >, coupledPointPatchField< Type >, processorPointPatchField< Type >, and processorCyclicPointPatchField< Type >.

Definition at line 313 of file pointPatchField.H.

◆ updated()

◆ patchInternalField() [1/5]

Foam::tmp< Foam::Field< Type > > patchInternalField

Return field created from appropriate internal field values.

Definition at line 132 of file pointPatchField.C.

Referenced by pointConstraints::setPatchFields(), velocityDisplacementMotionSolver::solve(), and uniformInterpolatedDisplacementPointPatchVectorField::updateCoeffs().

Here is the caller graph for this function:

◆ patchInternalField() [2/5]

tmp< Field< Type1 > > patchInternalField ( const Field< Type1 > &  iF) const

Return field created from appropriate internal field values.

given internal field reference

◆ patchInternalField() [3/5]

tmp< Field< Type1 > > patchInternalField ( const Field< Type1 > &  iF,
const labelList meshPoints 
) const

Return field created from selected internal field values.

given internal field reference

◆ addToInternalField() [1/2]

void addToInternalField ( Field< Type1 > &  iF,
const Field< Type1 > &  pF 
) const

Given the internal field and a patch field,.

add the patch field to the internal field

Definition at line 175 of file pointPatchField.C.

◆ addToInternalField() [2/2]

void addToInternalField ( Field< Type1 > &  iF,
const Field< Type1 > &  pF,
const labelList points 
) const

Given the internal field and a patch field,.

add selected elements of the patch field to the internal field

Definition at line 212 of file pointPatchField.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, points, and UList< T >::size().

Here is the call graph for this function:

◆ setInInternalField() [1/2]

void setInInternalField ( Field< Type1 > &  iF,
const Field< Type1 > &  pF,
const labelList meshPoints 
) const

Given the internal field and a patch field,.

set the patch field in the internal field

Definition at line 251 of file pointPatchField.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and UList< T >::size().

Here is the call graph for this function:

◆ setInInternalField() [2/2]

void setInInternalField ( Field< Type1 > &  iF,
const Field< Type1 > &  pF 
) const

Given the internal field and a patch field,.

set the patch field in the internal field

Definition at line 286 of file pointPatchField.C.

◆ calculatedType()

const Foam::word & calculatedType
static

Return the type of the calculated form of pointPatchField.

Definition at line 34 of file calculatedPointPatchField.C.

◆ constraintType()

◆ autoMap()

◆ rmap()

virtual void rmap ( const pointPatchField< Type > &  ,
const labelList  
)
inlinevirtual

◆ updateCoeffs()

◆ initEvaluate()

virtual void initEvaluate ( const Pstream::commsTypes  commsType = Pstream::commsTypes::blocking)
inlinevirtual

Initialise evaluation of the patch field (do nothing)

Definition at line 420 of file pointPatchField.H.

◆ evaluate()

◆ write()

◆ operator=() [1/3]

virtual void operator= ( const pointPatchField< Type > &  )
inlinevirtual

Reimplemented in valuePointPatchField< Type >, and valuePointPatchField< vector >.

Definition at line 443 of file pointPatchField.H.

◆ operator+=() [1/3]

virtual void operator+= ( const pointPatchField< Type > &  )
inlinevirtual

Definition at line 444 of file pointPatchField.H.

◆ operator-=() [1/3]

virtual void operator-= ( const pointPatchField< Type > &  )
inlinevirtual

Definition at line 445 of file pointPatchField.H.

◆ operator*=() [1/3]

virtual void operator*= ( const pointPatchField< scalar > &  )
inlinevirtual

Definition at line 446 of file pointPatchField.H.

◆ operator/=() [1/3]

virtual void operator/= ( const pointPatchField< scalar > &  )
inlinevirtual

Definition at line 447 of file pointPatchField.H.

◆ operator=() [2/3]

virtual void operator= ( const Field< Type > &  )
inlinevirtual

◆ operator+=() [2/3]

virtual void operator+= ( const Field< Type > &  )
inlinevirtual

Definition at line 450 of file pointPatchField.H.

◆ operator-=() [2/3]

virtual void operator-= ( const Field< Type > &  )
inlinevirtual

Definition at line 451 of file pointPatchField.H.

◆ operator*=() [2/3]

virtual void operator*= ( const Field< scalar > &  )
inlinevirtual

Definition at line 453 of file pointPatchField.H.

◆ operator/=() [2/3]

virtual void operator/= ( const Field< scalar > &  )
inlinevirtual

Definition at line 454 of file pointPatchField.H.

◆ operator=() [3/3]

virtual void operator= ( const Type &  )
inlinevirtual

◆ operator+=() [3/3]

virtual void operator+= ( const Type &  )
inlinevirtual

Definition at line 457 of file pointPatchField.H.

◆ operator-=() [3/3]

virtual void operator-= ( const Type &  )
inlinevirtual

Definition at line 458 of file pointPatchField.H.

◆ operator*=() [3/3]

virtual void operator*= ( const  scalar)
inlinevirtual

Definition at line 459 of file pointPatchField.H.

◆ operator/=() [3/3]

virtual void operator/= ( const  scalar)
inlinevirtual

Definition at line 460 of file pointPatchField.H.

◆ operator==() [1/3]

virtual void operator== ( const pointPatchField< Type > &  )
inlinevirtual

Reimplemented in valuePointPatchField< Type >, and valuePointPatchField< vector >.

Definition at line 467 of file pointPatchField.H.

◆ operator==() [2/3]

virtual void operator== ( const Field< Type > &  )
inlinevirtual

Reimplemented in valuePointPatchField< Type >, and valuePointPatchField< vector >.

Definition at line 468 of file pointPatchField.H.

◆ operator==() [3/3]

virtual void operator== ( const Type &  )
inlinevirtual

Reimplemented in valuePointPatchField< Type >, and valuePointPatchField< vector >.

Definition at line 469 of file pointPatchField.H.

◆ negate()

void negate ( )
inline

Negate the field inplace. Dummy placeholder for FieldField.

Definition at line 484 of file pointPatchField.H.

◆ normalise()

void normalise ( )
inline

Normalise the field inplace. Dummy placeholder for FieldField.

Definition at line 487 of file pointPatchField.H.

◆ NewCalculatedType() [2/2]

Foam::autoPtr< Foam::pointPatchField< Type > > NewCalculatedType ( const pointPatchField< Type2 > &  pf)

Definition at line 92 of file calculatedPointPatchField.C.

References pointPatchField< Type >::patch().

Here is the call graph for this function:

◆ patchInternalField() [4/5]

Foam::tmp< Foam::Field< Type1 > > patchInternalField ( const Field< Type1 > &  iF,
const labelList meshPoints 
) const

Definition at line 141 of file pointPatchField.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Foam::New(), and UList< T >::size().

Here is the call graph for this function:

◆ patchInternalField() [5/5]

Foam::tmp< Foam::Field< Type1 > > patchInternalField ( const Field< Type1 > &  iF) const

Definition at line 164 of file pointPatchField.C.

Friends And Related Function Documentation

◆ operator

Ostream & operator ( Ostream ,
const pointPatchField< Type > &   
)
friend

Member Data Documentation

◆ disallowGenericPointPatchField

int disallowGenericPointPatchField
static

Debug switch to disallow the use of genericPointPatchField.

Definition at line 114 of file pointPatchField.H.


The documentation for this class was generated from the following files: