OPAL (Object Oriented Parallel Accelerator Library)
2.2.0
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 () |
void | rebuild_neighbor_data () |
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 19 of file BoxParticleCachingPolicy.h.
typedef ParticleLayout<T, Dim>::Index_t ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::Index_t |
Definition at line 75 of file ParticleSpatialLayout.h.
typedef pair_t* ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::pair_iterator |
Definition at line 72 of file ParticleSpatialLayout.h.
typedef int ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::pair_t |
Definition at line 71 of file ParticleSpatialLayout.h.
typedef ParticleAttrib<Index_t> ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleIndex_t |
Definition at line 79 of file ParticleSpatialLayout.h.
typedef ParticleAttrib<SingleParticlePos_t> ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticlePos_t |
Definition at line 78 of file ParticleSpatialLayout.h.
typedef RegionLayout<T,Dim,Mesh> ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::RegionLayout_t |
Definition at line 80 of file ParticleSpatialLayout.h.
typedef ParticleLayout<T, Dim>::SingleParticlePos_t ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::SingleParticlePos_t |
Definition at line 74 of file ParticleSpatialLayout.h.
ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleSpatialLayout | ( | FieldLayout< Dim > & | fl | ) |
Definition at line 45 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 55 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 66 of file ParticleSpatialLayout.hpp.
References ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::setup().
ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleSpatialLayout | ( | ) |
Definition at line 77 of file ParticleSpatialLayout.hpp.
References ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::setup().
ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::~ParticleSpatialLayout | ( | ) |
Definition at line 122 of file ParticleSpatialLayout.hpp.
References Dim.
|
inline |
Definition at line 185 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 184 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 137 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
inline |
Definition at line 114 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 120 of file ParticleSpatialLayout.h.
Referenced by PartBunch::getFieldLayout(), PartBunch::getMesh(), PartBunch::initialize(), CellParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation(), BoxParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation(), and CellParticleCachingPolicy< T, Dim, Mesh >::updateGhostParticles().
|
inline |
Definition at line 124 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 173 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 130 of file ParticleSpatialLayout.h.
|
inlineprotected |
Definition at line 1162 of file ParticleSpatialLayout.h.
|
inlineprotected |
Definition at line 1290 of file ParticleSpatialLayout.h.
|
virtual |
Implements User.
Definition at line 449 of file ParticleSpatialLayout.hpp.
void ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::printDebug | ( | Inform & | o | ) |
Definition at line 416 of file ParticleSpatialLayout.hpp.
References IpplInfo::getNodes().
|
inlineprotected |
Definition at line 220 of file ParticleSpatialLayout.h.
|
protected |
Definition at line 144 of file ParticleSpatialLayout.hpp.
References RegionLayout< T, Dim, MeshType >::begin_iv(), Communicate::broadcast_others(), IpplInfo::Comm, Communicate::COMM_ANY_NODE, Dim, RegionLayout< T, Dim, MeshType >::end_iv(), Message::get(), IpplInfo::getNodes(), INFORM_ALL_NODES, IpplInfo::myNode(), TagMaker::next_tag(), P_LAYOUT_CYCLE, P_SPATIAL_LAYOUT_TAG, P_SPATIAL_RETURN_TAG, Message::put(), Communicate::receive_block(), Communicate::send(), and RegionLayout< T, Dim, MeshType >::touch_range_rdv().
|
virtual |
Implements FieldLayoutUser.
Reimplemented in ParticleInteractLayout< T, Dim, Mesh >, and ParticleCashedLayout< T, Dim, Mesh >.
Definition at line 430 of file ParticleSpatialLayout.hpp.
References UserList::getUserListID().
|
protected |
Definition at line 86 of file ParticleSpatialLayout.hpp.
References Dim, and IpplInfo::getNodes().
Referenced by ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::ParticleSpatialLayout().
|
inlineprotected |
Definition at line 695 of file ParticleSpatialLayout.h.
|
inlineprotected |
Definition at line 348 of file ParticleSpatialLayout.h.
|
inlineprotected |
Definition at line 842 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 270 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(), and Communicate::send().
|
protected |
Definition at line 204 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::disableCaching(), and ParticleSpatialLayout< T, Dim, Mesh >::enableCaching().
|
protected |
Definition at line 195 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::getEmptyNode().
|
protected |
Definition at line 201 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
protected |
Definition at line 192 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::getNodeCount().
|
protected |
Definition at line 202 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
protected |
Definition at line 189 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 200 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().
|
protected |
Definition at line 199 of file ParticleSpatialLayout.h.
Referenced by ParticleSpatialLayout< T, Dim, Mesh >::getNeighborNode(), ParticleSpatialLayout< T, Dim, Mesh >::short_swap_particles(), and ParticleSpatialLayout< T, Dim, Mesh >::swap_particles().