The enriched patch contains a double set of faces from the two sides of the sliding interface before the cutting. More...
Public Member Functions | |
ClassName ("enrichedPatch") | |
enrichedPatch (const primitiveFacePatch &masterPatch, const primitiveFacePatch &slavePatch, const labelList &slavePointPointHits, const labelList &slavePointEdgeHits, const List< objectHit > &slavePointFaceHits) | |
Construct from components. More... | |
~enrichedPatch () | |
Destructor. More... | |
Map< point > & | pointMap () |
Return non-const access to point map to add points. More... | |
const Map< point > & | pointMap () const |
Return map of points. More... | |
Map< label > & | pointMergeMap () |
Return map of point merges. More... | |
const Map< label > & | pointMergeMap () const |
Return map of point merges. More... | |
void | calcEnrichedFaces (const labelListList &pointsIntoMasterEdges, const labelListList &pointsIntoSlaveEdges, const pointField &projectedSlavePoints) |
Calculate enriched faces. More... | |
const faceList & | enrichedFaces () const |
Return enriched faces. More... | |
const labelList & | meshPoints () const |
Return mesh points. More... | |
const faceList & | localFaces () const |
Return local faces. More... | |
const pointField & | localPoints () const |
Return local points. More... | |
const labelListList & | pointPoints () const |
Return point-point addressing. More... | |
const Map< labelList > & | masterPointFaces () const |
Master point face addressing. More... | |
const faceList & | cutFaces () const |
Return list of cut faces. More... | |
const labelList & | cutFaceMaster () const |
Return cut face master list. More... | |
const labelList & | cutFaceSlave () const |
Return cut face slave list. More... | |
bool | checkSupport () const |
Check if the patch is fully supported. More... | |
void | writeOBJ (const fileName &) const |
Debugging: dump graphical representation to obj format file. More... | |
Private Member Functions | |
enrichedPatch (const enrichedPatch &) | |
Disallow default bitwise copy construct. More... | |
void | operator= (const enrichedPatch &) |
Disallow default bitwise assignment. More... | |
void | calcPointMergeMap () const |
Calculate point merge map. More... | |
void | completePointMap () const |
Complete point map. More... | |
void | calcMeshPoints () const |
Calculate mesh points. More... | |
void | calcLocalPoints () const |
Calculate local points. More... | |
void | calcLocalFaces () const |
Calculate local faces. More... | |
void | calcPointPoints () const |
Calculate point-point addressing. More... | |
void | calcMasterPointFaces () const |
Calculate master point addressing. More... | |
void | calcCutFaces () const |
Calculate cut faces. More... | |
void | clearCutFaces () |
Clear cut faces. More... | |
void | clearOut () |
Clear out demand-driven data. More... | |
Static Private Attributes | |
static const label | enrichedFaceRatio_ = 3 |
Estimated ratio of original-to-enriched face size. More... | |
static const label | nFaceHits_ = 4 |
Estimated number of master face hits by slave points. More... | |
static const label | maxFaceSizeDebug_ = 100 |
Size of face on which the check is forced. More... | |
The enriched patch contains a double set of faces from the two sides of the sliding interface before the cutting.
The patch basically consists of two over-lapping sets of faces sitting on a common point support, where every edge may be shared by more than 2 faces. The patch points are collected in a map. Additional information needed for cutting is the point insertion into every edge of master and slave.
Note: If new points are created during master-slave edge cutting, they should be registred with the pointMap.
Definition at line 67 of file enrichedPatch.H.
|
private |
Disallow default bitwise copy construct.
enrichedPatch | ( | const primitiveFacePatch & | masterPatch, |
const primitiveFacePatch & | slavePatch, | ||
const labelList & | slavePointPointHits, | ||
const labelList & | slavePointEdgeHits, | ||
const List< objectHit > & | slavePointFaceHits | ||
) |
Construct from components.
Definition at line 136 of file enrichedPatch.C.
~enrichedPatch | ( | ) |
Destructor.
Definition at line 170 of file enrichedPatch.C.
|
private |
Disallow default bitwise assignment.
|
private |
Calculate point merge map.
|
private |
Complete point map.
Definition at line 30 of file enrichedPatchPointMap.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, PrimitivePatch< Face, FaceList, PointField, PointType >::localPoints(), enrichedPatch::masterPatch_, PrimitivePatch< Face, FaceList, PointField, PointType >::meshPoints(), enrichedPatch::pointMap_, enrichedPatch::pointMapComplete_, enrichedPatch::pointMergeMap(), and enrichedPatch::slavePatch_.
|
private |
Calculate mesh points.
Definition at line 41 of file enrichedPatch.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, enrichedPatch::meshPointsPtr_, Foam::constant::atomic::mp, enrichedPatch::pointMap(), and Foam::sort().
|
private |
Calculate local points.
Definition at line 97 of file enrichedPatch.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, and Foam::constant::atomic::mp.
|
private |
Calculate local faces.
Definition at line 57 of file enrichedPatch.C.
References Foam::abort(), f(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::constant::atomic::mp, List::setSize(), and List::size().
|
private |
Calculate point-point addressing.
Definition at line 35 of file enrichedPatchPointPoints.C.
References Foam::abort(), DynamicList::append(), Foam::FatalError, FatalErrorInFunction, forAll, found, enrichedPatch::localFaces(), enrichedPatch::meshPoints(), enrichedPatch::pointPointsPtr_, List::size(), and List::transfer().
|
private |
Calculate master point addressing.
Definition at line 37 of file enrichedPatchMasterPoints.C.
References Foam::abort(), enrichedPatch::enrichedFaces(), primitiveMesh::facesPerPoint_, Foam::FatalError, FatalErrorInFunction, forAll, enrichedPatch::masterPatch_, enrichedPatch::masterPointFacesPtr_, enrichedPatch::meshPoints(), PrimitivePatch< Face, FaceList, PointField, PointType >::meshPoints(), enrichedPatch::pointMergeMap(), List::size(), enrichedPatch::slavePatch_, enrichedPatch::slavePointEdgeHits_, enrichedPatch::slavePointFaceHits_, enrichedPatch::slavePointPointHits_, and List::transfer().
|
private |
Calculate cut faces.
Definition at line 50 of file enrichedPatchCutFaces.C.
References Foam::abort(), LList< SLListBase, T >::append(), DynamicList::append(), Foam::atan2(), enrichedPatch::cutFaceMasterPtr_, enrichedPatch::cutFaceSlavePtr_, enrichedPatch::cutFacesPtr_, face::edges(), primitiveMesh::edgesPerPoint_, edge::end(), Foam::endl(), enrichedPatch::enrichedFaces(), HashTable< nil, word, string::hash >::erase(), Foam::FatalError, FatalErrorInFunction, HashTable< nil, word, string::hash >::find(), forAll, HashTable< nil, word, string::hash >::found(), HashSet< Key, Hash >::insert(), enrichedPatch::localFaces(), PrimitivePatch< Face, FaceList, PointField, PointType >::localFaces(), enrichedPatch::localPoints(), Foam::mag(), enrichedPatch::masterPatch_, enrichedPatch::masterPointFaces(), enrichedPatch::maxFaceSizeDebug_, enrichedPatch::meshPoints(), Foam::constant::atomic::mp, face::nextLabel(), Foam::nl, face::normal(), enrichedPatch::pointPoints(), face::points(), Foam::Pout, LList< SLListBase, T >::removeHead(), edge::reverseEdge(), DynamicList::shrink(), List::size(), enrichedPatch::slavePatch_, edge::start(), List::transfer(), and face::which().
|
private |
Clear cut faces.
Definition at line 659 of file enrichedPatchCutFaces.C.
References Foam::deleteDemandDrivenData().
|
private |
Clear out demand-driven data.
Definition at line 118 of file enrichedPatch.C.
References Foam::deleteDemandDrivenData().
ClassName | ( | "enrichedPatch" | ) |
const Foam::Map< Foam::point > & pointMap | ( | ) |
Return non-const access to point map to add points.
Definition at line 83 of file enrichedPatchPointMap.C.
Referenced by enrichedPatch::calcMeshPoints(), and slidingInterface::coupleInterface().
Return map of point merges.
Definition at line 222 of file enrichedPatch.H.
References enrichedPatch::pointMergeMap_.
Referenced by enrichedPatch::calcMasterPointFaces(), enrichedPatch::completePointMap(), and slidingInterface::coupleInterface().
Return map of point merges.
Definition at line 228 of file enrichedPatch.H.
References enrichedPatch::pointMergeMap_.
void calcEnrichedFaces | ( | const labelListList & | pointsIntoMasterEdges, |
const labelListList & | pointsIntoSlaveEdges, | ||
const pointField & | projectedSlavePoints | ||
) |
Calculate enriched faces.
Definition at line 37 of file enrichedPatchFaces.C.
References Foam::abort(), DynamicList::append(), Foam::constant::electromagnetic::e, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Info, Foam::magSqr(), Foam::max(), Foam::min(), Foam::nl, List::size(), and List::transfer().
Referenced by slidingInterface::coupleInterface().
const Foam::faceList & enrichedFaces | ( | ) | const |
Return enriched faces.
Definition at line 379 of file enrichedPatchFaces.C.
References Foam::abort(), enrichedPatch::enrichedFacesPtr_, Foam::FatalError, and FatalErrorInFunction.
Referenced by enrichedPatch::calcCutFaces(), and enrichedPatch::calcMasterPointFaces().
const Foam::labelList & meshPoints | ( | ) | const |
Return mesh points.
Definition at line 178 of file enrichedPatch.C.
Referenced by enrichedPatch::calcCutFaces(), enrichedPatch::calcMasterPointFaces(), and enrichedPatch::calcPointPoints().
const Foam::faceList & localFaces | ( | ) | const |
Return local faces.
Definition at line 189 of file enrichedPatch.C.
Referenced by enrichedPatch::calcCutFaces(), and enrichedPatch::calcPointPoints().
const Foam::pointField & localPoints | ( | ) | const |
Return local points.
Definition at line 200 of file enrichedPatch.C.
Referenced by enrichedPatch::calcCutFaces().
const Foam::labelListList & pointPoints | ( | ) | const |
Return point-point addressing.
Definition at line 211 of file enrichedPatch.C.
Referenced by enrichedPatch::calcCutFaces().
const Foam::Map< Foam::labelList > & masterPointFaces | ( | ) | const |
Master point face addressing.
Definition at line 148 of file enrichedPatchMasterPoints.C.
Referenced by enrichedPatch::calcCutFaces().
const Foam::faceList & cutFaces | ( | ) | const |
Return list of cut faces.
Definition at line 669 of file enrichedPatchCutFaces.C.
Referenced by slidingInterface::coupleInterface().
const Foam::labelList & cutFaceMaster | ( | ) | const |
Return cut face master list.
Definition at line 680 of file enrichedPatchCutFaces.C.
Referenced by slidingInterface::coupleInterface().
const Foam::labelList & cutFaceSlave | ( | ) | const |
Return cut face slave list.
Definition at line 691 of file enrichedPatchCutFaces.C.
Referenced by slidingInterface::coupleInterface().
bool checkSupport | ( | ) | const |
Check if the patch is fully supported.
Definition at line 222 of file enrichedPatch.C.
References Foam::endl(), forAll, found, and WarningInFunction.
void writeOBJ | ( | const fileName & | fName | ) | const |
Debugging: dump graphical representation to obj format file.
Definition at line 251 of file enrichedPatch.C.
References f(), forAll, Foam::nl, and Foam::meshTools::writeOBJ().
|
private |
Reference to master patch.
Definition at line 72 of file enrichedPatch.H.
Referenced by enrichedPatch::calcCutFaces(), enrichedPatch::calcMasterPointFaces(), and enrichedPatch::completePointMap().
|
private |
Reference to slave patch.
Definition at line 75 of file enrichedPatch.H.
Referenced by enrichedPatch::calcCutFaces(), enrichedPatch::calcMasterPointFaces(), and enrichedPatch::completePointMap().
Map of points supporting patch faces.
Definition at line 78 of file enrichedPatch.H.
Referenced by enrichedPatch::completePointMap().
|
mutableprivate |
Has the point map been completed?
Definition at line 81 of file enrichedPatch.H.
Referenced by enrichedPatch::completePointMap().
Map of point merges.
Definition at line 84 of file enrichedPatch.H.
Referenced by enrichedPatch::pointMergeMap().
|
private |
Slave point point hits.
Definition at line 87 of file enrichedPatch.H.
Referenced by enrichedPatch::calcMasterPointFaces().
|
private |
Slave point edge hits.
Definition at line 90 of file enrichedPatch.H.
Referenced by enrichedPatch::calcMasterPointFaces().
Slave point face hits.
Definition at line 93 of file enrichedPatch.H.
Referenced by enrichedPatch::calcMasterPointFaces().
|
mutableprivate |
Enriched patch.
Definition at line 99 of file enrichedPatch.H.
Referenced by enrichedPatch::enrichedFaces().
|
mutableprivate |
Mesh points.
Definition at line 102 of file enrichedPatch.H.
Referenced by enrichedPatch::calcMeshPoints().
|
mutableprivate |
Local faces.
Definition at line 105 of file enrichedPatch.H.
|
mutableprivate |
Local points.
Definition at line 108 of file enrichedPatch.H.
|
mutableprivate |
Point-point addressing.
Definition at line 111 of file enrichedPatch.H.
Referenced by enrichedPatch::calcPointPoints().
Definition at line 114 of file enrichedPatch.H.
Referenced by enrichedPatch::calcMasterPointFaces().
|
mutableprivate |
Cut faces.
Definition at line 120 of file enrichedPatch.H.
Referenced by enrichedPatch::calcCutFaces().
|
mutableprivate |
Cut face master.
the creator face for boundary face
Definition at line 125 of file enrichedPatch.H.
Referenced by enrichedPatch::calcCutFaces().
|
mutableprivate |
Cut face slave.
-1 for boundary face
Definition at line 130 of file enrichedPatch.H.
Referenced by enrichedPatch::calcCutFaces().
|
staticprivate |
Estimated ratio of original-to-enriched face size.
Definition at line 177 of file enrichedPatch.H.
|
staticprivate |
Estimated number of master face hits by slave points.
Definition at line 180 of file enrichedPatch.H.
|
staticprivate |
Size of face on which the check is forced.
Definition at line 183 of file enrichedPatch.H.
Referenced by enrichedPatch::calcCutFaces().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.