FreePOOMA
2.4.1
|
UniformLayout is a very simple particle layout class that is used to determine where particles will be located in a parallel environment. More...
#include <UniformLayout.h>
Public Types | |
typedef UniformLayout | This_t |
typedef PatchSwapLayout< This_t > | Base_t |
typedef Base_t::Size_t | Size_t |
typedef Base_t::AmountArray_t | AmountArray_t |
typedef Base_t::MoveArray_t | MoveArray_t |
Public Member Functions | |
UniformLayout () | |
UniformLayout (int numPatches) | |
UniformLayout (const This_t &s) | |
This_t & | operator= (const This_t &s) |
void | initialize (int numPatches) |
void | initialize (const This_t &s) |
~UniformLayout () | |
bool | initialized () const |
int | patchesGlobal () const |
int | patchesLocal () const |
int | patchesRemote () const |
template<class AL > | |
void | initializeAttributeLayout (AL &attriblayout) |
template<class Attr > | |
Size_t | findPatchNumber (int lid, int gid, const Attr &, MoveArray_t &movepid, AmountArray_t &moveamount) |
template<class Out > | |
void | print (Out &o) const |
UniformLayout is a very simple particle layout class that is used to determine where particles will be located in a parallel environment.
UniformLayout simply tries to keep the same number of particles on each patch. UniformLayout is a PatchSwapLayout, and inherits the main "swap" routine from that class. It provides a "findPatchNumber" routine that calculates patch numbers based on getting an equal number of particles on each patch.
typedef UniformLayout UniformLayout::This_t |
Reimplemented from PatchSwapLayout< UniformLayout >.
typedef PatchSwapLayout<This_t> UniformLayout::Base_t |
typedef Base_t::Size_t UniformLayout::Size_t |
Reimplemented from PatchSwapLayout< UniformLayout >.
Reimplemented from PatchSwapLayout< UniformLayout >.
Reimplemented from PatchSwapLayout< UniformLayout >.
UniformLayout::UniformLayout | ( | ) | [inline] |
UniformLayout::UniformLayout | ( | int | numPatches | ) | [inline] |
References Pooma::context(), and Pooma::contexts().
UniformLayout::UniformLayout | ( | const This_t & | s | ) | [inline] |
UniformLayout::~UniformLayout | ( | ) | [inline] |
void UniformLayout::initialize | ( | int | numPatches | ) | [inline] |
References Pooma::context(), and Pooma::contexts().
void UniformLayout::initialize | ( | const This_t & | s | ) | [inline] |
bool UniformLayout::initialized | ( | ) | const [inline] |
int UniformLayout::patchesGlobal | ( | ) | const [inline] |
Referenced by findPatchNumber().
int UniformLayout::patchesLocal | ( | ) | const [inline] |
int UniformLayout::patchesRemote | ( | ) | const [inline] |
void UniformLayout::initializeAttributeLayout | ( | AL & | attriblayout | ) | [inline] |
References PAssert.
Size_t UniformLayout::findPatchNumber | ( | int | lid, |
int | gid, | ||
const Attr & | , | ||
MoveArray_t & | movepid, | ||
AmountArray_t & | moveamount | ||
) | [inline] |
void UniformLayout::print | ( | Out & | o | ) | const [inline] |
Referenced by operator<<().