ESyS-Particle  2.3.4
esys::lsm::CubicBlockIterator Class Reference

#include <CubicBlockIterator.h>

Inheritance diagram for esys::lsm::CubicBlockIterator:
Collaboration diagram for esys::lsm::CubicBlockIterator:

Public Member Functions

 CubicBlockIterator ()
 
 CubicBlockIterator (int numI, int numJ, int numK, double sphereRadius, ClosePackOrientation orientation=DEFAULT_ORIENT)
 
- Public Member Functions inherited from esys::lsm::ClosePackIterator
 ClosePackIterator ()
 
 ClosePackIterator (int numI, int numJ, int numK, double sphereRadius, ClosePackOrientation orientation=DEFAULT_ORIENT)
 
bool hasNext () const
 
Vec3 next ()
 
double getRadius () const
 

Additional Inherited Members

- Static Public Attributes inherited from esys::lsm::ClosePackIterator
static const double SQRT_1_OVER_3 = 1.0/sqrt(3.0)
 
static const double SQRT_8_OVER_3 = sqrt(8.0/3.0)
 
static const double SQRT_3 = sqrt(3.0)
 
- Protected Types inherited from esys::lsm::ClosePackIterator
typedef TmplMatrix< 3, 6, 6 > OffsetMatrix
 
- Protected Member Functions inherited from esys::lsm::ClosePackIterator
void incrementDimIndex ()
 
double getOffset (int i) const
 
const Vec3getMinPt () const
 
void setMinPt (const Vec3 &pt) const
 
void setDimRepeat (const Vec3L &dimRepeat)
 
void setOffsetMatrix (const OffsetMatrix &offsetMatrix)
 

Detailed Description

Class for iterating over the centre-points of spheres arranged in a cubic-close-packed (face-centred-close packed).

Constructor & Destructor Documentation

◆ CubicBlockIterator() [1/2]

esys::lsm::CubicBlockIterator::CubicBlockIterator ( )
inline

Creates default empty iterator.

◆ CubicBlockIterator() [2/2]

esys::lsm::CubicBlockIterator::CubicBlockIterator ( int  numI,
int  numJ,
int  numK,
double  sphereRadius,
ClosePackOrientation  orientation = DEFAULT_ORIENT 
)
inline

Creates an iterator which will iterate over numI*numJ*numK centre points of spheres with radius sphereRadius.

Parameters
numInumber of spheres in the i direction.
numJnumber of spheres in the j direction.
numKnumber of spheres in the k direction.
sphereRadiusradius of spheres in the packing.
orientationspecifies the axis alignment of layers.

References esys::lsm::ClosePackIterator::getRadius(), esys::lsm::ClosePackIterator::setDimRepeat(), esys::lsm::ClosePackIterator::setOffsetMatrix(), and esys::lsm::ClosePackIterator::SQRT_1_OVER_3.

Here is the call graph for this function:

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