CellModules
MecaCell::GhostCenter< H > Struct Template Reference

#include <elasticbody.hpp>

Inheritance diagram for MecaCell::GhostCenter< H >:
MecaCell::OrientedParticle MecaCell::Movable MecaCell::Orientable

Public Member Functions

 GhostCenter (H &h)
 
template<typename Integrator = Euler>
void update (double dt, double momentOfInertia)
 
bool isMovementEnabled ()
 
void disableMovement ()
 
void enableMovement ()
 
Vec getPosition () const
 
Vec getPrevposition () const
 
Vec getVelocity () const
 
Vec getForce () const
 
double getMass () const
 
void setPosition (const Vec &p)
 
void setPrevposition (const Vec &p)
 
void setVelocity (const Vec &v)
 
void setForce (const Vec &f)
 
void setMass (const double m)
 
void receiveForce (const double &intensity, const Vec &direction, const bool &compressive)
 
void receiveForce (const Vec &f)
 
void resetVelocity ()
 
void resetForce ()
 
Vec getAngularVelocity () const
 
Vec getTorque () const
 
Basis< VecgetOrientation () const
 
Rotation< VecgetOrientationRotation () const
 
void setAngularVelocity (const Vec &v)
 
void setTorque (const Vec &t)
 
void setOrientationRotation (const Rotation< Vec > &r)
 
void receiveTorque (const Vec &t)
 
void updateCurrentOrientation ()
 
void resetTorque ()
 
void resetAngularVelocity ()
 

Public Attributes

H & host
 
double fK = 3.0
 
double tK = 1.0
 
double prevDist = 0
 

Protected Attributes

Vec position = Vec::zero()
 
Vec prevposition = Vec::zero()
 
Vec velocity = Vec::zero()
 
Vec force = Vec::zero()
 
bool movementEnabled = true
 
double mass = Config::DEFAULT_CELL_MASS
 
double totalForce = 0
 
Vec angularVelocity = Vec::zero()
 
Vec torque = Vec::zero()
 
Basis< Vecorientation
 
Rotation< VecorientationRotation
 

Detailed Description

template<typename H>
struct MecaCell::GhostCenter< H >

Definition at line 15 of file elasticbody.hpp.

Constructor & Destructor Documentation

◆ GhostCenter()

template<typename H >
MecaCell::GhostCenter< H >::GhostCenter ( H &  h)
inline

Definition at line 20 of file elasticbody.hpp.

Member Function Documentation

◆ disableMovement()

void MecaCell::Movable::disableMovement ( )
inlineinherited

Definition at line 24 of file movable.h.

◆ enableMovement()

void MecaCell::Movable::enableMovement ( )
inlineinherited

Definition at line 25 of file movable.h.

◆ getAngularVelocity()

Vec MecaCell::Orientable::getAngularVelocity ( ) const
inlineinherited

Definition at line 21 of file orientable.h.

◆ getForce()

Vec MecaCell::Movable::getForce ( ) const
inlineinherited

Definition at line 29 of file movable.h.

◆ getMass()

double MecaCell::Movable::getMass ( ) const
inlineinherited

Definition at line 30 of file movable.h.

◆ getOrientation()

Basis< Vec > MecaCell::Orientable::getOrientation ( ) const
inlineinherited

Definition at line 23 of file orientable.h.

◆ getOrientationRotation()

Rotation< Vec > MecaCell::Orientable::getOrientationRotation ( ) const
inlineinherited

Definition at line 24 of file orientable.h.

◆ getPosition()

Vec MecaCell::Movable::getPosition ( ) const
inlineinherited

Definition at line 26 of file movable.h.

◆ getPrevposition()

Vec MecaCell::Movable::getPrevposition ( ) const
inlineinherited

Definition at line 27 of file movable.h.

◆ getTorque()

Vec MecaCell::Orientable::getTorque ( ) const
inlineinherited

Definition at line 22 of file orientable.h.

◆ getVelocity()

Vec MecaCell::Movable::getVelocity ( ) const
inlineinherited

Definition at line 28 of file movable.h.

◆ isMovementEnabled()

bool MecaCell::Movable::isMovementEnabled ( )
inlineinherited

Definition at line 23 of file movable.h.

◆ receiveForce() [1/2]

void MecaCell::Movable::receiveForce ( const double &  intensity,
const Vec direction,
const bool &  compressive 
)
inlineinherited

Definition at line 39 of file movable.h.

◆ receiveForce() [2/2]

void MecaCell::Movable::receiveForce ( const Vec f)
inlineinherited

Definition at line 44 of file movable.h.

◆ receiveTorque()

void MecaCell::Orientable::receiveTorque ( const Vec t)
inlineinherited

Definition at line 32 of file orientable.h.

◆ resetAngularVelocity()

void MecaCell::Orientable::resetAngularVelocity ( )
inlineinherited

Definition at line 35 of file orientable.h.

◆ resetForce()

void MecaCell::Movable::resetForce ( )
inlineinherited

Definition at line 46 of file movable.h.

◆ resetTorque()

void MecaCell::Orientable::resetTorque ( )
inlineinherited

Definition at line 34 of file orientable.h.

◆ resetVelocity()

void MecaCell::Movable::resetVelocity ( )
inlineinherited

Definition at line 45 of file movable.h.

◆ setAngularVelocity()

void MecaCell::Orientable::setAngularVelocity ( const Vec v)
inlineinherited

Definition at line 25 of file orientable.h.

◆ setForce()

void MecaCell::Movable::setForce ( const Vec f)
inlineinherited

Definition at line 34 of file movable.h.

◆ setMass()

void MecaCell::Movable::setMass ( const double  m)
inlineinherited

Definition at line 35 of file movable.h.

◆ setOrientationRotation()

void MecaCell::Orientable::setOrientationRotation ( const Rotation< Vec > &  r)
inlineinherited

Definition at line 27 of file orientable.h.

◆ setPosition()

void MecaCell::Movable::setPosition ( const Vec p)
inlineinherited

Definition at line 31 of file movable.h.

◆ setPrevposition()

void MecaCell::Movable::setPrevposition ( const Vec p)
inlineinherited

Definition at line 32 of file movable.h.

◆ setTorque()

void MecaCell::Orientable::setTorque ( const Vec t)
inlineinherited

Definition at line 26 of file orientable.h.

◆ setVelocity()

void MecaCell::Movable::setVelocity ( const Vec v)
inlineinherited

Definition at line 33 of file movable.h.

◆ update()

template<typename H >
template<typename Integrator = Euler>
void MecaCell::GhostCenter< H >::update ( double  dt,
double  momentOfInertia 
)
inline

Definition at line 26 of file elasticbody.hpp.

◆ updateCurrentOrientation()

void MecaCell::Orientable::updateCurrentOrientation ( )
inlineinherited

Definition at line 33 of file orientable.h.

Member Data Documentation

◆ angularVelocity

Vec MecaCell::Orientable::angularVelocity = Vec::zero()
protectedinherited

Definition at line 7 of file orientable.h.

◆ fK

template<typename H >
double MecaCell::GhostCenter< H >::fK = 3.0

Definition at line 17 of file elasticbody.hpp.

◆ force

Vec MecaCell::Movable::force = Vec::zero()
protectedinherited

Definition at line 11 of file movable.h.

◆ host

template<typename H >
H& MecaCell::GhostCenter< H >::host

Definition at line 16 of file elasticbody.hpp.

◆ mass

double MecaCell::Movable::mass = Config::DEFAULT_CELL_MASS
protectedinherited

Definition at line 13 of file movable.h.

◆ movementEnabled

bool MecaCell::Movable::movementEnabled = true
protectedinherited

Definition at line 12 of file movable.h.

◆ orientation

Basis<Vec> MecaCell::Orientable::orientation
protectedinherited

Definition at line 9 of file orientable.h.

◆ orientationRotation

Rotation<Vec> MecaCell::Orientable::orientationRotation
protectedinherited

Definition at line 10 of file orientable.h.

◆ position

Vec MecaCell::Movable::position = Vec::zero()
protectedinherited

Definition at line 8 of file movable.h.

◆ prevDist

template<typename H >
double MecaCell::GhostCenter< H >::prevDist = 0

Definition at line 19 of file elasticbody.hpp.

◆ prevposition

Vec MecaCell::Movable::prevposition = Vec::zero()
protectedinherited

Definition at line 9 of file movable.h.

◆ tK

template<typename H >
double MecaCell::GhostCenter< H >::tK = 1.0

Definition at line 18 of file elasticbody.hpp.

◆ torque

Vec MecaCell::Orientable::torque = Vec::zero()
protectedinherited

Definition at line 8 of file orientable.h.

◆ totalForce

double MecaCell::Movable::totalForce = 0
protectedinherited

Definition at line 14 of file movable.h.

◆ velocity

Vec MecaCell::Movable::velocity = Vec::zero()
protectedinherited

Definition at line 10 of file movable.h.


The documentation for this struct was generated from the following file: