OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
BoxParticleCachingPolicy< T, Dim, Mesh > Class Template Reference

#include <BoxParticleCachingPolicy.h>

Inheritance diagram for BoxParticleCachingPolicy< T, Dim, Mesh >:
Collaboration diagram for BoxParticleCachingPolicy< T, Dim, Mesh >:

Classes

struct  Offset_t

Public Member Functions

 BoxParticleCachingPolicy ()
void setCacheDimension (int d, T length)
void setAllCacheDimensions (T length)
template<class C>
void updateCacheInformation (ParticleSpatialLayout< T, Dim, Mesh, C > &PLayout)
template<class C>
void updateGhostParticles (IpplParticleBase< ParticleSpatialLayout< T, Dim, Mesh, C > > &PData, ParticleSpatialLayout< T, Dim, Mesh, C > &)

Protected Member Functions

 ~BoxParticleCachingPolicy ()

Private Attributes

boxDimension [Dim]
bool periodic [2 *Dim]
std::map< unsigned, std::list< std::pair< NDRegion< T, Dim >, Offset_t > > > regions

Detailed Description

template<class T, unsigned Dim, class Mesh>
class BoxParticleCachingPolicy< T, Dim, Mesh >

Definition at line 23 of file BoxParticleCachingPolicy.h.

Constructor & Destructor Documentation

◆ BoxParticleCachingPolicy()

template<class T, unsigned Dim, class Mesh>
BoxParticleCachingPolicy< T, Dim, Mesh >::BoxParticleCachingPolicy ( )
inline

Definition at line 25 of file BoxParticleCachingPolicy.h.

References boxDimension, and Dim.

◆ ~BoxParticleCachingPolicy()

template<class T, unsigned Dim, class Mesh>
BoxParticleCachingPolicy< T, Dim, Mesh >::~BoxParticleCachingPolicy ( )
inlineprotected

Definition at line 249 of file BoxParticleCachingPolicy.h.

Member Function Documentation

◆ setAllCacheDimensions()

template<class T, unsigned Dim, class Mesh>
void BoxParticleCachingPolicy< T, Dim, Mesh >::setAllCacheDimensions ( T length)
inline

Definition at line 35 of file BoxParticleCachingPolicy.h.

References boxDimension, and Dim.

◆ setCacheDimension()

template<class T, unsigned Dim, class Mesh>
void BoxParticleCachingPolicy< T, Dim, Mesh >::setCacheDimension ( int d,
T length )
inline

◆ updateCacheInformation()

◆ updateGhostParticles()

template<class T, unsigned Dim, class Mesh>
template<class C>
void BoxParticleCachingPolicy< T, Dim, Mesh >::updateGhostParticles ( IpplParticleBase< ParticleSpatialLayout< T, Dim, Mesh, C > > & PData,
ParticleSpatialLayout< T, Dim, Mesh, C > &  )
inline

Definition at line 155 of file BoxParticleCachingPolicy.h.

References boxDimension, IpplInfo::Comm, Communicate::COMM_ANY_NODE, Dim, MsgBuffer::getBuffer(), MsgBuffer::getSize(), P_LAYOUT_CYCLE, P_SPATIAL_GHOST_TAG, regions, and NDRegion< T, Dim >::touches().

Referenced by CellParticleCachingPolicy< T, Dim, Mesh >::updateGhostParticles().

Here is the call graph for this function:

Member Data Documentation

◆ boxDimension

template<class T, unsigned Dim, class Mesh>
T BoxParticleCachingPolicy< T, Dim, Mesh >::boxDimension[Dim]
private

◆ periodic

template<class T, unsigned Dim, class Mesh>
bool BoxParticleCachingPolicy< T, Dim, Mesh >::periodic[2 *Dim]
private

Definition at line 261 of file BoxParticleCachingPolicy.h.

Referenced by updateCacheInformation().

◆ regions

template<class T, unsigned Dim, class Mesh>
std::map<unsigned, std::list<std::pair<NDRegion<T,Dim>, Offset_t> > > BoxParticleCachingPolicy< T, Dim, Mesh >::regions
private

Definition at line 262 of file BoxParticleCachingPolicy.h.

Referenced by updateCacheInformation(), and updateGhostParticles().


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