ESyS-Particle  2.3.4
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, Vec3getRaw2Data () 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

◆ CheckedScalarFieldFunction

template<class ParticleType >
typedef pair<bool,double>(ABCDamping::* ABCDamping< ParticleType >::CheckedScalarFieldFunction) () const

◆ ParameterType

template<class ParticleType >
typedef ABCDampingIGP ABCDamping< ParticleType >::ParameterType

◆ ScalarFieldFunction

template<class ParticleType >
typedef double(ABCDamping::* ABCDamping< ParticleType >::ScalarFieldFunction) () const

◆ VectorFieldFunction

template<class ParticleType >
typedef Vec3(ABCDamping::* ABCDamping< ParticleType >::VectorFieldFunction) () const

Constructor & Destructor Documentation

◆ ABCDamping()

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:

◆ ~ABCDamping()

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

Member Function Documentation

◆ getCheckedScalarFieldFunction()

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.

◆ getScalarFieldFunction()

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

References NULL.

◆ getVectorFieldFunction()

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

◆ m_c1

template<class ParticleType >
double ABCDamping< ParticleType >::m_c1
protected

◆ m_normal

template<class ParticleType >
Vec3 ABCDamping< ParticleType >::m_normal
protected

◆ m_pos

template<class ParticleType >
Vec3 ABCDamping< ParticleType >::m_pos
protected

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