ESyS-Particle  2.3.4
CElasticSphereBodyInteraction< T > Class Template Reference

unbonded elastic interaction between a particle and a wall More...

#include <ESphereBodyInteraction.h>

Inheritance diagram for CElasticSphereBodyInteraction< T >:
Collaboration diagram for CElasticSphereBodyInteraction< T >:

Public Member Functions

 CElasticSphereBodyInteraction ()
 
 CElasticSphereBodyInteraction (T *, CSphereBody *, double, bool)
 
virtual ~CElasticSphereBodyInteraction ()
 
virtual void calcForces ()
 
virtual Vec3 getForce ()
 
virtual void setPP (const vector< T * >)
 
virtual double getStiffness ()
 
- Public Member Functions inherited from ASphereBodyInteraction< T >
 ASphereBodyInteraction (T *, CSphereBody *, bool iflag=true)
 
virtual ~ASphereBodyInteraction ()
 
virtual bool hasTag (int, int) const
 
virtual Vec3 getPosFirst () const
 
bool isInner ()
 
- Public Member Functions inherited from AInteraction
 AInteraction ()
 
virtual ~AInteraction ()
 
bool initialized () const
 
virtual void calcHeatTrans ()
 
virtual void calcHeatFrict ()
 
vector< int > getAllID () const
 
int getID ()
 
virtual Vec3 getPosSecond () const
 
double Count () const
 

Protected Attributes

double m_k
 spring constant More...
 
- Protected Attributes inherited from ASphereBodyInteraction< T >
T * m_p
 
CSphereBodym_sphere
 
bool m_inner_flag
 
- 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

template<class T>
class CElasticSphereBodyInteraction< T >

unbonded elastic interaction between a particle and a wall

Author
Steffen Abe $Revision$ $Date$

Constructor & Destructor Documentation

◆ CElasticSphereBodyInteraction() [1/2]

◆ CElasticSphereBodyInteraction() [2/2]

template<class T >
CElasticSphereBodyInteraction< T >::CElasticSphereBodyInteraction ( T *  p,
CSphereBody w,
double  k,
bool  iflag 
)

constructor for elastic interaction between particle & sphere body

Parameters
ppointer to the particle
wpointer to the sphere body
kspring constant
iflagflag if the particle is in the inner part of the local NTable

References CParticle::getDo2dCalculations(), CElasticSphereBodyInteraction< T >::m_k, and ASphereBodyInteraction< T >::m_p.

Here is the call graph for this function:

◆ ~CElasticSphereBodyInteraction()

template<class T >
virtual CElasticSphereBodyInteraction< T >::~CElasticSphereBodyInteraction ( )
inlinevirtual

Member Function Documentation

◆ calcForces()

template<class T >
void CElasticSphereBodyInteraction< T >::calcForces
virtual

calculate free elastic forces.

Implements ASphereBodyInteraction< T >.

References Vec3::norm(), and Vec3::unit().

Here is the call graph for this function:

◆ getForce()

template<class T >
Vec3 CElasticSphereBodyInteraction< T >::getForce
virtual

calculate & return free elastic forces, don't apply them

References Vec3::norm(), and Vec3::unit().

Here is the call graph for this function:

◆ getStiffness()

template<class T >
double CElasticSphereBodyInteraction< T >::getStiffness
virtual

Get stiffness of the interaction. Returns spring constant (m_k) if interaction is in contact, 0.0 otherwise.

Reimplemented from ASphereBodyInteraction< T >.

References Vec3::norm().

Here is the call graph for this function:

◆ setPP()

template<class T >
virtual void CElasticSphereBodyInteraction< T >::setPP ( const vector< T * >  )
inlinevirtual

Member Data Documentation

◆ m_k

template<class T >
double CElasticSphereBodyInteraction< T >::m_k
protected

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