An abstract base class for patches that couple regions of the computational domain e.g. cyclic and processor-processor links. More...
Public Member Functions | |
TypeName (coupledPolyPatch::typeName_()) | |
Runtime type information. More... | |
coupledFvPatch (const polyPatch &patch, const fvBoundaryMesh &bm) | |
Construct from polyPatch. More... | |
virtual | ~coupledFvPatch () |
Destructor. More... | |
virtual bool | coupled () const |
Return true because this patch is coupled. More... | |
virtual bool | owner () const |
Does this side own the patch ? More... | |
virtual bool | neighbour () const |
Does the coupled side own the patch ? More... | |
virtual const transformer & | transform () const =0 |
Return transformation between the coupled patches. More... | |
virtual const labelUList & | faceCells () const |
Return faceCell addressing. More... | |
virtual tmp< vectorField > | delta () const =0 |
Return delta (P to N) vectors across coupled patch. More... | |
virtual tmp< labelField > | interfaceInternalField (const labelUList &internalData) const =0 |
Return the values of the given internal data adjacent to. More... | |
virtual void | initInternalFieldTransfer (const Pstream::commsTypes commsType, labelUList &iF) const |
Initialise neighbour field transfer. More... | |
virtual tmp< labelField > | internalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const =0 |
Return neighbour field. More... | |
Public Member Functions inherited from lduInterface | |
TypeName ("lduInterface") | |
Runtime type information. More... | |
lduInterface () | |
Construct null. More... | |
lduInterface (const lduInterface &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~lduInterface () |
Destructor. More... | |
virtual void | initInternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const |
Initialise transfer of internal field adjacent to the interface. More... | |
void | operator= (const lduInterface &)=delete |
Disallow default bitwise assignment. More... | |
Public Member Functions inherited from fvPatch | |
TypeName (polyPatch::typeName_()) | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, fvPatch, polyPatch,(const polyPatch &patch, const fvBoundaryMesh &bm),(patch, bm)) | |
fvPatch (const polyPatch &, const fvBoundaryMesh &) | |
Construct from polyPatch and fvBoundaryMesh. More... | |
fvPatch (const fvPatch &) | |
Disallow default bitwise copy construction. More... | |
virtual | ~fvPatch () |
Destructor. More... | |
const polyPatch & | patch () const |
Return the polyPatch. More... | |
virtual const word & | name () const |
Return name. More... | |
virtual label | start () const |
Return start label of this patch in the polyMesh face list. More... | |
virtual label | size () const |
Return size. More... | |
label | index () const |
Return the index of this patch in the fvBoundaryMesh. More... | |
const fvBoundaryMesh & | boundaryMesh () const |
Return boundaryMesh reference. More... | |
const objectRegistry & | db () const |
Return the local object registry. More... | |
template<class T > | |
const List< T >::subList | patchSlice (const List< T > &l) const |
Slice list to patch. More... | |
const vectorField & | Cf () const |
Return face centres. More... | |
tmp< vectorField > | Cn () const |
Return neighbour cell centres. More... | |
const vectorField & | Sf () const |
Return face area vectors. More... | |
const scalarField & | magSf () const |
Return face area magnitudes. More... | |
tmp< vectorField > | nf () const |
Return face normals. More... | |
const scalarField & | weights () const |
Return patch weighting factors. More... | |
const scalarField & | deltaCoeffs () const |
Return the face - cell distance coeffient. More... | |
template<class Type > | |
tmp< Field< Type > > | patchInternalField (const UList< Type > &) const |
Return given internal field next to patch as patch field. More... | |
template<class Type > | |
void | patchInternalField (const UList< Type > &, Field< Type > &) const |
Return given internal field next to patch as patch field. More... | |
template<class GeometricField , class Type > | |
const GeometricField::Patch & | patchField (const GeometricField &) const |
Return the corresponding patchField of the named field. More... | |
template<class GeometricField , class Type > | |
GeometricField::Patch & | patchField (GeometricField &) const |
Return the corresponding patchField reference of the named field. More... | |
template<class GeometricField , class Type > | |
const GeometricField::Patch & | lookupPatchField (const word &name) const |
Lookup and return the patchField of the named field from the. More... | |
void | operator= (const fvPatch &) |
Disallow default bitwise assignment. More... | |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | patchInternalField (const UList< Type > &f) const |
Protected Member Functions | |
void | makeWeights (scalarField &w, const vectorField &nbrSf, const vectorField &nbrDelta) const |
Make patch weighting factors. More... | |
virtual void | makeWeights (scalarField &w) const =0 |
Make patch weighting factors. More... | |
tmp< vectorField > | delta (const vectorField &nbrDelta) const |
Return delta (P to N) vectors across coupled patch. More... | |
Protected Member Functions inherited from fvPatch | |
virtual void | initMovePoints () |
Initialise the patches for moving points. More... | |
virtual void | movePoints () |
Correct patches after moving points. More... | |
Friends | |
class | surfaceInterpolation |
Additional Inherited Members | |
Public Types inherited from fvPatch | |
typedef fvBoundaryMesh | BoundaryMesh |
Static Public Member Functions inherited from fvPatch | |
static autoPtr< fvPatch > | New (const polyPatch &, const fvBoundaryMesh &) |
Return a pointer to a new patch created on freestore from polyPatch. More... | |
static bool | constraintType (const word &pt) |
Return true if the given type is a constraint type. More... | |
static wordList | constraintTypes () |
Return a list of all the constraint patch types. More... | |
An abstract base class for patches that couple regions of the computational domain e.g. cyclic and processor-processor links.
Definition at line 51 of file coupledFvPatch.H.
|
inline |
Construct from polyPatch.
Definition at line 99 of file coupledFvPatch.H.
References coupledFvPatch::~coupledFvPatch().
|
virtual |
Destructor.
Definition at line 38 of file coupledFvPatch.C.
References coupledFvPatch::makeWeights().
Referenced by coupledFvPatch::coupledFvPatch().
|
protected |
Make patch weighting factors.
Definition at line 45 of file coupledFvPatch.C.
References delta, coupledFvPatch::delta(), forAll, and Foam::mag().
Referenced by processorFvPatch::makeWeights(), cyclicFvPatch::makeWeights(), and coupledFvPatch::~coupledFvPatch().
|
protectedpure virtual |
Make patch weighting factors.
Reimplemented from fvPatch.
Implemented in nonConformalCyclicFvPatch, cyclicAMIFvPatch, nonConformalProcessorCyclicFvPatch, cyclicFvPatch, and processorFvPatch.
|
protected |
Return delta (P to N) vectors across coupled patch.
Definition at line 80 of file coupledFvPatch.C.
References coupledFvPatch::delta(), Foam::transform(), dimensionSet::transform, and transforms.
TypeName | ( | coupledPolyPatch::typeName_() | ) |
Runtime type information.
|
inlinevirtual |
Return true because this patch is coupled.
Reimplemented from fvPatch.
Reimplemented in cyclicAMIFvPatch, nonConformalCyclicFvPatch, nonConformalProcessorCyclicFvPatch, and processorFvPatch.
Definition at line 115 of file coupledFvPatch.H.
References coupledPolyPatch::coupled().
|
inlinevirtual |
Does this side own the patch ?
Reimplemented in cyclicAMIFvPatch, and cyclicFvPatch.
Definition at line 121 of file coupledFvPatch.H.
References coupledPolyPatch::owner().
Referenced by coupledFvPatch::neighbour(), and fvMeshStitcher::synchronisedBoundaryField().
|
inlinevirtual |
Does the coupled side own the patch ?
Definition at line 127 of file coupledFvPatch.H.
References coupledFvPatch::owner(), and coupledFvPatch::transform().
|
pure virtual |
Return transformation between the coupled patches.
Implemented in cyclicAMIFvPatch, processorFvPatch, cyclicFvPatch, and processorCyclicFvPatch.
Referenced by coupledFvPatch::neighbour().
|
inlinevirtual |
Return faceCell addressing.
Reimplemented from fvPatch.
Reimplemented in nonConformalCyclicFvPatch, and nonConformalProcessorCyclicFvPatch.
Definition at line 136 of file coupledFvPatch.H.
References coupledFvPatch::delta(), fvPatch::faceCells(), lduInterface::initInternalFieldTransfer(), coupledFvPatch::initInternalFieldTransfer(), and coupledFvPatch::interfaceInternalField().
|
pure virtual |
Return delta (P to N) vectors across coupled patch.
Reimplemented from fvPatch.
Implemented in cyclicAMIFvPatch, nonConformalCyclicFvPatch, cyclicFvPatch, processorFvPatch, and nonConformalProcessorCyclicFvPatch.
Definition at line 99 of file coupledFvPatch.C.
Referenced by coupledFvPatch::delta(), nonConformalProcessorCyclicFvPatch::delta(), processorFvPatch::delta(), cyclicFvPatch::delta(), nonConformalCyclicFvPatch::delta(), cyclicAMIFvPatch::delta(), cyclicAMIFvPatch::deltan(), coupledFvPatch::faceCells(), cyclicFvPatch::makeWeights(), coupledFvPatch::makeWeights(), and nonConformalCyclicFvPatch::makeWeights().
|
pure virtual |
Return the values of the given internal data adjacent to.
the interface as a field
Implements lduInterface.
Implemented in cyclicAMIFvPatch, cyclicFvPatch, and processorFvPatch.
Referenced by coupledFvPatch::faceCells().
|
inlinevirtual |
Initialise neighbour field transfer.
Definition at line 159 of file coupledFvPatch.H.
References coupledFvPatch::internalFieldTransfer().
Referenced by coupledFvPatch::faceCells(), and processorFvPatch::transform().
|
pure virtual |
Return neighbour field.
Implements lduInterface.
Implemented in cyclicAMIFvPatch, processorFvPatch, and cyclicFvPatch.
Referenced by coupledFvPatch::initInternalFieldTransfer().
|
friend |
Definition at line 89 of file coupledFvPatch.H.