|
ESyS-Particle
2.3.4
|
Frictional+adhesive Elastic interaction between particles. More...
#include <AdhesiveFriction.h>


Public Types | |
| typedef CAdhesiveFrictionIGP | ParameterType |
| typedef double(CAdhesiveFriction::* | ScalarFieldFunction) () const |
| typedef pair< bool, double >(CAdhesiveFriction::* | CheckedScalarFieldFunction) () const |
| typedef Vec3(CAdhesiveFriction::* | VectorFieldFunction) () const |
Public Types inherited from CFrictionInteraction | |
| typedef CFrictionIGP | ParameterType |
| typedef double(CFrictionInteraction::* | ScalarFieldFunction) () const |
| typedef std::pair< bool, double >(CFrictionInteraction::* | CheckedScalarFieldFunction) () const |
| typedef Vec3(CFrictionInteraction::* | VectorFieldFunction) () const |
Public Member Functions | |
| CAdhesiveFriction () | |
| CAdhesiveFriction (CParticle *, CParticle *, const CAdhesiveFrictionIGP &) | |
| virtual | ~CAdhesiveFriction () |
| virtual void | calcForces () |
Public Member Functions inherited from CFrictionInteraction | |
| CFrictionInteraction () | |
| CFrictionInteraction (CParticle *, CParticle *) | |
| CFrictionInteraction (CParticle *, CParticle *, const CFrictionIGP &) | |
| virtual | ~CFrictionInteraction () |
| virtual bool | isPersistent () |
| void | setTimeStepSize (double dt) |
| std::pair< bool, double > | getAbsFrictionalForce () const |
| std::pair< bool, double > | getAbsFN () const |
| std::pair< bool, double > | getAbsMuFN () const |
| std::pair< bool, double > | getSlipVelocity () const |
| std::pair< bool, double > | getNormalStress () const |
| std::pair< bool, double > | getMaxFricStress () const |
| std::pair< bool, double > | getAbsFrictionalStress () const |
| double | getAbsForceDeficit () const |
| double | getPotentialEnergy () const |
| double | getSlipping () const |
| double | getSticking () const |
| double | getDissipatedEnergy () const |
| virtual double | Count () const |
| Vec3 | getForce () const |
| Vec3 | getNormalForce () const |
| virtual Vec3 | getPos () const |
| std::pair< bool, double > | getMuEff (const Vec3 &, const Vec3 &) const |
| std::pair< bool, double > | getMuEffXY () const |
| std::pair< bool, double > | getMuEffXZ () const |
| virtual void | saveRestartData (std::ostream &oStream) |
| virtual void | loadRestartData (std::istream &iStream) |
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) |
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 string | getType () |
Static Public Member Functions inherited from CFrictionInteraction | |
| static ScalarFieldFunction | getScalarFieldFunction (const string &) |
| static CheckedScalarFieldFunction | getCheckedScalarFieldFunction (const string &) |
| static VectorFieldFunction | getVectorFieldFunction (const string &) |
| static string | getType () |
Protected Attributes | |
| double | m_r_cut |
| double | m_r_cut_h |
Protected Attributes inherited from CFrictionInteraction | |
| double | m_k |
| spring constant More... | |
| double | m_r0 |
| equilibrium distance More... | |
| double | m_mu |
| coefficient of friction More... | |
| double | m_ks |
| shear stiffness (Cundall) More... | |
| double | m_dt |
| time step More... | |
| Vec3 | m_Ffric |
| current frictional force More... | |
| Vec3 | m_force_deficit |
| difference between fric. force & force necessary for slip More... | |
| Vec3 | m_cpos |
| contact position More... | |
| Vec3 | m_normal_force |
| current normal force More... | |
| bool | m_is_slipping |
| static/dynamic status of the interaction More... | |
| bool | m_is_touching |
| contact status of the interaction More... | |
| double | m_E_diss |
| dissipated energy More... | |
| bool | m_scaling |
| scaling k with particle radius More... | |
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 |
Friends | |
| class | TML_PackedMessageInterface |
Frictional+adhesive Elastic interaction between particles.
| typedef pair<bool,double>(CAdhesiveFriction::* CAdhesiveFriction::CheckedScalarFieldFunction) () const |
| typedef double(CAdhesiveFriction::* CAdhesiveFriction::ScalarFieldFunction) () const |
| typedef Vec3(CAdhesiveFriction::* CAdhesiveFriction::VectorFieldFunction) () const |
| CAdhesiveFriction::CAdhesiveFriction | ( | ) |
Default constructor for CAdhesiveFriction interaction Zero all coefficients
References CFrictionInteraction::m_dt, CFrictionInteraction::m_k, CFrictionInteraction::m_ks, CFrictionInteraction::m_r0, m_r_cut, and m_r_cut_h.
| CAdhesiveFriction::CAdhesiveFriction | ( | CParticle * | p1, |
| CParticle * | p2, | ||
| const CAdhesiveFrictionIGP & | param | ||
| ) |
Construct a CAdhesiveFriction interaction from 2 particle pointers and the parameters
| p1 | pointer to the first particle |
| p2 | pointer to the second particle |
| param | the interaction parameters |
References CAdhesiveFrictionIGP::dt, CBasicParticle::getRad(), CAdhesiveFrictionIGP::k, CAdhesiveFrictionIGP::k_s, CFrictionInteraction::m_dt, CFrictionInteraction::m_k, CFrictionInteraction::m_ks, CFrictionInteraction::m_r0, m_r_cut, m_r_cut_h, and CAdhesiveFrictionIGP::r_cut.

|
virtual |
destruct a CAdehsiveFriction interaction, i.e.do nothing
|
virtual |
Calculate elastic and frictional forces.
Reimplemented from CFrictionInteraction.
References CParticle::applyForce(), CFrictionInteraction::calcForces(), CBasicParticle::getPos(), CBasicParticle::getRad(), CFrictionInteraction::m_Ffric, CFrictionInteraction::m_k, CFrictionInteraction::m_normal_force, APairInteraction::m_p1, APairInteraction::m_p2, CFrictionInteraction::m_r0, m_r_cut, and m_r_cut_h.

|
inlinestatic |
|
friend |
|
protected |
|
protected |
Referenced by CAdhesiveFriction(), calcForces(), and TML_PackedMessageInterface::unpack().