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

Class for the generation of a 3D lattice with a random middle section and random rough/smooth sections of the fault surface. More...

#include <RoughPaddedBlock3d.h>

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

Public Member Functions

 CRoughPaddedBlock3D (double, double, double, double, double, double, double, double, double, double, bool circ_x=false)
void setRoughness (int, int, double, double)
virtual bool checkAFit (const SimpleParticle &)
virtual void generate (int, unsigned int)
- Public Member Functions inherited from CPaddedBlock3D
 CPaddedBlock3D (double, double, double, double, double, double, double, double, double, double, int, bool circ_x=false)
- Public Member Functions inherited from CSplitBlock3D
 CSplitBlock3D (double, double, double, double, double, double, double, double, double, int, bool circ_x=false, bool rough=false)
virtual void tagSplit (int, int, double)
- Public Member Functions inherited from CRandomBlock3D
 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 RectPatch getClosestPatch (const SimpleParticle &, double)
virtual Plane getClosestPlane (const SimpleParticle &)
- Protected Member Functions inherited from CPaddedBlock3D
virtual Vec3 getAPoint ()
void generate_regular_padding ()

Protected Attributes

double m_rough_xres
double m_rough_yres
double m_rough_depth
double m_rough_prob
vector< RectPatchm_fault
- Protected Attributes inherited from CPaddedBlock3D
double m_pad_size
- Protected Attributes inherited from CSplitBlock3D
double m_ysplit
int m_dir
- Protected Attributes inherited from CRandomBlock3D
double m_maxConnDist
- Protected Attributes inherited from ARandomAssembly3D
vector< PlaneBorders
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
- 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

Class for the generation of a 3D lattice with a random middle section and random rough/smooth sections of the fault surface.

Author
Steffen Abe
Revision:
Date:

Constructor & Destructor Documentation

CRoughPaddedBlock3D::CRoughPaddedBlock3D ( double  xmin,
double  xmax,
double  ymin,
double  ymax,
double  zmin,
double  zmax,
double  rmin,
double  rmax,
double  ysplit,
double  pad,
bool  circ_x = false 
)

Constructor of CPaddedBlock3d

Parameters
xminminimum in x-direction
xmaxmaximum in x-direction
yminminimum in y-direction
ymaxmaximum in y-direction
zminminimum in z-direction
zmaxmaximum in z-direction
rminminimum particle radius
rmaxmaximum particle radius
ysplit
pad
circ_x

Member Function Documentation

bool CRoughPaddedBlock3D::checkAFit ( const SimpleParticle P)
virtual

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

Parameters
Pothe particle

Reimplemented from ARandomAssembly3D.

Referenced by generate().

Here is the caller graph for this function:

void CRoughPaddedBlock3D::generate ( int  tries,
unsigned int  seed 
)
virtual

generate the particle packing

Parameters
triesnumber of attempts to insert particle before giving up
seedrandom seed

Reimplemented from CPaddedBlock3D.

References checkAFit(), ARandomAssembly3D::fillSpace(), CPaddedBlock3D::generate_regular_padding(), CRandomBlock3D::insertParticle(), ARandomAssembly::m_random(), ARandomAssembly3D::m_rmax, and ARandomAssembly3D::m_zmax.

Here is the call graph for this function:

RectPatch CRoughPaddedBlock3D::getClosestPatch ( const SimpleParticle Po,
double  sep0 
)
protectedvirtual

Get closest fault patch

Parameters
Pothe particle

References RectPatch::sep().

Referenced by getClosestPlane().

Here is the call graph for this function:

Here is the caller graph for this function:

Plane CRoughPaddedBlock3D::getClosestPlane ( const SimpleParticle Po)
protectedvirtual

Get closest plane

Parameters
Pothe particle

Reimplemented from ARandomAssembly3D.

References getClosestPatch(), RectPatch::getPlane(), RectPatch::sep(), and Plane::sep().

Here is the call graph for this function:

void CRoughPaddedBlock3D::setRoughness ( int  nx,
int  nz,
double  depth,
double  prob 
)

setup fault roughness

Parameters
nxx-resolution
nzz-resolution
depthamount of roughness in the rough patches
probprobability of a patch to be rough

References ARandomAssembly::m_random(), and ARandomAssembly3D::m_zmax.

Here is the call graph for this function:


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