All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | Protected Attributes | List of all members
MBSim::InverseKineticsJoint Class Reference
Inheritance diagram for MBSim::InverseKineticsJoint:
MBSim::Joint MBSim::LinkMechanics MBSim::Link MBSim::Element fmatvec::Atom

Public Member Functions

 InverseKineticsJoint (const std::string &name)
 
virtual void updateb (double t)
 
void calcbSize ()
 calculates size of rfactors
 
void setBody (Body *body_)
 
virtual void init (InitStage stage)
 plots time series header More...
 
virtual bool isSetValued () const
 asks the link if it contains force laws that contribute to the lagrange multiplier and is therefore set valued More...
 
- Public Member Functions inherited from MBSim::Joint
 Joint (const std::string &name="")
 constructor More...
 
virtual ~Joint ()
 destructor
 
virtual void updatewb (double t, int i=0)
 
virtual void updateW (double t, int i=0)
 
virtual void updateh (double t, int i=0)
 
virtual void updateg (double t)
 
virtual void updategd (double t)
 
virtual void updateJacobians (double t, int j=0)
 
virtual void updatexd (double t)
 
virtual void updatedx (double t, double dt)
 
virtual void calcxSize ()
 
virtual void calclaSize (int j)
 calculates size of contact force parameters
 
virtual void calcgSize (int j)
 calculates size of relative distances
 
virtual void calcgdSize (int j)
 calculates size of gap velocities More...
 
virtual void calcrFactorSize (int j)
 calculates size of rfactors
 
virtual void calccorrSize (int j)
 
virtual bool isSingleValued () const
 asks the link if it contains single valued force laws that contribute to the right-hand side vector h More...
 
virtual bool isActive () const
 
virtual bool gActiveChanged ()
 
virtual void solveImpactsFixpointSingle (double dt)
 
virtual void solveConstraintsFixpointSingle ()
 
virtual void solveImpactsGaussSeidel (double dt)
 
virtual void solveConstraintsGaussSeidel ()
 
virtual void solveImpactsRootFinding (double dt)
 
virtual void solveConstraintsRootFinding ()
 
virtual void jacobianConstraints ()
 computes JACOBIAN and mass action matrix of nonlinear contact equations
 
virtual void jacobianImpacts ()
 computes JACOBIAN and mass action matrix of nonlinear contact equations on velocity level
 
virtual void updaterFactors ()
 update relaxation factors for contact equations
 
virtual void checkImpactsForTermination (double dt)
 verify underlying force laws on velocity level concerning given tolerances
 
virtual void checkConstraintsForTermination ()
 verify underlying force laws concerning given tolerances
 
virtual void plot (double t, double dt=1)
 plots time dependent data More...
 
virtual void connect (Frame *frame1, Frame *frame2)
 second frame to connect More...
 
void setForceLaw (GeneralizedForceLaw *rc)
 
void setMomentLaw (GeneralizedForceLaw *rc)
 
void setForceDirection (const fmatvec::Mat3xV &fd)
 
void setMomentDirection (const fmatvec::Mat3xV &md)
 
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.
 
virtual void initializeUsingXML (xercesc::DOMElement *element)
 
virtual xercesc::DOMElement * writeXMLFile (xercesc::DOMNode *element)
 
virtual std::string getType () const
 
- Public Member Functions inherited from MBSim::LinkMechanics
 LinkMechanics (const std::string &name)
 constructor More...
 
virtual ~LinkMechanics ()
 destructor
 
virtual void updatedhdz (double t)
 
std::string getType () const
 
virtual void closePlot ()
 closes plot file
 
virtual void updateWRef (const fmatvec::Mat &ref, int i=0)
 references to contact force direction matrix of dynamic system parent
 
virtual void updateVRef (const fmatvec::Mat &ref, int i=0)
 references to condensed contact force direction matrix of dynamic system parent
 
virtual void updatehRef (const fmatvec::Vec &hRef, int i=0)
 references to complete and link smooth force vector of dynamic system parent
 
virtual void updatedhdqRef (const fmatvec::Mat &ref, int i=0)
 
virtual void updatedhduRef (const fmatvec::SqrMat &ref, int i=0)
 
virtual void updatedhdtRef (const fmatvec::Vec &ref, int i=0)
 
virtual void updaterRef (const fmatvec::Vec &ref, int i=0)
 references to nonsmooth force vector of dynamic system parent
 
const std::vector< Contour * > & getContour () const
 
virtual void connect (Frame *frame_)
 
virtual void connect (Contour *contour_)
 
const std::vector< Frame * > & getFrame () const
 
- 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 (double t, double dt=1)
 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)
 
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 * > getElementsDependingOn () 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...
 
- Public Member Functions inherited from fmatvec::Atom
Atomoperator= (const Atom &)
 
void setMessageStreamActive (MsgType type, bool active)
 
void getMessageStream (MsgType type, boost::shared_ptr< bool > &a, boost::shared_ptr< std::ostream > &s)
 
void adoptMessageStreams (const Atom *src=NULL)
 
std::ostream & msg (MsgType type)
 
bool msgAct (MsgType type)
 

Protected Attributes

Bodybody
 
- Protected Attributes inherited from MBSim::Joint
FramerefFrame
 frame of reference the force is defined in
 
int refFrameID
 
fmatvec::Index IT
 indices of forces and torques
 
fmatvec::Index IR
 
fmatvec::Mat3xV forceDir
 local force and moment direction
 
fmatvec::Mat3xV momentDir
 
fmatvec::Mat3xV Wf
 global force and moment direction
 
fmatvec::Mat3xV Wm
 
fmatvec::Mat3xV JT
 translational JACOBIAN (not empty for e.g. prismatic joints)
 
fmatvec::Vec3 WrP0P1
 difference vector of position, velocity and angular velocity
 
fmatvec::Vec3 WvP0P1
 
fmatvec::Vec3 WomP0P1
 
GeneralizedForceLawffl
 
GeneralizedForceLawfml
 
GeneralizedImpactLawfifl
 
GeneralizedImpactLawfiml
 
fmatvec::Vec gdn
 relative velocity and acceleration after an impact for event driven scheme summarizing all possible contacts
 
fmatvec::Vec gdd
 
Frame C
 own frame located in second partner with same orientation as first partner
 
- Protected Attributes inherited from MBSim::LinkMechanics
std::vector< fmatvec::Vec3 > WF
 force and moment direction for smooth right hand side
 
std::vector< fmatvec::Vec3 > WM
 
std::vector< fmatvec::Mat3xV > fF
 cartesian force and moment direction matrix for nonsmooth right hand side
 
std::vector< fmatvec::Mat3xV > fM
 
std::vector< Frame * > frame
 array in which all frames are listed, connecting bodies via a link
 
std::vector< Contour * > contour
 array in which all contours are listed, connecting bodies via link
 
- 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.
 

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,
  relativeFrameContourLocation, worldFrameContourLocation, plotting, reorganizeHierarchy,
  unknownStage, calculateLocalInitialValues, 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 boost::shared_ptr< bool > &a=boost::make_shared< bool >(true), const boost::shared_ptr< std::ostream > &s=boost::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)
 

Member Function Documentation

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

plots time series header

Parameters
invocingparent class

Reimplemented from MBSim::Joint.

virtual bool MBSim::InverseKineticsJoint::isSetValued ( ) const
inlinevirtual

asks the link if it contains force laws that contribute to the lagrange multiplier and is therefore set valued

Returns
set valued force laws used within the link?

Reimplemented from MBSim::Joint.


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

Impressum / Disclaimer / Datenschutz Generated by doxygen 1.8.5 Valid HTML