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< Particle > RegRadiusGen
 
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< GeneratorPtr > GeneratorPtrVector
 
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 GrainRndPackerPtrVector & getGougeGeneratorVector () const
 
GrainRndPackerPtrVector & getGougeGeneratorVector ()
 
const GeneratorPtrVector & getFaultGeneratorVector () 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 ConnectionSet & getConnectionSet () 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 GougeConfPrms & getPrms () 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: