|
OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
|
#include <ParticleCashedLayout.h>


Public Types | |
| typedef ParticleLayout< T, Dim >::SingleParticlePos_t | SingleParticlePos_t |
| typedef ParticleLayout< T, Dim >::Index_t | Index_t |
| typedef ParticleInteractAttrib< SingleParticlePos_t > | ParticlePos_t |
| typedef ParticleInteractAttrib< Index_t > | ParticleIndex_t |
| typedef ParticleInteractAttrib< T > | ParticleInterRadius_t |
| typedef int | pair_t |
| typedef pair_t * | pair_iterator |
| typedef RegionLayout< T, Dim, UniformCartesian< Dim, T > > | RegionLayout_t |
| enum | { Dimension = Dim } |
| enum | UpdateFlags { SWAP , BCONDS , NUMFLAGS , OPTDESTROY , ALL } |
| typedef T | Position_t |
| typedef Unique::type | ID_t |
Protected Member Functions | |
| void | rebuild_layout (size_t haveLocal, PB &PData) |
| size_t | swap_particles (size_t LocalNum, PB &PData) |
| size_t | swap_particles (size_t LocalNum, PB &PData, const ParticleAttrib< char > &canSwap) |
| size_t | short_swap_particles (size_t LocalNum, PB &PData) |
| size_t | new_swap_particles (size_t LocalNum, PB &PData) |
| 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, UniformCartesian< Dim, T > > | RLayout |
| size_t * | NodeCount |
| bool * | EmptyNode |
| bool * | SwapNodeList [Dim] |
| Message ** | SwapMsgList |
| unsigned | NeighborNodes [Dim] |
| std::vector< size_t > * | PutList |
| bool | caching |
| ID_t | Id |
Private Member Functions | |
| void | setup () |
| void | rebuild_interaction_data () |
| void | rebuild_interaction_data (const bool periodicBC[2 *Dim]) |
| void | swap_ghost_particles (unsigned, IpplParticleBase< ParticleCashedLayout< T, Dim, Mesh > > &) |
| void | swap_ghost_particles (unsigned, IpplParticleBase< ParticleCashedLayout< T, Dim, Mesh > > &, const bool periodicBC[2 *Dim]) |
| void | setMaxInteractionRadius (T maxval) |
| T | getMaxLocalInteractionRadius () |
Private Attributes | |
| bool | NeedGhostSwap |
| bool * | InterNodeList |
| bool * | SentToNodeList |
| unsigned | InteractionNodes |
| T | InterRadius |
| T | MaxGlobalInterRadius |
| ParticleBConds< T, Dim > | BoundConds |
| unsigned int | UpdateOptions |
| T | boxDimension [Dim] |
| bool | periodic [2 *Dim] |
| std::map< unsigned, std::list< std::pair< NDRegion< T, Dim >, Offset_t > > > | regions |
Definition at line 61 of file ParticleCashedLayout.h.
|
inherited |
| typedef ParticleLayout<T,Dim>::Index_t ParticleCashedLayout< T, Dim, Mesh >::Index_t |
Definition at line 67 of file ParticleCashedLayout.h.
|
inherited |
Definition at line 71 of file ParticleSpatialLayout.h.
|
inherited |
Definition at line 70 of file ParticleSpatialLayout.h.
| typedef ParticleInteractAttrib<Index_t> ParticleCashedLayout< T, Dim, Mesh >::ParticleIndex_t |
Definition at line 71 of file ParticleCashedLayout.h.
| typedef ParticleInteractAttrib<T> ParticleCashedLayout< T, Dim, Mesh >::ParticleInterRadius_t |
Definition at line 72 of file ParticleCashedLayout.h.
| typedef ParticleInteractAttrib<SingleParticlePos_t> ParticleCashedLayout< T, Dim, Mesh >::ParticlePos_t |
Definition at line 70 of file ParticleCashedLayout.h.
|
inherited |
Definition at line 62 of file ParticleLayout.h.
|
inherited |
Definition at line 79 of file ParticleSpatialLayout.h.
| typedef ParticleLayout<T,Dim>::SingleParticlePos_t ParticleCashedLayout< T, Dim, Mesh >::SingleParticlePos_t |
Definition at line 66 of file ParticleCashedLayout.h.
|
inherited |
| Enumerator | |
|---|---|
| Dimension | |
Definition at line 58 of file ParticleLayout.h.
|
inherited |
| Enumerator | |
|---|---|
| SWAP | |
| BCONDS | |
| NUMFLAGS | |
| OPTDESTROY | |
| ALL | |
Definition at line 59 of file ParticleLayout.h.
| ParticleCashedLayout< T, Dim, Mesh >::ParticleCashedLayout | ( | FieldLayout< Dim > & | fl | ) |
Definition at line 49 of file ParticleCashedLayout.hpp.
References ParticleCashedLayout< T, Dim, Mesh >::setup().

| ParticleCashedLayout< T, Dim, Mesh >::ParticleCashedLayout | ( | FieldLayout< Dim > & | fl, |
| Mesh & | mesh | ||
| ) |
Definition at line 59 of file ParticleCashedLayout.hpp.
References ParticleCashedLayout< T, Dim, Mesh >::setup().

| ParticleCashedLayout< T, Dim, Mesh >::ParticleCashedLayout | ( | const RegionLayout< T, Dim, Mesh > & | rl | ) |
Definition at line 69 of file ParticleCashedLayout.hpp.
References ParticleCashedLayout< T, Dim, Mesh >::setup().

| ParticleCashedLayout< T, Dim, Mesh >::ParticleCashedLayout |
Definition at line 79 of file ParticleCashedLayout.hpp.
References ParticleCashedLayout< T, Dim, Mesh >::setup().

| ParticleCashedLayout< T, Dim, Mesh >::~ParticleCashedLayout |
Definition at line 105 of file ParticleCashedLayout.hpp.
|
inlineprotectedinherited |
Definition at line 106 of file ParticleLayout.h.
References ParticleBConds< T, Dim >::apply(), Dim, Hypervolume::n, nr, and Attrib::Distribution::R.

|
inlineinherited |
Definition at line 172 of file ParticleSpatialLayout.h.
|
inlineinherited |
Definition at line 171 of file ParticleSpatialLayout.h.
|
inlineinherited |
Definition at line 46 of file User.h.
References User::Id.
Referenced by UserList::checkinUser(), and UserList::checkoutUser().
|
inlineinherited |
Definition at line 91 of file ParticleLayout.h.
References ParticleLayout< T, Dim >::BoundConds.
Referenced by IpplParticleBase< PLayout >::getBConds(), and BoxParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation().
| void ParticleCashedLayout< T, Dim, Mesh >::getCashedParticles | ( | IpplParticleBase< ParticleCashedLayout< T, Dim, Mesh > > & | PData | ) |
Definition at line 128 of file ParticleCashedLayout.hpp.
References Dim, and ParticlePeriodicBCond().

|
inlineinherited |
Definition at line 136 of file ParticleSpatialLayout.h.
|
inlineinherited |
Definition at line 113 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 124 of file ParticleCashedLayout.h.
References ParticleCashedLayout< T, Dim, Mesh >::InterRadius.
|
inlineinherited |
Definition at line 119 of file ParticleSpatialLayout.h.
|
inlineinherited |
Definition at line 123 of file ParticleSpatialLayout.h.
|
inline |
Definition at line 121 of file ParticleCashedLayout.h.
References ParticleCashedLayout< T, Dim, Mesh >::MaxGlobalInterRadius.
|
private |
Definition at line 116 of file ParticleCashedLayout.hpp.
|
inlineinherited |
Definition at line 129 of file ParticleSpatialLayout.h.
|
inlineinherited |
Definition at line 86 of file ParticleLayout.h.
References ParticleLayout< T, Dim >::ALL, and ParticleLayout< T, Dim >::UpdateOptions.
Referenced by IpplParticleBase< PLayout >::getUpdateFlag(), and BoxParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation().
|
inlineprotectedinherited |
Definition at line 1073 of file ParticleSpatialLayout.h.
|
inlineprotectedinherited |
Definition at line 1194 of file ParticleSpatialLayout.h.
|
virtualinherited |
Implements User.
Definition at line 169 of file ParticleSpatialLayout.hpp.
|
inherited |
Definition at line 159 of file ParticleSpatialLayout.hpp.
|
private |
Definition at line 169 of file ParticleCashedLayout.hpp.
References RegionLayout< T, Dim, MeshType >::begin_iv(), Dim, IpplInfo::getNodes(), and Attrib::Legacy::Distribution::T.

|
private |
Definition at line 229 of file ParticleCashedLayout.hpp.
References RegionLayout< T, Dim, MeshType >::begin_iv(), Dim, IpplInfo::getNodes(), IpplInfo::myNode(), PAssert, Attrib::Legacy::Distribution::T, RegionLayout< T, Dim, MeshType >::touch_range_rdv(), and NDRegion< T, Dim >::touches().

|
inlineprotectedinherited |
Definition at line 202 of file ParticleSpatialLayout.h.
|
virtual |
Reimplemented from ParticleSpatialLayout< T, Dim, UniformCartesian< Dim, T > >.
Definition at line 896 of file ParticleCashedLayout.hpp.
References UserList::getUserListID().

|
inlineinherited |
Definition at line 35 of file BoxParticleCachingPolicy.h.
|
inlineinherited |
Definition at line 94 of file ParticleLayout.h.
References ParticleLayout< T, Dim >::BoundConds.
Referenced by IpplParticleBase< PLayout >::setBConds().
|
inlineinherited |
Definition at line 30 of file BoxParticleCachingPolicy.h.
|
inline |
Definition at line 114 of file ParticleCashedLayout.h.
References ParticleCashedLayout< T, Dim, Mesh >::InterRadius.
|
inlineprivate |
Definition at line 182 of file ParticleCashedLayout.h.
References ParticleCashedLayout< T, Dim, Mesh >::MaxGlobalInterRadius.
|
inline |
Definition at line 131 of file ParticleCashedLayout.h.
References ParticleCashedLayout< T, Dim, Mesh >::NeedGhostSwap.
|
private |
Definition at line 88 of file ParticleCashedLayout.hpp.
References IpplInfo::getNodes().
Referenced by ParticleCashedLayout< T, Dim, Mesh >::ParticleCashedLayout().

|
inlineinherited |
Definition at line 76 of file ParticleLayout.h.
References ParticleLayout< T, Dim >::ALL, and ParticleLayout< T, Dim >::UpdateOptions.
Referenced by IpplParticleBase< PLayout >::setUpdateFlag().
|
inlineprotectedinherited |
Definition at line 632 of file ParticleSpatialLayout.h.
|
private |
Definition at line 526 of file ParticleCashedLayout.hpp.
References IpplInfo::getNodes(), and Attrib::Legacy::Distribution::T.

|
private |
Definition at line 657 of file ParticleCashedLayout.hpp.
References RegionLayout< T, Dim, MeshType >::begin_iv(), IpplInfo::Comm, Communicate::COMM_ANY_NODE, Dim, endl(), ERRORMSG, Rnode< T, Dim >::getNode(), IpplInfo::getNodes(), IpplInfo::myNode(), TagMaker::next_tag(), P_LAYOUT_CYCLE, P_SPATIAL_GHOST_TAG, PAssert, Communicate::receive_block(), Communicate::send(), Attrib::Legacy::Distribution::T, RegionLayout< T, Dim, MeshType >::touch_range_rdv(), and NDRegion< T, Dim >::touches().

|
inlineprotectedinherited |
Definition at line 330 of file ParticleSpatialLayout.h.
|
inlineprotectedinherited |
Definition at line 773 of file ParticleSpatialLayout.h.
| void ParticleCashedLayout< T, Dim, Mesh >::update | ( | IpplParticleBase< ParticleCashedLayout< T, Dim, Mesh > > & | p, |
| const ParticleAttrib< char > * | canSwap = 0 |
||
| ) |
Definition at line 383 of file ParticleCashedLayout.hpp.
References Communicate::broadcast_others(), IpplInfo::Comm, Communicate::COMM_ANY_NODE, Dim, Message::get(), IpplInfo::getNodes(), IpplInfo::myNode(), TagMaker::next_tag(), P_LAYOUT_CYCLE, P_SPATIAL_LAYOUT_TAG, P_SPATIAL_RETURN_TAG, ParticlePeriodicBCond(), Message::put(), Communicate::receive_block(), Communicate::send(), SWAP, and Attrib::Legacy::Distribution::T.

|
inherited |
Definition at line 150 of file ParticleSpatialLayout.hpp.
|
inlineinherited |
Definition at line 40 of file BoxParticleCachingPolicy.h.
|
inlineinherited |
Definition at line 155 of file BoxParticleCachingPolicy.h.
|
privateinherited |
Definition at line 118 of file ParticleLayout.h.
Referenced by ParticleLayout< T, Dim >::getBConds(), and ParticleLayout< T, Dim >::setBConds().
|
privateinherited |
Definition at line 260 of file BoxParticleCachingPolicy.h.
|
protectedinherited |
Definition at line 191 of file ParticleSpatialLayout.h.
|
protectedinherited |
Definition at line 182 of file ParticleSpatialLayout.h.
|
protectedinherited |
Definition at line 58 of file User.h.
Referenced by User::get_Id().
|
private |
Definition at line 147 of file ParticleCashedLayout.h.
|
private |
Definition at line 145 of file ParticleCashedLayout.h.
|
private |
Definition at line 153 of file ParticleCashedLayout.h.
Referenced by ParticleCashedLayout< T, Dim, Mesh >::getInteractionRadius(), and ParticleCashedLayout< T, Dim, Mesh >::setInteractionRadius().
|
private |
Definition at line 153 of file ParticleCashedLayout.h.
Referenced by ParticleCashedLayout< T, Dim, Mesh >::getMaxInteractionRadius(), and ParticleCashedLayout< T, Dim, Mesh >::setMaxInteractionRadius().
|
private |
Definition at line 144 of file ParticleCashedLayout.h.
Referenced by ParticleCashedLayout< T, Dim, Mesh >::setNeedGhostSwap().
|
protectedinherited |
Definition at line 188 of file ParticleSpatialLayout.h.
|
protectedinherited |
Definition at line 179 of file ParticleSpatialLayout.h.
|
privateinherited |
Definition at line 261 of file BoxParticleCachingPolicy.h.
|
protectedinherited |
Definition at line 189 of file ParticleSpatialLayout.h.
|
privateinherited |
Definition at line 262 of file BoxParticleCachingPolicy.h.
|
protectedinherited |
Definition at line 176 of file ParticleSpatialLayout.h.
|
private |
Definition at line 146 of file ParticleCashedLayout.h.
|
protectedinherited |
Definition at line 187 of file ParticleSpatialLayout.h.
|
protectedinherited |
Definition at line 186 of file ParticleSpatialLayout.h.
|
privateinherited |
Definition at line 121 of file ParticleLayout.h.
Referenced by ParticleLayout< T, Dim >::getUpdateFlag(), and ParticleLayout< T, Dim >::setUpdateFlag().