ESyS-Particle  2.3.4
BEdge2DInteraction Class Reference

bonded elastic interaction between an edge in a 2d mesh and a particle More...

#include <BEdge2DInteraction.h>

Collaboration diagram for BEdge2DInteraction:

Public Types

typedef BMesh2DIP ParameterType
 
typedef BMesh2DInteractionCpData CheckPointable
 Used by PIS to save/load check-point data for objects of this type. More...
 

Public Member Functions

 BEdge2DInteraction ()
 
 BEdge2DInteraction (CParticle *, Edge2D *, BMesh2DIP, bool iflag=true)
 
virtual ~BEdge2DInteraction ()
 
bool isInner ()
 
virtual void calcForces ()
 
bool broken ()
 
virtual Vec3 getPos () const
 
int getPid () const
 
int getTid () const
 
Vec3 getAP () const
 Return anchor point in global coordinates. Needed for snapshot data. More...
 
virtual void setPP (CParticle *part_p)
 
virtual void setTP (Edge2D *tri_p)
 

Private Attributes

CParticlem_p
 
Edge2Dm_ed
 
double m_k
 
double m_break
 
double m_dist
 
int m_eid
 
int m_pid
 
Vec3 m_ap
 
bool m_inner_flag
 

Friends

class TML_PackedMessageInterface
 

Detailed Description

bonded elastic interaction between an edge in a 2d mesh and a particle

Author
Steffen Abe $Revision$ $Date$

Member Typedef Documentation

◆ CheckPointable

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

◆ ParameterType

Constructor & Destructor Documentation

◆ BEdge2DInteraction() [1/2]

BEdge2DInteraction::BEdge2DInteraction ( )

default constructor

References m_ed, m_eid, m_p, m_pid, and NULL.

◆ BEdge2DInteraction() [2/2]

BEdge2DInteraction::BEdge2DInteraction ( CParticle p,
Edge2D e,
BMesh2DIP  param,
bool  iflag = true 
)

constructor with parameters

Parameters
pa pointer to the particle
ea pointer to the triangle
paramthe interaction parameters
iflag

References BMesh2DIP::brk, console, Edge2D::getID(), CBasicParticle::getID(), CBasicParticle::getPos(), CBasicParticle::getRad(), BMesh2DIP::k, m_ap, m_break, m_dist, m_ed, m_eid, m_inner_flag, m_k, m_p, m_pid, Edge2D::toLocal(), and Console::XDebug().

Here is the call graph for this function:

◆ ~BEdge2DInteraction()

BEdge2DInteraction::~BEdge2DInteraction ( )
virtual

destructor

Member Function Documentation

◆ broken()

bool BEdge2DInteraction::broken ( )

return if the interaction is broken, i.e. the distance between particle and anchor point exceeds breaking distance, i.e. relative breaking distance x particle readius

References m_break, and m_dist.

◆ calcForces()

void BEdge2DInteraction::calcForces ( )
virtual

calculate & apply forces

References CParticle::applyForce(), Edge2D::applyForce(), CBasicParticle::getPos(), m_ap, m_dist, m_ed, m_inner_flag, m_k, m_p, and Edge2D::toGlobal().

Here is the call graph for this function:

◆ getAP()

Vec3 BEdge2DInteraction::getAP ( ) const

Return anchor point in global coordinates. Needed for snapshot data.

returns the projection of the anchor point on the edge

References m_ap, m_ed, Edge2D::toGlobal(), and Vec3::X().

Referenced by BMesh2DInteractionCpData::BMesh2DInteractionCpData(), and BMesh2DInteractionCpData::set().

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

◆ getPid()

int BEdge2DInteraction::getPid ( ) const
inline

References m_pid.

Referenced by BMesh2DInteractionCpData::BMesh2DInteractionCpData(), TML_PackedMessageInterface::pack(), and BMesh2DInteractionCpData::set().

Here is the caller graph for this function:

◆ getPos()

virtual Vec3 BEdge2DInteraction::getPos ( ) const
inlinevirtual

References CBasicParticle::getPos(), and m_p.

Here is the call graph for this function:

◆ getTid()

int BEdge2DInteraction::getTid ( ) const
inline

References m_eid.

Referenced by BMesh2DInteractionCpData::BMesh2DInteractionCpData(), TML_PackedMessageInterface::pack(), and BMesh2DInteractionCpData::set().

Here is the caller graph for this function:

◆ isInner()

bool BEdge2DInteraction::isInner ( )
inline

References m_inner_flag.

◆ setPP()

virtual void BEdge2DInteraction::setPP ( CParticle part_p)
inlinevirtual

References m_p.

◆ setTP()

virtual void BEdge2DInteraction::setTP ( Edge2D tri_p)
inlinevirtual

References m_ed.

Friends And Related Function Documentation

◆ TML_PackedMessageInterface

friend class TML_PackedMessageInterface
friend

Member Data Documentation

◆ m_ap

◆ m_break

double BEdge2DInteraction::m_break
private

◆ m_dist

◆ m_ed

Edge2D* BEdge2DInteraction::m_ed
private

◆ m_eid

int BEdge2DInteraction::m_eid
private

◆ m_inner_flag

bool BEdge2DInteraction::m_inner_flag
private

flag showing if particle is in the inner area of the local particle array - needed for global force summation

Referenced by BEdge2DInteraction(), calcForces(), and isInner().

◆ m_k

◆ m_p

CParticle* BEdge2DInteraction::m_p
private

◆ m_pid

int BEdge2DInteraction::m_pid
private

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