Class for obtaining halo face data for the boundary edges. The ordering follows that natural edge ordering of the underlying primitive patch. More...
Public Member Functions | |
ClassName ("faMeshBoundaryHalo") | |
faMeshBoundaryHalo (const label comm=UPstream::worldComm) | |
faMeshBoundaryHalo (const faMesh &mesh) | |
void | clear () |
void | reset (const faMesh &mesh) |
label | haloSize () const |
const labelList & | inputMeshFaces () const noexcept |
template<class Type > | |
void | distributeSparse (List< Type > &fld, const labelUList &sparseInputLocations, const labelUList &compactOutputMapping) const |
template<class Type > | |
void | distributeSparse (List< Type > &fld, const labelUList &sparseInputLocations) const |
template<class Type > | |
void | distributeSparse (List< Type > &fld) const |
![]() | |
ClassName ("mapDistributeBase") | |
mapDistributeBase (const label comm=UPstream::worldComm) | |
mapDistributeBase (const mapDistributeBase &map) | |
mapDistributeBase (mapDistributeBase &&map) | |
mapDistributeBase (const label constructSize, labelListList &&subMap, labelListList &&constructMap, const bool subHasFlip=false, const bool constructHasFlip=false, const label comm=UPstream::worldComm) | |
mapDistributeBase (const labelUList &sendProcs, const labelUList &recvProcs, const label comm=UPstream::worldComm) | |
mapDistributeBase (const globalIndex &, labelList &elements, List< Map< label >> &compactMap, const int tag=Pstream::msgType(), const label comm=UPstream::worldComm) | |
mapDistributeBase (const globalIndex &, labelListList &cellCells, List< Map< label >> &compactMap, const int tag=Pstream::msgType(), const label comm=UPstream::worldComm) | |
mapDistributeBase (labelListList &&subMap, const bool subHasFlip=false, const bool constructHasFlip=false, const label comm=UPstream::worldComm) | |
mapDistributeBase (Istream &is) | |
label | constructSize () const |
label & | constructSize () |
const labelListList & | subMap () const |
labelListList & | subMap () |
const labelListList & | constructMap () const |
labelListList & | constructMap () |
bool | subHasFlip () const |
bool & | subHasFlip () |
bool | constructHasFlip () const |
bool & | constructHasFlip () |
label | comm () const |
const List< labelPair > & | schedule () const |
void | transfer (mapDistributeBase &rhs) |
void | compact (const boolList &elemIsUsed, const int tag=UPstream::msgType()) |
void | compact (const boolList &elemIsUsed, const label localSize, labelList &oldToNewSub, labelList &oldToNewConstruct, const int tag=UPstream::msgType()) |
template<class T > | |
void | distribute (List< T > &fld, const int tag=UPstream::msgType()) const |
template<class T , class negateOp > | |
void | distribute (List< T > &fld, const negateOp &negOp, const int tag=UPstream::msgType()) const |
template<class T > | |
void | distribute (DynamicList< T > &fld, const int tag=UPstream::msgType()) const |
template<class T > | |
void | reverseDistribute (const label constructSize, List< T > &, const int tag=UPstream::msgType()) const |
template<class T > | |
void | reverseDistribute (const label constructSize, const T &nullValue, List< T > &fld, const int tag=UPstream::msgType()) const |
template<class T > | |
void | send (PstreamBuffers &, const List< T > &) const |
template<class T > | |
void | receive (PstreamBuffers &, List< T > &) const |
void | printLayout (Ostream &os) const |
void | updateMesh (const mapPolyMesh &) |
void | operator= (const mapDistributeBase &rhs) |
void | operator= (mapDistributeBase &&rhs) |
Additional Inherited Members | |
![]() | |
static List< labelPair > | schedule (const labelListList &subMap, const labelListList &constructMap, const int tag, const label comm=UPstream::worldComm) |
static label | renumber (const globalIndex &, const List< Map< label >> &compactMap, const label globalElement) |
template<class T , class negateOp > | |
static void | distribute (const Pstream::commsTypes commsType, const List< labelPair > &schedule, const label constructSize, const labelListList &subMap, const bool subHasFlip, const labelListList &constructMap, const bool constructHasFlip, List< T > &, const negateOp &negOp, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
template<class T , class CombineOp , class negateOp > | |
static void | distribute (const Pstream::commsTypes commsType, const List< labelPair > &schedule, const label constructSize, const labelListList &subMap, const bool subHasFlip, const labelListList &constructMap, const bool constructHasFlip, List< T > &, const T &nullValue, const CombineOp &cop, const negateOp &negOp, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
![]() | |
void | calcCompactAddressing (const globalIndex &globalNumbering, const labelUList &elements, List< Map< label >> &compactMap) const |
void | calcCompactAddressing (const globalIndex &globalNumbering, const labelListList &elements, List< Map< label >> &compactMap) const |
void | exchangeAddressing (const int tag, const globalIndex &globalNumbering, labelList &elements, List< Map< label >> &compactMap, labelList &compactStart) |
void | exchangeAddressing (const int tag, const globalIndex &globalNumbering, labelListList &elements, List< Map< label >> &compactMap, labelList &compactStart) |
![]() | |
static void | checkReceivedSize (const label proci, const label expectedSize, const label receivedSize) |
template<class T , class CombineOp , class negateOp > | |
static void | flipAndCombine (const labelUList &map, const bool hasFlip, const UList< T > &rhs, const CombineOp &cop, const negateOp &negOp, List< T > &lhs) |
template<class T , class negateOp > | |
static T | accessAndFlip (const UList< T > &fld, const label index, const bool hasFlip, const negateOp &negOp) |
![]() | |
label | constructSize_ |
labelListList | subMap_ |
labelListList | constructMap_ |
bool | subHasFlip_ |
bool | constructHasFlip_ |
label | comm_ |
autoPtr< List< labelPair > > | schedulePtr_ |
Class for obtaining halo face data for the boundary edges. The ordering follows that natural edge ordering of the underlying primitive patch.
Definition at line 55 of file faMeshBoundaryHalo.H.
|
explicit |
Definition at line 36 of file faMeshBoundaryHalo.C.
|
explicit |
Definition at line 44 of file faMeshBoundaryHalo.C.
References faMeshBoundaryHalo::reset().
ClassName | ( | "faMeshBoundaryHalo" | ) |
void clear | ( | ) |
Definition at line 56 of file faMeshBoundaryHalo.C.
void reset | ( | const faMesh & | mesh | ) |
Definition at line 78 of file faMeshBoundaryHalo.C.
References forAll, HashSet::insert(), UPstream::msgType(), UPstream::myProcNo(), UPstream::nProcs(), UPstream::parRun(), List::resize(), and globalIndex::toGlobal().
Referenced by faMesh::boundaryHaloMap(), and faMeshBoundaryHalo::faMeshBoundaryHalo().
Foam::label haloSize | ( | ) | const |
Definition at line 65 of file faMeshBoundaryHalo.C.
References UPstream::parRun().
|
inlinenoexcept |
Definition at line 99 of file faMeshBoundaryHalo.H.
void distributeSparse | ( | List< Type > & | fld, |
const labelUList & | sparseInputLocations, | ||
const labelUList & | compactOutputMapping | ||
) | const |
Definition at line 29 of file faMeshBoundaryHaloTemplates.C.
References UList::empty(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, fld, forAll, UList::size(), and Foam::Zero.
Referenced by faMeshBoundaryHalo::distributeSparse().
void distributeSparse | ( | List< Type > & | fld, |
const labelUList & | sparseInputLocations | ||
) | const |
Definition at line 84 of file faMeshBoundaryHaloTemplates.C.
References fld.
void distributeSparse | ( | List< Type > & | fld | ) | const |
Definition at line 94 of file faMeshBoundaryHaloTemplates.C.
References faMeshBoundaryHalo::distributeSparse().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.