|
ESyS-Particle
2.3.4
|
Linear Dashpot Interaction between free or bonded particles (to be used in addition to an elastic or bonded Interaction, not exclusively) More...
#include <LinearDashpotInteraction.h>


Public Types | |
| typedef double(CLinearDashpotInteraction::* | ScalarFieldFunction) () const |
| typedef Vec3(CLinearDashpotInteraction::* | VectorFieldFunction) () const |
| typedef pair< bool, double >(CLinearDashpotInteraction::* | CheckedScalarFieldFunction) () const |
| typedef CLinearDashpotIGP | ParameterType |
Public Member Functions | |
| CLinearDashpotInteraction (CParticle *, CParticle *, const CLinearDashpotIGP &) | |
| virtual | ~CLinearDashpotInteraction () |
| virtual Vec3 | getPos () const |
| double | getPotentialEnergy () const |
| virtual void | calcForces () |
| Vec3 | getForce () const |
Public Member Functions inherited from APairInteraction | |
| APairInteraction () | |
| APairInteraction (CParticle *, CParticle *) | |
| virtual | ~APairInteraction () |
| const CParticle * | first () const |
| const CParticle * | second () const |
| CParticle * | first () |
| CParticle * | second () |
| pair< int, int > | getPairID () const |
| void | setPP (CParticle *, CParticle *) |
| void | checkIDs () |
| virtual bool | hasTag (int, int) const |
| virtual Vec3 | getPosFirst () const |
| virtual Vec3 | getPosSecond () const |
| esys::lsm::quintuple< Vec3, double, Vec3, double, Vec3 > | getRaw2Data () const |
| template<class TmplParticle > | |
| void | setPP (const vector< TmplParticle * > &pp) |
| virtual void | saveRestartData (std::ostream &) |
| virtual void | loadRestartData (std::istream &) |
Public Member Functions inherited from AInteraction | |
| AInteraction () | |
| virtual | ~AInteraction () |
| bool | initialized () const |
| virtual void | calcHeatTrans () |
| virtual void | calcHeatFrict () |
| vector< int > | getAllID () const |
| int | getID () |
| double | Count () const |
Static Public Member Functions | |
| static ScalarFieldFunction | getScalarFieldFunction (const string &) |
| static VectorFieldFunction | getVectorFieldFunction (const string &) |
| static CheckedScalarFieldFunction | getCheckedScalarFieldFunction (const string &) |
Private Attributes | |
| double | m_damp |
| spring constant More... | |
| double | m_cutoff |
| interaction distance cutoff, relative to particle radii More... | |
| double | m_cross_section |
| cross section of dashpot, calculated from particle radii More... | |
| Vec3 | m_force |
| Vec3 | m_cpos |
Additional Inherited Members | |
Protected Attributes inherited from APairInteraction | |
| CParticle * | m_p1 |
| CParticle * | m_p2 |
Protected Attributes inherited from AInteraction | |
| vector< int > | m_id |
| id's of the particles involved More... | |
| int | m_iid |
| interaction id More... | |
| bool | m_init |
Linear Dashpot Interaction between free or bonded particles (to be used in addition to an elastic or bonded Interaction, not exclusively)
| typedef pair<bool,double>(CLinearDashpotInteraction::* CLinearDashpotInteraction::CheckedScalarFieldFunction) () const |
| typedef double(CLinearDashpotInteraction::* CLinearDashpotInteraction::ScalarFieldFunction) () const |
| typedef Vec3(CLinearDashpotInteraction::* CLinearDashpotInteraction::VectorFieldFunction) () const |
| CLinearDashpotInteraction::CLinearDashpotInteraction | ( | CParticle * | p1, |
| CParticle * | p2, | ||
| const CLinearDashpotIGP & | param | ||
| ) |
References CParticle::getDo2dCalculations(), CBasicParticle::getRad(), m_cross_section, CLinearDashpotIGP::m_cutoff, m_cutoff, CLinearDashpotIGP::m_damp, m_damp, m_force, APairInteraction::m_p1, and APairInteraction::m_p2.

|
inlinevirtual |
|
virtual |
calculate forces
Implements APairInteraction.
References CParticle::applyForce(), CBasicParticle::getPos(), CBasicParticle::getRad(), CParticle::getVel(), m_cpos, m_cross_section, m_cutoff, m_damp, m_force, APairInteraction::m_p1, and APairInteraction::m_p2.

|
static |
dummy
References NULL.
| Vec3 CLinearDashpotInteraction::getForce | ( | ) | const |
"field function" returning force currently exerted by interaction
References m_force.
Referenced by getVectorFieldFunction().

|
inlinevirtual |
Implements APairInteraction.
References m_cpos.
| double CLinearDashpotInteraction::getPotentialEnergy | ( | ) | const |
|
static |
Get the particle member function which returns a scalar field of a given name.
| name | the name of the field |
References AInteraction::Count(), and NULL.

|
static |
Get the particle member function which returns a vector field of a given name.
| name | the name of the field |
References getForce(), and NULL.

|
private |
Referenced by calcForces(), and getPos().
|
private |
cross section of dashpot, calculated from particle radii
Referenced by calcForces(), and CLinearDashpotInteraction().
|
private |
interaction distance cutoff, relative to particle radii
Referenced by calcForces(), and CLinearDashpotInteraction().
|
private |
spring constant
Referenced by calcForces(), and CLinearDashpotInteraction().
|
private |
Referenced by calcForces(), CLinearDashpotInteraction(), and getForce().