Public Member Functions | List of all members
cellBox Class Reference

Creates the parallel distribution map by describing the source and target objects using box shapes. More...

Inheritance diagram for cellBox:
Inheritance graph
[legend]
Collaboration diagram for cellBox:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("box")
 
 cellBox (const cellList &srcCells, const faceList &srcFaces, const UList< point > &srcPoints, const cellList &tgtCells, const faceList &tgtFaces, const UList< point > &tgtPoints, const label maxObjectsPerLeaf, const label nObjectsOfType, const label nRefineIterMax=100)
 
virtual ~cellBox ()=default
 
virtual autoPtr< mapDistributemap ()
 
- Public Member Functions inherited from faceBox
 TypeName ("box")
 
 faceBox (const faceList &srcFaces, const UList< point > &srcPoints, const faceList &tgtFaces, const UList< point > &tgtPoints, const label maxObjectsPerLeaf, const label nObjectsOfType, const label nRefineIterMax=100)
 
virtual ~faceBox ()=default
 
- Public Member Functions inherited from box
 TypeName ("box")
 
 box (const UList< point > &srcPoints, const UList< point > &tgtPoints, const label maxObjectsPerLeaf, const label nObjectsOfType, const label nRefineIterMax=100)
 
virtual ~box ()=default
 
- Public Member Functions inherited from processorLOD
 TypeName ("processorLOD")
 
 processorLOD (const label maxObjectsPerLeaf, const label nObjectsOfType)
 
virtual ~processorLOD ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from box
void writeBoxes (const List< DynamicList< treeBoundBox >> &fixedBoxes, const label iter) const
 
void setRefineFlags (const label refineIter, const label nTgtObjects, List< labelHashSet > &fixedSendElems, List< List< labelList >> &localTgtElems, List< labelList > &refineFlags, labelList &nElems) const
 
void refineBox (const label boxi, const label refineIter, const label nSrcElem, const treeBoundBox &origBox, DynamicList< treeBoundBox > &procBoxes, DynamicList< labelList > &procBoxElems, DynamicList< label > &procNewToOld) const
 
void refineBox (const label boxi, const labelList &srcAddr, const treeBoundBox &origBox, DynamicList< treeBoundBox > &procBoxes, DynamicList< labelList > &procBoxElems, DynamicList< label > &procNewToOld) const
 
bool doRefineBoxes (const label refineIter, const label nSrcFaces, const List< labelList > &refineFlags, List< DynamicList< treeBoundBox >> &fixedBoxes)
 
autoPtr< mapDistributecreateMap (const label nSrcElems, const label nTgtElems)
 
autoPtr< mapDistributecreateLODMap (List< labelList > &sendElems) const
 
- Protected Attributes inherited from faceBox
const faceListsrcFaces_
 
const faceListtgtFaces_
 
- Protected Attributes inherited from box
const UList< point > & srcPoints_
 
const UList< point > & tgtPoints_
 
List< List< treeBoundBox > > boxes_
 
label nRefineIterMax_
 
List< labelListnewToOld_
 
List< List< labelList > > boxSrcElems_
 
- Protected Attributes inherited from processorLOD
label maxObjectsPerLeaf_
 
label nObjectsOfType_
 
- Static Protected Attributes inherited from box
static const label DROP = 0
 
static const label REFINE = 1
 
static const label FIXED = 2
 
static const label nStartUpIter = 2
 

Detailed Description

Creates the parallel distribution map by describing the source and target objects using box shapes.

A single box is created for the source object, which is then split using 2x2x2 refinement based on the number of remote target objects that overlap. The refinement is local between communicating processor pairs, where the refinement continues until a threshold number of remote target objects per source box is achieved.

Definition at line 52 of file cellBox.H.

Constructor & Destructor Documentation

◆ cellBox()

cellBox ( const cellList srcCells,
const faceList srcFaces,
const UList< point > &  srcPoints,
const cellList tgtCells,
const faceList tgtFaces,
const UList< point > &  tgtPoints,
const label  maxObjectsPerLeaf,
const label  nObjectsOfType,
const label  nRefineIterMax = 100 
)

Definition at line 72 of file cellBox.C.

◆ ~cellBox()

virtual ~cellBox ( )
virtualdefault

Member Function Documentation

◆ TypeName()

TypeName ( "box"  )

◆ map()

Foam::autoPtr< Foam::mapDistribute > map ( )
virtual

Reimplemented from faceBox.

Definition at line 99 of file cellBox.C.


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