ESyS-Particle  2.3.4
CFractalFriction Class Reference

Frictional+Elastic interaction between particles with fractal distribution of the coefficient of friction. More...

#include <FractalFriction.h>

Inheritance diagram for CFractalFriction:
Collaboration diagram for CFractalFriction:

Public Types

typedef FractalFrictionIGP ParameterType
 
typedef double(CFractalFriction::* ScalarFieldFunction) () const
 
typedef Vec3(CFractalFriction::* VectorFieldFunction) () const
 
typedef pair< bool, double >(CFractalFriction::* CheckedScalarFieldFunction) () 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

 CFractalFriction ()
 
 CFractalFriction (CParticle *, CParticle *, const FractalFrictionIGP &)
 
virtual ~CFractalFriction ()
 
- Public Member Functions inherited from CFrictionInteraction
 CFrictionInteraction ()
 
 CFrictionInteraction (CParticle *, CParticle *)
 
 CFrictionInteraction (CParticle *, CParticle *, const CFrictionIGP &)
 
virtual ~CFrictionInteraction ()
 
virtual void calcForces ()
 
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 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, Vec3getRaw2Data () 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 ScalarFieldFunction getScalarFieldFunction (const string &)
 
static VectorFieldFunction getVectorFieldFunction (const string &)
 
static CheckedScalarFieldFunction getCheckedScalarFieldFunction (const string &)
 
- 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 ()
 

Friends

class TML_PackedMessageInterface
 
ostream & operator<< (ostream &, const CFractalFriction &)
 

Additional Inherited Members

- 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
CParticlem_p1
 
CParticlem_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
 

Detailed Description

Frictional+Elastic interaction between particles with fractal distribution of the coefficient of friction.

Member Typedef Documentation

◆ CheckedScalarFieldFunction

typedef pair<bool,double>(CFractalFriction::* CFractalFriction::CheckedScalarFieldFunction) () const

◆ ParameterType

◆ ScalarFieldFunction

typedef double(CFractalFriction::* CFractalFriction::ScalarFieldFunction) () const

◆ VectorFieldFunction

typedef Vec3(CFractalFriction::* CFractalFriction::VectorFieldFunction) () const

Constructor & Destructor Documentation

◆ CFractalFriction() [1/2]

◆ CFractalFriction() [2/2]

◆ ~CFractalFriction()

CFractalFriction::~CFractalFriction ( )
virtual

Member Function Documentation

◆ getCheckedScalarFieldFunction()

CFractalFriction::CheckedScalarFieldFunction CFractalFriction::getCheckedScalarFieldFunction ( const string &  name)
static

Get the particle member function which returns a checked scalar field of a given name.

Parameters
namethe name of the field

References CFrictionInteraction::getAbsFrictionalForce(), CFrictionInteraction::getAbsMuFN(), CFrictionInteraction::getMuEffXY(), CFrictionInteraction::getMuEffXZ(), CFrictionInteraction::getSlipVelocity(), and NULL.

Here is the call graph for this function:

◆ getScalarFieldFunction()

CFractalFriction::ScalarFieldFunction CFractalFriction::getScalarFieldFunction ( const string &  name)
static

Get the particle member function which returns a scalar field of a given name.

Parameters
namethe name of the field

References CFrictionInteraction::Count(), CFrictionInteraction::getPotentialEnergy(), CFrictionInteraction::getSlipping(), and NULL.

Here is the call graph for this function:

◆ getType()

static string CFractalFriction::getType ( )
inlinestatic

◆ getVectorFieldFunction()

CFractalFriction::VectorFieldFunction CFractalFriction::getVectorFieldFunction ( const string &  name)
static

Get the particle member function which returns a vector field of a given name.

Parameters
namethe name of the field

References NULL.

Friends And Related Function Documentation

◆ operator<<

ostream& operator<< ( ostream &  ost,
const CFractalFriction FI 
)
friend

◆ TML_PackedMessageInterface

friend class TML_PackedMessageInterface
friend

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