46 #ifndef cyclicPolyPatch_H
47 #define cyclicPolyPatch_H
73 struct ownToNbrCyclicOrderData
83 mutable word nbrPatchName_;
89 mutable label nbrPatchID_;
167 const word& patchType
178 const word& patchType,
190 const word& patchType,
191 const bool cyclicTransformDefaultIsNone=
false
205 const label newStart,
252 virtual bool owner()
const
265 return refCast<const cyclicPolyPatch>(pp);
298 <<
"Face " << facei <<
" not in patch " <<
name()
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A list of faces which address into the list of points.
autoPtr< PrimitivePatch< FaceList, PointField > > clone() const
Construct and return a clone.
Buffers for inter-processor communications streams (UOPstream, UIPstream).
Encapsulates using patchGroups to specify coupled patch.
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational d...
const cyclicPolyPatch & nbrPatch() const
cyclicPolyPatch(const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm, const word &patchType)
Construct from components.
virtual void write(Ostream &) const
Write the polyPatch data as a dictionary.
virtual void initMovePoints(PstreamBuffers &, const pointField &)
Initialise the patches for moving points.
virtual void rename(const wordList &newNames)
Reset the patch name.
virtual bool owner() const
Does this side own the patch ?
const edgeList & coupledEdges() const
Return connected edges (from patch local to neighbour patch local).
const word & nbrPatchName() const
Neighbour patch name.
virtual void calcGeometry(PstreamBuffers &)
Calculate the patch geometry.
const edgeList & coupledPoints() const
Return connected points (from patch local to neighbour patch local)
virtual void reorder(const labelUList &newToOldIndex)
Reset the patch index.
virtual void initOrder(PstreamBuffers &, const primitivePatch &) const
Initialise ordering for primitivePatch. Does not.
virtual void initCalcGeometry(PstreamBuffers &)
Initialise the calculation of the patch geometry.
virtual const transformer & transform() const
Return transformation between the coupled patches.
virtual label nbrPatchID() const
Neighbour patchID.
label transformGlobalFace(const label facei) const
For a given patch face index, return the corresponding index of the.
virtual bool order(PstreamBuffers &, const primitivePatch &, labelList &faceMap, labelList &rotation) const
Return new ordering for primitivePatch.
virtual void movePoints(PstreamBuffers &, const pointField &)
Correct patches after moving points.
TypeName("cyclic")
Runtime type information.
virtual void initTopoChange(PstreamBuffers &)
Initialise the update of the patch topology.
virtual ~cyclicPolyPatch()
Destructor.
virtual bool neighbour() const
Does the coupled side own the patch ?
virtual void topoChange(PstreamBuffers &)
Update of the patch topology.
A list of keyword definitions, which are a keyword followed by any number of values (e....
label index() const
Return the index of this patch in the boundaryMesh.
const word & name() const
Return name.
A patch is a list of labels that address the faces in the global face list.
label start() const
Return start label of this patch in the polyMesh face list.
const polyBoundaryMesh & boundaryMesh() const
Return boundaryMesh reference.
Neighbour processor patch.
A class for handling words, derived from string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
errorManipArg< error, int > exit(error &err, const int errNo=1)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
void offset(label &lst, const label o)