ESyS-Particle  2.3.4
EEdgeInteraction.h
Go to the documentation of this file.
1 // //
3 // Copyright (c) 2003-2017 by The University of Queensland //
4 // Centre for Geoscience Computing //
5 // http://earth.uq.edu.au/centre-geoscience-computing //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.apache.org/licenses/LICENSE-2.0 //
10 // //
12 
13 #ifndef __EEDGEINTERACTION_H
14 #define __EEDGEINTERACTION_H
15 
16 // -- Project includes --
17 #include "Foundation/vec3.h"
18 #include "Geometry/Edge.h"
19 #include "Model/Particle.h"
20 #include "Model/ETriMeshIP.h"
30 {
31  private:
34  double m_k;
35 
39  bool m_inner_flag;
40 
41  public:
43  EEdgeInteraction(CParticle*,Edge*,ETriMeshIP,bool iflag=true);
44  virtual ~EEdgeInteraction();
45 
46  bool isInner(){return m_inner_flag;};
47  virtual void calcForces();
48 };
49 #endif // __EEDGEINTERACTION_H
EEdgeInteraction::EEdgeInteraction
EEdgeInteraction()
Definition: EEdgeInteraction.cpp:23
EEdgeInteraction::m_edge
Edge * m_edge
Definition: EEdgeInteraction.h:33
ETriMeshIP
Definition: ETriMeshIP.h:18
EEdgeInteraction::~EEdgeInteraction
virtual ~EEdgeInteraction()
Definition: EEdgeInteraction.cpp:55
EEdgeInteraction::calcForces
virtual void calcForces()
Definition: EEdgeInteraction.cpp:62
EEdgeInteraction::isInner
bool isInner()
Definition: EEdgeInteraction.h:46
Edge::applyForce
void applyForce(const Vec3 &f)
Definition: Edge.cpp:33
AEdge::dist
pair< bool, double > dist(const Vec3 &) const
Definition: AEdge.cpp:77
Edge::getDirectionFromPoint
Vec3 getDirectionFromPoint(const Vec3 &) const
Definition: Edge.cpp:138
CParticle::applyForce
void applyForce(const Vec3 &, const Vec3 &)
Definition: Particle.cpp:384
EEdgeInteraction::m_p
CParticle * m_p
Definition: EEdgeInteraction.h:32
EEdgeInteraction::m_k
double m_k
spring constant
Definition: EEdgeInteraction.h:34
NULL
#define NULL
Definition: t_list.h:17
ETriMeshIP.h
Edge.h
Vec3
Definition: vec3.h:47
CParticle::getDo2dCalculations
static bool getDo2dCalculations()
Definition: Particle.h:181
Edge
Class representing the edge of a polygon.
Definition: Edge.h:36
vec3.h
EEdgeInteraction
unbonded elastic interaction between a Edge in a TriangleMesh and a particle
Definition: EEdgeInteraction.h:30
Edge::isValidContact
bool isValidContact(const Vec3 &) const
Definition: Edge.cpp:93
ETriMeshIP::k
double k
Definition: ETriMeshIP.h:66
CBasicParticle::getRad
double getRad() const
Definition: BasicParticle.h:64
EEdgeInteraction::m_inner_flag
bool m_inner_flag
Definition: EEdgeInteraction.h:39
CBasicParticle::getPos
Vec3 getPos() const
Definition: BasicParticle.h:62
CParticle
Class for a basic particle.
Definition: Particle.h:51
Particle.h
EEdgeInteraction.h