32 const pointMesh& completeMesh,
33 const PtrList<pointMesh>& procMeshes,
37 completeMesh_(completeMesh),
38 procMeshes_(procMeshes),
39 pointProcAddressing_(pointProcAddressing),
40 patchPointAddressing_(procMeshes.size()),
49 const pointMesh& procMesh = procMeshes_[proci];
51 patchPointAddressing_[proci].setSize(procMesh.boundary().size());
58 procPatchAddr.
setSize(procMesh.boundary()[
patchi].size(), -1);
64 forAll(patchPointLabels, pointi)
66 pointMap[patchPointLabels[pointi]] = pointi;
70 procMesh.boundary()[
patchi].meshPoints();
72 forAll(procPatchPoints, pointi)
74 procPatchAddr[pointi] =
77 pointProcAddressing_[proci][procPatchPoints[pointi]]
81 if (procPatchAddr.size() &&
min(procPatchAddr) < 0)
84 <<
"Incomplete patch point addressing" List< labelList > labelListList
A List of labelList.
#define forAll(list, i)
Loop across all elements in list.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
label size() const
Return number of elements in table.
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
List< label > labelList
A List of labels.
errorManip< error > abort(error &err)
pointFieldReconstructor(const pointMesh &mesh, const PtrList< pointMesh > &procMeshes, const labelListList &pointProcAddressing)
Construct from components.
label size() const
Return the number of elements in the UPtrList.
void setSize(const label)
Reset size of List.
const fvBoundaryMesh & boundary() const
Return reference to boundary mesh.