|
ESyS-Particle
2.3.4
|
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 | ~CViscWallIG () |
| 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 More... | |
| vector< CElasticWallInteraction< T > > | m_elastic_interactions |
| elastic interactions all particles More... | |
| double | m_k |
| spring constant More... | |
| 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 | ) |
| 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 console, CVWallIGP::getNu(), CElasticIGP::getSpringConst(), CVWallIGP::getTag(), CViscWallIG< T >::m_k, CViscWallIG< T >::m_nu, CViscWallIG< T >::m_tag, and Console::XDebug().

|
inlinevirtual |
|
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 |
References esys::lsm::bpu::iter(), Vec3::unit(), Vec3::X(), Vec3::Y(), and Vec3::Z().

|
virtual |
|
inlinevirtual |
Null op, don't require time step size.
|
virtual |
Set velocity of the wall. Only sets m_vel of the wall, doesn't affect position updates.
| V | the velocity |
|
virtual |
Update interactions from an existing parallel particle array
| PPA | a pointer to the particle array |
References console, ParallelParticleArray< T >::getParticlesAtPlane(), ParallelParticleArray< T >::isInInner(), esys::lsm::bpu::iter(), and Console::XDebug().

|
friend |
|
protected |
elastic interactions all particles
|
protected |
spring constant
Referenced by CViscWallIG< T >::CViscWallIG().
|
protected |
Referenced by CViscWallIG< T >::CViscWallIG().
|
protected |
Referenced by CViscWallIG< T >::CViscWallIG().
|
protected |
visc interactions for tagged particles