ESyS-Particle  2.3.4
CRotThermBondedInteraction Class Reference

#include <RotThermBondedInteraction.h>

Inheritance diagram for CRotThermBondedInteraction:
Collaboration diagram for CRotThermBondedInteraction:

Public Types

typedef CRotThermBondedIGP ParameterType
 
typedef BondedInteractionCpData CheckPointable
 
typedef double(CRotThermBondedInteraction::* ScalarFieldFunction) () const
 
typedef pair< bool, double >(CRotThermBondedInteraction::* CheckedScalarFieldFunction) () const
 
typedef Vec3(CRotThermBondedInteraction::* VectorFieldFunction) () const
 

Public Member Functions

 CRotThermBondedInteraction ()
 
 CRotThermBondedInteraction (CRotThermParticle *, CRotThermParticle *, const CRotThermBondedIGP &)
 
virtual ~CRotThermBondedInteraction ()
 
int getTag () const
 
void setTag (int tag)
 
void calcForces ()
 
void calcHeatTrans ()
 
bool broken ()
 
Vec3 getBondedVector1 () const
 
Vec3 getBondedVector2 () const
 
double getPotentialEnergy () const
 
double getNormalPotentialEnergy () const
 
double getShearPotentialEnergy () const
 
double getTwistPotentialEnergy () const
 
double getBendPotentialEnergy () const
 
double getCriterion () const
 
Vec3 getForce () const
 
virtual Vec3 getPos () const
 
Vec3 getCentrePtDiff () const
 
Vec3 getInitialCentrePtDiff () const
 
Vec3 getInitialMidPoint () const
 
Vec3 getShearDiff () const
 
virtual void saveCheckPointData (std::ostream &oStream)
 
virtual void loadCheckPointData (std::istream &iStream)
 
virtual void saveRestartData (std::ostream &oStream)
 
virtual void loadRestartData (std::istream &iStream)
 
- Public Member Functions inherited from ARotThermPairInteraction
 ARotThermPairInteraction ()
 
 ARotThermPairInteraction (CRotThermParticle *, CRotThermParticle *)
 
virtual ~ARotThermPairInteraction ()
 
const CRotThermParticlefirst () const
 
const CRotThermParticlesecond () const
 
CRotThermParticlefirst ()
 
CRotThermParticlesecond ()
 
pair< int, int > getPairID () const
 
virtual void calcHeatFrict ()
 
void checkIDs ()
 
virtual bool hasTag (int, int) const
 
virtual Vec3 getPosFirst () const
 
virtual Vec3 getPosSecond () const
 
void setPP (CRotThermParticle *, CRotThermParticle *)
 
void setPP (const vector< CRotThermParticle * >)
 
esys::lsm::quintuple< Vec3, double, Vec3, double, Vec3getRaw2Data () const
 
- Public Member Functions inherited from AInteraction
 AInteraction ()
 
virtual ~AInteraction ()
 
bool initialized () const
 
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 ()
 

Private Attributes

double m_dist
 current distance, cached from last calcForces() More...
 
double m_min_r
 
double m_kr
 spring constant More...
 
double m_ks
 
double m_kb
 
double m_kt
 
double m_diffusivity
 
double m_max_nForce
 
double m_max_shForce
 
double m_max_tMoment
 
double m_max_bMoment
 
double m_nForce
 
double m_shForce
 
double m_tMoment
 
double m_bMoment
 
Vec3 m_force
 current force, cached for E_pot calculation More...
 
Vec3 m_moment
 
Vec3 m_cpos
 
int m_tag
 

Friends

class TML_PackedMessageInterface
 
ostream & operator<< (ostream &, const CRotThermBondedInteraction &)
 

Additional Inherited Members

- Protected Attributes inherited from ARotThermPairInteraction
CRotThermParticlem_p1
 
CRotThermParticlem_p2
 
- Protected Attributes inherited from AInteraction
vector< int > m_id
 id's of the particles involved More...
 
int m_iid
 interaction id More...
 
bool m_init
 

Detailed Description

Interaction between bonded, thermal, rotational particles

Member Typedef Documentation

◆ CheckedScalarFieldFunction

typedef pair<bool,double>(CRotThermBondedInteraction::* CRotThermBondedInteraction::CheckedScalarFieldFunction) () const

◆ CheckPointable

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

◆ ParameterType

◆ ScalarFieldFunction

typedef double(CRotThermBondedInteraction::* CRotThermBondedInteraction::ScalarFieldFunction) () const

◆ VectorFieldFunction

typedef Vec3(CRotThermBondedInteraction::* CRotThermBondedInteraction::VectorFieldFunction) () const

Constructor & Destructor Documentation

◆ CRotThermBondedInteraction() [1/2]

CRotThermBondedInteraction::CRotThermBondedInteraction ( )

◆ CRotThermBondedInteraction() [2/2]

◆ ~CRotThermBondedInteraction()

CRotThermBondedInteraction::~CRotThermBondedInteraction ( )
virtual

Member Function Documentation

◆ broken()

◆ calcForces()

◆ calcHeatTrans()

void CRotThermBondedInteraction::calcHeatTrans ( )
virtual

◆ getBendPotentialEnergy()

double CRotThermBondedInteraction::getBendPotentialEnergy ( ) const

References m_bMoment, and m_kb.

Referenced by getScalarFieldFunction().

Here is the caller graph for this function:

◆ getBondedVector1()

Vec3 CRotThermBondedInteraction::getBondedVector1 ( ) const

◆ getBondedVector2()

Vec3 CRotThermBondedInteraction::getBondedVector2 ( ) const

◆ getCentrePtDiff()

Vec3 CRotThermBondedInteraction::getCentrePtDiff ( ) const

References CBasicParticle::getPos(), ARotThermPairInteraction::m_p1, and ARotThermPairInteraction::m_p2.

Here is the call graph for this function:

◆ getCheckedScalarFieldFunction()

CRotThermBondedInteraction::CheckedScalarFieldFunction CRotThermBondedInteraction::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.

◆ getCriterion()

double CRotThermBondedInteraction::getCriterion ( ) const

References m_bMoment, m_max_bMoment, m_max_nForce, m_max_shForce, m_max_tMoment, m_nForce, m_shForce, and m_tMoment.

Referenced by getScalarFieldFunction().

Here is the caller graph for this function:

◆ getForce()

Vec3 CRotThermBondedInteraction::getForce ( ) const

References m_force.

Referenced by getVectorFieldFunction().

Here is the caller graph for this function:

◆ getInitialCentrePtDiff()

Vec3 CRotThermBondedInteraction::getInitialCentrePtDiff ( ) const

References CParticle::getInitPos(), ARotThermPairInteraction::m_p1, and ARotThermPairInteraction::m_p2.

Referenced by getInitialMidPoint().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getInitialMidPoint()

Vec3 CRotThermBondedInteraction::getInitialMidPoint ( ) const

References getInitialCentrePtDiff(), CBasicParticle::getRad(), ARotThermPairInteraction::m_p1, ARotThermPairInteraction::m_p2, and Vec3::norm().

Referenced by getShearDiff().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNormalPotentialEnergy()

double CRotThermBondedInteraction::getNormalPotentialEnergy ( ) const

References m_kr, and m_nForce.

Referenced by getScalarFieldFunction().

Here is the caller graph for this function:

◆ getPos()

virtual Vec3 CRotThermBondedInteraction::getPos ( ) const
inlinevirtual

Implements ARotThermPairInteraction.

References m_cpos.

◆ getPotentialEnergy()

double CRotThermBondedInteraction::getPotentialEnergy ( ) const

References m_bMoment, m_kb, m_kr, m_ks, m_kt, m_nForce, m_shForce, and m_tMoment.

Referenced by getScalarFieldFunction().

Here is the caller graph for this function:

◆ getScalarFieldFunction()

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

References AInteraction::Count(), getBendPotentialEnergy(), getCriterion(), getNormalPotentialEnergy(), getPotentialEnergy(), getShearPotentialEnergy(), getTwistPotentialEnergy(), and NULL.

Here is the call graph for this function:

◆ getShearDiff()

Vec3 CRotThermBondedInteraction::getShearDiff ( ) const

◆ getShearPotentialEnergy()

double CRotThermBondedInteraction::getShearPotentialEnergy ( ) const

References m_ks, and m_shForce.

Referenced by getScalarFieldFunction().

Here is the caller graph for this function:

◆ getTag()

int CRotThermBondedInteraction::getTag ( ) const

References m_tag.

Referenced by saveRestartData().

Here is the caller graph for this function:

◆ getTwistPotentialEnergy()

double CRotThermBondedInteraction::getTwistPotentialEnergy ( ) const

References m_kt, and m_tMoment.

Referenced by getScalarFieldFunction().

Here is the caller graph for this function:

◆ getType()

static string CRotThermBondedInteraction::getType ( )
inlinestatic

◆ getVectorFieldFunction()

CRotThermBondedInteraction::VectorFieldFunction CRotThermBondedInteraction::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 getForce(), and NULL.

Here is the call graph for this function:

◆ loadCheckPointData()

void CRotThermBondedInteraction::loadCheckPointData ( std::istream &  iStream)
virtual

◆ loadRestartData()

void CRotThermBondedInteraction::loadRestartData ( std::istream &  iStream)
virtual

load restart data from stream

Parameters
iStreamthe input stream

References m_diffusivity, AInteraction::m_id, AInteraction::m_init, m_kb, m_kr, m_ks, m_kt, m_max_bMoment, m_max_nForce, m_max_shForce, m_max_tMoment, and setTag().

Here is the call graph for this function:

◆ saveCheckPointData()

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

◆ saveRestartData()

void CRotThermBondedInteraction::saveRestartData ( std::ostream &  oStream)
virtual

save restart data to ostream

Parameters
oStreamthe output stream

References getTag(), m_diffusivity, AInteraction::m_id, AInteraction::m_init, m_kb, m_kr, m_ks, m_kt, m_max_bMoment, m_max_nForce, m_max_shForce, and m_max_tMoment.

Here is the call graph for this function:

◆ setTag()

void CRotThermBondedInteraction::setTag ( int  tag)

References m_tag.

Referenced by loadRestartData().

Here is the caller graph for this function:

Friends And Related Function Documentation

◆ operator<<

ostream& operator<< ( ostream &  ost,
const CRotThermBondedInteraction BI 
)
friend

◆ TML_PackedMessageInterface

friend class TML_PackedMessageInterface
friend

Member Data Documentation

◆ m_bMoment

double CRotThermBondedInteraction::m_bMoment
private

◆ m_cpos

Vec3 CRotThermBondedInteraction::m_cpos
private

Referenced by calcForces(), and getPos().

◆ m_diffusivity

◆ m_dist

double CRotThermBondedInteraction::m_dist
private

current distance, cached from last calcForces()

Referenced by broken(), calcForces(), and CRotThermBondedInteraction().

◆ m_force

Vec3 CRotThermBondedInteraction::m_force
private

current force, cached for E_pot calculation

Referenced by calcForces(), CRotThermBondedInteraction(), and getForce().

◆ m_kb

◆ m_kr

◆ m_ks

◆ m_kt

◆ m_max_bMoment

◆ m_max_nForce

◆ m_max_shForce

◆ m_max_tMoment

◆ m_min_r

double CRotThermBondedInteraction::m_min_r
private

◆ m_moment

Vec3 CRotThermBondedInteraction::m_moment
private

◆ m_nForce

double CRotThermBondedInteraction::m_nForce
private

◆ m_shForce

double CRotThermBondedInteraction::m_shForce
private

◆ m_tag

int CRotThermBondedInteraction::m_tag
private

◆ m_tMoment

double CRotThermBondedInteraction::m_tMoment
private

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