mbsimflexiblebody 4.0.0 MBSim Flexible Body Module

Public Member Functions | List of all members
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)
DynamicSystemSolver * | getDynamicSystemSolver ()
virtual void | init (InitStage stage, const InitConfigSet &config)
virtual void | createPlotGroup ()
H5::GroupBase * | getPlotGroup ()
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)
T * | getByPath (const std::string &path, bool initialCaller=true) const
std::string | getPath (const Element *relTo=nullptr, std::string sep="/") const
virtual Element * | getChildByContainerAndName (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
DynamicSystemSolver * | ds
H5::VectorSerie< double > * | plotVectorSerie
std::vector< double > | plotVector
std::vector< std::string > | plotColumns
H5::GroupBase * | plotGroup
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 |
  derivative | of angles

Returns
  time derivative of bq

## ◆ computebt()

Vec MBSimFlexibleBody::Angles::computebt | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | qt
| ) |  | const

Parameters

  angles |
  derivative | of 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 |
  derivative | of angles

Returns
  time derivative of btilq

## ◆ computebtilt()

Vec MBSimFlexibleBody::Angles::computebtilt | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | qt
| ) |  | const

Parameters

  angles |
  derivative | of 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 |
  derivative | of angles

Returns
  time derivative of nq

## ◆ computent()

Vec MBSimFlexibleBody::Angles::computent | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | qt
| ) |  | const

Parameters

  angles |
  derivative | of 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 |
  derivative | of angles

Returns
  time derivative of ntilq

## ◆ computentilt()

Vec MBSimFlexibleBody::Angles::computentilt | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | qt
| ) |  | const

Parameters

  angles |
  derivative | of angles

Returns
  time derivative of tilde normal

## ◆ computeOmega()

Vec MBSimFlexibleBody::Angles::computeOmega | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | qt
| ) |  | const

virtual

Parameters

  angles |
  derivative | of angles

Returns
  angular velocity

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.

## ◆ 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.

## ◆ 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 |
  derivative | of angles

Returns
  time derivative of tq

## ◆ computett()

Vec MBSimFlexibleBody::Angles::computett | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | qt
| ) |  | const

Parameters

  angles |
  derivative | of angles

Returns
  time derivative of tangent

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

- /mbsim-env/mbsim/modules/mbsimFlexibleBody/mbsimFlexibleBody/utils/angles.h
- /mbsim-env/mbsim/modules/mbsimFlexibleBody/mbsimFlexibleBody/utils/angles.cc