|
ESyS-Particle
2.3.4
|
Damping of the particle motion by an artificial viscosity. More...
#include <Damping.h>


Public Types | |
| typedef CDampingIGP | ParameterType |
| typedef double(CDamping::* | ScalarFieldFunction) () const |
| typedef pair< bool, double >(CDamping::* | CheckedScalarFieldFunction) () const |
| typedef Vec3(CDamping::* | VectorFieldFunction) () const |
Public Member Functions | |
| CDamping (T *, const Vec3 &, double, double, int) | |
| CDamping (T *, const CDampingIGP &) | |
| CDamping (T *, CDampingIGP *) | |
| virtual | ~CDamping () |
| void | setLimit (double limit) |
| void | setTimeStepSize (double dt) |
| virtual void | calcForces () |
| virtual bool | hasTag (int, int) const |
| virtual Vec3 | getPosFirst () const |
| virtual Vec3 | getPosSecond () const |
| virtual Vec3 | getPos () const |
| vector< int > | getAllID () const |
| esys::lsm::quintuple< Vec3, double, Vec3, double, Vec3 > | getRaw2Data () const |
| double | getDissipatedEnergy () const |
| Vec3 | getForce () const |
Static Public Member Functions | |
| static ScalarFieldFunction | getScalarFieldFunction (const string &) |
| static CheckedScalarFieldFunction | getCheckedScalarFieldFunction (const string &) |
| static VectorFieldFunction | getVectorFieldFunction (const string &) |
| static void | zeroFlops () |
| static int | Flops () |
Protected Attributes | |
| T * | m_p |
| the particle More... | |
| Vec3 | m_vref |
| reference velocity More... | |
| double | m_visc |
| artificial viscosity More... | |
| double | m_dt |
| time step More... | |
| int | m_maxiter |
| iteration limit More... | |
| double | m_E_diss |
| dissipated energy More... | |
| Vec3 | m_force |
| current force More... | |
Static Protected Attributes | |
| static double | s_limit2 =1e-12 |
| square error limit for iteration More... | |
| static int | s_flops = 0 |
Damping of the particle motion by an artificial viscosity.
| typedef pair<bool,double>(CDamping::* CDamping< T >::CheckedScalarFieldFunction) () const |
| typedef CDampingIGP CDamping< T >::ParameterType |
| typedef double(CDamping::* CDamping< T >::ScalarFieldFunction) () const |
| CDamping< T >::CDamping | ( | T * | P, |
| const Vec3 & | V, | ||
| double | visc, | ||
| double | dt, | ||
| int | mi | ||
| ) |
Construct a damping "interaction" for a particle
| P | the particle |
| V | the reference velocity |
| visc | the artificial viscosity |
| dt | the time step |
| mi | the maximum number of iterations |
| CDamping< T >::CDamping | ( | T * | P, |
| const CDampingIGP & | param | ||
| ) |
Construct a damping "interaction" for a particle
| P | the particle |
| param | the parameters |
| CDamping< T >::CDamping | ( | T * | P, |
| CDampingIGP * | param | ||
| ) |
Construct a damping "interaction" for a particle
| P | the particle |
| param | pointer to the parameters |
References CDampingIGP::getMaxIter(), CDampingIGP::getTimeStep(), CDampingIGP::getVisc(), and CDampingIGP::getVRef().

|
virtual |
Calculate the damping force.
25*count+8 flops
|
inlinestatic |
| vector< int > CDamping< T >::getAllID |
return a vector of all particle IDs
|
static |
Get the particle member function which returns a checked scalar field of a given name.
| name | the name of the field |
References NULL.
| double CDamping< T >::getDissipatedEnergy |
return the amount of energy dissipated during the last time step
|
inline |
|
static |
Get the particle member function which returns a scalar field of a given name.
| name | the name of the field |
References NULL.
|
static |
Get the particle member function which returns a vector field of a given name.
| name | the name of the field |
References NULL.
|
virtual |
check if any of the particles in the interaction fits tag & mask
| tag | the tag |
| mask | the mask |
|
inline |
| void CDamping< T >::setTimeStepSize | ( | double | dt | ) |
|
inlinestatic |
|
protected |
time step
|
protected |
dissipated energy
|
protected |
iteration limit
|
protected |
the particle
Referenced by CDamping< ParticleType >::getPos(), CDamping< ParticleType >::getPosFirst(), and CDamping< ParticleType >::getRaw2Data().
|
protected |
artificial viscosity
|
staticprotected |
Referenced by CDamping< ParticleType >::Flops(), and CDamping< ParticleType >::zeroFlops().
|
staticprotected |
square error limit for iteration
Referenced by CDamping< ParticleType >::setLimit().