ESyS-Particle  4.0.1
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes
CLocalDamping< T > Class Template Reference

Local damping of the particle motion by a damping coefficient. More...

#include <LocalDamping.h>

Collaboration diagram for CLocalDamping< T >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef CLocalDampingIGP ParameterType
typedef double(CLocalDamping::* ScalarFieldFunction )() const
typedef pair< bool, double >
(CLocalDamping::* 
CheckedScalarFieldFunction )() const
typedef Vec3(CLocalDamping::* VectorFieldFunction )() const

Public Member Functions

 CLocalDamping (T *, double, double)
 CLocalDamping (T *, const CLocalDampingIGP &)
 CLocalDamping (T *, CLocalDampingIGP *)
virtual ~CLocalDamping ()
void setTimeStepSize (double dt)
virtual void calcForces ()
virtual bool hasTag (int, int) const
virtual Vec3 getPosFirst () const
virtual Vec3 getPosSecond () const
virtual Vec3 getPos () const
vector< int > getAllID () const
esys::lsm::quintuple< Vec3,
double, Vec3, double, Vec3
getRaw2Data () const
double getDissipatedEnergy () const
Vec3 getForce () const

Static Public Member Functions

static ScalarFieldFunction getScalarFieldFunction (const string &)
static CheckedScalarFieldFunction getCheckedScalarFieldFunction (const string &)
static VectorFieldFunction getVectorFieldFunction (const string &)

Protected Attributes

T * m_p
 the particle
double m_visc
 damping coefficient
double m_dt
 time step
double m_E_diss
 dissipated energy
Vec3 m_force
 current force

Detailed Description

template<class T>
class CLocalDamping< T >

Local damping of the particle motion by a damping coefficient.


Constructor & Destructor Documentation

template<class T >
CLocalDamping< T >::CLocalDamping ( T *  P,
double  visc,
double  dt 
)

Construct a local damping "interaction" for a particle

Parameters:
Pthe particle
viscthe damping coefficient
dtthe time step
template<class T >
CLocalDamping< T >::CLocalDamping ( T *  P,
const CLocalDampingIGP param 
)

Construct a local damping "interaction" for a particle

Parameters:
Pthe particle
paramthe parameters
template<class T >
CLocalDamping< T >::CLocalDamping ( T *  P,
CLocalDampingIGP param 
)

Construct a local damping "interaction" for a particle

Parameters:
Pthe particle
parampointer to the parameters
template<class T >
CLocalDamping< T >::~CLocalDamping ( ) [virtual]

destructor


Member Function Documentation

template<class T >
void CLocalDamping< T >::calcForces ( ) [virtual]

Calculate the local damping force.

template<class T >
vector< int > CLocalDamping< T >::getAllID ( ) const

return a vector of all particle IDs

template<class T >
CLocalDamping< T >::CheckedScalarFieldFunction CLocalDamping< T >::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
template<class T >
double CLocalDamping< T >::getDissipatedEnergy ( ) const

return the amount of energy dissipated during the last time step

template<class T >
CLocalDamping< T >::ScalarFieldFunction CLocalDamping< T >::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
template<class T >
CLocalDamping< T >::VectorFieldFunction CLocalDamping< T >::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
template<class T >
bool CLocalDamping< T >::hasTag ( int  tag,
int  mask 
) const [virtual]

check if any of the particles in the interaction fits tag & mask

Parameters:
tagthe tag
maskthe mask

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