mbsimflexiblebody  4.0.0
MBSim Flexible Body Module
MBSimFlexibleBody::Angles Class Referenceabstract

node class for angle parametrisation More...

#include <angles.h>

Inheritance diagram for MBSimFlexibleBody::Angles:
[legend]

Public Member Functions

 Angles ()
 constructor
 
 ~Angles () override
 destructor
 
fmatvec::RotMat3 operator() (const fmatvec::VecV &q, const double &t) override
 
virtual fmatvec::Vec3 computet (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Vec3 computen (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Vec3 computeb (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Vec computentil (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Vec computebtil (const fmatvec::Vec &q) const =0
 
virtual fmatvec::SqrMat computetq (const fmatvec::Vec &q) const =0
 
virtual fmatvec::SqrMat computenq (const fmatvec::Vec &q) const =0
 
virtual fmatvec::SqrMat computebq (const fmatvec::Vec &q) const =0
 
virtual fmatvec::SqrMat computentilq (const fmatvec::Vec &q) const =0
 
virtual fmatvec::SqrMat computebtilq (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Mat computetq2 (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Mat computenq2 (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Mat computebq2 (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Mat computentilq2 (const fmatvec::Vec &q) const =0
 
virtual fmatvec::Mat computebtilq2 (const fmatvec::Vec &q) const =0
 
fmatvec::Vec computett (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::Vec computent (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::Vec computebt (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::Vec computentilt (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::Vec computebtilt (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::SqrMat computetqt (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::SqrMat computenqt (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::SqrMat computebqt (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::SqrMat computentilqt (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
fmatvec::SqrMat computebtilqt (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
virtual fmatvec::Vec computeOmega (const fmatvec::Vec &q, const fmatvec::Vec &qt) const
 
virtual fmatvec::SqrMat computeT (const fmatvec::Vec &q) const
 
- Public Member Functions inherited from MBSim::Element
 Element (const std::string &name)
 
virtual void setDynamicSystemSolver (DynamicSystemSolver *sys)
 
virtual void plot ()
 
virtual void plotAtSpecialEvent ()
 
const std::string & getName () const
 
void setName (const std::string &str)
 
DynamicSystemSolvergetDynamicSystemSolver ()
 
virtual void init (InitStage stage, const InitConfigSet &config=InitConfigSet())
 
virtual void createPlotGroup ()
 
H5::GroupBasegetPlotGroup ()
 
bool getPlotFeature (const PlotFeatureEnum &pf)
 
virtual void setPlotFeature (const PlotFeatureEnum &pf, bool value)
 
void setPlotFeatureForChildren (const PlotFeatureEnum &pf, bool value)
 
void setPlotFeatureRecursive (const PlotFeatureEnum &pf, bool value)
 
void setPlotAttribute (const std::string &name, const T &value, PlotAttributeStorage storage=PlotAttributeStorage::attribute)
 
T * getByPath (const std::string &path, bool initialCaller=true) const
 
std::string getPath (const Element *relTo=nullptr, std::string sep="/") const
 
virtual ElementgetChildByContainerAndName (const std::string &container, const std::string &name) const
 
std::vector< Element * > getDependencies () const
 
int computeLevel ()
 

Additional Inherited Members

- Public Types inherited from MBSim::Element
enum  InitStage
 
- Public Attributes inherited from MBSim::Element
 resolveStringRef
 
 preInit
 
 plotting
 
 unknownStage
 
- Protected Attributes inherited from MBSim::Element
std::string name
 
std::string path
 
MBXMLUtils::DOMEvalException domEvalError
 
DynamicSystemSolverds
 
H5::VectorSerie< double > * plotVectorSerie
 
std::vector< double > plotVector
 
std::vector< std::string > plotColumns
 
H5::GroupBaseplotGroup
 
std::vector< Element * > dependency
 
PlotFeatureMap plotFeature
 

Detailed Description

node class for angle parametrisation

Author
Thorsten Schindler
Date
2009-04-24 initial commit (Thorsten Schindler)
2010-05-23 update according to change in Rotation (Martin Foerg)
2012-03-20 added T matrix (Schindler / Cebulla)
Todo:
unify with Rotation TODO

Member Function Documentation

◆ computeb()

virtual fmatvec::Vec3 MBSimFlexibleBody::Angles::computeb ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
binormal

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computebq()

virtual fmatvec::SqrMat MBSimFlexibleBody::Angles::computebq ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
derivative of binormal with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computebq2()

virtual fmatvec::Mat MBSimFlexibleBody::Angles::computebq2 ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
2nd derivative of binormal with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computebqt()

SqrMat MBSimFlexibleBody::Angles::computebqt ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of bq

◆ computebt()

Vec MBSimFlexibleBody::Angles::computebt ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of binormal

◆ computebtil()

virtual fmatvec::Vec MBSimFlexibleBody::Angles::computebtil ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
tilde binormal

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computebtilq()

virtual fmatvec::SqrMat MBSimFlexibleBody::Angles::computebtilq ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
derivative of tilde binormal with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computebtilq2()

virtual fmatvec::Mat MBSimFlexibleBody::Angles::computebtilq2 ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
2nd derivative of tilde binormal with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computebtilqt()

SqrMat MBSimFlexibleBody::Angles::computebtilqt ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of btilq

◆ computebtilt()

Vec MBSimFlexibleBody::Angles::computebtilt ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of tilde binormal

◆ computen()

virtual fmatvec::Vec3 MBSimFlexibleBody::Angles::computen ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
normal

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computenq()

virtual fmatvec::SqrMat MBSimFlexibleBody::Angles::computenq ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
derivative of normal with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computenq2()

virtual fmatvec::Mat MBSimFlexibleBody::Angles::computenq2 ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
2nd derivative of normal with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computenqt()

SqrMat MBSimFlexibleBody::Angles::computenqt ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of nq

◆ computent()

Vec MBSimFlexibleBody::Angles::computent ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of normal

◆ computentil()

virtual fmatvec::Vec MBSimFlexibleBody::Angles::computentil ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
tilde normal

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computentilq()

virtual fmatvec::SqrMat MBSimFlexibleBody::Angles::computentilq ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
derivative of tilde normal with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computentilq2()

virtual fmatvec::Mat MBSimFlexibleBody::Angles::computentilq2 ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
2nd derivative of tilde normal with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computentilqt()

SqrMat MBSimFlexibleBody::Angles::computentilqt ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of ntilq

◆ computentilt()

Vec MBSimFlexibleBody::Angles::computentilt ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of tilde normal

◆ computeOmega()

Vec MBSimFlexibleBody::Angles::computeOmega ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
virtual
Parameters
angles
derivativeof angles
Returns
angular velocity

Reimplemented in MBSimFlexibleBody::Cardan.

◆ computeT()

SqrMat MBSimFlexibleBody::Angles::computeT ( const fmatvec::Vec &  q) const
virtual
Parameters
angles
Returns
T-matrix (transformation matrix from differentiated angles to angular velocity omega)

Reimplemented in MBSimFlexibleBody::Cardan.

◆ computet()

virtual fmatvec::Vec3 MBSimFlexibleBody::Angles::computet ( const fmatvec::Vec &  q) const
pure virtual
Returns
tangent

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computetq()

virtual fmatvec::SqrMat MBSimFlexibleBody::Angles::computetq ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
derivative of tangent with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computetq2()

virtual fmatvec::Mat MBSimFlexibleBody::Angles::computetq2 ( const fmatvec::Vec &  q) const
pure virtual
Parameters
angles
Returns
2nd derivative of tangent with respect to angles

Implemented in MBSimFlexibleBody::Cardan, and MBSimFlexibleBody::RevCardan.

◆ computetqt()

SqrMat MBSimFlexibleBody::Angles::computetqt ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of tq

◆ computett()

Vec MBSimFlexibleBody::Angles::computett ( const fmatvec::Vec &  q,
const fmatvec::Vec &  qt 
) const
Parameters
angles
derivativeof angles
Returns
time derivative of tangent

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