cartesian frame on bodies used for application of e.g. links and loads More...
#include <frame.h>
Public Member Functions | |
Frame (const std::string &name="dummy") | |
constructor More... | |
virtual | ~Frame () |
destructor | |
void | init (InitStage stage) |
plots time series header More... | |
std::string | getType () const |
virtual void | plot () |
plots time dependent data More... | |
virtual void | closePlot () |
closes plot file | |
int | gethSize (int i=0) const |
int | gethInd (int i=0) const |
void | sethSize (int size, int i=0) |
void | sethInd (int ind, int i=0) |
const fmatvec::Vec3 & | getPosition (bool check=true) const |
fmatvec::Vec3 & | getPosition (bool check=true) |
void | setPosition (const fmatvec::Vec3 &v) |
const fmatvec::Vec3 & | evalPosition () |
const fmatvec::SqrMat3 & | getOrientation (bool check=true) const |
fmatvec::SqrMat3 & | getOrientation (bool check=true) |
void | setOrientation (const fmatvec::SqrMat3 &AWP_) |
const fmatvec::SqrMat3 & | evalOrientation () |
const fmatvec::Vec3 & | getVelocity (bool check=true) const |
fmatvec::Vec3 & | getVelocity (bool check=true) |
void | setVelocity (const fmatvec::Vec3 &v) |
const fmatvec::Vec3 & | evalVelocity () |
const fmatvec::Vec3 & | getAngularVelocity (bool check=true) const |
fmatvec::Vec3 & | getAngularVelocity (bool check=true) |
void | setAngularVelocity (const fmatvec::Vec3 &omega) |
const fmatvec::Vec3 & | evalAngularVelocity () |
const fmatvec::Vec3 & | getAcceleration (bool check=true) const |
fmatvec::Vec3 & | getAcceleration (bool check=true) |
void | setAcceleration (const fmatvec::Vec3 &a) |
const fmatvec::Vec3 & | evalAcceleration () |
const fmatvec::Vec3 & | getAngularAcceleration (bool check=true) const |
fmatvec::Vec3 & | getAngularAcceleration (bool check=true) |
void | setAngularAcceleration (const fmatvec::Vec3 &psi) |
const fmatvec::Vec3 & | evalAngularAcceleration () |
const fmatvec::Mat3xV & | getJacobianOfTranslation (int j=0, bool check=true) const |
fmatvec::Mat3xV & | getJacobianOfTranslation (int j=0, bool check=true) |
void | setJacobianOfTranslation (const fmatvec::Mat3xV &WJP_, int j=0) |
const fmatvec::Mat3xV & | evalJacobianOfTranslation (int j=0) |
const fmatvec::Mat3xV & | getJacobianOfRotation (int j=0, bool check=true) const |
fmatvec::Mat3xV & | getJacobianOfRotation (int j=0, bool check=true) |
void | setJacobianOfRotation (const fmatvec::Mat3xV &WJR_, int j=0) |
const fmatvec::Mat3xV & | evalJacobianOfRotation (int j=0) |
const fmatvec::Vec3 & | getGyroscopicAccelerationOfTranslation (bool check=true) const |
fmatvec::Vec3 & | getGyroscopicAccelerationOfTranslation (bool check=true) |
void | setGyroscopicAccelerationOfTranslation (const fmatvec::Vec3 &WjP_) |
const fmatvec::Vec3 & | evalGyroscopicAccelerationOfTranslation () |
const fmatvec::Vec3 & | getGyroscopicAccelerationOfRotation (bool check=true) const |
fmatvec::Vec3 & | getGyroscopicAccelerationOfRotation (bool check=true) |
void | setGyroscopicAccelerationOfRotation (const fmatvec::Vec3 &WjR_) |
const fmatvec::Vec3 & | evalGyroscopicAccelerationOfRotation () |
virtual void | initializeUsingXML (xercesc::DOMElement *element) |
BOOST_PARAMETER_MEMBER_FUNCTION ((void), enableOpenMBV, tag,(optional(size,(double), 1)(offset,(double), 1)(transparency,(double), 0))) | |
void | setOpenMBVFrame (const std::shared_ptr< OpenMBV::Frame > &frame) |
std::shared_ptr< OpenMBV::Frame > & | getOpenMBVFrame () |
void | resetUpToDate () |
virtual void | resetPositionsUpToDate () |
virtual void | resetVelocitiesUpToDate () |
virtual void | resetJacobiansUpToDate () |
virtual void | resetGyroscopicAccelerationsUpToDate () |
virtual void | updatePositions () |
virtual void | updateVelocities () |
virtual void | updateAccelerations () |
virtual void | updateJacobians (int j=0) |
virtual void | updateGyroscopicAccelerations () |
![]() | |
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) |
DynamicSystemSolver * | getDynamicSystemSolver () |
virtual void | createPlotGroup () |
creates the plotGroup for H5-output | |
H5::GroupBase * | getPlotGroup () |
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 Element * | getChildByContainerAndName (const std::string &container, const std::string &name) const |
Get the Element named name in the container named container. | |
virtual std::shared_ptr < OpenMBV::Group > | getOpenMBVGrp () |
virtual Element * | getParent () |
virtual const Element * | getParent () 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 | updatePositions (Frame *frame) |
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 |
![]() | |
Atom & | operator= (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) |
Protected Attributes | |
int | hSize [2] |
size and index of right hand side | |
int | hInd [2] |
fmatvec::Vec3 | WrOP |
position of coordinate system in inertial frame of reference | |
fmatvec::SqrMat3 | AWP |
transformation matrix in inertial frame of reference | |
fmatvec::Vec3 | WvP |
velocity and angular velocity of coordinate system in inertial frame of reference | |
fmatvec::Vec3 | WomegaP |
fmatvec::Mat3xV | WJP [3] |
Jacobians of translation and rotation from coordinate system to inertial frame. | |
fmatvec::Mat3xV | WJR [3] |
fmatvec::Vec3 | WjP |
fmatvec::Vec3 | WjR |
fmatvec::Vec3 | WaP |
acceleration and angular acceleration of coordinate system in inertial frame of reference | |
fmatvec::Vec3 | WpsiP |
std::shared_ptr< OpenMBV::Frame > | openMBVFrame |
bool | updJac [3] |
bool | updGA |
bool | updPos |
bool | updVel |
bool | updAcc |
![]() | |
Element * | parent |
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 |
DynamicSystemSolver * | ds |
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::GroupBase * | plotGroup |
associated plot group | |
std::vector< Element * > | dependency |
vector containing all dependencies. | |
Additional Inherited Members | |
![]() | |
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... | |
![]() | |
enum | MsgType |
![]() | |
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 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) |
![]() | |
void | updatePlotFeatures () |
![]() | |
Atom (const Atom &src) | |
cartesian frame on bodies used for application of e.g. links and loads
MBSim::Frame::Frame | ( | const std::string & | name = "dummy" | ) |
constructor
name | of coordinate system |
|
inlinevirtual |
Reimplemented from MBSim::Element.
|
virtual |
|
virtual |
plots time dependent data
simulation | time |
simulation | time step size for derivative calculation |
Reimplemented from MBSim::Element.
|
protected |
translational and rotational acceleration not linear in the generalised velocity derivatives