ESyS-Particle  2.3
GranularGougeBlock3D.h
Go to the documentation of this file.
1 // //
3 // Copyright (c) 2003-2014 by The University of Queensland //
4 // Centre for Geoscience Computing //
5 // http://earth.uq.edu.au/centre-geoscience-computing //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.opensource.org/licenses/osl-3.0.php //
10 // //
12 
13 #ifndef __ESYS_LSM_GRANULARGOUGEBLOCK3D_H
14 #define __ESYS_LSM_GRANULARGOUGEBLOCK3D_H
15 
16 // --- project includes --
17 #include "Geometry/GougeBlock3D.h"
18 
19 namespace esys {
20  namespace lsm {
21 
32  {
33  private:
34  vector<Vec3> m_grain_seeds;
35 
36  void generateSeeds(double,double,double,double,double,double);
37 
38  public:
40  virtual ~GranularGougeBlock3D();
41 
42  virtual void createInteractionSet();
43  virtual void generate();
44  //virtual void generateGrains(double,double,double,double,double,double,int,int rm_threshold=0);
45  virtual void generateGrains(double,double,double,double,double,double,int);
46  };
47 
57  {
58  private:
60  double m_tolerance;
61 
62  public:
64  bool isValid(const SimpleParticle&, const SimpleParticle&) const;
65  };
66  }
67 }
68 
69 #endif // __ESYS_LSM_GRANULARGOUGEBLOCK3D_H
Class to generate a 3d block of material consisting of a granular gouge between two solid blocks...
Definition: GranularGougeBlock3D.h:31
GranularGougeBlock3D(const GougeBlockPrms &prms)
Definition: GranularGougeBlock3D.cpp:31
Definition: CheckPointable.cpp:16
virtual void createInteractionSet()
Definition: GranularGougeBlock3D.cpp:130
Block consisting of regular padding, random layer and gouge.
Definition: GougeBlock3D.h:168
Definition: GougeBlock3D.h:91
double m_tolerance
Definition: GranularGougeBlock3D.h:60
virtual ~GranularGougeBlock3D()
Definition: GranularGougeBlock3D.cpp:39
const GranularGougeBlock3D * m_pGougeBlock
Definition: GranularGougeBlock3D.h:59
GranularInteractionValidator(const GranularGougeBlock3D &, double)
Definition: GranularGougeBlock3D.cpp:170
virtual void generateGrains(double, double, double, double, double, double, int)
Definition: GranularGougeBlock3D.cpp:98
bool isValid(const SimpleParticle &, const SimpleParticle &) const
Definition: GranularGougeBlock3D.cpp:177
Definition: SimpleParticle.h:24
vector< Vec3 > m_grain_seeds
seed points for grain generation algorithm
Definition: GranularGougeBlock3D.h:34
void generateSeeds(double, double, double, double, double, double)
Definition: GranularGougeBlock3D.cpp:54
virtual void generate()
Definition: GranularGougeBlock3D.cpp:154
Used to check the validity of an interaction in a GranularGougeBlock.
Definition: GranularGougeBlock3D.h:56