ESyS-Particle
4.0.1
|
Block of gouge consisting of spherical aggregate grains. More...
#include <SphAggGougeBlock.h>
Public Types | |
typedef boost::shared_ptr < SphereBlockGenerator > | SBG_ptr |
Public Member Functions | |
SphAggGougeBlock (const GougeBlockPrms &, double, double, int) | |
virtual void | generate () |
template<typename TmplVisitor > | |
void | visitParticles (TmplVisitor &) |
template<typename TmplVisitor > | |
void | visitParticles (TmplVisitor &) const |
Protected Member Functions | |
void | generateMacroGrains () |
void | fillMacroGrains () |
void | setupNT2 () |
void | createInteractionSet () |
virtual void | createGougeBlockGenerators () |
Protected Attributes | |
double | m_min_rad_grain |
double | m_max_rad_grain |
vector< SimpleParticle > | m_macro_grains |
NTablePtr | m_nTablePtr2 |
ParticlePoolPtr | m_particlePoolPtr2 |
GeneratorPtr | m_grainGen |
vector< SBG_ptr > | m_grainParticleGen |
int | m_min_grain_tag |
Block of gouge consisting of spherical aggregate grains.
esys::lsm::SphAggGougeBlock::SphAggGougeBlock | ( | const GougeBlockPrms & | params, |
double | minRadGrain, | ||
double | maxRadGrain, | ||
int | minGrainTag | ||
) |
constructor
params | the general gouge parameters |
minRadGrain | minimum radius of the macro grains |
maxRadGrain | maximum radius of the macro grains |
minGrainTag | minimum tag for grains |
void esys::lsm::SphAggGougeBlock::createGougeBlockGenerators | ( | ) | [protected, virtual] |
create block generators for gouge region -> do nothing
Reimplemented from esys::lsm::GougeBlock3D.
void esys::lsm::SphAggGougeBlock::createInteractionSet | ( | ) | [protected, virtual] |
Create interaction set. Changed from base class by using a different validator which allows links between particles with the same tag, i.e. belonging to the same composite grain. Refactor ?
Reimplemented from esys::lsm::GougeBlock3D.
Referenced by generate().
void esys::lsm::SphAggGougeBlock::fillMacroGrains | ( | ) | [protected] |
helper function for generate - fill each generated macro sphere with smaller particles
Referenced by generate().
void esys::lsm::SphAggGougeBlock::generate | ( | ) | [virtual] |
generate particle packing
Reimplemented from esys::lsm::GougeBlock3D.
References createInteractionSet(), fillMacroGrains(), generateMacroGrains(), and setupNT2().
void esys::lsm::SphAggGougeBlock::generateMacroGrains | ( | ) | [protected] |
helper function for generate - setup inital sphere packing for macro grains
Referenced by generate().
void esys::lsm::SphAggGougeBlock::setupNT2 | ( | ) | [protected] |
helper function for generate - setup the 2nd NTable (for the macro grains)
Referenced by generate().