ESyS-Particle  2.3
esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection > Class Template Reference

#include <GougeConfig.h>

Inheritance diagram for esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >:
Collaboration diagram for esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >:

Classes

class  ConnectionCmp
 
class  ConnectionValidator
 
class  GeoConnectionWriter
 
class  GeoParticleWriter
 
class  IdCompare
 

Public Types

typedef TmplConnection Connection
 
typedef TmplGrainRandomBoxPacker GrainRandomPacker
 
typedef boost::shared_ptr
< GrainRandomPacker
GrainRandomPackerPtr
 
typedef
GrainRandomPacker::ParticleGrainGen 
ParticleGrainGen
 
typedef GougeConfigPrms
< ParticleGrainGen
GougeConfPrms
 
typedef
GougeConfPrms::GougePackingInfoVector 
GougePackingInfoVector
 
typedef GrainRandomPacker::Particle Particle
 
typedef
GrainRandomPacker::ParticleIterator 
ParticleIterator
 
typedef
GrainRandomPacker::ParticleConstIterator 
ParticleConstIterator
 
typedef
GrainRandomPacker::ParticleCollection 
ParticleCollection
 
typedef GrainRandomPacker::Grain Grain
 
typedef
GrainRandomPacker::GrainIterator 
GrainIterator
 
typedef
GrainRandomPacker::GrainConstIterator 
GrainConstIterator
 
typedef
GrainRandomPacker::GrainCollection 
GrainCollection
 
typedef
GrainRandomPacker::PackerBase 
APacker
 
typedef
GrainRandomPacker::BoxPackerBase 
ABoxPacker
 
typedef ConstRadiusGen< ParticleRegRadiusGen
 
typedef CubicBoxPacker
< RegRadiusGen, ABoxPacker
RegBoxPacker
 
typedef
RegBoxPacker::ParticleGeneratorPtr 
RegRadiusGenPtr
 
typedef TmplParticleRandomBoxPacker RndBoxPacker
 
typedef
RndBoxPacker::ParticleGenerator 
RndRadiusGen
 
typedef
RndBoxPacker::ParticleGeneratorPtr 
RndRadiusGenPtr
 
typedef GrainRandomPacker::NTable NTable
 
typedef
GrainRandomPacker::NTablePtr 
NTablePtr
 
typedef boost::shared_ptr
< APacker
GeneratorPtr
 
typedef std::vector< GeneratorPtrGeneratorPtrVector
 
typedef std::vector
< GrainRandomPackerPtr
GrainRndPackerPtrVector
 
typedef
GrainRandomPacker::ParticlePool 
ParticlePool
 
typedef
GrainRandomPacker::ParticlePoolPtr 
ParticlePoolPtr
 
typedef
GrainRandomPacker::GrainPool 
GrainPool
 
typedef
GrainRandomPacker::GrainPoolPtr 
GrainPoolPtr
 
typedef std::set< Connection,
ConnectionCmp
ConnectionSet
 
typedef DistConnections
< Particle, Connection
ConnectionFinder
 

Public Member Functions

 GougeConfig (const GougeConfPrms &prms)
 
virtual ~GougeConfig ()
 
virtual void generate ()
 
int getNumParticles () const
 
int getNumGrains () const
 
int getNumConnections () const
 
const GrainRndPackerPtrVectorgetGougeGeneratorVector () const
 
GrainRndPackerPtrVectorgetGougeGeneratorVector ()
 
const GeneratorPtrVectorgetFaultGeneratorVector () const
 
bool isGougeParticle (const Particle &particle) const
 
bool areInDifferentFaultBlocks (const Particle &p1, const Particle &p2) const
 
virtual void write (std::ostream &oStream) const
 
void writeToFile (const std::string &fileName) const
 
void tagGougeParticles (int tag)
 
void tagRndBlockParticles (int tag)
 
void tagDrivingPlateParticles (int minDrivingTag, int maxDrivingTag, double distanceFromBBoxEdge)
 
virtual void createConnectionSet ()
 
const ConnectionSetgetConnectionSet () const
 
GrainCollection getGrainCollection ()
 
ParticleCollection getParticleCollection ()
 
template<typename TmplVisitor >
void visitParticles (TmplVisitor &visitor)
 
template<typename TmplVisitor >
void visitParticles (const TmplVisitor &visitor) const
 
template<typename TmplVisitor >
void visitConnections (TmplVisitor &visitor) const
 
const GougeConfPrmsgetPrms () const
 

Protected Member Functions

void createRegularBlockGenerators ()
 
void createFaultBlockGenerators ()
 
virtual void createGougeConfigGenerators ()
 

Protected Attributes

NTablePtr m_nTablePtr
 
GougeConfPrms m_prms
 
ConnectionSet m_connectionSet
 
GrainRndPackerPtrVector m_gougeGenPtrVector
 
GeneratorPtrVector m_genPtrVector
 
ParticlePoolPtr m_particlePoolPtr
 
GrainPoolPtr m_grainPoolPtr
 

Private Attributes

GeneratorPtrVector m_regularGenPtrVector
 
GeneratorPtrVector m_faultGenPtrVector
 

Member Typedef Documentation

template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::BoxPackerBase esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ABoxPacker
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::PackerBase esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::APacker
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef TmplConnection esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::Connection
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef DistConnections<Particle,Connection> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ConnectionFinder
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef std::set<Connection,ConnectionCmp> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ConnectionSet
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef boost::shared_ptr<APacker> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GeneratorPtr
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef std::vector<GeneratorPtr> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GeneratorPtrVector
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GougeConfigPrms<ParticleGrainGen> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GougeConfPrms
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GougeConfPrms::GougePackingInfoVector esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GougePackingInfoVector
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::Grain esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::Grain
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::GrainCollection esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GrainCollection
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::GrainConstIterator esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GrainConstIterator
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::GrainIterator esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GrainIterator
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::GrainPool esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GrainPool
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::GrainPoolPtr esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GrainPoolPtr
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef TmplGrainRandomBoxPacker esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GrainRandomPacker
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef boost::shared_ptr<GrainRandomPacker> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GrainRandomPackerPtr
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef std::vector<GrainRandomPackerPtr> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::GrainRndPackerPtrVector
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::NTable esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::NTable
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::NTablePtr esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::NTablePtr
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::Particle esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::Particle
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::ParticleCollection esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ParticleCollection
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::ParticleConstIterator esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ParticleConstIterator
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::ParticleGrainGen esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ParticleGrainGen
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::ParticleIterator esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ParticleIterator
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::ParticlePool esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ParticlePool
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef GrainRandomPacker::ParticlePoolPtr esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::ParticlePoolPtr
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef CubicBoxPacker<RegRadiusGen,ABoxPacker> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::RegBoxPacker
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef ConstRadiusGen<Particle> esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::RegRadiusGen
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef RegBoxPacker::ParticleGeneratorPtr esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::RegRadiusGenPtr
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef TmplParticleRandomBoxPacker esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::RndBoxPacker
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef RndBoxPacker::ParticleGenerator esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::RndRadiusGen
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
typedef RndBoxPacker::ParticleGeneratorPtr esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::RndRadiusGenPtr

Constructor & Destructor Documentation

template<typename TGPckr , typename TPPckr , typename TConn >
esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::~GougeConfig ( )
virtual

Member Function Documentation

template<typename TGPckr , typename TPPckr , typename TConn >
bool esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::areInDifferentFaultBlocks ( const Particle p1,
const Particle p2 
) const
template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::createFaultBlockGenerators ( )
protected

References console, BasicCon::Debug(), and esys::lsm::StringUtil::toString().

Here is the call graph for this function:

template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::createGougeConfigGenerators ( )
protectedvirtual

References console, BasicCon::Debug(), and esys::lsm::StringUtil::toString().

Here is the call graph for this function:

template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::createRegularBlockGenerators ( )
protected

References console, BasicCon::Debug(), and esys::lsm::StringUtil::toString().

Here is the call graph for this function:

template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::generate ( )
virtual

References console, and BasicCon::Info().

Here is the call graph for this function:

template<typename TGPckr , typename TPPckr , typename TConn >
const GougeConfig< TGPckr, TPPckr, TConn >::ConnectionSet & esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getConnectionSet ( ) const
template<typename TGPckr , typename TPPckr , typename TConn >
const GougeConfig< TGPckr, TPPckr, TConn >::GeneratorPtrVector & esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getFaultGeneratorVector ( ) const
template<typename TGPckr , typename TPPckr , typename TConn >
const GougeConfig< TGPckr, TPPckr, TConn >::GrainRndPackerPtrVector & esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getGougeGeneratorVector ( ) const
template<typename TGPckr , typename TPPckr , typename TConn >
GougeConfig< TGPckr, TPPckr, TConn >::GrainRndPackerPtrVector & esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getGougeGeneratorVector ( )
template<typename TGPckr , typename TPPckr , typename TConn >
GougeConfig< TGPckr, TPPckr, TConn >::GrainCollection esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getGrainCollection ( )
template<typename TGPckr , typename TPPckr , typename TConn >
int esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getNumConnections ( ) const
template<typename TGPckr , typename TPPckr , typename TConn >
int esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getNumGrains ( ) const
template<typename TGPckr , typename TPPckr , typename TConn >
int esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getNumParticles ( ) const
template<typename TGPckr , typename TPPckr , typename TConn >
GougeConfig< TGPckr, TPPckr, TConn >::ParticleCollection esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::getParticleCollection ( )
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
const GougeConfPrms& esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::getPrms ( ) const
inline
template<typename TGPckr , typename TPPckr , typename TConn >
bool esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::isGougeParticle ( const Particle particle) const
template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::tagDrivingPlateParticles ( int  minDrivingTag,
int  maxDrivingTag,
double  distanceFromBBoxEdge 
)
template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::tagGougeParticles ( int  tag)
template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::tagRndBlockParticles ( int  tag)
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
template<typename TmplVisitor >
void esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::visitConnections ( TmplVisitor &  visitor) const
inline
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
template<typename TmplVisitor >
void esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::visitParticles ( TmplVisitor &  visitor)
inline
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
template<typename TmplVisitor >
void esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::visitParticles ( const TmplVisitor &  visitor) const
inline
template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::write ( std::ostream &  oStream) const
virtual
template<typename TGPckr , typename TPPckr , typename TConn >
void esys::lsm::GougeConfig< TGPckr, TPPckr, TConn >::writeToFile ( const std::string &  fileName) const

Member Data Documentation

template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
ConnectionSet esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_connectionSet
protected
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
GeneratorPtrVector esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_faultGenPtrVector
private
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
GeneratorPtrVector esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_genPtrVector
protected
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
GrainRndPackerPtrVector esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_gougeGenPtrVector
protected
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
GrainPoolPtr esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_grainPoolPtr
protected
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
NTablePtr esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_nTablePtr
protected
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
ParticlePoolPtr esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_particlePoolPtr
protected
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
GougeConfPrms esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_prms
protected
template<typename TmplGrainRandomBoxPacker, typename TmplParticleRandomBoxPacker, typename TmplConnection>
GeneratorPtrVector esys::lsm::GougeConfig< TmplGrainRandomBoxPacker, TmplParticleRandomBoxPacker, TmplConnection >::m_regularGenPtrVector
private

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