38#ifndef processorFvPatch_H
39#define processorFvPatch_H
75 TypeName(processorPolyPatch::typeName_());
91 virtual label
comm()
const
93 return procPolyPatch_.
comm();
105 return procPolyPatch_.neighbProcNo();
109 virtual int tag()
const
122 return procPolyPatch_;
128 return procPolyPatch_.parallel();
134 return procPolyPatch_.forwardT();
140 return procPolyPatch_.reverseT();
commsTypes
Communications types.
static int & msgType() noexcept
Message tag of standard messages.
static bool & parRun() noexcept
Test if this a parallel run.
virtual void initInternalFieldTransfer(const Pstream::commsTypes commsType, labelUList &iF) const
Initialise neighbour field transfer.
virtual const labelUList & faceCells() const
Return faceCell addressing.
coupledFvPatch(const polyPatch &patch, const fvBoundaryMesh &bm)
Construct from polyPatch.
Smooth ATC in cells next to a set of patches supplied by type.
A fvBoundaryMesh is a fvPatch list with a reference to the associated fvMesh, with additional search ...
const polyPatch & patch() const noexcept
Return the polyPatch.
A patch is a list of labels that address the faces in the global face list.
virtual tmp< labelField > internalFieldTransfer(const Pstream::commsTypes commsType, const labelUList &internalData) const
Return neighbour field.
virtual bool coupled() const
Return true if running parallel.
void makeWeights(scalarField &) const
Make patch weighting factors.
virtual const tensorField & reverseT() const
Return neighbour-cell transformation tensor.
processorFvPatch(const polyPatch &patch, const fvBoundaryMesh &bm)
Construct from components.
virtual bool parallel() const
Are the cyclic planes parallel.
virtual int myProcNo() const
Return processor number.
virtual label comm() const
Return communicator used for comms.
virtual tmp< vectorField > delta() const
Return delta (P to N) vectors across coupled patch.
TypeName(processorPolyPatch::typeName_())
Runtime type information.
virtual void initInternalFieldTransfer(const Pstream::commsTypes commsType, const labelUList &internalData) const
Initialise neighbour field transfer.
virtual tmp< labelField > interfaceInternalField(const labelUList &internalData) const
Return the values of the given internal data adjacent to the interface as a field.
virtual int tag() const
Return message tag used for sending.
const processorPolyPatch & procPolyPatch() const
virtual int neighbProcNo() const
Return neighbour processor number.
virtual const tensorField & forwardT() const
Return face transformation tensor.
processorLduInterface() noexcept=default
Default construct.
Neighbour processor patch.
virtual label comm() const
Return communicator used for communication.
int myProcNo() const noexcept
Return processor number.
A class for managing temporary objects.
Type & refCast(U &obj)
A dynamic_cast (for references) to Type reference.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Field< tensor > tensorField
Specialisation of Field<T> for tensor.
UList< label > labelUList
A UList of labels.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.