ESyS-Particle  4.0.1
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
CShortBondedInteraction Class Reference

class for a "short" bonded interaction More...

#include <ShortBondedInteraction.h>

Inheritance diagram for CShortBondedInteraction:
Inheritance graph
[legend]
Collaboration diagram for CShortBondedInteraction:
Collaboration graph
[legend]

Public Types

typedef CBondedIGP ParameterType
typedef
ShortBondedInteractionCpData 
CheckPointable
typedef double(CShortBondedInteraction::* ScalarFieldFunction )() const
typedef pair< bool, double >
(CShortBondedInteraction::* 
CheckedScalarFieldFunction )() const
typedef Vec3(CShortBondedInteraction::* VectorFieldFunction )() const
- Public Types inherited from CBondedInteraction
typedef CBondedIGP ParameterType
typedef BondedInteractionCpData CheckPointable
typedef double(CBondedInteraction::* ScalarFieldFunction )() const
typedef pair< bool, double >
(CBondedInteraction::* 
CheckedScalarFieldFunction )() const
typedef Vec3(CBondedInteraction::* VectorFieldFunction )() const

Public Member Functions

 CShortBondedInteraction (CParticle *, CParticle *, const CBondedIGP &)
double getEquiDist () const
void saveCheckPointData (std::ostream &oStream)
void loadCheckPointData (std::istream &iStream)
- Public Member Functions inherited from CBondedInteraction
 CBondedInteraction (CParticle *particle1, CParticle *particle2, const CBondedIGP &params)
virtual void calcForces ()
void setBreak (double)
bool broken ()
int getTag () const
void setTag (int tag)
double getCriterion () const
double getPotentialEnergy () const
double getStrain () const
Vec3 getForce () const
virtual Vec3 getPos () const
virtual void saveRestartData (std::ostream &oStream)
virtual void loadRestartData (std::istream &iStream)
- Public Member Functions inherited from APairInteraction
 APairInteraction (CParticle *, CParticle *)
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, Vec3
getRaw2Data () const
template<class TmplParticle >
void setPP (const vector< TmplParticle * > &pp)
- Public Member Functions inherited from AInteraction
bool initialized () const
virtual void calcHeatTrans ()
virtual void calcHeatFrict ()
vector< int > getAllID () const
int getID ()
double Count () const

Static Public Member Functions

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 CBondedInteraction &)

Additional Inherited Members

- Protected Member Functions inherited from CBondedInteraction
 CBondedInteraction (CParticle *, CParticle *)
- Protected Attributes inherited from CBondedInteraction
double m_k
 spring constant
double m_r0
 equilibrium distance
double m_dist
 current distance, cached from last calcForces()
double m_break
 breaking distance
Vec3 m_force
 current force, cached for E_pot calculation
Vec3 m_cpos
int m_tag
 Interaction tag;.
bool m_scaling
 scaling k with particle radius

Detailed Description

class for a "short" bonded interaction

A bonded interaction where the euilibrium distance is not determined by the radii of the particles but by the initial distance, i.e. it allows for overlapping particles. Uses the same parameter class as "normal" bonded interactions

Member Typedef Documentation

Used by PIS to save/load check-point data for objects of this type.

Constructor & Destructor Documentation

CShortBondedInteraction::CShortBondedInteraction ( CParticle p1,
CParticle p2,
const CBondedIGP param 
)

Construct valid short bonded interaction. The equilibrium distance is calculated from the initial distance of the two particles.

Parameters
p1pointer to 1st particle
p2pointer to 2nd particles
paramthe interaction parameters

References CBondedIGP::k, CBondedInteraction::m_break, CBondedInteraction::m_dist, CBondedInteraction::m_force, CBondedInteraction::m_k, CBondedInteraction::m_r0, CBondedInteraction::m_tag, and CBondedIGP::rbreak.

Member Function Documentation

CShortBondedInteraction::CheckedScalarFieldFunction CShortBondedInteraction::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

Reimplemented from CBondedInteraction.

CShortBondedInteraction::ScalarFieldFunction CShortBondedInteraction::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

Reimplemented from CBondedInteraction.

References CBondedInteraction::getPotentialEnergy(), and CBondedInteraction::getStrain().

Here is the call graph for this function:

CShortBondedInteraction::VectorFieldFunction CShortBondedInteraction::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

Reimplemented from CBondedInteraction.

References CBondedInteraction::getForce().

Here is the call graph for this function:

void CShortBondedInteraction::saveCheckPointData ( std::ostream &  oStream)
virtual

Save snapshot data (non-restartable, viz/postprocessing only) to an output stream.

Parameters
oStreamthe output stream

Reimplemented from CBondedInteraction.

References ShortBondedInteractionCpData::saveCheckPointData().

Here is the call graph for this function:


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