Go to the documentation of this file.
52 const int neighbProcNo,
53 const word& referPatchName,
60 newName(referPatchName, myProcNo, neighbProcNo),
70 referPatchName_(referPatchName),
86 referPatchName_(
dict.lookup(
"referPatch")),
87 tag_(
dict.getOrDefault<
int>(
"tag", -1)),
115 referPatchName_(pp.referPatchName_),
127 const label newStart,
128 const word& referPatchName
132 referPatchName_(referPatchName),
164 const word& cyclicPolyPatchName,
165 const label myProcNo,
166 const label neighbProcNo
172 + cyclicPolyPatchName;
178 const word& cyclicPolyPatchName,
186 "procBoundary.*to.*through" + cyclicPolyPatchName,
216 <<
"Tag calculated from cyclic patch name " << tag_
217 <<
" is the same as the current message type "
219 <<
"Please set a non-conflicting, unique, tag by hand"
220 <<
" using the 'tag' entry"
225 Pout<<
"processorCyclicPolyPatch " <<
name() <<
" uses tag " << tag_
265 neighbFaceCellCentres()
268 if (isA<cyclicPolyPatch>(pp))
276 neighbFaceCellCentres(),
329 UOPstream toNeighbour(neighbProcNo(), pBufs);
348 UIPstream fromNeighbour(neighbProcNo(), pBufs);
349 fromNeighbour >> masterPts >> masterFaces;
355 refCast<const cyclicPolyPatch>(referPatch());
int debug
Static debugging option.
addToRunTimeSelectionTable(decompositionMethod, kahipDecomp, dictionary)
Ostream & writeEntryIfDifferent(const word &key, const T &value1, const T &value2)
Write a keyword/value entry only when the two values differ.
virtual int tag() const
Return message tag to use for communication.
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
A class for handling words, derived from Foam::string.
Output inter-processor communications stream operating on external buffer.
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO.
Neighbour processor patch.
const cyclicPolyPatch & neighbPatch() const
virtual bool order(PstreamBuffers &, const primitivePatch &, labelList &faceMap, labelList &rotation) const
Return new ordering for primitivePatch.
A List obtained as a section of another List.
virtual void initUpdateMesh(PstreamBuffers &)
Initialise the update of the patch topology.
virtual void initOrder(PstreamBuffers &, const primitivePatch &) const
Initialize ordering for primitivePatch. Does not.
Buffers for inter-processor communications streams (UOPstream, UIPstream).
static bool & parRun()
Is this a parallel run?
virtual bool order(PstreamBuffers &, const primitivePatch &, labelList &faceMap, labelList &rotation) const
Return new ordering for primitivePatch.
Ostream & endl(Ostream &os)
Add newline and flush stream.
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational d...
prefixOSstream Pout
An Ostream wrapper for parallel output to std::cout.
dimensionSet transform(const dimensionSet &ds)
Return the argument; transformations do not change the dimensions.
void calcGeometry(PstreamBuffers &)
Calculate the patch geometry.
void initMovePoints(PstreamBuffers &, const pointField &)
Initialise the patches for moving points.
void movePoints(PstreamBuffers &, const pointField &)
Correct patches after moving points.
processorCyclicPolyPatch(const label size, const label start, const label index, const polyBoundaryMesh &bm, const int myProcNo, const int neighbProcNo, const word &referPatchName, const transformType transform=UNKNOWN, const word &patchType=typeName)
Construct from components.
A class for handling keywords in dictionaries.
void set(T *p) noexcept
Deprecated(2018-02) Identical to reset().
word name(const complex &c)
Return string representation of complex.
void initGeometry(PstreamBuffers &)
Initialise the calculation of the patch geometry.
Hashing function for string and derived string classes.
Neighbour processor patch.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Macros for easy insertion into run-time selection tables.
const List< face_type > & localFaces() const
Return patch faces addressing into local point list.
errorManipArg< error, int > exit(error &err, const int errNo=1)
const Field< point_type > & localPoints() const
Return pointField of points in patch.
labelList indices(const keyType &key, const bool useGroups=true) const
Return patch indices for all matches.
virtual void initUpdateMesh(PstreamBuffers &)
Initialise the update of the patch topology.
virtual void write(Ostream &) const
Write the polyPatch data as a dictionary.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
static labelList patchIDs(const word &cyclicPolyPatchName, const polyBoundaryMesh &bm)
Return the indices of a processorCyclicPolyPatchs.
virtual void initOrder(PstreamBuffers &, const primitivePatch &) const
Initialize ordering for primitivePatch. Does not.
static int & msgType()
Message tag of standard messages.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const word & referPatchName() const
Return name of originating cyclicPolyPatch patch.
virtual void write(Ostream &) const
Write the polyPatch data as a dictionary.
virtual void updateMesh(PstreamBuffers &)
Update of the patch topology.
static word newName(const label myProcNo, const label neighbProcNo)
Return the name of a processorPolyPatch.
void calcGeometry(PstreamBuffers &)
Calculate the patch geometry.
virtual ~processorCyclicPolyPatch()
Ostream & writeEntry(const keyType &key, const T &value)
Write a keyword/value entry.
PrimitivePatch< SubList< face >, const pointField & > primitivePatch
A PrimitivePatch with a SubList addressing for the faces, const reference for the point field.
virtual void updateMesh(PstreamBuffers &)
Update of the patch topology.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Input inter-processor communications stream operating on external buffer.
virtual void calcGeometry(PstreamBuffers &)=0
Calculate the patch geometry.
defineTypeNameAndDebug(combustionModel, 0)
static word newName(const word &cyclicPolyPatchName, const label myProcNo, const label neighbProcNo)
Return the name of a processorCyclicPolyPatch.
const word & name() const
The patch name.
void initGeometry(PstreamBuffers &)
Initialise the calculation of the patch geometry.
A list of faces which address into the list of points.