20 #ifndef _GENERALIZED_GEAR_H_
21 #define _GENERALIZED_GEAR_H_
23 #include "mbsim/links/rigid_body_link.h"
27 class GeneralizedForceLaw;
28 class GeneralizedImpactLaw;
34 std::string saved_gearOutput;
35 std::vector<std::string> saved_gearInput;
39 void updateGeneralizedForces();
40 void setGearOutput(
RigidBody* body_) { body[0] = body_; ratio[0] = -1; }
41 void addGearInput(
RigidBody* body_,
double ratio_) { body.push_back(body_); ratio.push_back(ratio_); }
45 std::string
getType()
const {
return "GeneralizedGear"; }
52 void initializeUsingXML(xercesc::DOMElement * element);
basic force law on acceleration level for constraint description
Definition: generalized_force_law.h:32
bool isSingleValued() const
asks the link if it contains single valued force laws that contribute to the right-hand side vector h...
Definition: generalized_gear.h:48
std::string getType() const
Definition: generalized_gear.h:45
Definition: rigid_body_link.h:33
bool isSetValued() const
asks the link if it contains force laws that contribute to the lagrange multiplier and is therefore s...
Definition: generalized_gear.cc:41
InitStage
The stages of the initialization.
Definition: element.h:97
basic force law on velocity level for constraint description
Definition: generalized_impact_law.h:32
std::string name
name of element
Definition: element.h:298
void init(InitStage stage)
plots time series header
Definition: generalized_gear.cc:58
Definition: generalized_gear.h:30
bool gActiveChanged()
Definition: generalized_gear.h:44
bool isActive() const
Definition: generalized_gear.h:43
rigid bodies with arbitrary kinematics
Definition: rigid_body.h:52