ESyS-Particle  2.3.4
TRotSubLattice< T > Class Template Reference

class of a SubLattice of rotational particles More...

#include <RotSubLattice.h>

Inheritance diagram for TRotSubLattice< T >:
Collaboration diagram for TRotSubLattice< T >:

Public Member Functions

 TRotSubLattice (const esys::lsm::CLatticeParam &prm, int rank, MPI_Comm comm, MPI_Comm worker_comm)
 
virtual ~TRotSubLattice ()
 
virtual void setParticleAngularVelocity ()
 
virtual void addRotBondedIG ()
 
virtual void addRotThermBondedIG ()
 
- Public Member Functions inherited from TSubLattice< T >
 TSubLattice (const esys::lsm::CLatticeParam &prm, int rank, MPI_Comm comm, MPI_Comm worker_comm)
 
virtual ~TSubLattice ()
 
virtual void setTimeStepSize (double dt)
 
virtual vector< int > getCommCoords () const
 
virtual vector< int > getCommDims () const
 
virtual void receiveParticles ()
 
virtual void receiveConnections ()
 
virtual const MPI_Comm & getWorkerComm () const
 
virtual void initNeighborTable (const Vec3 &, const Vec3 &)
 
virtual void initNeighborTable (const Vec3 &, const Vec3 &, const vector< bool > &)
 
virtual void addWall ()
 
virtual void addElasticWIG ()
 
virtual void addBondedWIG ()
 
virtual void addDirBondedWIG ()
 
virtual void addViscWIG ()
 
virtual void addTaggedElasticWIG ()
 
virtual void addTriMesh ()
 
virtual void addTriMeshIG ()
 
virtual void addBondedTriMeshIG ()
 
virtual void addMesh2D ()
 
virtual void addMesh2DIG ()
 
virtual void addBondedMesh2DIG ()
 
virtual void addPairIG ()
 
virtual void addTaggedPairIG ()
 
virtual void addSingleIG ()
 
virtual void addBondedIG ()
 
virtual void addCappedBondedIG ()
 
virtual void addShortBondedIG ()
 
virtual void addDamping ()
 
virtual void setExIG ()
 
virtual void removeIG ()
 
virtual void getWallPos ()
 
virtual void getWallForce ()
 
virtual void addSphereBody ()
 
virtual void addESphereBodyIG ()
 
virtual void getSphereBodyPos ()
 
virtual void getSphereBodyForce ()
 
virtual void oneStep ()
 
virtual void oneStepTherm ()
 
virtual void exchangePos ()
 
void setTimeStep (double dt)
 
virtual void rebuildParticleArray ()
 
virtual void rebuildInteractions ()
 
virtual void searchNeighbors ()
 
virtual void updateInteractions ()
 
virtual void checkNeighbors ()
 
void resetDisplacements ()
 
virtual void do2dCalculations (bool do2d)
 
virtual int getNumParticles ()
 
std::pair< double, int > findParticleNearestTo (const Vec3 &pt)
 
std::pair< int, Vec3getParticlePosn (int particleId)
 
AParallelInteractionStoragefindPis (const std::string &groupName)
 
template<typename TmplPis >
ParticleIdPairVector getBondGroupIdPairs (TmplPis *pBondPis)
 
virtual void moveParticleTo ()
 
virtual void moveTaggedParticlesBy ()
 
virtual void moveSingleParticleTo (int particleId, const Vec3 &posn)
 
virtual void moveWallBy ()
 
virtual void moveSphereBodyBy ()
 
virtual void setWallNormal ()
 
virtual void applyForceToWall ()
 
virtual void setParticleVelocity ()
 
virtual void setVelocityOfWall ()
 
virtual void setParticleNonDynamic ()
 
virtual void setParticleNonRot ()
 
virtual void setParticleNonTrans ()
 
virtual void setParticleDensity ()
 
virtual void setTaggedParticleVel ()
 
virtual void tagParticleNearestTo ()
 
virtual void moveSingleNode ()
 
virtual void moveTaggedNodes ()
 
virtual void translateMeshBy (const std::string &meshName, const Vec3 &translation)
 
virtual void sendDataToMaster ()
 
virtual void countParticles ()
 
virtual void printStruct ()
 
virtual void printData ()
 
virtual void printTimes ()
 
virtual void addScalarParticleField ()
 
virtual void addVectorParticleField ()
 
virtual void addScalarInteractionField ()
 
virtual void addScalarHistoryInteractionField ()
 
virtual void addVectorInteractionField ()
 
virtual void addScalarTriangleField ()
 
virtual void addVectorTriangleField ()
 
virtual void sendFieldData ()
 
virtual void addVectorWallField ()
 
virtual void saveSnapShotData (std::ostream &oStream)
 
virtual void saveCheckPointData (std::ostream &oStream)
 
virtual void loadCheckPointData (std::istream &iStream)
 
virtual void setTimer (MpiWTimers &timers)
 
virtual void getMeshNodeRef ()
 
virtual void getMeshFaceRef ()
 
virtual void getMesh2DStress ()
 
virtual void getTriMeshForce ()
 
virtual void getParticleData (const IdVector &particleIdVector)
 
- Public Member Functions inherited from ASubLattice
virtual ~ASubLattice ()
 
void setNTSize (int)
 
virtual void setParticleType (const std::string &particleType)
 
virtual const std::string & getParticleType () const
 
virtual void initComplex ()
 
- Public Member Functions inherited from esys::lsm::CheckPointable
 CheckPointable ()
 
virtual ~CheckPointable ()
 

Protected Member Functions

virtual bool doAddPIG (const string &, const string &, CVarMPIBuffer &, bool tagged=false)
 
virtual bool doAddDamping (const string &, CVarMPIBuffer &)
 
- Protected Member Functions inherited from TSubLattice< T >
void calcForces ()
 
void zeroForces ()
 
void integrate (double)
 
void integrateTherm (double dt)
 
void zeroHeat ()
 
void thermExpansion ()
 
void calcHeatFrict ()
 
void calcHeatTrans ()
 

Additional Inherited Members

- Public Types inherited from ASubLattice
typedef std::pair< int, int > ParticleIdPair
 
typedef std::vector< ParticleIdPairParticleIdPairVector
 
typedef std::vector< int > IdVector
 
- Protected Types inherited from TSubLattice< T >
typedef ParallelParticleArray< T > ParticleArray
 
typedef map< string, AInteractionGroup< T > * > NameIGroupMap
 persistent interactions More...
 
- Protected Attributes inherited from TSubLattice< T >
ParticleArraym_ppa
 
map< string, AParallelInteractionStorage * > m_dpis
 
map< string, AParallelInteractionStorage * > m_bpis
 dynamic interactions More...
 
NameIGroupMap m_singleParticleInteractions
 
map< string, AParallelInteractionStorage * > m_damping
 Body/gravitational force interactions. More...
 
map< string, AWallInteractionGroup< T > * > m_WIG
 
map< string, ASphereBodyInteractionGroup< T > * > m_SIG
 
map< string, CWall * > m_walls
 
map< string, CSphereBody * > m_spheres
 
map< string, TriMesh * > m_mesh
 
map< string, Mesh2D * > m_mesh2d
 
double m_dt
 
double m_nrange
 
double m_alpha
 
int m_last_ns
 
map< int, vector< int > > m_temp_conn
 
int m_rank
 rank in m_comm More...
 
MPI_Comm m_comm
 
TML_Comm m_tml_comm
 
MPI_Comm m_worker_comm
 MPI communicator between workers (excl. master) More...
 
TML_Comm m_tml_worker_comm
 TML version of the communicator between workers (excl. master) More...
 
esys::lsm::CLatticeParam::ProcessDims m_dims
 
double packtime
 
double unpacktime
 
double commtime
 
double forcetime
 
map< int, AFieldSlave * > m_field_slaves
 
MpiWTimersm_pTimers
 

Detailed Description

template<typename T>
class TRotSubLattice< T >

class of a SubLattice of rotational particles

Author
Steffen Abe $Revision$ $Date$

Constructor & Destructor Documentation

◆ TRotSubLattice()

template<class T >
TRotSubLattice< T >::TRotSubLattice ( const esys::lsm::CLatticeParam prm,
int  rank,
MPI_Comm  comm,
MPI_Comm  worker_comm 
)

Construct RotSubLattice. Calls constructor of base class.

Parameters
paramLattice parameters
rankthe MPI rank
commthe MPI communicator

◆ ~TRotSubLattice()

template<class T >
TRotSubLattice< T >::~TRotSubLattice
virtual

Destructor

Member Function Documentation

◆ addRotBondedIG()

◆ addRotThermBondedIG()

◆ doAddDamping()

template<class T >
bool TRotSubLattice< T >::doAddDamping ( const string &  type,
CVarMPIBuffer param_buffer 
)
protectedvirtual

Do the work for adding the damping

Parameters
typethe type of damping
param_bufferthe buffer containing the parameters

Reimplemented from TSubLattice< T >.

References console, Console::Debug(), TSubLattice< T >::doAddDamping(), extractDampingIGP(), extractLocalDampingIGP(), NULL, and ParallelInteractionStorage_Single< P, I >::update().

Here is the call graph for this function:

◆ doAddPIG()

template<class T >
bool TRotSubLattice< T >::doAddPIG ( const string &  name,
const string &  type,
CVarMPIBuffer param_buffer,
bool  tagged = false 
)
protectedvirtual

do the actual work adding the pair interaction group (PIG)

Parameters
namethe name of the PIG
typethe type of the PIG
param_bufferthe buffer containing the rest of the parameters

Reimplemented from TSubLattice< T >.

References TSubLattice< T >::doAddPIG().

Here is the call graph for this function:

◆ setParticleAngularVelocity()

template<class T >
void TRotSubLattice< T >::setParticleAngularVelocity
virtual

Set the angular velocity of a particle. Parameters are received from master.

Reimplemented from ASubLattice.

References console, Console::Debug(), CVarMPIBuffer::pop_int(), AMPIBuffer::pop_vector(), CVarMPIBuffer::receiveBroadcast(), and Console::XDebug().

Here is the call graph for this function:

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