ESyS-Particle  2.3.4
BCorner2DInteraction.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 __BCORNER2DINTERACTION_H
14 #define __BCORNER2DINTERACTION_H
15 
16 // --- project includes ---
17 #include "Geometry/Corner2D.h"
18 #include "Model/Particle.h"
19 #include "Model/BMesh2DIP.h"
20 
30 {
31  private:
34  double m_k;
35  double m_break;
36  double m_dist;
37  double k1,k2;
38  int b_me;
39  int m_cid;
40  int m_pid;
41 
43 
44  public:
46 
49  virtual ~BCorner2DInteraction(){};
50 
51  bool isInner(){return m_inner_flag;};
52  virtual void calcForces();
53  bool broken();
54  virtual Vec3 getPos()const {return m_p->getPos();}; // ??
55  inline int getPid() const {return m_pid;};
56  inline int getCid() const {return m_cid;};
57  virtual void setPP(CParticle* part_p){m_p=part_p;};
58  virtual void setCP(Corner2D* corner_p){m_corner=corner_p;};
59 
61 };
62 
63 #endif // __BCORNER2DINTERACTION_H
BCorner2DInteraction::ParameterType
BMesh2DIP ParameterType
Definition: BCorner2DInteraction.h:45
BCorner2DInteraction::~BCorner2DInteraction
virtual ~BCorner2DInteraction()
Definition: BCorner2DInteraction.h:49
BCorner2DInteraction::k2
double k2
coefficients for calculating the anchor point from the normals of the adjacent edges
Definition: BCorner2DInteraction.h:37
BCorner2DInteraction::m_inner_flag
bool m_inner_flag
Definition: BCorner2DInteraction.h:42
TML_PackedMessageInterface
Abstract base/interface class for packed messages to be used in TML_Pack.
Definition: packed_message_interface.h:29
BCorner2DInteraction::m_pid
int m_pid
Definition: BCorner2DInteraction.h:40
BCorner2DInteraction::m_dist
double m_dist
Definition: BCorner2DInteraction.h:36
BCorner2DInteraction::m_p
CParticle * m_p
Definition: BCorner2DInteraction.h:32
BCorner2DInteraction::setPP
virtual void setPP(CParticle *part_p)
Definition: BCorner2DInteraction.h:57
BCorner2DInteraction::getCid
int getCid() const
Definition: BCorner2DInteraction.h:56
BCorner2DInteraction::m_k
double m_k
spring constant
Definition: BCorner2DInteraction.h:34
console.h
BCorner2DInteraction::m_corner
Corner2D * m_corner
Definition: BCorner2DInteraction.h:33
Corner2D::getPos
Vec3 getPos() const
Definition: Corner2D.h:50
TML_PackedMessageInterface::pop_int
virtual int pop_int()=0
BCorner2DInteraction::b_me
int b_me
Definition: BCorner2DInteraction.h:38
CParticle::applyForce
void applyForce(const Vec3 &, const Vec3 &)
Definition: Particle.cpp:384
Vec3::X
VEC3_INLINE double & X()
Definition: vec3.h:119
Corner2D::getEdgeNormal
Vec3 getEdgeNormal(int) const
Definition: Corner2D.cpp:98
BCorner2DInteraction::calcForces
virtual void calcForces()
Definition: BCorner2DInteraction.cpp:71
TML_PackedMessageInterface::pop_double
virtual double pop_double()=0
Console::XDebug
Console & XDebug()
set verbose level of next message to "xdg"
BCorner2DInteraction::m_cid
int m_cid
Definition: BCorner2DInteraction.h:39
NULL
#define NULL
Definition: t_list.h:17
Console::Critical
Console & Critical()
set verbose level of next message to "crt"
Definition: console.cpp:141
BCorner2DInteraction::isInner
bool isInner()
Definition: BCorner2DInteraction.h:51
Corner2D::getNEdges
int getNEdges() const
Definition: Corner2D.h:52
BMesh2DIP
Definition: BMesh2DIP.h:17
BCorner2DInteraction.h
packed_message_interface.h
TML_PackedMessageInterface::append
virtual void append(int)=0
Vec3::Y
VEC3_INLINE double & Y()
Definition: vec3.h:120
Corner2D.h
BCorner2DInteraction
bonded elastic interaction between Corner2D in a 2d mesh and a particle
Definition: BCorner2DInteraction.h:30
Vec3
Definition: vec3.h:47
BCorner2DInteraction::broken
bool broken()
Definition: BCorner2DInteraction.cpp:103
BCorner2DInteraction::k1
double k1
Definition: BCorner2DInteraction.h:37
BCorner2DInteraction::getPos
virtual Vec3 getPos() const
Definition: BCorner2DInteraction.h:54
Corner2D::getID
int getID() const
Definition: Corner2D.h:51
BMesh2DIP::brk
double brk
Definition: BMesh2DIP.h:20
vec3.h
Corner2D::applyForceToEdge
void applyForceToEdge(int, const Vec3 &)
Definition: Corner2D.cpp:119
BMesh2DIP.h
BCorner2DInteraction::m_break
double m_break
Definition: BCorner2DInteraction.h:35
BCorner2DInteraction::getPid
int getPid() const
Definition: BCorner2DInteraction.h:55
CBasicParticle::getID
int getID() const
Definition: BasicParticle.h:65
CBasicParticle::getRad
double getRad() const
Definition: BasicParticle.h:64
BCorner2DInteraction::BCorner2DInteraction
BCorner2DInteraction()
Definition: BCorner2DInteraction.cpp:23
Corner2D
Class representing the corner in a 2D "mesh".
Definition: Corner2D.h:35
console
Console console
Definition: console.cpp:25
CBasicParticle::getPos
Vec3 getPos() const
Definition: BasicParticle.h:62
CParticle
Class for a basic particle.
Definition: Particle.h:51
BCorner2DInteraction::setCP
virtual void setCP(Corner2D *corner_p)
Definition: BCorner2DInteraction.h:58
Particle.h
BMesh2DIP::k
double k
Definition: BMesh2DIP.h:19