Go to the documentation of this file.
38 #include "vtkCellArray.h"
39 #include "vtkCellData.h"
40 #include "vtkCompositeDataSet.h"
41 #include "vtkMultiPieceDataSet.h"
42 #include "vtkPointData.h"
43 #include "vtkPolyData.h"
44 #include "vtkSmartPointer.h"
59 nPieces += ids.size();
63 multiPiece->SetNumberOfPieces(nPieces);
67 if (!needsCollective())
71 for (
int proci=0; proci < Pstream::myProcNo(); ++proci)
89 else if (Pstream::master())
113 int slave=Pstream::firstSlave();
114 slave<=Pstream::lastSlave();
125 IPstream fromSlave(Pstream::commsTypes::scheduled, slave);
127 for (
label recvi=0; recvi < nSlavePatches; ++recvi)
150 if (slavePatchIds.size())
154 Pstream::commsTypes::scheduled,
183 nPieces += ids.size();
187 multiPiece->SetNumberOfPieces(nPieces);
191 if (!needsCollective())
195 for (
int proci=0; proci < Pstream::myProcNo(); ++proci)
209 multiPiece->SetPiece(pieceId, geom);
214 else if (Pstream::master())
228 multiPiece->SetPiece(pieceId, geom);
238 int slave=Pstream::firstSlave();
239 slave<=Pstream::lastSlave();
250 IPstream fromSlave(Pstream::commsTypes::scheduled, slave);
252 for (
label recvi=0; recvi < nSlavePatches; ++recvi)
274 if (slavePatchIds.size())
278 Pstream::commsTypes::scheduled,
vtkSmartPointer< vtkMultiPieceDataSet > gatherPatchPieces(const labelListList &patchIds) const
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO.
Output inter-processor communications stream.
const Field< PointType > & localPoints() const
Return pointField of points in patch.
vtkSmartPointer< vtkMultiPieceDataSet > gatherPatchFaceCentres(const labelListList &patchIds) const
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A patch is a list of labels that address the faces in the global face list.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
const vectorField::subField faceCentres() const
Return face centres.
void clear()
Clear the list, i.e. set size to zero.
const polyBoundaryMesh & patches
const List< Face > & localFaces() const
Return patch faces addressing into local point list.
Input inter-processor communications stream.