|
MULTIBODY SIMULATION SOFTWARE - API documentation |
#include <CHlinkLock.h>


Public Member Functions | |
| virtual void | Copy (ChLinkLock *source) |
| virtual ChLink * | new_Duplicate () |
| void | BuildLinkType (int link_type) |
| void | ChangeLinkType (int new_link_type) |
| void | Set2Dmode (int mode) |
| virtual int | GetType () |
| virtual void | UpdateTime (double mytime) |
| virtual void | UpdateRelMarkerCoords () |
| virtual void | UpdateState () |
| virtual void | UpdateForces (double mytime) |
| Coordsys | GetRelC () |
| Coordsys | GetRelC_dt () |
| Coordsys | GetRelC_dtdt () |
| Coordsys | GetDeltaC () |
| Coordsys | GetDeltaC_dt () |
| Coordsys | GetDeltaC_dtdt () |
| void | SetDeltaC (Coordsys mc) |
| void | SetDeltaC_dt (Coordsys mc) |
| void | SetDeltaC_dtdt (Coordsys mc) |
| ChFunction * | GetMotion_X () |
| ChFunction * | GetMotion_Y () |
| ChFunction * | GetMotion_Z () |
| ChFunction * | GetMotion_ang () |
| ChFunction * | GetMotion_ang2 () |
| ChFunction * | GetMotion_ang3 () |
| Vector | GetMotion_axis () |
| void | SetMotion_X (ChFunction *m_funct) |
| void | SetMotion_Y (ChFunction *m_funct) |
| void | SetMotion_Z (ChFunction *m_funct) |
| void | SetMotion_ang (ChFunction *m_funct) |
| void | SetMotion_ang2 (ChFunction *m_funct) |
| void | SetMotion_ang3 (ChFunction *m_funct) |
| void | SetMotion_axis (Vector m_axis) |
| int | Get_angleset () |
| void | Set_angleset (int mset) |
| ChLinkLimit * | GetLimit_X () |
| ChLinkLimit * | GetLimit_Y () |
| ChLinkLimit * | GetLimit_Z () |
| ChLinkLimit * | GetLimit_Rx () |
| ChLinkLimit * | GetLimit_Ry () |
| ChLinkLimit * | GetLimit_Rz () |
| ChLinkLimit * | GetLimit_Rp () |
| ChLinkLimit * | GetLimit_D () |
| void | SetLimit_X (ChLinkLimit *m_limit_X) |
| void | SetLimit_Y (ChLinkLimit *m_limit_Y) |
| void | SetLimit_Z (ChLinkLimit *m_limit_Z) |
| void | SetLimit_Rx (ChLinkLimit *m_limit_Rx) |
| void | SetLimit_Ry (ChLinkLimit *m_limit_Ry) |
| void | SetLimit_Rz (ChLinkLimit *m_limit_Rz) |
| void | SetLimit_Rp (ChLinkLimit *m_limit_Rp) |
| void | SetLimit_D (ChLinkLimit *m_limit_D) |
| virtual void | InjectConstraints (ChLcpSystemDescriptor &mdescriptor) |
| virtual void | ConstraintsBiReset () |
| virtual void | ConstraintsBiLoad_C (double factor=1., double recovery_clamp=0.1, bool do_clamp=false) |
| virtual void | ConstraintsBiLoad_Ct (double factor=1.) |
| virtual void | ConstraintsBiLoad_Qc (double factor=1.) |
| virtual void | ConstraintsLoadJacobians () |
| virtual void | ConstraintsFetch_react (double factor=1.) |
| virtual void | StreamIN (ChStreamInBinary &mstream) |
| virtual void | StreamOUT (ChStreamOutBinary &mstream) |
Protected Attributes | |
| Coordsys | relC |
| Coordsys | relC_dt |
| Coordsys | relC_dtdt |
| Coordsys | deltaC |
| Coordsys | deltaC_dt |
| Coordsys | deltaC_dtdt |
| ChMatrix * | Cq1_temp |
| ChMatrix * | Cq2_temp |
| ChMatrix * | Qc_temp |
| Coordsys | Ct_temp |
| Vector | PQw |
| Vector | PQw_dt |
| Vector | PQw_dtdt |
| Quaternion | q_AD |
| Quaternion | q_BC |
| Quaternion | q_8 |
| Vector | q_4 |
| ChFunction * | motion_X |
| ChFunction * | motion_Y |
| ChFunction * | motion_Z |
| ChFunction * | motion_ang |
| ChFunction * | motion_ang2 |
| ChFunction * | motion_ang3 |
| Vector | motion_axis |
| int | angleset |
| ChLinkLimit * | limit_X |
| ChLinkLimit * | limit_Y |
| ChLinkLimit * | limit_Z |
| ChLinkLimit * | limit_Rx |
| ChLinkLimit * | limit_Ry |
| ChLinkLimit * | limit_Rz |
| ChLinkLimit * | limit_Rp |
| ChLinkLimit * | limit_D |
| int | type |
| void chrono::ChLinkLock::Set2Dmode | ( | int | mode | ) | [virtual] |
| virtual int chrono::ChLinkLock::GetType | ( | ) | [virtual] |
Get the type identifier of this link. Use if you don't want to use RTTI for performance.
Reimplemented from chrono::ChLinkMarkers.
Reimplemented in chrono::ChLinkGear, and chrono::ChLinkPulley.
| void chrono::ChLinkLock::UpdateTime | ( | double | time | ) | [virtual] |
UPDATING PROCEDURES
Reimplemented from chrono::ChLink.
Reimplemented in chrono::ChLinkBrake, chrono::ChLinkClearance, chrono::ChLinkEngine, chrono::ChLinkGear, chrono::ChLinkLinActuator, chrono::ChLinkPneumaticActuator, chrono::ChLinkPointSpline, chrono::ChLinkPulley, chrono::ChLinkTrajectory, and chrono::ChLinkWheel.
| void chrono::ChLinkLock::UpdateRelMarkerCoords | ( | ) | [virtual] |
Updates auxiliary vars relM, relM_dt, relM_dtdt, dist, dist_dt et similia.
UPDATING PROCEDURES
Reimplemented from chrono::ChLinkMarkers.
| void chrono::ChLinkLock::UpdateState | ( | ) | [virtual] |
This is expected to update the values in C, C_dt, C_dtdt, in jacobians Cq1 and Cq2, in Qc and in Ct. By default, this does NOTHING, so it is up to the inherited classes to fill these vectors/matrices depending on how they describe the constraint equations.
Reimplemented from chrono::ChLinkMasked.
Reimplemented in chrono::ChLinkScrew.
| void chrono::ChLinkLock::UpdateForces | ( | double | mytime | ) | [virtual] |
Inherits, and updates the C_force and C_torque 'intuitive' forces, adding the effects of the contained ChLinkForce objects. (Default: inherits parent UpdateForces(), then C_force and C_torque are incremented with the Link::ChLinkForces objects)
Reimplemented from chrono::ChLinkMasked.
Reimplemented in chrono::ChLinkBrake, chrono::ChLinkClearance, chrono::ChLinkEngine, chrono::ChLinkPneumaticActuator, and chrono::ChLinkWheel.
| void chrono::ChLinkLock::InjectConstraints | ( | ChLcpSystemDescriptor & | mdescriptor | ) | [virtual] |
LCP SYSTEM FUNCTIONS
Reimplemented from chrono::ChLinkMasked.
| void chrono::ChLinkLock::ConstraintsBiReset | ( | ) | [virtual] |
Sets to zero the known term (b_i) of encapsulated ChLcpConstraints.
Reimplemented from chrono::ChLinkMasked.
| void chrono::ChLinkLock::ConstraintsBiLoad_C | ( | double | factor = 1., |
|
| double | recovery_clamp = 0.1, |
|||
| bool | do_clamp = false | |||
| ) | [virtual] |
Adds the current C (constraint violation) to the known term (b_i) of encapsulated ChLcpConstraints
Reimplemented from chrono::ChLinkMasked.
| void chrono::ChLinkLock::ConstraintsBiLoad_Ct | ( | double | factor = 1. |
) | [virtual] |
Adds the current Ct (partial t-derivative, as in C_dt=0-> [Cq]*q_dt=-Ct) to the known term (b_i) of encapsulated ChLcpConstraints
Reimplemented from chrono::ChLinkMasked.
| void chrono::ChLinkLock::ConstraintsBiLoad_Qc | ( | double | factor = 1. |
) | [virtual] |
Adds the current Qc (the vector of C_dtdt=0 -> [Cq]*q_dtdt=Qc ) to the known term (b_i) of encapsulated ChLcpConstraints
Reimplemented from chrono::ChLinkMasked.
| void chrono::ChLinkLock::ConstraintsLoadJacobians | ( | ) | [virtual] |
Adds the current jacobians in encapsulated ChLcpConstraints.
Reimplemented from chrono::ChLinkMasked.
| void chrono::ChLinkLock::ConstraintsFetch_react | ( | double | factor = 1. |
) | [virtual] |
Fetches the reactions from the lagrangian multiplier (l_i) of encapsulated ChLcpConstraints. Mostly used after the LCP provided the solution in ChLcpConstraints. Also, should convert the reactions obtained from dynamical simulation, from link space to intuitive react_force and react_torque.
Reimplemented from chrono::ChLinkMasked.
| void chrono::ChLinkLock::StreamIN | ( | ChStreamInBinary & | mstream | ) | [virtual] |
Method to allow deserializing a persistent binary archive (ex: a file) into transient data.
Reimplemented from chrono::ChLinkMasked.
Reimplemented in chrono::ChLinkBrake, chrono::ChLinkClearance, chrono::ChLinkEngine, chrono::ChLinkGear, chrono::ChLinkLinActuator, chrono::ChLinkPneumaticActuator, chrono::ChLinkPointSpline, chrono::ChLinkPulley, chrono::ChLinkScrew, chrono::ChLinkTrajectory, and chrono::ChLinkWheel.
| void chrono::ChLinkLock::StreamOUT | ( | ChStreamOutBinary & | mstream | ) | [virtual] |
Method to allow serializing transient data into a persistent binary archive (ex: a file).
Reimplemented from chrono::ChLinkMasked.
Reimplemented in chrono::ChLinkBrake, chrono::ChLinkClearance, chrono::ChLinkEngine, chrono::ChLinkGear, chrono::ChLinkLinActuator, chrono::ChLinkPneumaticActuator, chrono::ChLinkPointSpline, chrono::ChLinkPulley, chrono::ChLinkScrew, chrono::ChLinkTrajectory, and chrono::ChLinkWheel.
CHRONO::ENGINE