ESyS-Particle  4.0.1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ARandomAssembly2D Class Reference

Abstract base class for random assemblies, to be used for initialization of random lattices. More...

#include <RandomAssembly2D.h>

Inheritance diagram for ARandomAssembly2D:
Inheritance graph
[legend]
Collaboration diagram for ARandomAssembly2D:
Collaboration graph
[legend]

Public Member Functions

virtual void generate (int, unsigned int)=0
virtual void insertParticle (const SimpleParticle)=0
virtual void tagParticleClosestTo (const Vec3 &, int)=0
virtual void tagEdgeY (int, int, double)=0
- Public Member Functions inherited from ARandomAssembly
virtual void tagEdgeZ (int, int, double)=0
virtual void tagSplit (int, int, double)
virtual void writeToGeoFile (const string &)=0
virtual void writeToVtkFile (const string &)
virtual double calcPorosity ()=0
virtual vector< pair< double,
double > > 
getSizeDistribution (int)=0

Protected Member Functions

virtual Vec3 getAPoint ()=0
bool isInSpace (const Vec3 &)
bool findAFit (SimpleParticle &, const vector< SimpleParticle > &, const Line &)
bool findAFit (SimpleParticle &, const vector< SimpleParticle > &)
virtual bool checkAFit (const SimpleParticle &)
virtual LinegetClosestPlane (const SimpleParticle &)
void fillSpace (int)
virtual int getNParts () const =0
- Protected Member Functions inherited from ARandomAssembly
double m_random (double, double)
vector< SimpleParticlegetNeighborList (const SimpleParticle &)
vector< SimpleParticleget3ClosestNeighbors (const SimpleParticle &, const vector< SimpleParticle > &)
vector< SimpleParticlegetClosestNeighbors (const SimpleParticle &, int)
SimpleParticle getClosestParticle (const SimpleParticle &, const vector< SimpleParticle > &)

Protected Attributes

vector< LineBorders
double m_rmin
double m_rmax
 min/max particle radius
double m_xmin
double m_xmax
double m_ymin
double m_ymax
 x,y borders of the lattice
bool m_circ_x
- Protected Attributes inherited from ARandomAssembly
ASimpleNTablem_snt
set< BasicInteraction, BILessm_iset
vector< SimpleParticlem_bpart

Additional Inherited Members

- Static Protected Attributes inherited from ARandomAssembly
static double m_small_value = 1e-7

Detailed Description

Abstract base class for random assemblies, to be used for initialization of random lattices.

Author
Steffen Abe $Revision$ $Date$

Member Function Documentation

bool ARandomAssembly2D::checkAFit ( const SimpleParticle Po)
protectedvirtual

check if Po is within the Space and is not crossing any boundary or overlapping with other particles.

Parameters
Pothe particle

Reimplemented in FaultedBlock2D.

References getClosestPlane(), ARandomAssembly::getNeighborList(), m_rmax, and m_ymax.

Referenced by fillSpace(), and CRandomBlock2D::generate().

Here is the call graph for this function:

Here is the caller graph for this function:

void ARandomAssembly2D::fillSpace ( int  tries)
protected

Fill the space in the skeleton after it has been seeded

Parameters
triesthe number of tries

References checkAFit(), findAFit(), ARandomAssembly::getClosestNeighbors(), getClosestPlane(), BasicCon::Info(), ARandomAssembly::m_random(), and m_rmax.

Referenced by FaultedBlock2D::generate(), and CRandomBlock2D::generate().

Here is the call graph for this function:

Here is the caller graph for this function:

bool ARandomAssembly2D::findAFit ( SimpleParticle Po,
const vector< SimpleParticle > &  NL,
const Line L 
)
protected

Find a fit for a sphere using the list of neigbor list and a plane

Parameters
Pothe particle to fit
NLthe list of neighbors
PLthe Plane
Todo:
check for at least 2 particles

References Sphere2D::FillInWP().

Referenced by fillSpace().

Here is the call graph for this function:

Here is the caller graph for this function:

bool ARandomAssembly2D::findAFit ( SimpleParticle Po,
const vector< SimpleParticle > &  NL 
)
protected

Find a fit for a sphere using the list of neigbors

Parameters
Pothe particle to fit
NLthe list of neighbors
Todo:
check for at least 3 particles

References Sphere2D::FillIn().

Here is the call graph for this function:

Line * ARandomAssembly2D::getClosestPlane ( const SimpleParticle Po)
protectedvirtual

get closest plane to a particle

Parameters
Pothe particle

Reimplemented in FaultedBlock2D.

Referenced by checkAFit(), and fillSpace().

Here is the caller graph for this function:


The documentation for this class was generated from the following files: