Robotics Library  0.7.0
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | Private Member Functions | Static Private Member Functions | List of all members
rl::math::Polynomial< Quaternion > Class Reference

#include <PolynomialQuaternion.h>

Inheritance diagram for rl::math::Polynomial< Quaternion >:
Inheritance graph
[legend]

Public Member Functions

 Polynomial (const ::std::size_t &degree)
 
virtual ~Polynomial ()
 
Polynomial< Quaternion > * clone () const
 
Vector3coefficient (const ::std::size_t &i)
 
const Vector3coefficient (const ::std::size_t &i) const
 
::std::size_t degree () const
 
Real duration () const
 
Reallower ()
 
const Reallower () const
 
Quaternion operator() (const Real &x, const ::std::size_t &derivative=0) const
 Evaluates the function or a derivative thereof for a given value x. More...
 
Realupper ()
 
const Realupper () const
 
- Public Member Functions inherited from rl::math::Function< Quaternion >
 Function ()
 
virtual ~Function ()
 
virtual Functionclone () const=0
 
Real duration () const
 
Reallower ()
 
const Reallower () const
 
Realupper ()
 
const Realupper () const
 

Static Public Member Functions

static Polynomial< QuaternionCubicFirst (const Quaternion &y0, const Quaternion &y1, const Vector3 &yd0, const Vector3 &yd1, const Real &x1=1)
 
static Polynomial< QuaternionLinear (const Quaternion &y0, const Quaternion &y1, const Real &x1=1)
 

Public Attributes

Quaternion y0
 

Protected Attributes

::std::vector< Vector3c
 
Real x0
 
Real x1
 
- Protected Attributes inherited from rl::math::Function< Quaternion >
Real x0
 
Real x1
 

Private Member Functions

Polynomial< Quaternionderivative () const
 
Vector3 eval (const Real &x) const
 

Static Private Member Functions

static Vector3 invB (const Vector3 &e, const Real &dtheta, const Vector3 &x)
 

Constructor & Destructor Documentation

◆ Polynomial()

rl::math::Polynomial< Quaternion >::Polynomial ( const ::std::size_t &  degree)
inline

◆ ~Polynomial()

virtual rl::math::Polynomial< Quaternion >::~Polynomial ( )
inlinevirtual

Member Function Documentation

◆ clone()

Polynomial<Quaternion>* rl::math::Polynomial< Quaternion >::clone ( ) const
inline

◆ coefficient() [1/2]

Vector3& rl::math::Polynomial< Quaternion >::coefficient ( const ::std::size_t &  i)
inline

◆ coefficient() [2/2]

const Vector3& rl::math::Polynomial< Quaternion >::coefficient ( const ::std::size_t &  i) const
inline

◆ CubicFirst()

static Polynomial<Quaternion> rl::math::Polynomial< Quaternion >::CubicFirst ( const Quaternion y0,
const Quaternion y1,
const Vector3 yd0,
const Vector3 yd1,
const Real x1 = 1 
)
inlinestatic

◆ degree()

::std::size_t rl::math::Polynomial< Quaternion >::degree ( ) const
inline

◆ derivative()

Polynomial<Quaternion> rl::math::Polynomial< Quaternion >::derivative ( ) const
inlineprivate

◆ duration()

Real rl::math::Polynomial< Quaternion >::duration ( ) const
inline

◆ eval()

Vector3 rl::math::Polynomial< Quaternion >::eval ( const Real x) const
inlineprivate

◆ invB()

static Vector3 rl::math::Polynomial< Quaternion >::invB ( const Vector3 e,
const Real dtheta,
const Vector3 x 
)
inlinestaticprivate

◆ Linear()

static Polynomial<Quaternion> rl::math::Polynomial< Quaternion >::Linear ( const Quaternion y0,
const Quaternion y1,
const Real x1 = 1 
)
inlinestatic

◆ lower() [1/2]

Real& rl::math::Polynomial< Quaternion >::lower ( )
inline

◆ lower() [2/2]

const Real& rl::math::Polynomial< Quaternion >::lower ( ) const
inline

◆ operator()()

Quaternion rl::math::Polynomial< Quaternion >::operator() ( const Real x,
const ::std::size_t &  derivative = 0 
) const
inlinevirtual

Evaluates the function or a derivative thereof for a given value x.

Some functions are only defined in the interval [lower(), upper()], and fail to evaluate outside of [lower() - FUNCTION_BOUNDARY, upper() + FUNCTION_BOUNDARY]. In Debug mode, this is signaled by failing asserts. In Release mode, the function is evaluated if algebraically possible, or will return an empty ArrayX otherwise. Some functions are not indefinitely often differentiable, and will return a NaN array for all higher orders.

Parameters
[in]xInput value of the function or derivative
[in]derivativeOrder of the derivative to be evaluated

Implements rl::math::Function< Quaternion >.

◆ upper() [1/2]

Real& rl::math::Polynomial< Quaternion >::upper ( )
inline

◆ upper() [2/2]

const Real& rl::math::Polynomial< Quaternion >::upper ( ) const
inline

Member Data Documentation

◆ c

::std::vector<Vector3> rl::math::Polynomial< Quaternion >::c
protected

◆ x0

◆ x1

◆ y0


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