ESyS-Particle
4.0.1
|
Class for parallel storage of interactions between a triangle mesh and particles which doesn't require exchange of interactions across process boundaries. More...
#include <trimesh_pis_ne.h>
Public Member Functions | |
TriMesh_PIS_NE (TriMesh *, ParallelParticleArray< ParticleType > *, typename IType::ParameterType) | |
~TriMesh_PIS_NE () | |
virtual bool | isIn (const vector< int > &) |
virtual void | setTimeStepSize (double dt) |
virtual void | calcForces () |
virtual bool | update () |
virtual void | exchange () |
virtual void | rebuild () |
do nothing | |
virtual void | tryInsert (const vector< int > &) |
do nothing | |
![]() | |
TriMesh_PIS (TriMesh *, ParallelParticleArray< ParticleType > *) | |
virtual void | addExIG (AParallelInteractionStorage *) |
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 void | calcHeatFrict () |
virtual void | calcHeatTrans () |
virtual void | saveCheckPointData (std::ostream &oStream) |
virtual void | loadCheckPointData (std::istream &iStream) |
virtual void | saveSnapShotData (std::ostream &) |
virtual bool | willSave () |
Protected Attributes | |
IType::ParameterType | m_param |
set< pair< int, int > > | m_tri_int_set |
set< pair< int, int > > | m_edge_int_set |
set< pair< int, int > > | m_corner_int_set |
vector< typename IType::TriIntType > | m_triangle_interactions |
vector< typename IType::EdgeIntType > | m_edge_interactions |
vector< typename IType::CornerIntType > | m_corner_interactions |
![]() | |
int | m_update_timestamp |
TriMesh * | m_mesh |
AParallelInteractionStorage * | m_exIG |
![]() | |
AParallelParticleArray * | m_ppa |
Class for parallel storage of interactions between a triangle mesh and particles which doesn't require exchange of interactions across process boundaries.
TriMesh_PIS_NE< ParticleType, IType >::TriMesh_PIS_NE | ( | TriMesh * | mesh_p, |
ParallelParticleArray< ParticleType > * | ppa_p, | ||
typename IType::ParameterType | param | ||
) |
constructor
mesh_p | |
ppa_p | |
param |
TriMesh_PIS_NE< ParticleType, IType >::~TriMesh_PIS_NE | ( | ) |
destructor
|
virtual |
calculate all the forces
Implements AParallelInteractionStorage.
References BasicCon::XDebug().
|
virtual |
Check if an interaction is in this PIS. The first 2 values in the vector are expected to be the tri/edge/corner (v[0]) and particle (v[1]) ids, the 3rd an indicator if tri (v[2]==0),edge (v[2]==1)or corner (v[2]==2) interaction. If there is no 3rd value or it is not in [0,1,2], "false" is returned.
v | vector of particle ids |
Implements AParallelInteractionStorage.
References BasicCon::Error().
|
inlinevirtual |
Null op, time step size not required.
Implements AParallelInteractionStorage.
|
virtual |
update the interactions
Implements AParallelInteractionStorage.
References BasicCon::XDebug().