All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
regionCoupledBase Class Referenceabstract

Base class with common functionality for regionCoupled polyPatch. It includes AMI. More...

Inheritance diagram for regionCoupledBase:

Public Member Functions

 TypeName ("regionCoupledBase")
 Runtime type information. More...
 
 regionCoupledBase (const polyPatch &)
 Construct from patch. More...
 
 regionCoupledBase (const polyPatch &, const dictionary &)
 Construct from dictionary. More...
 
 regionCoupledBase (const polyPatch &, const regionCoupledBase &)
 Construct as copy, resetting patch. More...
 
virtual ~regionCoupledBase ()
 Destructor. More...
 
const wordnbrPatchName () const
 Neighbour patch name. More...
 
const wordnbrRegionName () const
 Neighbour region name. More...
 
bool sameRegion () const
 Cached sampleRegion != mesh.name() More...
 
label nbrPatchID () const
 Neighbour patch ID. More...
 
bool owner () const
 Does this side own the patch? More...
 
const regionCoupledBasenbrPatch () const
 Return a reference to the neighbour patch. More...
 
const autoPtr< searchableSurface > & surfPtr () const
 Return a reference to the projection surface. More...
 
const AMIInterpolationAMI () const
 Return a reference to the AMI interpolator. More...
 
template<class Type >
tmp< Field< Type > > interpolate (const Field< Type > &fld) const
 Interpolate field. More...
 
template<class Type >
tmp< Field< Type > > interpolate (const tmp< Field< Type >> &tFld) const
 Interpolate tmp field. More...
 
template<class Type , class BinaryOp >
void interpolate (const UList< Type > &fld, const BinaryOp &bop, List< Type > &result) const
 Low-level interpolate List. More...
 
virtual bool order (PstreamBuffers &, const primitivePatch &, labelList &faceMap, labelList &rotation) const
 Return new ordering for primitivePatch. More...
 
virtual const wordregionCoupleType () const =0
 Return the type. More...
 
virtual void write (Ostream &) const
 Write the polyPatch data as a dictionary. More...
 
template<class Type >
Foam::tmp< Foam::Field< Type > > interpolate (const Field< Type > &fld) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > interpolate (const tmp< Field< Type >> &tFld) const
 

Protected Member Functions

virtual void clearGeom ()
 Clear geometry. More...
 

Detailed Description

Base class with common functionality for regionCoupled polyPatch. It includes AMI.

Source files

Definition at line 51 of file regionCoupledBase.H.

Constructor & Destructor Documentation

◆ regionCoupledBase() [1/3]

regionCoupledBase ( const polyPatch pp)

Construct from patch.

Definition at line 126 of file regionCoupledBase.C.

Referenced by regionCoupledBase::clearGeom(), and regionCoupledBase::regionCoupledBase().

Here is the caller graph for this function:

◆ regionCoupledBase() [2/3]

regionCoupledBase ( const polyPatch pp,
const dictionary dict 
)

Construct from dictionary.

Definition at line 143 of file regionCoupledBase.C.

References regionCoupledBase::regionCoupledBase().

Here is the call graph for this function:

◆ regionCoupledBase() [3/3]

regionCoupledBase ( const polyPatch pp,
const regionCoupledBase mpb 
)

Construct as copy, resetting patch.

Definition at line 161 of file regionCoupledBase.C.

◆ ~regionCoupledBase()

~regionCoupledBase ( )
virtual

Destructor.

Definition at line 180 of file regionCoupledBase.C.

Member Function Documentation

◆ clearGeom()

◆ TypeName()

TypeName ( "regionCoupledBase"  )

Runtime type information.

◆ nbrPatchName()

const word& nbrPatchName ( ) const
inline

Neighbour patch name.

Definition at line 124 of file regionCoupledBase.H.

Referenced by regionCoupledBase::nbrPatchID().

Here is the caller graph for this function:

◆ nbrRegionName()

const word& nbrRegionName ( ) const
inline

Neighbour region name.

Definition at line 130 of file regionCoupledBase.H.

Referenced by regionCoupledBaseFvPatch::nbrFvMesh(), and regionCoupledBaseFvPatch::nbrMesh().

Here is the caller graph for this function:

◆ sameRegion()

◆ nbrPatchID()

◆ owner()

bool owner ( ) const

Does this side own the patch?

Definition at line 237 of file regionCoupledBase.C.

References regionCoupledBase::surfPtr().

Referenced by regionCoupledBaseFvPatch::owner(), and regionCoupledBase::sameRegion().

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

◆ nbrPatch()

const Foam::regionCoupledBase & nbrPatch ( ) const

Return a reference to the neighbour patch.

Definition at line 301 of file regionCoupledBase.C.

References polyMesh::boundaryMesh(), objectRegistry::lookupObject(), mesh, polyBoundaryMesh::mesh(), regionCoupledBase::order(), and objectRegistry::time().

Referenced by regionCoupledBase::sameRegion().

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

◆ surfPtr()

const Foam::autoPtr< Foam::searchableSurface > & surfPtr ( ) const

Return a reference to the projection surface.

Definition at line 251 of file regionCoupledBase.C.

References polyMesh::boundaryMesh(), TimePaths::constant(), mesh, polyBoundaryMesh::mesh(), IOobject::MUST_READ, searchableSurface::New(), IOobject::NO_WRITE, and objectRegistry::time().

Referenced by regionCoupledBase::owner(), and regionCoupledBase::sameRegion().

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

◆ AMI()

const Foam::AMIInterpolation & AMI ( ) const

Return a reference to the AMI interpolator.

Definition at line 282 of file regionCoupledBase.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by regionCoupledBaseFvPatch::AMI(), and regionCoupledBase::sameRegion().

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

◆ interpolate() [1/5]

tmp<Field<Type> > interpolate ( const Field< Type > &  fld) const

Interpolate field.

Referenced by regionCoupledBase::interpolate(), and regionCoupledBase::sameRegion().

Here is the caller graph for this function:

◆ interpolate() [2/5]

tmp<Field<Type> > interpolate ( const tmp< Field< Type >> &  tFld) const

Interpolate tmp field.

◆ interpolate() [3/5]

void interpolate ( const UList< Type > &  fld,
const BinaryOp &  bop,
List< Type > &  result 
) const

Low-level interpolate List.

Definition at line 64 of file regionCoupledBaseTemplates.C.

◆ order()

bool order ( PstreamBuffers pBufs,
const primitivePatch pp,
labelList faceMap,
labelList rotation 
) const
virtual

Return new ordering for primitivePatch.

Ordering is -faceMap: for every face index of the new face -rotation:for every new face the clockwise shift of the original face. Return false if nothing changes (faceMap is identity, rotation is 0), true otherwise.

Definition at line 315 of file regionCoupledBase.C.

References List< T >::setSize().

Referenced by regionCoupledBase::nbrPatch(), and regionCoupledBase::sameRegion().

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

◆ regionCoupleType()

virtual const word& regionCoupleType ( ) const
pure virtual

Return the type.

Implemented in regionCoupledPolyPatch, and regionCoupledWallPolyPatch.

Referenced by regionCoupledBaseFvPatch::regionCoupleType(), and regionCoupledBase::sameRegion().

Here is the caller graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write the polyPatch data as a dictionary.

Reimplemented in regionCoupledPolyPatch, and regionCoupledWallPolyPatch.

Definition at line 332 of file regionCoupledBase.C.

References Foam::writeEntry(), and Foam::writeKeyword().

Referenced by regionCoupledBase::sameRegion(), regionCoupledWallPolyPatch::write(), and regionCoupledPolyPatch::write().

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

◆ interpolate() [4/5]

Foam::tmp<Foam::Field<Type> > interpolate ( const Field< Type > &  fld) const

Definition at line 30 of file regionCoupledBaseTemplates.C.

References regionCoupledBase::interpolate().

Here is the call graph for this function:

◆ interpolate() [5/5]

Foam::tmp<Foam::Field<Type> > interpolate ( const tmp< Field< Type >> &  tFld) const

Definition at line 47 of file regionCoupledBaseTemplates.C.

References regionCoupledBase::interpolate().

Here is the call graph for this function:

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