Go to the documentation of this file.
13 #ifndef __ROTELASTICINTERACTION_H
14 #define __ROTELASTICINTERACTION_H
78 static string getType(){
return "RotElastic";}
91 #endif //__ELASTICINTERACTION_H
double getPotentialEnergy() const
Definition: RotElasticInteraction.cpp:93
bool m_scaling
scaling of normal stiffness with particle size
Definition: RotElasticInteraction.h:67
static ScalarFieldFunction getScalarFieldFunction(const string &)
Definition: RotElasticInteraction.cpp:103
MPI send/recv buffer with automagically adjusted size.
Definition: mpivbuf.h:35
CRotElasticIGP ParameterType
Definition: RotElasticInteraction.h:70
double Count() const
Definition: Interaction.h:56
void setNormalSpringConst(double k)
Definition: RotElasticInteraction.h:35
pair< bool, double >(CRotElasticInteraction::* CheckedScalarFieldFunction)() const
Definition: RotElasticInteraction.h:54
Vec3 m_cpos
current position
Definition: RotElasticInteraction.h:65
ostream & operator<<(ostream &ost, const CRotElasticInteraction &BI)
Definition: RotElasticInteraction.cpp:184
CRotElasticIGP()
Definition: RotElasticInteraction.cpp:21
virtual void saveRestartData(std::ostream &oStream)
Definition: RotElasticInteraction.cpp:159
bool m_init
Definition: Interaction.h:41
Abstract base class for MPI send/recv buffer.
Definition: mpibuf.h:34
static string getType()
Definition: RotElasticInteraction.h:78
double m_nForce
normal force, always >= 0
Definition: RotElasticInteraction.h:64
Vec3 m_force
caching force for E_pot
Definition: RotElasticInteraction.h:63
VEC3_INLINE double norm() const
Definition: vec3.hpp:211
friend ostream & operator<<(ostream &, const CRotElasticIGP &)
Definition: RotElasticInteractionGroup.cpp:45
virtual ~CRotElasticInteraction()
Definition: RotElasticInteraction.h:74
void applyForce(const Vec3 &, const Vec3 &)
Definition: Particle.cpp:384
Vec3 getForce() const
Definition: RotElasticInteraction.cpp:61
CRotParticle * m_p2
Definition: RotPairInteraction.h:31
Vec3(CRotElasticInteraction::* VectorFieldFunction)() const
Definition: RotElasticInteraction.h:55
double m_kr
Definition: RotElasticInteraction.h:31
#define NULL
Definition: t_list.h:17
Abstract base class interactions between 2 rotational particles.
Definition: RotPairInteraction.h:29
Elastic Interaction between free rotational particles.
Definition: RotElasticInteraction.h:51
CRotParticle * m_p1
Definition: RotPairInteraction.h:31
friend ostream & operator<<(ostream &, const CRotElasticInteraction &)
Definition: RotElasticInteraction.cpp:184
double getNormalSpringConst() const
Definition: RotElasticInteraction.h:36
static VectorFieldFunction getVectorFieldFunction(const string &)
Definition: RotElasticInteraction.cpp:140
virtual std::string getTypeString() const
Definition: RotElasticInteraction.h:38
static bool getDo2dCalculations()
Definition: Particle.h:181
virtual Vec3 getPos() const
Definition: RotElasticInteraction.h:76
Abstract base class for InteractionGroup parameters.
Definition: IGParam.h:29
Interaction group parameters for CRotElasticInteractionGroups.
Definition: RotElasticInteraction.h:25
double m_kr
spring constant
Definition: RotElasticInteraction.h:62
Vec3 m_D
initial positions of the particles
Definition: RotElasticInteraction.h:66
static CheckedScalarFieldFunction getCheckedScalarFieldFunction(const string &)
Definition: RotElasticInteraction.cpp:124
virtual void packInto(CVarMPIBuffer *) const
Definition: RotElasticInteractionGroup.cpp:19
int getID() const
Definition: BasicParticle.h:65
virtual void loadRestartData(std::istream &iStream)
Definition: RotElasticInteraction.cpp:174
double getRad() const
Definition: BasicParticle.h:64
CRotElasticIGP * extractRotElasticIGP_p(AMPIBuffer *)
Definition: RotElasticInteractionGroup.cpp:37
double(CRotElasticInteraction::* ScalarFieldFunction)() const
Definition: RotElasticInteraction.h:53
Vec3 getPos() const
Definition: BasicParticle.h:62
bool m_scaling
Definition: RotElasticInteraction.h:32
CRotElasticInteraction()
Definition: RotElasticInteraction.cpp:32
vector< int > m_id
id's of the particles involved
Definition: Interaction.h:39
virtual void calcForces()
Definition: RotElasticInteraction.cpp:69
CRotElasticIGP * extractRotElasticIGP(AMPIBuffer *)
Definition: RotElasticInteractionGroup.cpp:25
Class for a rotational particle.
Definition: RotParticle.h:54