13 #ifndef __ROTTHERMBONDEDINTERACTION_H
14 #define __ROTTHERMBONDEDINTERACTION_H
17 #include "Model/RotThermPairInteraction.h"
18 #include "Model/RotThermParticle.h"
19 #include "Model/InteractionParam.h"
20 #include "Model/BondedInteractionCpData.h"
21 #include "Foundation/vec3.h"
22 #include "Model/IGParam.h"
32 double calc_angle(
double ,
double ) ;
38 const std::string &name,
52 double max_nForce, max_shForce,max_tMoment, max_bMoment;
56 virtual std::string getTypeString()
const
58 return "RotThermBonded";
90 double m_diffusivity ;
94 double m_max_shForce ;
95 double m_max_tMoment ;
96 double m_max_bMoment ;
119 static string getType(){
return "RotThermBonded";};
122 void setTag(
int tag);
125 void calcHeatTrans() ;
130 Vec3 getBondedVector1()
const;
131 Vec3 getBondedVector2()
const;
133 double getPotentialEnergy()
const;
134 double getNormalPotentialEnergy()
const;
135 double getShearPotentialEnergy()
const;
136 double getTwistPotentialEnergy()
const;
137 double getBendPotentialEnergy()
const;
138 double getCriterion()
const;
139 Vec3 getForce()
const;
140 virtual Vec3 getPos()
const {
return m_cpos;};
142 Vec3 getCentrePtDiff()
const;
143 Vec3 getInitialCentrePtDiff()
const;
144 Vec3 getInitialMidPoint()
const;
146 Vec3 getShearDiff()
const;
151 virtual void saveCheckPointData(std::ostream &oStream);
153 virtual void loadCheckPointData(std::istream &iStream);
160 #endif //__BONDEDINTERACTION_H