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 | |
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 |
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
void TriMesh_PIS_NE< ParticleType, IType >::calcForces | ( | ) | [virtual] |
calculate all the forces
Implements AParallelInteractionStorage.
References BasicCon::XDebug().
bool TriMesh_PIS_NE< ParticleType, IType >::isIn | ( | const vector< int > & | ) | [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().
virtual void TriMesh_PIS_NE< ParticleType, IType >::setTimeStepSize | ( | double | dt | ) | [inline, virtual] |
Null op, time step size not required.
Implements AParallelInteractionStorage.
bool TriMesh_PIS_NE< ParticleType, IType >::update | ( | ) | [virtual] |
update the interactions
Implements AParallelInteractionStorage.
References BasicCon::XDebug().