OPAL (Object Oriented Parallel Accelerator Library)
2021.1.99
OPAL
|
#include <RegionLayout.h>
Classes | |
class | RnodePool |
Public Types | |
typedef vmap< Unique::type, Rnode< T, Dim > * > | ac_id_vnodes |
typedef DomainMap< NDRegion< T, Dim >, Rnode< T, Dim > *, TouchesRegion< T, Dim >, ContainsRegion< T, Dim >, SplitRegion< T, Dim > > | ac_domain_vnodes |
typedef ac_id_vnodes::iterator | iterator_iv |
typedef ac_id_vnodes::const_iterator | const_iterator_iv |
typedef ac_domain_vnodes::iterator | iterator_dv |
typedef ac_domain_vnodes::const_iterator | const_iterator_dv |
typedef ac_domain_vnodes::touch_iterator | touch_iterator_dv |
typedef std::pair< touch_iterator_dv, touch_iterator_dv > | touch_range_dv |
Public Types inherited from User | |
typedef Unique::type | ID_t |
Public Member Functions | |
RegionLayout () | |
RegionLayout (const RegionLayout< T, Dim, MeshType > &) | |
RegionLayout (const NDRegion< T, Dim > &domain, MeshType &mesh, int vnodes=-1) | |
RegionLayout (const PRegion< T > &i1, MeshType &mesh, int vnodes=-1) | |
RegionLayout (const PRegion< T > &i1, const PRegion< T > &i2, MeshType &mesh, int vnodes=-1) | |
RegionLayout (const PRegion< T > &i1, const PRegion< T > &i2, const PRegion< T > &i3, MeshType &mesh, int vnodes=-1) | |
RegionLayout (FieldLayout< Dim > &) | |
RegionLayout (FieldLayout< Dim > &, MeshType &) | |
RegionLayout (const NDIndex< Dim > &domain, int vnodes=-1) | |
RegionLayout (const Index &i1, int vnodes=-1) | |
RegionLayout (const Index &i1, const Index &i2, int vnodes=-1) | |
RegionLayout (const Index &i1, const Index &i2, const Index &i3, int vnodes=-1) | |
RegionLayout (const NDIndex< Dim > &domain, MeshType &mesh, int vnodes=-1) | |
RegionLayout (const Index &i1, MeshType &mesh, int vnodes=-1) | |
RegionLayout (const Index &i1, const Index &i2, MeshType &mesh, int vnodes=-1) | |
RegionLayout (const Index &i1, const Index &i2, const Index &i3, MeshType &mesh, int vnodes=-1) | |
virtual | ~RegionLayout () |
bool | initialized () const |
const NDRegion< T, Dim > & | getDomain () const |
FieldLayout< Dim > & | getFieldLayout () |
const FieldLayout< Dim > & | getFieldLayout () const |
MeshType & | getMesh () |
const MeshType & | getMesh () const |
ac_id_vnodes::size_type | size_iv () const |
iterator_iv | begin_iv () |
iterator_iv | end_iv () |
const_iterator_iv | begin_iv () const |
const_iterator_iv | end_iv () const |
ac_domain_vnodes::size_type | size_rdv () const |
iterator_dv | begin_rdv () |
iterator_dv | end_rdv () |
const_iterator_dv | begin_rdv () const |
const_iterator_dv | end_rdv () const |
touch_range_dv | touch_range_rdv (const NDRegion< T, Dim > &domain) |
void | changeDomain (FieldLayout< Dim > &) |
void | changeDomain (const NDIndex< Dim > &, int vnodes=-1) |
void | changeDomain (const NDRegion< T, Dim > &, int vnodes=-1) |
void | RepartitionLayout (NDIndex< Dim > *, NDIndex< Dim > *) |
void | RepartitionLayout (NDIndex< Dim > &domain) |
NDRegion< T, Dim > | convert_index (const NDIndex< Dim > &) const |
NDIndex< Dim > | convert_region (const NDRegion< T, Dim > &) const |
bool | operator== (const RegionLayout< T, Dim, MeshType > &x) |
virtual void | Repartition (UserList *) |
virtual void | notifyUserOfDelete (UserList *) |
UserList::ID_t | get_Id () const |
void | checkin (FieldLayoutUser &f) |
void | checkout (FieldLayoutUser &f) |
Public Member Functions inherited from FieldLayoutUser | |
FieldLayoutUser () | |
virtual | ~FieldLayoutUser () |
Public Member Functions inherited from User | |
User () | |
virtual | ~User () |
ID_t | get_Id () const |
Private Member Functions | |
void | setup (const NDRegion< T, Dim > &, int) |
void | make_rnodes (const NDRegion< T, Dim > &, FieldLayout< Dim > &) |
void | delete_rnodes () |
void | store_flayout (FieldLayout< Dim > *, bool WeOwn) |
void | delete_flayout () |
void | store_mesh (MeshType *, bool WeOwn) |
void | delete_mesh () |
NDRegion< T, Dim > | getMeshDomain (MeshType *) |
NDIndex< Dim > | getMeshVertices (MeshType *) |
Private Member Functions inherited from UserList | |
UserList () | |
virtual | ~UserList () |
size_type_user | getNumUsers () const |
ID_t | getUserListID () const |
bool | haveUser (Key key) const |
User & | getUser (Key key) |
iterator_user | begin_user () |
iterator_user | end_user () |
virtual ID_t | checkinUser (User &user) |
virtual void | checkoutUser (Key key, bool informuser=false) |
virtual void | checkoutUser (const User &user, bool informuser=false) |
Private Attributes | |
ac_id_vnodes | Local_ac |
ac_domain_vnodes * | Remote_ac |
NDRegion< T, Dim > | Domain |
FieldLayout< Dim > * | FLayout |
bool | WeOwnFieldLayout |
MeshType * | theMesh |
bool | WeOwnMesh |
NDIndex< Dim > | MeshVertices |
int | IndexOffset [Dim] |
bool | CenterOffset [Dim] |
Static Private Attributes | |
static RnodePool | StaticRnodePool |
Additional Inherited Members | |
Protected Attributes inherited from User | |
ID_t | Id |
Private Types inherited from UserList | |
typedef User::ID_t | Key |
typedef vmap< Key, User * > | UserList_t |
typedef UserList_t::iterator | iterator_user |
typedef UserList_t::size_type | size_type_user |
typedef User::ID_t | ID_t |
Definition at line 55 of file RegionLayout.h.
typedef DomainMap<NDRegion<T,Dim>, Rnode<T,Dim> *, TouchesRegion<T,Dim>, ContainsRegion<T,Dim>, SplitRegion<T,Dim> > RegionLayout< T, Dim, MeshType >::ac_domain_vnodes |
Definition at line 63 of file RegionLayout.h.
typedef vmap<Unique::type, Rnode<T,Dim> *> RegionLayout< T, Dim, MeshType >::ac_id_vnodes |
Definition at line 59 of file RegionLayout.h.
typedef ac_domain_vnodes::const_iterator RegionLayout< T, Dim, MeshType >::const_iterator_dv |
Definition at line 69 of file RegionLayout.h.
typedef ac_id_vnodes::const_iterator RegionLayout< T, Dim, MeshType >::const_iterator_iv |
Definition at line 67 of file RegionLayout.h.
typedef ac_domain_vnodes::iterator RegionLayout< T, Dim, MeshType >::iterator_dv |
Definition at line 68 of file RegionLayout.h.
typedef ac_id_vnodes::iterator RegionLayout< T, Dim, MeshType >::iterator_iv |
Definition at line 66 of file RegionLayout.h.
typedef ac_domain_vnodes::touch_iterator RegionLayout< T, Dim, MeshType >::touch_iterator_dv |
Definition at line 70 of file RegionLayout.h.
typedef std::pair<touch_iterator_dv,touch_iterator_dv> RegionLayout< T, Dim, MeshType >::touch_range_dv |
Definition at line 71 of file RegionLayout.h.
RegionLayout< T, Dim, MeshType >::RegionLayout |
Definition at line 45 of file RegionLayout.hpp.
References Dim.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const RegionLayout< T, Dim, MeshType > & | r | ) |
Definition at line 68 of file RegionLayout.hpp.
References RegionLayout< T, Dim, MeshType >::CenterOffset, Dim, and RegionLayout< T, Dim, MeshType >::IndexOffset.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const NDRegion< T, Dim > & | domain, |
MeshType & | mesh, | ||
int | vnodes = -1 |
||
) |
Definition at line 117 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const PRegion< T > & | i1, |
MeshType & | mesh, | ||
int | vnodes = -1 |
||
) |
Definition at line 132 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const PRegion< T > & | i1, |
const PRegion< T > & | i2, | ||
MeshType & | mesh, | ||
int | vnodes = -1 |
||
) |
Definition at line 151 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const PRegion< T > & | i1, |
const PRegion< T > & | i2, | ||
const PRegion< T > & | i3, | ||
MeshType & | mesh, | ||
int | vnodes = -1 |
||
) |
Definition at line 172 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | FieldLayout< Dim > & | fl | ) |
Definition at line 363 of file RegionLayout.hpp.
References Dim, and FieldLayout< Dim >::getDomain().
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | FieldLayout< Dim > & | fl, |
MeshType & | mesh | ||
) |
Definition at line 384 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const NDIndex< Dim > & | domain, |
int | vnodes = -1 |
||
) |
Definition at line 196 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const Index & | i1, |
int | vnodes = -1 |
||
) |
Definition at line 216 of file RegionLayout.hpp.
References Dim, Index::first(), Index::last(), PInsist, and Index::stride().
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const Index & | i1, |
const Index & | i2, | ||
int | vnodes = -1 |
||
) |
Definition at line 236 of file RegionLayout.hpp.
References Dim, Index::first(), Index::last(), PInsist, and Index::stride().
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const Index & | i1, |
const Index & | i2, | ||
const Index & | i3, | ||
int | vnodes = -1 |
||
) |
Definition at line 259 of file RegionLayout.hpp.
References Dim, Index::first(), Index::last(), PInsist, and Index::stride().
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const NDIndex< Dim > & | domain, |
MeshType & | mesh, | ||
int | vnodes = -1 |
||
) |
Definition at line 284 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const Index & | i1, |
MeshType & | mesh, | ||
int | vnodes = -1 |
||
) |
Definition at line 300 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const Index & | i1, |
const Index & | i2, | ||
MeshType & | mesh, | ||
int | vnodes = -1 |
||
) |
Definition at line 320 of file RegionLayout.hpp.
RegionLayout< T, Dim, MeshType >::RegionLayout | ( | const Index & | i1, |
const Index & | i2, | ||
const Index & | i3, | ||
MeshType & | mesh, | ||
int | vnodes = -1 |
||
) |
Definition at line 340 of file RegionLayout.hpp.
|
virtual |
Definition at line 99 of file RegionLayout.hpp.
|
inline |
Definition at line 146 of file RegionLayout.h.
References vmap< Key, T, Compare >::begin(), and RegionLayout< T, Dim, MeshType >::Local_ac.
Referenced by operator<<(), ParticleCashedLayout< T, Dim, Mesh >::rebuild_interaction_data(), ParticleInteractLayout< T, Dim, Mesh >::rebuild_interaction_data(), ParticleCashedLayout< T, Dim, Mesh >::swap_ghost_particles(), ParticleInteractLayout< T, Dim, Mesh >::swap_ghost_particles(), and BoxParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation().
|
inline |
Definition at line 148 of file RegionLayout.h.
References vmap< Key, T, Compare >::begin(), and RegionLayout< T, Dim, MeshType >::Local_ac.
|
inline |
Definition at line 155 of file RegionLayout.h.
References DomainMap< Key, T, Touches, Contains, Split >::begin(), and RegionLayout< T, Dim, MeshType >::Remote_ac.
Referenced by operator<<().
|
inline |
Definition at line 157 of file RegionLayout.h.
References DomainMap< Key, T, Touches, Contains, Split >::begin(), and RegionLayout< T, Dim, MeshType >::Remote_ac.
void RegionLayout< T, Dim, MeshType >::changeDomain | ( | const NDIndex< Dim > & | domain, |
int | vnodes = -1 |
||
) |
Definition at line 401 of file RegionLayout.hpp.
References Dim.
void RegionLayout< T, Dim, MeshType >::changeDomain | ( | const NDRegion< T, Dim > & | domain, |
int | vnodes = -1 |
||
) |
Definition at line 444 of file RegionLayout.hpp.
void RegionLayout< T, Dim, MeshType >::changeDomain | ( | FieldLayout< Dim > & | fl | ) |
Definition at line 486 of file RegionLayout.hpp.
References Dim, and FieldLayout< Dim >::getDomain().
|
inline |
Definition at line 231 of file RegionLayout.h.
References UserList::checkinUser().
|
inline |
Definition at line 237 of file RegionLayout.h.
References UserList::checkoutUser().
NDRegion< T, Dim > RegionLayout< T, Dim, MeshType >::convert_index | ( | const NDIndex< Dim > & | ni | ) | const |
Definition at line 526 of file RegionLayout.hpp.
References Dim.
NDIndex< Dim > RegionLayout< T, Dim, MeshType >::convert_region | ( | const NDRegion< T, Dim > & | nr | ) | const |
Definition at line 572 of file RegionLayout.hpp.
|
private |
Definition at line 715 of file RegionLayout.hpp.
|
private |
Definition at line 752 of file RegionLayout.hpp.
|
private |
Definition at line 668 of file RegionLayout.hpp.
|
inline |
Definition at line 147 of file RegionLayout.h.
References vmap< Key, T, Compare >::end(), and RegionLayout< T, Dim, MeshType >::Local_ac.
Referenced by operator<<(), and BoxParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation().
|
inline |
Definition at line 149 of file RegionLayout.h.
References vmap< Key, T, Compare >::end(), and RegionLayout< T, Dim, MeshType >::Local_ac.
|
inline |
Definition at line 156 of file RegionLayout.h.
References DomainMap< Key, T, Touches, Contains, Split >::end(), and RegionLayout< T, Dim, MeshType >::Remote_ac.
Referenced by operator<<().
|
inline |
Definition at line 158 of file RegionLayout.h.
References DomainMap< Key, T, Touches, Contains, Split >::end(), and RegionLayout< T, Dim, MeshType >::Remote_ac.
|
inline |
Definition at line 226 of file RegionLayout.h.
References UserList::getUserListID().
|
inline |
Definition at line 131 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::Domain.
Referenced by operator<<(), and BoxParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation().
|
inline |
Definition at line 137 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::FLayout.
Referenced by BinaryRepartition(), and operator<<().
|
inline |
Definition at line 138 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::FLayout.
|
inline |
Definition at line 141 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::theMesh.
Referenced by BinaryRepartition().
|
inline |
Definition at line 142 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::theMesh.
|
private |
Definition at line 767 of file RegionLayout.hpp.
References Dim.
|
private |
Definition at line 788 of file RegionLayout.hpp.
References Dim.
|
inline |
Definition at line 128 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::FLayout.
Referenced by BinaryRepartition().
|
private |
Definition at line 607 of file RegionLayout.hpp.
References FieldLayout< Dim >::begin_iv(), FieldLayout< Dim >::begin_rdv(), FieldLayout< Dim >::end_iv(), FieldLayout< Dim >::end_rdv(), Unique::get(), Rnode< T, Dim >::getDomain(), and FieldLayoutUser::Repartition().
|
virtual |
Implements User.
Definition at line 912 of file RegionLayout.hpp.
References UserList::getUserListID(), and WARNMSG.
|
inline |
Definition at line 201 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::Domain.
|
virtual |
Implements FieldLayoutUser.
Definition at line 865 of file RegionLayout.hpp.
References UserList::getUserListID().
|
inline |
Definition at line 184 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::RepartitionLayout().
void RegionLayout< T, Dim, MeshType >::RepartitionLayout | ( | NDIndex< Dim > * | ni, |
NDIndex< Dim > * | nf | ||
) |
Definition at line 846 of file RegionLayout.hpp.
Referenced by BinaryRepartition(), and RegionLayout< T, Dim, MeshType >::RepartitionLayout().
|
private |
|
inline |
Definition at line 145 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::Local_ac, and vmap< Key, T, Compare >::size().
Referenced by operator<<().
|
inline |
Definition at line 152 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::Remote_ac, and DomainMap< Key, T, Touches, Contains, Split >::size().
Referenced by operator<<().
|
private |
Definition at line 694 of file RegionLayout.hpp.
References FieldLayout< Dim >::checkin().
|
private |
Definition at line 729 of file RegionLayout.hpp.
References Dim.
|
inline |
Definition at line 159 of file RegionLayout.h.
References RegionLayout< T, Dim, MeshType >::Remote_ac, and DomainMap< Key, T, Touches, Contains, Split >::touch_range().
Referenced by ParticleCashedLayout< T, Dim, Mesh >::rebuild_interaction_data(), ParticleInteractLayout< T, Dim, Mesh >::rebuild_interaction_data(), ParticleCashedLayout< T, Dim, Mesh >::swap_ghost_particles(), ParticleInteractLayout< T, Dim, Mesh >::swap_ghost_particles(), and BoxParticleCachingPolicy< T, Dim, Mesh >::updateCacheInformation().
|
private |
Definition at line 262 of file RegionLayout.h.
Referenced by RegionLayout< T, Dim, MeshType >::RegionLayout().
|
private |
Definition at line 245 of file RegionLayout.h.
Referenced by RegionLayout< T, Dim, MeshType >::getDomain(), and RegionLayout< T, Dim, MeshType >::operator==().
|
private |
Definition at line 248 of file RegionLayout.h.
Referenced by RegionLayout< T, Dim, MeshType >::getFieldLayout(), and RegionLayout< T, Dim, MeshType >::initialized().
|
private |
Definition at line 259 of file RegionLayout.h.
Referenced by RegionLayout< T, Dim, MeshType >::RegionLayout().
|
private |
Definition at line 241 of file RegionLayout.h.
Referenced by RegionLayout< T, Dim, MeshType >::begin_iv(), RegionLayout< T, Dim, MeshType >::end_iv(), and RegionLayout< T, Dim, MeshType >::size_iv().
|
private |
Definition at line 256 of file RegionLayout.h.
|
private |
Definition at line 242 of file RegionLayout.h.
Referenced by RegionLayout< T, Dim, MeshType >::begin_rdv(), RegionLayout< T, Dim, MeshType >::end_rdv(), RegionLayout< T, Dim, MeshType >::size_rdv(), and RegionLayout< T, Dim, MeshType >::touch_range_rdv().
|
staticprivate |
Definition at line 340 of file RegionLayout.h.
|
private |
Definition at line 252 of file RegionLayout.h.
Referenced by RegionLayout< T, Dim, MeshType >::getMesh().
|
private |
Definition at line 249 of file RegionLayout.h.
|
private |
Definition at line 253 of file RegionLayout.h.