|
ESyS-Particle
2.3.4
|
Class for the generation of a split 2D random lattice in a rectangular area. More...
#include <SplitBlock.h>


Public Member Functions | |
| CSplitBlock2D (double, double, double, double, double, double, double, bool circ_x=false) | |
| virtual | ~CSplitBlock2D () |
| virtual void | generate (int, unsigned int) |
| virtual void | tagSplit (int, int, double) |
Public Member Functions inherited from CRandomBlock2D | |
| CRandomBlock2D (double, double, double, double, double, double, double, bool circ_x=false) | |
| virtual | ~CRandomBlock2D () |
| virtual void | insertParticle (const SimpleParticle) |
| virtual void | tagParticleClosestTo (const Vec3 &, int) |
| virtual void | tagEdgeY (int, int, double) |
| virtual void | tagEdgeZ (int, int, double) |
| virtual void | writeToGeoFile (const string &) |
| virtual double | calcPorosity () |
| virtual vector< pair< double, double > > | getSizeDistribution (int) |
Public Member Functions inherited from ARandomAssembly | |
| virtual | ~ARandomAssembly () |
| virtual void | writeToVtkFile (const string &) |
Protected Attributes | |
| double | m_ysplit |
Protected Attributes inherited from CRandomBlock2D | |
| double | m_maxConnDist |
Protected Attributes inherited from ARandomAssembly2D | |
| vector< Line > | Borders |
| double | m_rmin |
| double | m_rmax |
| min/max particle radius More... | |
| double | m_xmin |
| double | m_xmax |
| double | m_ymin |
| double | m_ymax |
| x,y borders of the lattice More... | |
| bool | m_circ_x |
Protected Attributes inherited from ARandomAssembly | |
| ASimpleNTable * | m_snt |
| set< BasicInteraction, BILess > | m_iset |
| vector< SimpleParticle > | m_bpart |
Additional Inherited Members | |
Protected Member Functions inherited from CRandomBlock2D | |
| virtual Vec3 | getAPoint () |
| virtual int | getNParts () const |
Protected Member Functions inherited from ARandomAssembly2D | |
| bool | isInSpace (const Vec3 &) |
| bool | findAFit (SimpleParticle &, const vector< SimpleParticle > &, const Line &) |
| bool | findAFit (SimpleParticle &, const vector< SimpleParticle > &) |
| virtual bool | checkAFit (const SimpleParticle &) |
| virtual Line * | getClosestPlane (const SimpleParticle &) |
| void | fillSpace (int) |
Protected Member Functions inherited from ARandomAssembly | |
| double | m_random (double, double) |
| vector< SimpleParticle > | getNeighborList (const SimpleParticle &) |
| vector< SimpleParticle > | get3ClosestNeighbors (const SimpleParticle &, const vector< SimpleParticle > &) |
| vector< SimpleParticle > | getClosestNeighbors (const SimpleParticle &, int) |
| SimpleParticle | getClosestParticle (const SimpleParticle &, const vector< SimpleParticle > &) |
Static Protected Attributes inherited from ARandomAssembly | |
| static double | m_small_value =1e-7 |
Class for the generation of a split 2D random lattice in a rectangular area.
| CSplitBlock2D::CSplitBlock2D | ( | double | xmin, |
| double | xmax, | ||
| double | ymin, | ||
| double | ymax, | ||
| double | rmin, | ||
| double | rmax, | ||
| double | ysplit, | ||
| bool | circ_x = false |
||
| ) |
References ARandomAssembly2D::Borders, and m_ysplit.
|
virtual |
|
virtual |
Fill the space in the block
| tries | number of times the insertion of a particle is tried |
| seed | seed for the random number generator |
Reimplemented from CRandomBlock2D.
References ARandomAssembly2D::checkAFit(), ARandomAssembly2D::fillSpace(), ASimpleNTable::getInteractions(), CRandomBlock2D::getNParts(), CRandomBlock2D::insertParticle(), esys::lsm::bpu::iter(), ARandomAssembly::m_bpart, ARandomAssembly::m_iset, ARandomAssembly::m_random(), ARandomAssembly2D::m_rmax, ARandomAssembly2D::m_rmin, ARandomAssembly::m_snt, ARandomAssembly2D::m_xmax, ARandomAssembly2D::m_xmin, ARandomAssembly2D::m_ymax, ARandomAssembly2D::m_ymin, and m_ysplit.

|
virtual |
Tag particles along the split line
| tag1 | the tag for particles "above" the split (y>y_split) |
| tag2 | the tag for particles "below" the split (y<y_split) |
| d | maximum distance from the split line at which a particle gets tagged |
Reimplemented from ARandomAssembly.
References esys::lsm::bpu::iter(), ARandomAssembly::m_bpart, and m_ysplit.

|
protected |
Referenced by CSplitBlock2D(), generate(), and tagSplit().