20 #ifndef _ELASTIC_JOINT_H_
21 #define _ELASTIC_JOINT_H_
23 #include "mbsim/links/floating_frame_link.h"
24 #include "mbsim/functions/function.h"
45 void updateGeneralizedForces();
48 virtual void updatexd();
49 virtual void updatedx();
50 virtual void calcxSize();
60 void setGeneralizedForceFunction(
Function<fmatvec::VecV(fmatvec::VecV,fmatvec::VecV)> *func_) {
62 func->setParent(
this);
63 func->
setName(
"GeneralizedForce");
76 virtual void initializeUsingXML(xercesc::DOMElement *element);
78 virtual std::string
getType()
const {
return "ElasticJoint"; }
virtual bool gActiveChanged()
Definition: elastic_joint.h:57
void setMomentDirection(const fmatvec::Mat3xV &md)
Definition: elastic_joint.cc:72
virtual bool isSingleValued() const
asks the link if it contains single valued force laws that contribute to the right-hand side vector h...
Definition: elastic_joint.h:55
floating frame link
Definition: floating_frame_link.h:43
class for elastic joints
Definition: elastic_joint.h:32
fmatvec::Mat3xV JT
translational JACOBIAN (not empty for e.g. prismatic joints)
Definition: elastic_joint.h:86
ElasticJoint(const std::string &name="")
constructor
Definition: elastic_joint.cc:34
virtual bool isActive() const
Definition: elastic_joint.h:56
virtual ~ElasticJoint()
destructor
Definition: elastic_joint.cc:37
InitStage
The stages of the initialization.
Definition: element.h:97
Definition: planar_contour.h:31
virtual void init(InitStage stage)
plots time series header
Definition: elastic_joint.cc:59
std::string name
name of element
Definition: element.h:298
void setName(const std::string &str)
Definition: element.h:163
virtual std::string getType() const
Definition: elastic_joint.h:78
void setForceDirection(const fmatvec::Mat3xV &fd)
Definition: elastic_joint.cc:64