All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Classes | Public Member Functions | Private Attributes | List of all members
MBSim::JointConstraint Class Reference

Joint contraint. More...

#include <joint_constraint.h>

Inheritance diagram for MBSim::JointConstraint:
MBSim::Constraint MBSim::Element fmatvec::Atom

Classes

class  Residuum
 

Public Member Functions

 JointConstraint (const std::string &name="")
 
void init (InitStage stage)
 plots time series header More...
 
void initz ()
 
void resetUpToDate ()
 
void connect (Frame *frame1_, Frame *frame2_)
 
void addDependentRigidBodyOnFirstSide (RigidBody *bd)
 
void addDependentRigidBodyOnSecondSide (RigidBody *bd)
 
void setIndependentRigidBody (RigidBody *bi_)
 
void addIndependentRigidBody (RigidBody *bi_)
 
virtual void setUpInverseKinetics ()
 
void setForceDirection (const fmatvec::Mat3xV &d_)
 
void setMomentDirection (const fmatvec::Mat3xV &d_)
 
void setFrameOfReferenceID (int ID)
 The frame of reference ID for the force/moment direction vectors. If ID=0 (default) the first frame, if ID=1 the second frame is used.
 
void updatePositions (Frame *frame_)
 
void updateGeneralizedCoordinates ()
 
void updateGeneralizedJacobians (int j=0)
 
virtual void initializeUsingXML (xercesc::DOMElement *element)
 
virtual std::string getType () const
 
void setInitialGuess (const fmatvec::VecV &q0_)
 
 BOOST_PARAMETER_MEMBER_FUNCTION ((void), enableOpenMBVForce, tag,(optional(scaleLength,(double), 1)(scaleSize,(double), 1)(referencePoint,(OpenMBV::Arrow::ReferencePoint), OpenMBV::Arrow::toPoint)(diffuseColor,(const fmatvec::Vec3 &),"[-1;1;1]")(transparency,(double), 0)))
 Visualize a force arrow acting on frame2.
 
 BOOST_PARAMETER_MEMBER_FUNCTION ((void), enableOpenMBVMoment, tag,(optional(scaleLength,(double), 1)(scaleSize,(double), 1)(referencePoint,(OpenMBV::Arrow::ReferencePoint), OpenMBV::Arrow::toPoint)(diffuseColor,(const fmatvec::Vec3 &),"[-1;1;1]")(transparency,(double), 0)))
 Visualize a moment arrow.
 
- Public Member Functions inherited from MBSim::Constraint
 Constraint (const std::string &name)
 
virtual void updatedx ()
 
virtual void updatexd ()
 
virtual void calcxSize ()
 
virtual const fmatvec::Vecgetx () const
 
virtual fmatvec::Vecgetx ()
 
virtual void setxInd (int xInd_)
 
virtual int getxSize () const
 
virtual void updatexRef (const fmatvec::Vec &ref)
 
virtual void updatexdRef (const fmatvec::Vec &ref)
 
virtual void updatedxRef (const fmatvec::Vec &ref)
 
virtual void writez (H5::GroupBase *group)
 
virtual void readz0 (H5::GroupBase *group)
 
virtual void plot ()
 plots time dependent data More...
 
virtual void closePlot ()
 closes plot file
 
virtual std::shared_ptr
< OpenMBV::Group
getOpenMBVGrp ()
 
bool getUpdateGeneralizedCoordinates () const
 
bool getUpdateGeneralizedJacobians () const
 
const fmatvec::Vecevalxd ()
 
- Public Member Functions inherited from MBSim::Element
 Element (const std::string &name)
 constructor
 
virtual ~Element ()
 destructor
 
virtual void initDataInterfaceBase (DynamicSystemSolver *parentds)
 TODO.
 
virtual void setDynamicSystemSolver (DynamicSystemSolver *sys)
 sets the used dynamics system solver to the element More...
 
virtual void plotAtSpecialEvent ()
 plots time dependent data at special events More...
 
const std::string & getName () const
 
void setName (const std::string &str)
 
void setPath (const std::string &str)
 
DynamicSystemSolvergetDynamicSystemSolver ()
 
virtual void createPlotGroup ()
 creates the plotGroup for H5-output
 
H5::GroupBasegetPlotGroup ()
 
virtual void setPlotFeature (PlotFeature pf, PlotFeatureStatus value)
 Set a plot feature. More...
 
void setPlotFeatureForChildren (PlotFeature pf, PlotFeatureStatus value)
 Set a plot feature for the children of this object. More...
 
void setPlotFeatureRecursive (PlotFeature pf, PlotFeatureStatus value)
 Set a plot feature for this object and the children of this object. More...
 
PlotFeatureStatus getPlotFeature (PlotFeature pf)
 
PlotFeatureStatus getPlotFeatureForChildren (PlotFeature pf)
 
PlotFeatureStatus initializePlotFeatureStatusUsingXML (xercesc::DOMElement *e)
 
PlotFeature initializePlotFeatureUsingXML (xercesc::DOMElement *e)
 
const std::vector
< MBXMLUtils::EmbedDOMLocator > & 
getLocationStack () const
 
template<class T >
T * getByPath (const std::string &path, bool initialCaller=true) const
 Get the object of type T represented by the path path. Do not set any argurment other than path!
 
std::string getPath (const Element *relTo=NULL, std::string sep="/") const
 Return the path of this object. If relativeTo is not NULL return a relative path to relativeTo. Do not set any argurment other than relTo and sep!
 
virtual ElementgetChildByContainerAndName (const std::string &container, const std::string &name) const
 Get the Element named name in the container named container.
 
virtual ElementgetParent ()
 
virtual const ElementgetParent () const
 
virtual void setParent (Element *parent_)
 
std::vector< Element * > getDependencies () const
 checks dependency on other elements. More...
 
void addDependency (Element *ele)
 
int computeLevel ()
 computes the length of the pathes in the graph that represents the dependencies between all elements. More...
 
virtual void updateVelocities (Frame *frame)
 
virtual void updateAccelerations (Frame *frame)
 
virtual void updateJacobians (Frame *frame, int j=0)
 
virtual void updateGyroscopicAccelerations (Frame *frame)
 
const double & getTime () const
 
double getStepSize () const
 
- Public Member Functions inherited from fmatvec::Atom
Atomoperator= (const Atom &)
 
void setMessageStreamActive (MsgType type, bool active)
 
void getMessageStream (MsgType type, std::shared_ptr< bool > &a, std::shared_ptr< std::ostream > &s)
 
void adoptMessageStreams (const Atom *src=NULL)
 
std::ostream & msg (MsgType type)
 
bool msgAct (MsgType type)
 

Private Attributes

std::vector< RigidBody * > bd1
 
std::vector< RigidBody * > bd2
 
std::vector< RigidBody * > bi
 
std::vector< Frame * > if1
 
std::vector< Frame * > if2
 
Frameframe1
 
Frameframe2
 
FramerefFrame
 frame of reference the force is defined in
 
int refFrameID
 
FloatingRelativeFrame C
 
fmatvec::Mat3xV dT
 
fmatvec::Mat3xV dR
 
fmatvec::Mat3xV forceDir
 
fmatvec::Mat3xV momentDir
 
std::vector< fmatvec::RangeV > Iq1
 
std::vector< fmatvec::RangeV > Iq2
 
std::vector< fmatvec::RangeV > Iu1
 
std::vector< fmatvec::RangeV > Iu2
 
std::vector< fmatvec::RangeV > Ih1
 
std::vector< fmatvec::RangeV > Ih2
 
int nq
 
int nu
 
int nh
 
fmatvec::Vec q
 
fmatvec::Vec q0
 
fmatvec::Mat JT
 
fmatvec::Mat JR
 
std::string saved_ref1
 
std::string saved_ref2
 
std::vector< std::string > saved_RigidBodyFirstSide
 
std::vector< std::string > saved_RigidBodySecondSide
 
std::vector< std::string > saved_IndependentBody
 
std::shared_ptr< OpenMBV::ArrowFArrow
 
std::shared_ptr< OpenMBV::ArrowMArrow
 

Additional Inherited Members

- Public Types inherited from MBSim::Element
enum  PlotFeatureStatus { enabled, disabled, unset }
 Plot feature status. More...
 
enum  PlotFeature {
  plotRecursive =0, separateFilePerGroup, state, stateDerivative,
  notMinimalState, rightHandSide, globalPosition, globalVelocity,
  globalAcceleration, energy, openMBV, generalizedLinkForce,
  linkKinematics, stopVector, debug, LASTPLOTFEATURE
}
 Plot Features. More...
 
enum  InitStage {
  modelBuildup =0, resolveXMLPath, preInit, resize,
  plotting, reorganizeHierarchy, unknownStage, LASTINITSTAGE
}
 The stages of the initialization. More...
 
- Public Types inherited from fmatvec::Atom
enum  MsgType
 
- Static Public Member Functions inherited from MBSim::Element
static double getDouble (xercesc::DOMElement *e)
 
static int getInt (xercesc::DOMElement *e)
 
static bool getBool (xercesc::DOMElement *e)
 
static fmatvec::Vec3 getVec3 (xercesc::DOMElement *e)
 
static fmatvec::Vec getVec (xercesc::DOMElement *e, int rows=0)
 
static fmatvec::Mat3xV getMat3xV (xercesc::DOMElement *e, int cols=0)
 
static fmatvec::Mat getMat (xercesc::DOMElement *e, int rows=0, int cols=0)
 
static fmatvec::SqrMat3 getSqrMat3 (xercesc::DOMElement *e)
 
static fmatvec::SqrMat getSqrMat (xercesc::DOMElement *e, int size=0)
 
static fmatvec::SymMat3 getSymMat3 (xercesc::DOMElement *e)
 
static fmatvec::SymMat getSymMat (xercesc::DOMElement *e, int size=0)
 
- Static Public Member Functions inherited from fmatvec::Atom
static void setCurrentMessageStream (MsgType type, const std::shared_ptr< bool > &a=std::make_shared< bool >(true), const std::shared_ptr< std::ostream > &s=std::make_shared< std::ostream >(std::cout.rdbuf()))
 
static std::ostream & msgStatic (MsgType type)
 
static bool msgActStatic (MsgType type)
 
- Protected Member Functions inherited from MBSim::Element
void updatePlotFeatures ()
 
- Protected Member Functions inherited from fmatvec::Atom
 Atom (const Atom &src)
 
- Protected Attributes inherited from MBSim::Constraint
fmatvec::Vec x
 order one parameters
 
fmatvec::Vec xd
 differentiated order one parameters
 
fmatvec::Vec dx
 
fmatvec::Vec x0
 order one initial value
 
int xSize
 size and local index of order one parameters
 
int xInd
 
bool updGC
 
bool updGJ
 
- Protected Attributes inherited from MBSim::Element
Elementparent
 
std::string name
 name of element
 
std::string path
 The path of this object. Is set during the init stage reorganizeHierarchy. Before this the path is calculated dynamically using getPath() after this stage getPath just returns this value.
 
std::vector
< MBXMLUtils::EmbedDOMLocator
locationStack
 
DynamicSystemSolverds
 dynamic system
 
H5::VectorSerie< double > * plotVectorSerie
 time series
 
std::vector< double > plotVector
 one entry of time series
 
std::vector< std::string > plotColumns
 columns of time series
 
H5::GroupBaseplotGroup
 associated plot group
 
std::vector< Element * > dependency
 vector containing all dependencies.
 

Detailed Description

Joint contraint.

Author
Martin Foerg 2011-08-04 XML Interface added (Markus Schneider)

Member Function Documentation

virtual std::string MBSim::JointConstraint::getType ( ) const
inlinevirtual
Returns
std::string representation

Reimplemented from MBSim::Constraint.

void MBSim::JointConstraint::init ( InitStage  stage)
virtual

plots time series header

Parameters
invocingparent class

Reimplemented from MBSim::Constraint.


The documentation for this class was generated from the following files:

Impressum / Disclaimer / Datenschutz Generated by doxygen 1.8.5 Valid HTML