23#include <mbsim/functions/function.h>
25namespace MBSimFlexibleBody {
47 fmatvec::RotMat3 operator()(
const fmatvec::VecV &q,
const double &t)
override;
54 virtual fmatvec::Vec3
computet(
const fmatvec::Vec& q)
const = 0;
60 virtual fmatvec::Vec3
computen(
const fmatvec::Vec& q)
const = 0;
66 virtual fmatvec::Vec3
computeb(
const fmatvec::Vec& q)
const = 0;
72 virtual fmatvec::Vec
computentil(
const fmatvec::Vec& q)
const = 0;
78 virtual fmatvec::Vec
computebtil(
const fmatvec::Vec& q)
const = 0;
84 virtual fmatvec::SqrMat
computetq(
const fmatvec::Vec& q)
const = 0;
90 virtual fmatvec::SqrMat
computenq(
const fmatvec::Vec& q)
const = 0;
96 virtual fmatvec::SqrMat
computebq(
const fmatvec::Vec& q)
const = 0;
114 virtual fmatvec::Mat
computetq2(
const fmatvec::Vec& q)
const = 0;
120 virtual fmatvec::Mat
computenq2(
const fmatvec::Vec& q)
const = 0;
126 virtual fmatvec::Mat
computebq2(
const fmatvec::Vec& q)
const = 0;
147 fmatvec::Vec
computett(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
154 fmatvec::Vec
computent(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
161 fmatvec::Vec
computebt(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
168 fmatvec::Vec
computentilt(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
175 fmatvec::Vec
computebtilt(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
182 fmatvec::SqrMat
computetqt(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
189 fmatvec::SqrMat
computenqt(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
196 fmatvec::SqrMat
computebqt(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
203 fmatvec::SqrMat
computentilqt(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
210 fmatvec::SqrMat
computebtilqt(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
217 virtual fmatvec::Vec
computeOmega(
const fmatvec::Vec& q,
const fmatvec::Vec& qt)
const;
223 virtual fmatvec::SqrMat
computeT(
const fmatvec::Vec& q)
const;
node class for angle parametrisation
Definition: angles.h:35
virtual fmatvec::SqrMat computentilq(const fmatvec::Vec &q) const =0
virtual fmatvec::SqrMat computetq(const fmatvec::Vec &q) const =0
virtual fmatvec::SqrMat computebq(const fmatvec::Vec &q) const =0
fmatvec::Vec computebtilt(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:63
virtual fmatvec::Mat computentilq2(const fmatvec::Vec &q) const =0
virtual fmatvec::Mat computenq2(const fmatvec::Vec &q) const =0
fmatvec::SqrMat computentilqt(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:99
fmatvec::Vec computett(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:39
virtual fmatvec::SqrMat computeT(const fmatvec::Vec &q) const
Definition: angles.cc:134
virtual fmatvec::Vec3 computet(const fmatvec::Vec &q) const =0
virtual fmatvec::Vec3 computeb(const fmatvec::Vec &q) const =0
virtual fmatvec::Vec computebtil(const fmatvec::Vec &q) const =0
fmatvec::SqrMat computenqt(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:79
virtual fmatvec::Mat computebtilq2(const fmatvec::Vec &q) const =0
fmatvec::Vec computent(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:45
fmatvec::SqrMat computebtilqt(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:109
~Angles() override
destructor
virtual fmatvec::Vec computentil(const fmatvec::Vec &q) const =0
virtual fmatvec::SqrMat computenq(const fmatvec::Vec &q) const =0
virtual fmatvec::Vec3 computen(const fmatvec::Vec &q) const =0
fmatvec::SqrMat computetqt(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:69
virtual fmatvec::Vec computeOmega(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:119
virtual fmatvec::Mat computetq2(const fmatvec::Vec &q) const =0
fmatvec::SqrMat computebqt(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:89
fmatvec::Vec computebt(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:51
virtual fmatvec::SqrMat computebtilq(const fmatvec::Vec &q) const =0
fmatvec::Vec computentilt(const fmatvec::Vec &q, const fmatvec::Vec &qt) const
Definition: angles.cc:57
virtual fmatvec::Mat computebq2(const fmatvec::Vec &q) const =0