ESyS-Particle
4.0.1
|
parallel storage array with exchange for bonded/breakable interactions More...
#include <pi_storage_eb.h>
Public Types | |
typedef ParallelInteractionStorage_E < P, I > | Inherited |
typedef Inherited::InteractionIterator | InteractionIterator |
![]() | |
![]() | |
typedef I | interaction_type |
typedef esys::lsm::quintuple < Vec3, double, Vec3, double, Vec3 > | Raw2Data |
typedef esys::lsm::triplet < int, int, Vec3 > | DataWithID |
typedef esys::lsm::quintuple < int, int, Vec3, Vec3, Vec3 > | DataWithPosID |
access functions |
Public Member Functions | |
ParallelInteractionStorage_EB (AParallelParticleArray *, const typename I::ParameterType &) | |
virtual bool | update () |
void | setUnbreakable (bool) |
virtual void | calcHeatTrans () |
virtual void | saveCheckPointData (std::ostream &oStream) |
virtual void | loadCheckPointData (std::istream &iStream) |
virtual void | saveSnapShotData (std::ostream &) |
![]() | |
ParallelInteractionStorage_E (AParallelParticleArray *, const typename I::ParameterType &) | |
virtual void | exchange () |
virtual void | rebuild () |
virtual void | tryInsert (const I &) |
virtual void | tryInsert (const std::vector< int > &) |
virtual bool | isIn (const std::vector< int > &) |
virtual void | setTimeStepSize (double dt) |
virtual void | calcForces () |
![]() | |
TParallelInteractionStorage (AParallelParticleArray *ppa) | |
InteractionIterator | getInnerInteractionIterator () |
types | |
template<typename P > | |
vector< pair< Vec3, P > > | forAllInnerInteractionsGetWithPos (P(I::*rdf)() const) |
template<typename P > | |
vector< pair< Raw2Data, P > > | forAllInnerInteractionsGetRaw2 (P(I::*rdf)() const) |
template<typename P > | |
vector< pair< DataWithID, P > > | forAllInnerInteractionsGetDataWithID (P(I::*rdf)() const) |
template<typename P > | |
vector< pair< DataWithPosID, P > > | forAllInnerInteractionsGetDataWithPosID (P(I::*rdf)() const) |
template<typename P > | |
void | forAllInnerInteractionsGet (P &, typename P::value_type(I::*rdf)() const) |
access functions with tags | |
template<typename P > | |
vector< pair< Vec3, P > > | forAllTaggedInnerInteractionsGetWithPos (P(I::*rdf)() const, int, int) |
template<typename P > | |
void | forAllTaggedInnerInteractionsGet (P &, typename P::value_type(I::*rdf)() const, int, int) |
generate FieldSlave of correct type | |
virtual AFieldSlave * | generateNewScalarFieldSlave (TML_Comm *, const string &, int, int, int, int) |
virtual AFieldSlave * | generateNewVectorFieldSlave (TML_Comm *, const string &, int, int, int, int) |
![]() | |
AParallelInteractionStorage (AParallelParticleArray *ppa) | |
virtual bool | isIn (const vector< int > &)=0 |
virtual void | calcHeatFrict () |
virtual void | addExIG (AParallelInteractionStorage *) |
virtual bool | willSave () |
Public Attributes | |
bool | m_unbreakable |
![]() |
Additional Inherited Members | |
![]() | |
TML_CartComm | m_comm |
set< pair< int, int > > | m_set |
I::ParameterType | m_param |
![]() | |
list< I > | m_interactions |
![]() | |
AParallelParticleArray * | m_ppa |
parallel storage array with exchange for bonded/breakable interactions
|
virtual |
Read interaction data from input stream pointing to a restartable checkpoint file. The stream needs to be already positioned at the right place.
iStream | the input stream |
Reimplemented from AParallelInteractionStorage.
References ParallelParticleArray< T >::getParticlePtrByIndex().
|
virtual |
save checkpoint (i.e. restart) data
Reimplemented from AParallelInteractionStorage.
|
virtual |
save snapshot (i.e. viz/postprocess) data
Reimplemented from AParallelInteractionStorage.
|
virtual |
set the interactions "unbreakable" -> turns update into a NO-OP
b | true -> unbreakable, false -> breakable |
Reimplemented from ParallelInteractionStorage_E< P, I >.
Referenced by TSubLattice< T >::addBondedIG(), and TSubLattice< T >::addCappedBondedIG().
|
virtual |
Update interactions. Check for broken interactions and remove them.
Implements AParallelInteractionStorage.
References BasicCon::XDebug().