ESyS-Particle
4.0.1
|
Class to generate a 3d block of material consisting of a granular gouge between two solid blocks. More...
#include <GranularGougeBlock3D.h>
Public Member Functions | |
GranularGougeBlock3D (const GougeBlockPrms &prms) | |
virtual | ~GranularGougeBlock3D () |
virtual void | createInteractionSet () |
virtual void | generate () |
virtual void | generateGrains (double, double, double, double, double, double, int, int rm_threshold=0) |
Class to generate a 3d block of material consisting of a granular gouge between two solid blocks.
esys::lsm::GranularGougeBlock3D::GranularGougeBlock3D | ( | const GougeBlockPrms & | prms | ) |
Constructor for GranularGougeBlock3D. Do nothing and call the base class constructor (GougeBlock3D)
prms | the GougeBlock3D parameters |
esys::lsm::GranularGougeBlock3D::~GranularGougeBlock3D | ( | ) | [virtual] |
Destructor. No dynamically allocated data in class -> do nothing
void esys::lsm::GranularGougeBlock3D::createInteractionSet | ( | ) | [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.
void esys::lsm::GranularGougeBlock3D::generateGrains | ( | double | sdx, |
double | sdy, | ||
double | sdz, | ||
double | rdx, | ||
double | rdy, | ||
double | rdz, | ||
int | min_tag, | ||
int | rm_threshold = 0 |
||
) | [virtual] |
Generate composite grains from the existing gouge particles by randomly distributing seed points within the gouge region, then tagging all particles closest to the same seed point with the same tag.
sdx | seed density, i.e. average distance between seeds in x-direction |
sdy | seed density in y-direction |
sdz | seed density in z-direction |
rdx | random variation of seed points in x-direction |
rdy | random variation of seed points in y-direction |
rdz | random variation of seed points in z-direction |
min_tag | minimum tag to be used in order not to collide with allready used tags |
rm_threshold | grains with less then rm_threshold particles get removed. Defaults to 0 |