ESyS-Particle  2.3.2
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< GrainRandomPackerGrainRandomPackerPtr
 
typedef GrainRandomPacker::ParticleGrainGen ParticleGrainGen
 
typedef GougeConfigPrms< ParticleGrainGenGougeConfPrms
 
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, ABoxPackerRegBoxPacker
 
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< APackerGeneratorPtr
 
typedef std::vector< GeneratorPtrGeneratorPtrVector
 
typedef std::vector< GrainRandomPackerPtrGrainRndPackerPtrVector
 
typedef GrainRandomPacker::ParticlePool ParticlePool
 
typedef GrainRandomPacker::ParticlePoolPtr ParticlePoolPtr
 
typedef GrainRandomPacker::GrainPool GrainPool
 
typedef GrainRandomPacker::GrainPoolPtr GrainPoolPtr
 
typedef std::set< Connection, ConnectionCmpConnectionSet
 
typedef DistConnections< Particle, ConnectionConnectionFinder
 

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, Console::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, Console::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, Console::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 Console::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: