ESyS-Particle
4.0.1
|
class for a "short" bonded interaction More...
#include <ShortBondedInteraction.h>
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 Member Functions | |
CShortBondedInteraction (CParticle *, CParticle *, const CBondedIGP &) | |
double | getEquiDist () const |
void | saveCheckPointData (std::ostream &oStream) |
void | loadCheckPointData (std::istream &iStream) |
![]() | |
CBondedInteraction (CParticle *particle1, CParticle *particle2, const CBondedIGP ¶ms) | |
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) |
![]() | |
APairInteraction (CParticle *, CParticle *) | |
const CParticle * | first () const |
const CParticle * | second () const |
CParticle * | first () |
CParticle * | second () |
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) |
![]() | |
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 | |
![]() | |
CBondedInteraction (CParticle *, CParticle *) | |
![]() | |
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 | |
![]() | |
CParticle * | m_p1 |
CParticle * | m_p2 |
![]() | |
vector< int > | m_id |
id's of the particles involved | |
int | m_iid |
interaction id | |
bool | m_init |
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
Used by PIS to save/load check-point data for objects of this type.
Reimplemented from CBondedInteraction.
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.
p1 | pointer to 1st particle |
p2 | pointer to 2nd particles |
param | the 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.
|
static |
Get the particle member function which returns a checked scalar field of a given name.
name | the name of the field |
Reimplemented from CBondedInteraction.
|
static |
Get the particle member function which returns a scalar field of a given name.
name | the name of the field |
Reimplemented from CBondedInteraction.
References CBondedInteraction::getPotentialEnergy(), and CBondedInteraction::getStrain().
|
static |
Get the particle member function which returns a vector field of a given name.
name | the name of the field |
Reimplemented from CBondedInteraction.
References CBondedInteraction::getForce().
|
virtual |
Save snapshot data (non-restartable, viz/postprocessing only) to an output stream.
oStream | the output stream |
Reimplemented from CBondedInteraction.
References ShortBondedInteractionCpData::saveCheckPointData().