ESyS-Particle  4.0.1
Public Types | Public Member Functions | Protected Member Functions | List of all members
esys::lsm::CircularNeighbourTable< TmplParticle > Class Template Reference
Inheritance diagram for esys::lsm::CircularNeighbourTable< TmplParticle >:
Inheritance graph
[legend]
Collaboration diagram for esys::lsm::CircularNeighbourTable< TmplParticle >:
Collaboration graph
[legend]

Public Types

typedef NeighbourTable
< TmplParticle > 
Inherited
typedef Inherited::Particle Particle
typedef Inherited::ParticleVector ParticleVector
typedef std::set< typename
ParticleVector::value_type > 
ParticleSet
typedef boost::object_pool
< Particle > 
ParticlePool
typedef boost::shared_ptr
< ParticlePool > 
ParticlePoolPtr
typedef std::vector< bool > BoolVector
- Public Types inherited from esys::lsm::NeighbourTable< TmplParticle >
typedef TmplParticle Particle
typedef std::vector< Particle * > ParticleVector
typedef ForwardIterator
< ParticleVector > 
ParticleIterator
typedef ForwardConstIterator
< ParticleVector > 
ParticleConstIterator

Public Member Functions

 CircularNeighbourTable (const BoundingBox &bBox, double gridSpacing, const BoolVector &periodicDimensions=BoolVector(3, false), double circBorderWidth=0.0)
 CircularNeighbourTable (const BoundingBox &bBox, double gridSpacing, ParticlePoolPtr particlePoolPtr, const BoolVector &periodicDimensions=BoolVector(3, false), double circBorderWidth=0.0)
void checkPeriodicDimensions ()
void setCircularBorderWidth (double circBorderWidth, double gridSpacing)
void setCircularBorderWidth (double circBorderWidth)
void resize (const BoundingBox &bBox, double gridSpacing, double circBorderWidth)
void resize (const BoundingBox &bBox, double gridSpacing)
void insertClone (Particle *pParticle, const Vec3 &newPosition)
bool havePeriodicDimensions () const
Vec3 getModdedPosn (const Vec3 &posn) const
void insert (Particle *pParticle)
void insert (Particle &particle)
size_t getNumClonedParticles () const
size_t getNumParticles () const
const BoolVector & getPeriodicDimensions () const
- Public Member Functions inherited from esys::lsm::NeighbourTable< TmplParticle >
 NeighbourTable (const BoundingBox &bBox, double gridSpacing)
 NeighbourTable (const NeighbourTable &nTable)
void clear ()
double getGridSpacing () const
const Vec3LgetDimensions () const
const BoundingBoxgetBBox () const
const Vec3getMinPt () const
size_t size () const
int getScalarIndex (int xIdx, int yIdx, int zIdx) const
int getScalarIndex (const Vec3L &index) const
int getScalarIndex (const Vec3 &pt) const
const Vec3LgetMinVecIndex () const
const Vec3LgetMaxVecIndex () const
Vec3L getVecIndex (const Vec3 &pt) const
ParticleVector getNeighbourVector (const Vec3 &pt, double radius) const
ParticleVector getUniqueNeighbourVector (const Vec3 &pt, double radius) const
ParticleVector getNeighbourVector (const Vec3 &pt) const
ParticleIterator getParticleIterator ()
ParticleConstIterator getParticleIterator () const

Protected Member Functions

bool isClone (Particle *p) const
ParticleVector getNonClonedParticles ()
void clearClonedParticles ()
- Protected Member Functions inherited from esys::lsm::NeighbourTable< TmplParticle >
void insertInTable (Particle *pParticle, const Vec3L &minIdx, const Vec3L &maxIdx)
void addInserted (Particle *pParticle)
int getNumCells () const
ParticleVector getInsertedParticles () const
void clearAndRecomputeGrid (const BoundingBox &bBox, double gridSpacing)

The documentation for this class was generated from the following files: