OPAL (Object Oriented Parallel Accelerator Library)
2024.1
OPAL
|
#include <BoxParticleCachingPolicy.h>
Public Types | |
typedef int | pair_t |
typedef pair_t * | pair_iterator |
typedef ParticleLayout< T, Dim > ::SingleParticlePos_t | SingleParticlePos_t |
typedef ParticleLayout< T, Dim > ::Index_t | Index_t |
typedef ParticleAttrib < SingleParticlePos_t > | ParticlePos_t |
typedef ParticleAttrib< Index_t > | ParticleIndex_t |
typedef RegionLayout< T, Dim, Mesh > | RegionLayout_t |
![]() | |
enum | { Dimension = Dim } |
enum | UpdateFlags { SWAP, BCONDS, NUMFLAGS, OPTDESTROY, ALL } |
typedef T | Position_t |
typedef unsigned | Index_t |
typedef Vektor< T, Dim > | SingleParticlePos_t |
![]() | |
typedef Unique::type | ID_t |
Protected Member Functions | |
void | setup () |
template<class PB > | |
void | rebuild_layout (size_t haveLocal, PB &PData) |
template<class PB > | |
size_t | swap_particles (size_t LocalNum, PB &PData) |
template<class PB > | |
size_t | short_swap_particles (size_t LocalNum, PB &PData) |
template<class PB > | |
size_t | swap_particles (size_t LocalNum, PB &PData, const ParticleAttrib< char > &canSwap) |
template<class PB > | |
size_t | new_swap_particles (size_t LocalNum, PB &PData) |
template<class PB > | |
size_t | new_swap_particles (size_t LocalNum, PB &PData, const ParticleAttrib< char > &canSwap) |
![]() | |
template<class PPT , class NDI > | |
void | apply_bconds (unsigned n, PPT &R, const ParticleBConds< T, Dim > &bcs, const NDI &nr) |
Protected Attributes | |
RegionLayout< T, Dim, Mesh > | RLayout |
size_t * | NodeCount |
bool * | EmptyNode |
bool * | SwapNodeList [Dim] |
Message ** | SwapMsgList |
unsigned | NeighborNodes [Dim] |
std::vector< size_t > * | PutList |
bool | caching |
![]() | |
ID_t | Id |
Definition at line 20 of file BoxParticleCachingPolicy.h.
typedef ParticleLayout<T, Dim>::Index_t ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::Index_t |
Definition at line 74 of file ParticleSpatialLayout.h.
typedef pair_t* ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::pair_iterator |
Definition at line 71 of file ParticleSpatialLayout.h.
typedef int ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::pair_t |
Definition at line 70 of file ParticleSpatialLayout.h.
typedef ParticleAttrib<Index_t> ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleIndex_t |
Definition at line 78 of file ParticleSpatialLayout.h.
typedef ParticleAttrib<SingleParticlePos_t> ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticlePos_t |
Definition at line 77 of file ParticleSpatialLayout.h.
typedef RegionLayout<T,Dim,Mesh> ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::RegionLayout_t |
Definition at line 79 of file ParticleSpatialLayout.h.
typedef ParticleLayout<T, Dim>::SingleParticlePos_t ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::SingleParticlePos_t |
Definition at line 73 of file ParticleSpatialLayout.h.
ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleSpatialLayout | ( | FieldLayout< Dim > & | fl | ) |
Definition at line 27 of file ParticleSpatialLayout.hpp.
References ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::setup().
ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleSpatialLayout | ( | FieldLayout< Dim > & | fl, |
Mesh & | mesh | ||
) |
Definition at line 37 of file ParticleSpatialLayout.hpp.
References ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::setup().
ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleSpatialLayout | ( | const RegionLayout< T, Dim, Mesh > & | rl | ) |
Definition at line 48 of file ParticleSpatialLayout.hpp.
References ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::setup().
ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleSpatialLayout | ( | ) |
Definition at line 59 of file ParticleSpatialLayout.hpp.
References ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::setup().
ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::~ParticleSpatialLayout | ( | ) |
Definition at line 100 of file ParticleSpatialLayout.hpp.
References Dim.
|
inline |
Definition at line 172 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 171 of file ParticleSpatialLayout.h.
Referenced by PartBunchBase< T, Dim >::boundp().
|
inline |
Definition at line 136 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
inline |
Definition at line 113 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 119 of file ParticleSpatialLayout.h.
Referenced by PartBunch::getFieldLayout(), PartBunch::getMesh(), PartBunch::initialize(), BoxParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation(), CellParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation(), and CellParticleCachingPolicy< T, Dim, Mesh >::updateGhostParticles().
|
inline |
Definition at line 123 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 129 of file ParticleSpatialLayout.h.
|
inlineprotected |
Definition at line 1073 of file ParticleSpatialLayout.h.
|
inlineprotected |
Definition at line 1194 of file ParticleSpatialLayout.h.
|
virtual |
Implements User.
Definition at line 282 of file ParticleSpatialLayout.hpp.
void ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::printDebug | ( | Inform & | o | ) |
Definition at line 259 of file ParticleSpatialLayout.hpp.
References IpplInfo::getNodes().
|
inlineprotected |
Definition at line 202 of file ParticleSpatialLayout.h.
|
virtual |
Implements FieldLayoutUser.
Reimplemented in ParticleInteractLayout< T, Dim, Mesh >, and ParticleCashedLayout< T, Dim, Mesh >.
Definition at line 273 of file ParticleSpatialLayout.hpp.
|
protected |
Definition at line 68 of file ParticleSpatialLayout.hpp.
References Dim, and IpplInfo::getNodes().
Referenced by ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleSpatialLayout().
|
inlineprotected |
Definition at line 632 of file ParticleSpatialLayout.h.
|
inlineprotected |
Definition at line 330 of file ParticleSpatialLayout.h.
|
inlineprotected |
Definition at line 773 of file ParticleSpatialLayout.h.
void ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::update | ( | IpplParticleBase< ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy > > & | p, |
const ParticleAttrib< char > * | canSwap = 0 |
||
) |
Definition at line 121 of file ParticleSpatialLayout.hpp.
References IpplMessageCounterRegion::begin(), Communicate::broadcast_others(), IpplInfo::Comm, Communicate::COMM_ANY_NODE, IpplMessageCounterRegion::end(), Message::get(), IpplInfo::getNodes(), IpplInfo::myNode(), TagMaker::next_tag(), P_LAYOUT_CYCLE, P_SPATIAL_LAYOUT_TAG, P_SPATIAL_RETURN_TAG, Message::put(), Communicate::receive_block(), Communicate::send(), and this.
|
protected |
Definition at line 191 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::disableCaching(), and ParticleSpatialLayout< T, Dim, Mesh >::enableCaching().
|
protected |
Definition at line 182 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::getEmptyNode().
|
protected |
Definition at line 188 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
protected |
Definition at line 179 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::getNodeCount().
|
protected |
Definition at line 189 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
protected |
Definition at line 176 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::getFieldLayout(), ParticleSpatialLayout< T, Dim, Mesh >::getLayout(), ParticleSpatialLayout< T, Dim, Mesh >::new_swap_particles(), ParticleSpatialLayout< T, Dim, Mesh >::rebuild_layout(), ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
protected |
Definition at line 187 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
protected |
Definition at line 186 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().