InteractionLists< ParticleType > Class Template Reference

Builds direct interaction list, specifying which local (real) cells are potentially in range of each other. More...

Inheritance diagram for InteractionLists< ParticleType >:

Public Member Functions

 InteractionLists (const polyMesh &mesh)
 Construct null from mesh. More...
 
 InteractionLists (const polyMesh &mesh, scalar maxDistance, bool 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 polyMeshmesh () const
 Return access to the mesh. More...
 
const mapDistributecellMap () const
 Return access to the cellMap. More...
 
const mapDistributewallFaceMap () const
 Return access to the wallFaceMap. More...
 
const labelListListdil () const
 Return access to the direct interaction list. More...
 
const labelListListdwfil () const
 Return access to the direct wall face interaction list. More...
 
const labelListListril () const
 Return access to the referred interaction list. More...
 
const labelListListrilInverse () const
 Return access to the inverse referred interaction list. More...
 
const labelListListrwfil () const
 Return access to the referred wall face interaction list. More...
 
const labelListListrwfilInverse () 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 wordUName () 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...
 

Detailed Description

template<class ParticleType>
class Foam::InteractionLists< ParticleType >

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::commsTypes::nonBlocking);
label startOfRequests = Pstream::nRequests();
il_.sendReferredData(cellOccupancy_, pBufs);
// Do other things
il_.receiveReferredData(pBufs, startOfRequests);

Requiring data:

List<DynamicList<typename CloudType::parcelType*>> cellOccupancy_;
Source files

Definition at line 77 of file InteractionLists.H.

Constructor & Destructor Documentation

◆ InteractionLists() [1/2]

InteractionLists ( const polyMesh mesh)

Construct null from mesh.

Definition at line 1004 of file InteractionLists.C.

◆ InteractionLists() [2/2]

InteractionLists ( const polyMesh mesh,
scalar  maxDistance,
bool  writeCloud = false,
const word UName = "U" 
)

Construct and call function to create all information from.

the mesh

Definition at line 1027 of file InteractionLists.C.

◆ ~InteractionLists()

Definition at line 1058 of file InteractionLists.C.

Member Function Documentation

◆ sendReferredData()

void sendReferredData ( const List< DynamicList< ParticleType *>> &  cellOccupancy,
PstreamBuffers pBufs 
)

Prepare and send referred particles and wall data,.

nonBlocking communication

Definition at line 1066 of file InteractionLists.C.

◆ receiveReferredData()

void receiveReferredData ( PstreamBuffers pBufs,
const label  startReq = 0 
)

Receive referred data.

Definition at line 1114 of file InteractionLists.C.

◆ mesh()

const Foam::polyMesh & mesh ( ) const
inline

Return access to the mesh.

Definition at line 26 of file InteractionListsI.H.

◆ cellMap()

const Foam::mapDistribute & cellMap ( ) const
inline

Return access to the cellMap.

Definition at line 34 of file InteractionListsI.H.

◆ wallFaceMap()

const Foam::mapDistribute & wallFaceMap ( ) const
inline

Return access to the wallFaceMap.

Definition at line 42 of file InteractionListsI.H.

◆ dil()

const Foam::labelListList & dil ( ) const
inline

Return access to the direct interaction list.

Definition at line 49 of file InteractionListsI.H.

◆ dwfil()

const Foam::labelListList & dwfil ( ) const
inline

Return access to the direct wall face interaction list.

Definition at line 57 of file InteractionListsI.H.

◆ ril()

const Foam::labelListList & ril ( ) const
inline

Return access to the referred interaction list.

Definition at line 64 of file InteractionListsI.H.

◆ rilInverse()

const Foam::labelListList & rilInverse ( ) const
inline

Return access to the inverse referred interaction list.

Definition at line 72 of file InteractionListsI.H.

◆ rwfil()

const Foam::labelListList & rwfil ( ) const
inline

Return access to the referred wall face interaction list.

Definition at line 79 of file InteractionListsI.H.

◆ rwfilInverse()

const Foam::labelListList & rwfilInverse ( ) const
inline

Return access to the inverse referred wall face.

interaction list

Definition at line 87 of file InteractionListsI.H.

◆ cellIndexAndTransformToDistribute()

const Foam::List< Foam::labelPair > & cellIndexAndTransformToDistribute ( ) const
inline

Return access to the cellIndexAndTransformToDistribute list.

Definition at line 95 of file InteractionListsI.H.

◆ wallFaceIndexAndTransformToDistribute()

const Foam::List< Foam::labelPair > & wallFaceIndexAndTransformToDistribute ( ) const
inline

Return access to the wallFaceIndexAndTransformToDistribute list.

Definition at line 104 of file InteractionListsI.H.

◆ referredWallFaces()

const Foam::List< Foam::referredWallFace > & referredWallFaces ( ) const
inline

Return access to the referred wall faces.

Definition at line 112 of file InteractionListsI.H.

◆ UName()

const Foam::word & UName ( ) const
inline

Return the name of the velocity field.

Definition at line 119 of file InteractionListsI.H.

◆ referredWallData()

const Foam::List< Foam::vector > & referredWallData ( ) const
inline

Return access to the referred wall data.

Definition at line 127 of file InteractionListsI.H.

◆ referredParticles() [1/2]

const Foam::List< Foam::IDLList< ParticleType > > & referredParticles ( ) const
inline

Return access to the referred particle container.

Definition at line 135 of file InteractionListsI.H.

◆ referredParticles() [2/2]

Foam::List< Foam::IDLList< ParticleType > > & referredParticles ( )
inline

Return non-const access to the referred particle container.

Definition at line 143 of file InteractionListsI.H.


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