37 Pout<<
"void Foam::slidingInterface::calcAttachedAddressing() const "
38 <<
" for object " <<
name() <<
" : "
39 <<
"Calculating zone face-cell addressing."
67 forAll(masterPatchFaces, faceI)
69 if (masterFlip[faceI])
71 mfc[faceI] = nei[masterPatchFaces[faceI]];
75 mfc[faceI] = own[masterPatchFaces[faceI]];
93 forAll(slavePatchFaces, faceI)
97 sfc[faceI] = nei[slavePatchFaces[faceI]];
101 sfc[faceI] = own[slavePatchFaces[faceI]];
106 if (
min(mfc) < 0 ||
min(sfc) < 0)
114 Pout<<
"No cell next to master patch face " << faceI
115 <<
". Global face no: " << mfc[faceI]
116 <<
" own: " << own[masterPatchFaces[faceI]]
117 <<
" nei: " << nei[masterPatchFaces[faceI]]
118 <<
" flip: " << masterFlip[faceI] <<
endl;
126 Pout<<
"No cell next to slave patch face " << faceI
127 <<
". Global face no: " << sfc[faceI]
128 <<
" own: " << own[slavePatchFaces[faceI]]
129 <<
" nei: " << nei[slavePatchFaces[faceI]]
130 <<
" flip: " << slaveFlip[faceI] <<
endl;
136 <<
"decoupled mesh or sliding interface definition."
151 forAll(masterMeshPoints, pointI)
153 const labelList& curFaces = pointFaces[masterMeshPoints[pointI]];
165 masterStickOutFaceMap.
insert(curFaces[faceI]);
180 forAll(slaveMeshPoints, pointI)
182 const labelList& curFaces = pointFaces[slaveMeshPoints[pointI]];
194 slaveStickOutFaceMap.
insert(curFaces[faceI]);
221 <<
"cannot be assembled for object " <<
name()
227 Pout<<
"void Foam::slidingInterface::calcAttachedAddressing() const "
228 <<
" for object " <<
name() <<
" : "
229 <<
"Finished calculating zone face-cell addressing."
258 const labelList& mfc = masterFaceCells();
270 label newCellI = reverseCellMap[mfc[mfzRenumber[faceI]]];
274 newMfc[faceI] = newCellI;
287 label newCellI = reverseCellMap[sfc[sfzRenumber[faceI]]];
291 newSfc[faceI] = newCellI;
298 if (
min(newMfc) < 0 ||
min(newSfc) < 0)
301 <<
"Error in cell renumbering for object " <<
name()
302 <<
". Some of master cells next "
303 <<
"to the interface have been removed."
313 const labelList& msof = masterStickOutFaces();
320 label newFaceI = reverseFaceMap[msof[faceI]];
324 newMsof[faceI] = newFaceI;
329 const labelList& ssof = slaveStickOutFaces();
336 label newFaceI = reverseFaceMap[ssof[faceI]];
340 newSsof[faceI] = newFaceI;
347 if (
min(newMsof) < 0 ||
min(newSsof) < 0)
350 <<
"Error in face renumbering for object " <<
name()
351 <<
". Some of stick-out next "
352 <<
"to the interface have been removed."
372 key = reversePointMap[rpmToc[rpmTocI]];
374 value = reversePointMap[rpm.find(rpmToc[rpmTocI])()];
379 if (key < 0 || value < 0)
382 <<
"Error in retired point numbering for object "
383 <<
name() <<
". Some of master "
384 <<
"points have been removed."
389 newRpm.insert(key, value);
400 forAll(cpepmToc, cpepmTocI)
402 key = reversePointMap[cpepmToc[cpepmTocI]];
404 const Pair<edge>& oldPe = cpepm.find(cpepmToc[cpepmTocI])();
407 const label ms = reversePointMap[oldPe.
first().start()];
410 const label ss = reversePointMap[oldPe.
second().start()];
411 const label se = reversePointMap[oldPe.
second().end()];
416 if (key < 0 || ms < 0 ||
me < 0 || ss < 0 || se < 0)
419 <<
"Error in cut point edge pair map numbering for object "
420 <<
name() <<
". Some of master points have been removed."
428 if (!projectedSlavePointsPtr_)
431 <<
"Error in projected point numbering for object " <<
name()
436 const pointField& projectedSlavePoints = *projectedSlavePointsPtr_;
442 pointField& newProjectedSlavePoints = *newProjectedSlavePointsPtr;
447 forAll(newProjectedSlavePoints, pointI)
449 if (sfzPointRenumber[pointI] > -1)
451 newProjectedSlavePoints[pointI] =
452 projectedSlavePoints[sfzPointRenumber[pointI]];
457 clearAttachedAddressing();
461 masterFaceCellsPtr_ = newMfcPtr;
462 slaveFaceCellsPtr_ = newSfcPtr;
464 masterStickOutFacesPtr_ = newMsofPtr;
465 slaveStickOutFacesPtr_ = newSsofPtr;
467 retiredPointMapPtr_ = newRpmPtr;
468 cutPointEdgePairMapPtr_ = newCpepmPtr;
469 projectedSlavePointsPtr_ = newProjectedSlavePointsPtr;
475 if (!masterFaceCellsPtr_)
478 <<
"Master zone face-cell addressing not available for object "
483 return *masterFaceCellsPtr_;
489 if (!slaveFaceCellsPtr_)
492 <<
"Slave zone face-cell addressing not available for object "
497 return *slaveFaceCellsPtr_;
503 if (!masterStickOutFacesPtr_)
506 <<
"Master zone stick-out face addressing not available for object "
511 return *masterStickOutFacesPtr_;
517 if (!slaveStickOutFacesPtr_)
520 <<
"Slave zone stick-out face addressing not available for object "
525 return *slaveStickOutFacesPtr_;
531 if (!retiredPointMapPtr_)
534 <<
"Retired point map not available for object " <<
name()
538 return *retiredPointMapPtr_;
545 if (!cutPointEdgePairMapPtr_)
548 <<
"Retired point map not available for object " <<
name()
552 return *cutPointEdgePairMapPtr_;