File mechanics/src/collision/native/bodies/DiskMovingPlanR.hpp

Go to the source code of this file

Defines

COMPUTE(X)

Typedefs

typedef double (*FTime)(double)

disk - moving plan relation - Inherits from LagrangianRheonomousR

class DiskMovingPlanR : public LagrangianRheonomousR, public std::enable_shared_from_this<DiskMovingPlanR>

Public Functions

DiskMovingPlanR(FTime, FTime, FTime, FTime, FTime, FTime, double)
~DiskMovingPlanR() noexcept = default
void init(double)
void computeh(double time, const BlockVector &q, BlockVector &z, SiconosVector &y)

to compute the output y = h(t,q,z) of the Relation

Parameters
  • time – current time value

  • q – coordinates of the dynamical systems involved in the relation

  • z – user defined parameters (optional)

  • y – the resulting vector

void computeJachq(double time, const BlockVector &q, BlockVector &z)

to compute the jacobian of h(…).

Set attribute _jachq (access: jacqhq())

Parameters
  • time – current time value

  • q – coordinates of the dynamical systems involved in the relation

  • z – user defined parameters (optional)

void computehDot(double time, const BlockVector &q, BlockVector &z)

to compute the time-derivative of the output y = h(t,q,z), saved in attribute _hDot (access: hDot())

Parameters
  • time – current time value

  • q – coordinates of the dynamical systems involved in the relation

  • z – user defined parameters (optional)

double distance(double, double, double)
inline void setComputeAFunction(FTime f)
inline void setComputeBFunction(FTime f)
inline void setComputeCFunction(FTime f)
inline void setComputeADotFunction(FTime f)
inline void setComputeBDotFunction(FTime f)
inline void setComputeCDotFunction(FTime f)
bool equal(FTime, FTime, FTime, double) const
void computeA (double t) void computeB(double t) void computeC(double t) inline void computeADot(double t) inline void computeBDot(double t) inline void computeCDot(double t) ACCEPT_VISITORS()

compute A

Parameters
  • t – the time compute B

  • t – the time compute C

  • t – the time compute ADot

  • t – the time compute BDot

  • t – the time compute CDot

  • t – the time

Private Functions

ACCEPT_SERIALIZATION(DiskMovingPlanR)
inline DiskMovingPlanR()

Private Members

double _time
double _A
double _B
double _C
double _ADot
double _BDot
double _CDot
double _sqrA2pB2
double _r
double _AADot
double _BBDot
double _cubsqrA2pB2
SP::PluggedObject _AFunction = {nullptr}
SP::PluggedObject _BFunction = {nullptr}
SP::PluggedObject _CFunction = {nullptr}
SP::PluggedObject _ADotFunction = {nullptr}
SP::PluggedObject _BDotFunction = {nullptr}
SP::PluggedObject _CDotFunction = {nullptr}