Builds direct interaction list, specifying which local (real) cells are potentially in range of each other. More...
Public Member Functions | |
InteractionLists (const polyMesh &mesh) | |
Construct null from mesh. More... | |
InteractionLists (const polyMesh &mesh, scalar maxDistance, Switch writeCloud=false, const word &UName="U") | |
Construct and call function to create all information from. More... | |
~InteractionLists () | |
void | sendReferredData (const List< DynamicList< ParticleType * >> &cellOccupancy, PstreamBuffers &pBufs) |
Prepare and send referred particles and wall data,. More... | |
void | receiveReferredData (PstreamBuffers &pBufs, const label startReq=0) |
Receive referred data. More... | |
const polyMesh & | mesh () const |
Return access to the mesh. More... | |
const mapDistribute & | cellMap () const |
Return access to the cellMap. More... | |
const mapDistribute & | wallFaceMap () const |
Return access to the wallFaceMap. More... | |
const labelListList & | dil () const |
Return access to the direct interaction list. More... | |
const labelListList & | dwfil () const |
Return access to the direct wall face interaction list. More... | |
const labelListList & | ril () const |
Return access to the referred interaction list. More... | |
const labelListList & | rilInverse () const |
Return access to the inverse referred interaction list. More... | |
const labelListList & | rwfil () const |
Return access to the referred wall face interaction list. More... | |
const labelListList & | rwfilInverse () const |
Return access to the inverse referred wall face. More... | |
const List< labelPair > & | cellIndexAndTransformToDistribute () const |
Return access to the cellIndexAndTransformToDistribute list. More... | |
const List< labelPair > & | wallFaceIndexAndTransformToDistribute () const |
Return access to the wallFaceIndexAndTransformToDistribute list. More... | |
const List< referredWallFace > & | referredWallFaces () const |
Return access to the referred wall faces. More... | |
const word & | UName () const |
Return the name of the velocity field. More... | |
const List< vector > & | referredWallData () const |
Return access to the referred wall data. More... | |
const List< IDLList< ParticleType > > & | referredParticles () const |
Return access to the referred particle container. More... | |
List< IDLList< ParticleType > > & | referredParticles () |
Return non-const access to the referred particle container. More... | |
Builds direct interaction list, specifying which local (real) cells are potentially in range of each other.
Builds referred interaction list, specifying which cells are required to provide interactions across coupled patches (cyclic or processor). Generates referred cells, and refers particles to the correct processor, applying the appropriate transform.
Simultaneous communication and computation is possible using:
PstreamBuffers pBufs(Pstream::nonBlocking); label startOfRequests = Pstream::nRequests(); il_.sendReferredData(cellOccupancy_, pBufs); // Do other things il_.receiveReferredData(pBufs, startOfRequests);
Requiring data:
List<DynamicList<typename CloudType::parcelType*>> cellOccupancy_;
Definition at line 79 of file InteractionLists.H.
InteractionLists | ( | const polyMesh & | mesh | ) |
Construct null from mesh.
Definition at line 1095 of file InteractionLists.C.
InteractionLists | ( | const polyMesh & | mesh, |
scalar | maxDistance, | ||
Switch | writeCloud = false , |
||
const word & | UName = "U" |
||
) |
Construct and call function to create all information from.
the mesh
Definition at line 1118 of file InteractionLists.C.
~InteractionLists | ( | ) |
Definition at line 1149 of file InteractionLists.C.
References InteractionLists< ParticleType >::sendReferredData().
void sendReferredData | ( | const List< DynamicList< ParticleType * >> & | cellOccupancy, |
PstreamBuffers & | pBufs | ||
) |
Prepare and send referred particles and wall data,.
nonBlocking communication
Definition at line 1157 of file InteractionLists.C.
References InteractionLists< ParticleType >::cellMap(), cellOccupancy, polyMesh::changing(), Foam::endl(), forAll, UPstream::nProcs(), InteractionLists< ParticleType >::receiveReferredData(), mapDistributeBase::send(), List< T >::size(), mapDistributeBase::subMap(), InteractionLists< ParticleType >::wallFaceMap(), and WarningInFunction.
Referenced by InteractionLists< ParticleType >::~InteractionLists().
void receiveReferredData | ( | PstreamBuffers & | pBufs, |
const label | startReq = 0 |
||
) |
Receive referred data.
Definition at line 1205 of file InteractionLists.C.
References InteractionLists< ParticleType >::cellMap(), mapDistributeBase::constructMap(), forAll, UPstream::nProcs(), mapDistributeBase::receive(), List< T >::size(), UPstream::waitRequests(), and InteractionLists< ParticleType >::wallFaceMap().
Referenced by InteractionLists< ParticleType >::sendReferredData().
|
inline |
Return access to the mesh.
Definition at line 31 of file InteractionListsI.H.
|
inline |
Return access to the cellMap.
Definition at line 39 of file InteractionListsI.H.
Referenced by InteractionLists< ParticleType >::receiveReferredData(), and InteractionLists< ParticleType >::sendReferredData().
|
inline |
Return access to the wallFaceMap.
Definition at line 47 of file InteractionListsI.H.
Referenced by InteractionLists< ParticleType >::receiveReferredData(), and InteractionLists< ParticleType >::sendReferredData().
|
inline |
Return access to the direct interaction list.
Definition at line 54 of file InteractionListsI.H.
|
inline |
Return access to the direct wall face interaction list.
Definition at line 62 of file InteractionListsI.H.
|
inline |
Return access to the referred interaction list.
Definition at line 69 of file InteractionListsI.H.
|
inline |
Return access to the inverse referred interaction list.
Definition at line 77 of file InteractionListsI.H.
|
inline |
Return access to the referred wall face interaction list.
Definition at line 84 of file InteractionListsI.H.
|
inline |
Return access to the inverse referred wall face.
interaction list
Definition at line 92 of file InteractionListsI.H.
|
inline |
Return access to the cellIndexAndTransformToDistribute list.
Definition at line 100 of file InteractionListsI.H.
References InteractionLists< ParticleType >::wallFaceIndexAndTransformToDistribute().
|
inline |
Return access to the wallFaceIndexAndTransformToDistribute list.
Definition at line 109 of file InteractionListsI.H.
Referenced by InteractionLists< ParticleType >::cellIndexAndTransformToDistribute().
|
inline |
Return access to the referred wall faces.
Definition at line 117 of file InteractionListsI.H.
|
inline |
Return the name of the velocity field.
Definition at line 124 of file InteractionListsI.H.
|
inline |
Return access to the referred wall data.
Definition at line 132 of file InteractionListsI.H.
|
inline |
Return access to the referred particle container.
Definition at line 140 of file InteractionListsI.H.
|
inline |
Return non-const access to the referred particle container.
Definition at line 148 of file InteractionListsI.H.