ESyS-Particle  4.0.1
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
CAdhesiveFriction Class Reference

Frictional+adhesive Elastic interaction between particles. More...

#include <AdhesiveFriction.h>

Inheritance diagram for CAdhesiveFriction:
Inheritance graph
[legend]
Collaboration diagram for CAdhesiveFriction:
Collaboration graph
[legend]

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 (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 CParticlefirst () const
const CParticlesecond () const
CParticlefirst ()
CParticlesecond ()
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 Public Member Functions inherited from CFrictionInteraction
static ScalarFieldFunction getScalarFieldFunction (const string &)
static CheckedScalarFieldFunction getCheckedScalarFieldFunction (const string &)
static VectorFieldFunction getVectorFieldFunction (const string &)

Protected Attributes

double m_r_cut
double m_r_cut_h
- 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
CParticlem_p1
CParticlem_p2
- Protected Attributes inherited from AInteraction
vector< int > m_id
 id's of the particles involved
int m_iid
 interaction id
bool m_init

Friends

class TML_PackedMessageInterface

Detailed Description

Frictional+adhesive Elastic interaction between particles.

Constructor & Destructor Documentation

CAdhesiveFriction::CAdhesiveFriction ( )

Default constructor for CAdhesiveFriction interaction Zero all coefficients

References CFrictionInteraction::m_dt, CFrictionInteraction::m_k, CFrictionInteraction::m_ks, and CFrictionInteraction::m_r0.

CAdhesiveFriction::CAdhesiveFriction ( CParticle p1,
CParticle p2,
const CAdhesiveFrictionIGP param 
)

Construct a CAdhesiveFriction interaction from 2 particle pointers and the parameters

Parameters
p1pointer to the first particle
p2pointer to the second particle
paramthe interaction parameters

References CFrictionInteraction::m_dt, CFrictionInteraction::m_k, CFrictionInteraction::m_ks, and CFrictionInteraction::m_r0.

CAdhesiveFriction::~CAdhesiveFriction ( )
virtual

destruct a CAdehsiveFriction interaction, i.e.do nothing

Member Function Documentation

void CAdhesiveFriction::calcForces ( )
virtual

Calculate elastic and frictional forces.

Reimplemented from CFrictionInteraction.

References CParticle::applyForce(), CFrictionInteraction::m_Ffric, CFrictionInteraction::m_k, CFrictionInteraction::m_normal_force, and CFrictionInteraction::m_r0.

Here is the call graph for this function:


The documentation for this class was generated from the following files: