|
ESyS-Particle
4.0.1
|
Frictional+Elastic interaction between particles with velocity weakening friction. More...
#include <VWFrictionInteraction.h>


Public Types | |
| typedef VWFrictionIGP | ParameterType |
| typedef double(CVWFriction::* | ScalarFieldFunction )() const |
| typedef Vec3(CVWFriction::* | VectorFieldFunction )() const |
|
typedef pair< bool, double > (CVWFriction::* | CheckedScalarFieldFunction )() const |
Public Types inherited from CFrictionInteraction | |
Public Member Functions | |
| CVWFriction () | |
| CVWFriction (CParticle *, CParticle *, const VWFrictionIGP &) | |
| virtual void | calcForces () |
| pair< bool, double > | getCurrentMu () const |
Public Member Functions inherited from CFrictionInteraction | |
| CFrictionInteraction (CParticle *, CParticle *) | |
| CFrictionInteraction (CParticle *, CParticle *, const CFrictionIGP &) | |
| 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 (CParticle *, CParticle *) | |
| 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 | |
| bool | initialized () const |
| virtual void | calcHeatTrans () |
| virtual void | calcHeatFrict () |
| vector< int > | getAllID () const |
| int | getID () |
Static Public Member Functions | |
| static string | getType () |
| static ScalarFieldFunction | getScalarFieldFunction (const string &) |
| static VectorFieldFunction | getVectorFieldFunction (const string &) |
| static CheckedScalarFieldFunction | getCheckedScalarFieldFunction (const string &) |
Friends | |
| class | TML_PackedMessageInterface |
Additional Inherited Members | |
Protected Attributes inherited from CFrictionInteraction | |
| double | m_k |
| spring constant | |
| double | m_r0 |
| equilibrium distance | |
| double | m_mu |
| coefficient of friction | |
| double | m_ks |
| shear stiffness (Cundall) | |
| double | m_dt |
| time step | |
| Vec3 | m_Ffric |
| current frictional force | |
| Vec3 | m_force_deficit |
| difference between fric. force & force necessary for slip | |
| Vec3 | m_cpos |
| contact position | |
| Vec3 | m_normal_force |
| current normal force | |
| bool | m_is_slipping |
| static/dynamic status of the interaction | |
| bool | m_is_touching |
| contact status of the interaction | |
| double | m_E_diss |
| dissipated energy | |
| bool | m_scaling |
| scaling k with particle radius | |
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 | |
| int | m_iid |
| interaction id | |
| bool | m_init |
Frictional+Elastic interaction between particles with velocity weakening friction.
| CVWFriction::CVWFriction | ( | ) |
Default constructor
|
virtual |
Calculate elastic & frictional forces. The current coefficient of friction is calculated by a velocity weakening friction law
Reimplemented from CFrictionInteraction.
References CParticle::applyForce(), CFrictionInteraction::m_cpos, CFrictionInteraction::m_dt, CFrictionInteraction::m_Ffric, CFrictionInteraction::m_force_deficit, CFrictionInteraction::m_is_slipping, CFrictionInteraction::m_is_touching, CFrictionInteraction::m_k, CFrictionInteraction::m_ks, CFrictionInteraction::m_mu, and CFrictionInteraction::m_normal_force.

|
static |
Get the particle member function which returns a checked scalar field of a given name.
| name | the name of the field |
Reimplemented from CFrictionInteraction.
References CFrictionInteraction::getAbsFrictionalForce(), CFrictionInteraction::getAbsMuFN(), getCurrentMu(), and CFrictionInteraction::getSlipVelocity().

| pair< bool, double > CVWFriction::getCurrentMu | ( | ) | const |
get current coefficient of friction
References CFrictionInteraction::m_mu.
Referenced by getCheckedScalarFieldFunction().

|
static |
Get the particle member function which returns a scalar field of a given name.
| name | the name of the field |
Reimplemented from CFrictionInteraction.
References CFrictionInteraction::Count(), CFrictionInteraction::getPotentialEnergy(), CFrictionInteraction::getSlipping(), and CFrictionInteraction::getSticking().

|
static |
Get the particle member function which returns a vector field of a given name.
| name | the name of the field |
Reimplemented from CFrictionInteraction.
1.8.1