ESyS-Particle  2.3
ABCDamping< ParticleType > Class Template Reference

#include <ABCDamping.h>

Inheritance diagram for ABCDamping< ParticleType >:
Collaboration diagram for ABCDamping< ParticleType >:

Public Types

typedef ABCDampingIGP ParameterType
 
typedef double(ABCDamping::* ScalarFieldFunction )() const
 
typedef pair< bool, double >
(ABCDamping::* 
CheckedScalarFieldFunction )() const
 
typedef Vec3(ABCDamping::* VectorFieldFunction )() const
 
- Public Types inherited from CDamping< ParticleType >
typedef CDampingIGP ParameterType
 
typedef double(CDamping::* ScalarFieldFunction )() const
 
typedef pair< bool, double >
(CDamping::* 
CheckedScalarFieldFunction )() const
 
typedef Vec3(CDamping::* VectorFieldFunction )() const
 

Public Member Functions

 ABCDamping (ParticleType *, ABCDampingIGP *)
 
virtual ~ABCDamping ()
 
- Public Member Functions inherited from CDamping< ParticleType >
 CDamping (ParticleType *, const Vec3 &, double, double, int)
 
 CDamping (ParticleType *, const CDampingIGP &)
 
 CDamping (ParticleType *, CDampingIGP *)
 
virtual ~CDamping ()
 
void setLimit (double limit)
 
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 &)
 
- Static Public Member Functions inherited from CDamping< ParticleType >
static ScalarFieldFunction getScalarFieldFunction (const string &)
 
static CheckedScalarFieldFunction getCheckedScalarFieldFunction (const string &)
 
static VectorFieldFunction getVectorFieldFunction (const string &)
 
static void zeroFlops ()
 
static int Flops ()
 

Protected Attributes

Vec3 m_pos
 
Vec3 m_normal
 
double m_c1
 
- Protected Attributes inherited from CDamping< ParticleType >
ParticleType * m_p
 the particle More...
 
Vec3 m_vref
 reference velocity More...
 
double m_visc
 artificial viscosity More...
 
double m_dt
 time step More...
 
int m_maxiter
 iteration limit More...
 
double m_E_diss
 dissipated energy More...
 
Vec3 m_force
 current force More...
 

Additional Inherited Members

- Static Protected Attributes inherited from CDamping< ParticleType >
static double s_limit2
 square error limit for iteration More...
 
static int s_flops
 

Detailed Description

template<class ParticleType>
class ABCDamping< ParticleType >

Damping for absorbing boundary conditions - damping increases exponentially towards a given plane (boundary)

Member Typedef Documentation

template<class ParticleType>
typedef pair<bool,double>(ABCDamping::* ABCDamping< ParticleType >::CheckedScalarFieldFunction)() const
template<class ParticleType>
typedef ABCDampingIGP ABCDamping< ParticleType >::ParameterType
template<class ParticleType>
typedef double(ABCDamping::* ABCDamping< ParticleType >::ScalarFieldFunction)() const
template<class ParticleType>
typedef Vec3(ABCDamping::* ABCDamping< ParticleType >::VectorFieldFunction)() const

Constructor & Destructor Documentation

template<class ParticleType >
ABCDamping< ParticleType >::ABCDamping ( ParticleType *  P,
ABCDampingIGP param 
)

Construct a damping "interaction" for a particle

Parameters
Pthe particle
paramthe parameters

References ABCDampingIGP::getC1(), ABCDampingIGP::getNormal(), ABCDampingIGP::getPos(), CDamping< ParticleType >::m_p, and CDamping< ParticleType >::m_visc.

Here is the call graph for this function:

template<class ParticleType >
ABCDamping< ParticleType >::~ABCDamping ( )
virtual

Member Function Documentation

template<class T >
ABCDamping< T >::CheckedScalarFieldFunction ABCDamping< 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

References NULL.

template<class T >
ABCDamping< T >::ScalarFieldFunction ABCDamping< T >::getScalarFieldFunction ( const string &  name)
static

References NULL.

template<class T >
ABCDamping< T >::VectorFieldFunction ABCDamping< 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

References NULL.

Member Data Documentation

template<class ParticleType>
double ABCDamping< ParticleType >::m_c1
protected
template<class ParticleType>
Vec3 ABCDamping< ParticleType >::m_normal
protected
template<class ParticleType>
Vec3 ABCDamping< ParticleType >::m_pos
protected

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