Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
enrichedPatch Class Reference

The enriched patch contains a double set of faces from the two sides of the sliding interface before the cutting. More...

Collaboration diagram for enrichedPatch:
Collaboration graph
[legend]

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 faceListenrichedFaces () const
 Return enriched faces. More...
 
const labelListmeshPoints () const
 Return mesh points. More...
 
const faceListlocalFaces () const
 Return local faces. More...
 
const pointFieldlocalPoints () const
 Return local points. More...
 
const labelListListpointPoints () const
 Return point-point addressing. More...
 
const Map< labelList > & masterPointFaces () const
 Master point face addressing. More...
 
const faceListcutFaces () const
 Return list of cut faces. More...
 
const labelListcutFaceMaster () const
 Return cut face master list. More...
 
const labelListcutFaceSlave () 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...
 

Private Attributes

const primitiveFacePatchmasterPatch_
 Reference to master patch. More...
 
const primitiveFacePatchslavePatch_
 Reference to slave patch. More...
 
Map< pointpointMap_
 Map of points supporting patch faces. More...
 
bool pointMapComplete_
 Has the point map been completed? More...
 
Map< labelpointMergeMap_
 Map of point merges. More...
 
const labelListslavePointPointHits_
 Slave point point hits. More...
 
const labelListslavePointEdgeHits_
 Slave point edge hits. More...
 
const List< objectHit > & slavePointFaceHits_
 Slave point face hits. More...
 
faceListenrichedFacesPtr_
 Enriched patch. More...
 
labelListmeshPointsPtr_
 Mesh points. More...
 
faceListlocalFacesPtr_
 Local faces. More...
 
pointFieldlocalPointsPtr_
 Local points. More...
 
labelListListpointPointsPtr_
 Point-point addressing. More...
 
Map< labelList > * masterPointFacesPtr_
 
faceListcutFacesPtr_
 Cut faces. More...
 
labelListcutFaceMasterPtr_
 Cut face master. More...
 
labelListcutFaceSlavePtr_
 Cut face slave. 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...
 

Detailed Description

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.

Source files

Definition at line 67 of file enrichedPatch.H.

Constructor & Destructor Documentation

◆ enrichedPatch() [1/2]

enrichedPatch ( const enrichedPatch )
private

Disallow default bitwise copy construct.

◆ enrichedPatch() [2/2]

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.

Member Function Documentation

◆ operator=()

void operator= ( const enrichedPatch )
private

Disallow default bitwise assignment.

◆ calcPointMergeMap()

void calcPointMergeMap ( ) const
private

Calculate point merge map.

◆ completePointMap()

void completePointMap ( ) const
private

◆ calcMeshPoints()

void calcMeshPoints ( ) const
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().

Here is the call graph for this function:

◆ calcLocalPoints()

void calcLocalPoints ( ) const
private

Calculate local points.

Definition at line 97 of file enrichedPatch.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, and Foam::constant::atomic::mp.

Here is the call graph for this function:

◆ calcLocalFaces()

void calcLocalFaces ( ) const
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().

Here is the call graph for this function:

◆ calcPointPoints()

void calcPointPoints ( ) const
private

◆ calcMasterPointFaces()

void calcMasterPointFaces ( ) const
private

◆ calcCutFaces()

void calcCutFaces ( ) const
private

◆ clearCutFaces()

void clearCutFaces ( )
private

Clear cut faces.

Definition at line 659 of file enrichedPatchCutFaces.C.

References Foam::deleteDemandDrivenData().

Here is the call graph for this function:

◆ clearOut()

void clearOut ( )
private

Clear out demand-driven data.

Definition at line 118 of file enrichedPatch.C.

References Foam::deleteDemandDrivenData().

Here is the call graph for this function:

◆ ClassName()

ClassName ( "enrichedPatch"  )

◆ pointMap() [1/2]

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().

Here is the caller graph for this function:

◆ pointMap() [2/2]

const Map<point>& pointMap ( ) const

Return map of points.

◆ pointMergeMap() [1/2]

Map<label>& pointMergeMap ( )
inline

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().

Here is the caller graph for this function:

◆ pointMergeMap() [2/2]

const Map<label>& pointMergeMap ( ) const
inline

Return map of point merges.

Definition at line 228 of file enrichedPatch.H.

References enrichedPatch::pointMergeMap_.

◆ calcEnrichedFaces()

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().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ enrichedFaces()

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().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ meshPoints()

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().

Here is the caller graph for this function:

◆ localFaces()

const Foam::faceList & localFaces ( ) const

Return local faces.

Definition at line 189 of file enrichedPatch.C.

Referenced by enrichedPatch::calcCutFaces(), and enrichedPatch::calcPointPoints().

Here is the caller graph for this function:

◆ localPoints()

const Foam::pointField & localPoints ( ) const

Return local points.

Definition at line 200 of file enrichedPatch.C.

Referenced by enrichedPatch::calcCutFaces().

Here is the caller graph for this function:

◆ pointPoints()

const Foam::labelListList & pointPoints ( ) const

Return point-point addressing.

Definition at line 211 of file enrichedPatch.C.

Referenced by enrichedPatch::calcCutFaces().

Here is the caller graph for this function:

◆ masterPointFaces()

const Foam::Map< Foam::labelList > & masterPointFaces ( ) const

Master point face addressing.

Definition at line 148 of file enrichedPatchMasterPoints.C.

Referenced by enrichedPatch::calcCutFaces().

Here is the caller graph for this function:

◆ cutFaces()

const Foam::faceList & cutFaces ( ) const

Return list of cut faces.

Definition at line 669 of file enrichedPatchCutFaces.C.

Referenced by slidingInterface::coupleInterface().

Here is the caller graph for this function:

◆ cutFaceMaster()

const Foam::labelList & cutFaceMaster ( ) const

Return cut face master list.

Definition at line 680 of file enrichedPatchCutFaces.C.

Referenced by slidingInterface::coupleInterface().

Here is the caller graph for this function:

◆ cutFaceSlave()

const Foam::labelList & cutFaceSlave ( ) const

Return cut face slave list.

Definition at line 691 of file enrichedPatchCutFaces.C.

Referenced by slidingInterface::coupleInterface().

Here is the caller graph for this function:

◆ checkSupport()

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.

Here is the call graph for this function:

◆ writeOBJ()

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().

Here is the call graph for this function:

Field Documentation

◆ masterPatch_

const primitiveFacePatch& masterPatch_
private

Reference to master patch.

Definition at line 72 of file enrichedPatch.H.

Referenced by enrichedPatch::calcCutFaces(), enrichedPatch::calcMasterPointFaces(), and enrichedPatch::completePointMap().

◆ slavePatch_

const primitiveFacePatch& slavePatch_
private

Reference to slave patch.

Definition at line 75 of file enrichedPatch.H.

Referenced by enrichedPatch::calcCutFaces(), enrichedPatch::calcMasterPointFaces(), and enrichedPatch::completePointMap().

◆ pointMap_

Map<point> pointMap_
mutableprivate

Map of points supporting patch faces.

Definition at line 78 of file enrichedPatch.H.

Referenced by enrichedPatch::completePointMap().

◆ pointMapComplete_

bool pointMapComplete_
mutableprivate

Has the point map been completed?

Definition at line 81 of file enrichedPatch.H.

Referenced by enrichedPatch::completePointMap().

◆ pointMergeMap_

Map<label> pointMergeMap_
mutableprivate

Map of point merges.

Definition at line 84 of file enrichedPatch.H.

Referenced by enrichedPatch::pointMergeMap().

◆ slavePointPointHits_

const labelList& slavePointPointHits_
private

Slave point point hits.

Definition at line 87 of file enrichedPatch.H.

Referenced by enrichedPatch::calcMasterPointFaces().

◆ slavePointEdgeHits_

const labelList& slavePointEdgeHits_
private

Slave point edge hits.

Definition at line 90 of file enrichedPatch.H.

Referenced by enrichedPatch::calcMasterPointFaces().

◆ slavePointFaceHits_

const List<objectHit>& slavePointFaceHits_
private

Slave point face hits.

Definition at line 93 of file enrichedPatch.H.

Referenced by enrichedPatch::calcMasterPointFaces().

◆ enrichedFacesPtr_

faceList* enrichedFacesPtr_
mutableprivate

Enriched patch.

Definition at line 99 of file enrichedPatch.H.

Referenced by enrichedPatch::enrichedFaces().

◆ meshPointsPtr_

labelList* meshPointsPtr_
mutableprivate

Mesh points.

Definition at line 102 of file enrichedPatch.H.

Referenced by enrichedPatch::calcMeshPoints().

◆ localFacesPtr_

faceList* localFacesPtr_
mutableprivate

Local faces.

Definition at line 105 of file enrichedPatch.H.

◆ localPointsPtr_

pointField* localPointsPtr_
mutableprivate

Local points.

Definition at line 108 of file enrichedPatch.H.

◆ pointPointsPtr_

labelListList* pointPointsPtr_
mutableprivate

Point-point addressing.

Definition at line 111 of file enrichedPatch.H.

Referenced by enrichedPatch::calcPointPoints().

◆ masterPointFacesPtr_

Map<labelList>* masterPointFacesPtr_
mutableprivate

Definition at line 114 of file enrichedPatch.H.

Referenced by enrichedPatch::calcMasterPointFaces().

◆ cutFacesPtr_

faceList* cutFacesPtr_
mutableprivate

Cut faces.

Definition at line 120 of file enrichedPatch.H.

Referenced by enrichedPatch::calcCutFaces().

◆ cutFaceMasterPtr_

labelList* cutFaceMasterPtr_
mutableprivate

Cut face master.

  • the face on the master patch for internal faces

the creator face for boundary face

Definition at line 125 of file enrichedPatch.H.

Referenced by enrichedPatch::calcCutFaces().

◆ cutFaceSlavePtr_

labelList* cutFaceSlavePtr_
mutableprivate

Cut face slave.

  • the face on the slave patch for internal faces

-1 for boundary face

Definition at line 130 of file enrichedPatch.H.

Referenced by enrichedPatch::calcCutFaces().

◆ enrichedFaceRatio_

const Foam::label enrichedFaceRatio_ = 3
staticprivate

Estimated ratio of original-to-enriched face size.

Definition at line 177 of file enrichedPatch.H.

◆ nFaceHits_

const Foam::label nFaceHits_ = 4
staticprivate

Estimated number of master face hits by slave points.

Definition at line 180 of file enrichedPatch.H.

◆ maxFaceSizeDebug_

const Foam::label maxFaceSizeDebug_ = 100
staticprivate

Size of face on which the check is forced.

Definition at line 183 of file enrichedPatch.H.

Referenced by enrichedPatch::calcCutFaces().


The documentation for this class was generated from the following files: