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 >:
[legend]

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

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 81 of file InteractionLists.H.

Constructor & Destructor Documentation

◆ InteractionLists() [1/2]

InteractionLists ( const polyMesh &  mesh)

Construct null from mesh.

Definition at line 1095 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 1118 of file InteractionLists.C.

◆ ~InteractionLists()

Definition at line 1149 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 1157 of file InteractionLists.C.

◆ receiveReferredData()

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

Receive referred data.

Definition at line 1205 of file InteractionLists.C.

◆ mesh()

const Foam::polyMesh & mesh ( ) const
inline

Return access to the mesh.

Definition at line 33 of file InteractionListsI.H.

◆ cellMap()

const Foam::mapDistribute & cellMap ( ) const
inline

Return access to the cellMap.

Definition at line 41 of file InteractionListsI.H.

◆ wallFaceMap()

const Foam::mapDistribute & wallFaceMap ( ) const
inline

Return access to the wallFaceMap.

Definition at line 49 of file InteractionListsI.H.

◆ dil()

const Foam::labelListList & dil ( ) const
inline

Return access to the direct interaction list.

Definition at line 56 of file InteractionListsI.H.

◆ dwfil()

const Foam::labelListList & dwfil ( ) const
inline

Return access to the direct wall face interaction list.

Definition at line 64 of file InteractionListsI.H.

◆ ril()

const Foam::labelListList & ril ( ) const
inline

Return access to the referred interaction list.

Definition at line 71 of file InteractionListsI.H.

◆ rilInverse()

const Foam::labelListList & rilInverse ( ) const
inline

Return access to the inverse referred interaction list.

Definition at line 79 of file InteractionListsI.H.

◆ rwfil()

const Foam::labelListList & rwfil ( ) const
inline

Return access to the referred wall face interaction list.

Definition at line 86 of file InteractionListsI.H.

◆ rwfilInverse()

const Foam::labelListList & rwfilInverse ( ) const
inline

Return access to the inverse referred wall face.

interaction list

Definition at line 94 of file InteractionListsI.H.

◆ cellIndexAndTransformToDistribute()

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

Return access to the cellIndexAndTransformToDistribute list.

Definition at line 102 of file InteractionListsI.H.

◆ wallFaceIndexAndTransformToDistribute()

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

Return access to the wallFaceIndexAndTransformToDistribute list.

Definition at line 111 of file InteractionListsI.H.

◆ referredWallFaces()

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

Return access to the referred wall faces.

Definition at line 119 of file InteractionListsI.H.

◆ UName()

const Foam::word & UName ( ) const
inline

Return the name of the velocity field.

Definition at line 126 of file InteractionListsI.H.

◆ referredWallData()

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

Return access to the referred wall data.

Definition at line 134 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 142 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 150 of file InteractionListsI.H.


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