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,
179 const word& nbrPatchName,
190 const word& patchType,
191 const bool cyclicTransformDefaultIsNone=
false 205 const label newStart,
206 const word& nbrPatchName
278 virtual bool owner()
const 291 return refCast<const cyclicPolyPatch>(pp);
317 if (offset >= 0 && offset < size())
319 return neiStart + offset;
324 <<
"Face " << facei <<
" not in patch " <<
name()
virtual void write(Ostream &) const
Write the polyPatch data as a dictionary.
Neighbour processor patch.
virtual void initTopoChange(PstreamBuffers &)
Initialise the update of the patch topology.
const word & name() const
Return name.
errorManipArg< error, int > exit(error &err, const int errNo=1)
const edgeList & coupledPoints() const
Return connected points (from patch local to neighbour patch local)
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const polyBoundaryMesh & boundaryMesh() const
Return boundaryMesh reference.
virtual void calcGeometry(PstreamBuffers &)
Calculate the patch geometry.
virtual void initMovePoints(PstreamBuffers &, const pointField &)
Initialise the patches for moving points.
const word & nbrPatchName() const
Neighbour patch name.
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational d...
cyclicPolyPatch(const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm, const word &patchType)
Construct from components.
virtual const transformer & transform() const
Return transformation between the coupled patches.
virtual void topoChange(PstreamBuffers &)
Update of the patch topology.
const cyclicPolyPatch & nbrPatch() const
const edgeList & coupledEdges() const
Return connected edges (from patch local to neighbour patch local).
virtual bool order(PstreamBuffers &, const primitivePatch &, labelList &faceMap, labelList &rotation) const
Return new ordering for primitivePatch.
virtual void reorder(const labelUList &newToOldIndex)
Reset the patch index.
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
virtual void rename(const wordList &newNames)
Reset the patch name.
A list of faces which address into the list of points.
virtual bool owner() const
Does this side own the patch ?
TypeName("cyclic")
Runtime type information.
A class for handling words, derived from string.
virtual void movePoints(PstreamBuffers &, const pointField &)
Correct patches after moving points.
Encapsulates using patchGroups to specify coupled patch.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
An Ostream is an abstract base class for all output systems (streams, files, token lists...
Buffers for inter-processor communications streams (UOPstream, UIPstream).
virtual bool neighbour() const
Does the coupled side own the patch ?
autoPtr< PrimitivePatch< FaceList, PointField > > clone() const
Construct and return a clone.
virtual ~cyclicPolyPatch()
Destructor.
label index() const
Return the index of this patch in the boundaryMesh.
label start() const
Return start label of this patch in the polyMesh face list.
virtual void initOrder(PstreamBuffers &, const primitivePatch &) const
Initialise ordering for primitivePatch. Does not.
label transformGlobalFace(const label facei) const
For a given patch face index, return the corresponding index of the.
A patch is a list of labels that address the faces in the global face list.
virtual void initCalcGeometry(PstreamBuffers &)
Initialise the calculation of the patch geometry.
virtual label nbrPatchID() const
Neighbour patchID.