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


Public Member Functions | |
| CRandomBlock2D (double, double, double, double, double, double, double, bool circ_x=false) | |
| virtual void | generate (int, unsigned int) |
| 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) |
Protected Member Functions | |
| virtual Vec3 | getAPoint () |
| virtual int | getNParts () const |
Protected Attributes | |
| double | m_maxConnDist |
Class for the generation of a 2D random lattice in a rectangular area.
| CRandomBlock2D::CRandomBlock2D | ( | double | xmin, |
| double | xmax, | ||
| double | ymin, | ||
| double | ymax, | ||
| double | rmin, | ||
| double | rmax, | ||
| double | mcd, | ||
| bool | circ_x = false |
||
| ) |
Constructor of CRandomBlock
| xmin | minimum in x-direction |
| xmax | maximum in x-direction |
| ymin | minimum in y-direction |
| ymax | maximum in y-direction |
| rmin | minimum particle radius |
| rmax | maximum particle radius |
| mcd | maximum relative distance for bond generation |
References ARandomAssembly2D::m_rmax, and ARandomAssembly2D::m_ymax.
| double CRandomBlock2D::calcPorosity | ( | ) | [virtual] |
calculate the porosity of the material
Implements ARandomAssembly.
References ARandomAssembly2D::m_ymax.
| void CRandomBlock2D::generate | ( | int | tries, |
| unsigned int | seed | ||
| ) | [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 |
Implements ARandomAssembly2D.
Reimplemented in FaultedBlock2D, CLayeredBlock2D, and CSplitBlock2D.
References ARandomAssembly2D::checkAFit(), ARandomAssembly2D::fillSpace(), insertParticle(), ARandomAssembly::m_random(), ARandomAssembly2D::m_rmax, and ARandomAssembly2D::m_ymax.
Referenced by CLayeredBlock2D::generate().


| Vec3 CRandomBlock2D::getAPoint | ( | ) | [protected, virtual] |
Generate a random point within the space of the block
Implements ARandomAssembly2D.
Reimplemented in FaultedBlock2D.
References ARandomAssembly::m_random(), and ARandomAssembly2D::m_ymax.

| vector< pair< double, double > > CRandomBlock2D::getSizeDistribution | ( | int | nbins | ) | [virtual] |
return a histogram of the particle size distribution
| nbins | number of bins |
Implements ARandomAssembly.
References ARandomAssembly2D::m_rmax.
| void CRandomBlock2D::insertParticle | ( | const SimpleParticle | P | ) | [virtual] |
Insert a particle into the internal structures
| P | the particle |
Implements ARandomAssembly2D.
References ASimpleNTable::insertParticle().
Referenced by FaultedBlock2D::generate(), and generate().


| void CRandomBlock2D::tagEdgeY | ( | int | tag1, |
| int | tag2, | ||
| double | d | ||
| ) | [virtual] |
Tag particles along x-edges
| tag1 | tag for particles along x_min |
| tag2 | tag for particles along x_max |
| d | maximum distance from the edge at which a particle gets tagged |
Implements ARandomAssembly2D.
References ARandomAssembly2D::m_ymax.
| void CRandomBlock2D::tagParticleClosestTo | ( | const Vec3 & | pos, |
| int | tag | ||
| ) | [virtual] |
Tag particle closest to a given position
| pos | the position |
| tag | the tag |
Implements ARandomAssembly2D.
References ASimpleNTable::getClosestParticleID().

| void CRandomBlock2D::writeToGeoFile | ( | const string & | filename | ) | [virtual] |
Write the particles contained in the random block into a LSM geometry file v 1.1
| filename | the name of the file |
Implements ARandomAssembly.
References ARandomAssembly2D::m_ymax.
1.7.6.1