ESyS-Particle  2.3.4
esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap > Class Template Reference

#include <RandomBoxPacker.h>

Inheritance diagram for esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >:
Collaboration diagram for esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >:

Classes

class  StufferTraits
 

Public Types

typedef TmplCubicBoxPackerWrap< TmplParticleGenerator >::CubicBoxPackerBase Inherited
 
typedef Inherited::ParticleGenerator ParticleGenerator
 
typedef Inherited::ParticleGeneratorPtr ParticleGeneratorPtr
 
typedef Inherited::Particle Particle
 
typedef Inherited::NTable NTable
 
typedef Inherited::NTablePtr NTablePtr
 
typedef NTable::ParticleVector ParticleVector
 
typedef Inherited::ParticlePool ParticlePool
 
typedef Inherited::ParticlePoolPtr ParticlePoolPtr
 
typedef std::vector< Plane3DPlaneVector
 
typedef FittedParticleIterator< StufferTraitsStuffedParticleIterator
 

Public Member Functions

 RandomBoxPacker (ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures)
 
 RandomBoxPacker (ParticleGeneratorPtr particleGeneratorPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures, const PlaneVector &fitPlaneVector)
 
virtual ~RandomBoxPacker ()
 
PlaneVector getDefaultFitPlaneVector () const
 
bool particleIsValid (const Particle &particle) const
 
virtual void generate ()
 
double getRandom (double min, double max) const
 
Vec3 getRandomPoint () const
 
ParticleVector getClosestNeighbours (const Particle &particle, int numClosest)
 
int getMaxInsertionFailures () const
 
void generateRandomFill ()
 
const PlaneVectorgetFitPlaneVector () const
 
Plane3D getClosestFitPlane (const Particle &particle) const
 

Private Attributes

PlaneVector m_fitPlaneVector
 
int m_maxInsertionFailures
 

Member Typedef Documentation

◆ Inherited

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef TmplCubicBoxPackerWrap<TmplParticleGenerator>::CubicBoxPackerBase esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::Inherited

◆ NTable

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef Inherited::NTable esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::NTable

◆ NTablePtr

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef Inherited::NTablePtr esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::NTablePtr

◆ Particle

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef Inherited::Particle esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::Particle

◆ ParticleGenerator

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef Inherited::ParticleGenerator esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::ParticleGenerator

◆ ParticleGeneratorPtr

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef Inherited::ParticleGeneratorPtr esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::ParticleGeneratorPtr

◆ ParticlePool

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef Inherited::ParticlePool esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::ParticlePool

◆ ParticlePoolPtr

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef Inherited::ParticlePoolPtr esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::ParticlePoolPtr

◆ ParticleVector

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef NTable::ParticleVector esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::ParticleVector

◆ PlaneVector

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef std::vector<Plane3D> esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::PlaneVector

◆ StuffedParticleIterator

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
typedef FittedParticleIterator<StufferTraits> esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::StuffedParticleIterator

Constructor & Destructor Documentation

◆ RandomBoxPacker() [1/2]

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::RandomBoxPacker ( ParticleGeneratorPtr  particleGeneratorPtr,
ParticlePoolPtr  particlePoolPtr,
NTablePtr  nTablePtr,
const BoundingBox bBox,
const BoolVector periodicDimensions,
double  tolerance,
double  cubicPackRadius,
int  maxInsertionFailures 
)

◆ RandomBoxPacker() [2/2]

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::RandomBoxPacker ( ParticleGeneratorPtr  particleGeneratorPtr,
ParticlePoolPtr  particlePoolPtr,
NTablePtr  nTablePtr,
const BoundingBox bBox,
const BoolVector periodicDimensions,
double  tolerance,
double  cubicPackRadius,
int  maxInsertionFailures,
const PlaneVector fitPlaneVector 
)

◆ ~RandomBoxPacker()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::~RandomBoxPacker
virtual

Member Function Documentation

◆ generate()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
void esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::generate
virtual

Referenced by esys::lsm::exportPacker().

Here is the caller graph for this function:

◆ generateRandomFill()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
void esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::generateRandomFill

◆ getClosestFitPlane()

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
Plane3D esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::getClosestFitPlane ( const Particle particle) const

◆ getClosestNeighbours()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
RandomBoxPacker< TPartGen, TCubicPackWrap >::ParticleVector esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::getClosestNeighbours ( const Particle particle,
int  numClosest 
)

◆ getDefaultFitPlaneVector()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
RandomBoxPacker< TPartGen, TCubicPackWrap >::PlaneVector esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::getDefaultFitPlaneVector

References getBBox().

Referenced by esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::RandomBoxPacker().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFitPlaneVector()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
const RandomBoxPacker< TPartGen, TCubicPackWrap >::PlaneVector & esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::getFitPlaneVector

◆ getMaxInsertionFailures()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
int esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::getMaxInsertionFailures

◆ getRandom()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
double esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::getRandom ( double  min,
double  max 
) const

◆ getRandomPoint()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
Vec3 esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::getRandomPoint

References getBBox().

Here is the call graph for this function:

◆ particleIsValid()

template<typename TPartGen , template< typename TTPartGen > class TCubicPackWrap>
bool esys::lsm::RandomBoxPacker< TPartGen, TCubicPackWrap >::particleIsValid ( const Particle particle) const

Member Data Documentation

◆ m_fitPlaneVector

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
PlaneVector esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::m_fitPlaneVector
private

◆ m_maxInsertionFailures

template<typename TmplParticleGenerator , template< typename TmplPartGen > class TmplCubicBoxPackerWrap>
int esys::lsm::RandomBoxPacker< TmplParticleGenerator, TmplCubicBoxPackerWrap >::m_maxInsertionFailures
private

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