ESyS-Particle
4.0.1
|
Class for the generation of a 3D lattice with a random middle section in a rectangular area. More...
#include <PaddedBlock3D.h>
Public Member Functions | |
CPaddedBlock3D (double, double, double, double, double, double, double, double, double, double, int, bool circ_x=false) | |
virtual void | generate (int, unsigned int) |
![]() | |
CSplitBlock3D (double, double, double, double, double, double, double, double, double, int, bool circ_x=false, bool rough=false) | |
virtual void | tagSplit (int, int, double) |
![]() | |
CRandomBlock3D (double, double, double, double, double, double, double, double, double, bool, bool is_bonded=true) | |
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 () |
void | generate_regular_padding () |
Protected Attributes | |
double | m_pad_size |
![]() | |
double | m_ysplit |
int | m_dir |
![]() | |
double | m_maxConnDist |
![]() | |
vector< Plane > | Borders |
double | m_rmin |
double | m_rmax |
min/max particle radius | |
double | m_xmin |
double | m_xmax |
double | m_ymin |
double | m_ymax |
double | m_zmin |
double | m_zmax |
x,y,z borders of the lattice | |
bool | m_circ_x |
![]() | |
ASimpleNTable * | m_snt |
set< BasicInteraction, BILess > | m_iset |
vector< SimpleParticle > | m_bpart |
Class for the generation of a 3D lattice with a random middle section in a rectangular area.
CPaddedBlock3D::CPaddedBlock3D | ( | double | xmin, |
double | xmax, | ||
double | ymin, | ||
double | ymax, | ||
double | zmin, | ||
double | zmax, | ||
double | rmin, | ||
double | rmax, | ||
double | ysplit, | ||
double | pad, | ||
int | dir, | ||
bool | circ_x = false |
||
) |
Constructor of CPaddedBlock3d
xmin | minimum in x-direction |
xmax | maximum in x-direction |
ymin | minimum in y-direction |
ymax | maximum in y-direction |
zmin | minimum in z-direction |
zmax | maximum in z-direction |
rmin | minimum particle radius |
rmax | maximum particle radius |
|
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 CSplitBlock3D.
Reimplemented in CRoughPaddedBlock3D.
References ARandomAssembly3D::checkAFit(), ARandomAssembly3D::fillSpace(), generate_regular_padding(), CRandomBlock3D::insertParticle(), ARandomAssembly::m_random(), ARandomAssembly3D::m_rmax, and ARandomAssembly3D::m_zmax.
|
protected |
generate regular padding sections
References ARandomAssembly3D::checkAFit(), CRandomBlock3D::insertParticle(), ARandomAssembly3D::m_rmax, and ARandomAssembly3D::m_zmax.
Referenced by generate(), and CRoughPaddedBlock3D::generate().
|
protectedvirtual |
Generate a random point within the space of the random part of the block
Reimplemented from CRandomBlock3D.
References ARandomAssembly::m_random(), and ARandomAssembly3D::m_zmax.