ESyS-Particle
4.0.1
|
Class for a group of viscous and elastic interactions between particles and a wall. More...
#include <ViscWallIG.h>
Public Member Functions | |
CViscWallIG (TML_Comm *) | |
CViscWallIG (TML_Comm *, CWall *, const CVWallIGP *) | |
virtual void | setTimeStepSize (double dt) |
virtual void | calcForces () |
virtual void | applyForce (const Vec3 &) |
virtual void | setVelocity (const Vec3 &) |
virtual void | Update (ParallelParticleArray< T > *) |
Protected Attributes | |
vector< CViscWallInteraction< T > > | m_visc_interactions |
visc interactions for tagged particles | |
vector < CElasticWallInteraction< T > > | m_elastic_interactions |
elastic interactions all particles | |
double | m_k |
spring constant | |
double | m_nu |
int | m_tag |
Friends | |
ostream & | operator<< (ostream &, const CViscWallIG &) |
Class for a group of viscous and elastic interactions between particles and a wall.
CViscWallIG< T >::CViscWallIG | ( | TML_Comm * | comm, |
CWall * | wallp, | ||
const CVWallIGP * | I | ||
) |
Constructor for wall interaction group with viscous drag
comm | the communicator |
wallp | a pointer to the wall |
param | the interaction parameters |
References CViscWallIG< T >::m_k, AWallInteractionGroup< T >::m_wall, and BasicCon::XDebug().
void CViscWallIG< T >::applyForce | ( | const Vec3 & | F | ) | [virtual] |
Apply a given force to the wall. Only forces in the direction of the given force are considered, free movement is assumed in perpendicular directions.
F | the force |
Reimplemented from AWallInteractionGroup< T >.
virtual void CViscWallIG< T >::setTimeStepSize | ( | double | dt | ) | [inline, virtual] |
Null op, don't require time step size.
Reimplemented from AWallInteractionGroup< T >.
void CViscWallIG< T >::setVelocity | ( | const Vec3 & | V | ) | [virtual] |
Set velocity of the wall. Only sets m_vel of the wall, doesn't affect position updates.
V | the velocity |
Reimplemented from AWallInteractionGroup< T >.
void CViscWallIG< T >::Update | ( | ParallelParticleArray< T > * | PPA | ) | [virtual] |
Update interactions from an existing parallel particle array
PPA | a pointer to the particle array |
Implements AInteractionGroup< T >.
References ParallelParticleArray< T >::getParticlesAtPlane(), ParallelParticleArray< T >::isInInner(), and BasicCon::XDebug().