36 void Foam::faAreaMapper::calcAddressing()
const
41 || newFaceLabelsMapPtr_
43 || interpolationAddrPtr_
45 || insertedObjectLabelsPtr_
49 <<
"Addressing already calculated"
66 newFaceLabelsPtr_ =
new labelList(mesh_().nBoundaryFaces(), -1);
69 newFaceLabelsMapPtr_ =
new labelList(mesh_().nBoundaryFaces(), -1);
73 Info<<
"Old face list size: " << oldFaces.size()
82 if (reverseFaceMap[oldFaces[faceI]] > -1)
126 for (
label addrI = 0; addrI < nNewFaces; ++addrI)
147 const labelList& mo = ffp[ffpI].masterObjects();
155 if (oldFaceLookup.found(mo[moI]))
157 validMo[nValidMo] = oldFaceLookup[mo[moI]];
171 addr[nNewFaces] = validMo;
172 w[nNewFaces] =
scalarList(validMo.size(), 1.0/validMo.size());
183 const labelList& mo = ffe[ffeI].masterObjects();
191 if (oldFaceLookup.found(mo[moI]))
193 validMo[nValidMo] = oldFaceLookup[mo[moI]];
207 addr[nNewFaces] = validMo;
208 w[nNewFaces] =
scalarList(validMo.size(), 1.0/validMo.size());
219 const labelList& mo = fff[fffI].masterObjects();
227 if (oldFaceLookup.found(mo[moI]))
229 validMo[nValidMo] = oldFaceLookup[mo[moI]];
243 addr[nNewFaces] = validMo;
244 w[nNewFaces] =
scalarList(validMo.size(), 1.0/validMo.size());
253 addr.setSize(nNewFaces);
254 w.setSize(nNewFaces);
255 Info<<
"addr: " << addr <<
nl
256 <<
"w: " << w <<
endl;
261 insertedObjectLabelsPtr_ =
new labelList(0);
265 void Foam::faAreaMapper::clearOut()
275 hasUnmapped_ =
false;
281 Foam::faAreaMapper::faAreaMapper
292 newFaceLabelsPtr_(
nullptr),
293 newFaceLabelsMapPtr_(
nullptr),
294 directAddrPtr_(
nullptr),
295 interpolationAddrPtr_(
nullptr),
296 weightsPtr_(
nullptr),
297 insertedObjectLabelsPtr_(
nullptr)
302 mpm_.facesFromPointsMap().empty()
303 && mpm_.facesFromEdgesMap().empty()
304 && mpm_.facesFromFacesMap().empty()
330 if (!newFaceLabelsPtr_)
335 return *newFaceLabelsPtr_;
341 if (!newFaceLabelsMapPtr_)
346 return *newFaceLabelsMapPtr_;
355 <<
"Requested direct addressing for an interpolative mapper."
364 return *directAddrPtr_;
373 <<
"Requested interpolative addressing for a direct mapper."
377 if (!interpolationAddrPtr_)
382 return *interpolationAddrPtr_;
391 <<
"Requested interpolative weights for a direct mapper."
406 if (!insertedObjectLabelsPtr_)
411 return *insertedObjectLabelsPtr_;