Robotics Library
0.7.0
|
#include <PolynomialQuaternion.h>
Public Member Functions | |
Polynomial (const ::std::size_t °ree) | |
virtual | ~Polynomial () |
Polynomial< Quaternion > * | clone () const |
Vector3 & | coefficient (const ::std::size_t &i) |
const Vector3 & | coefficient (const ::std::size_t &i) const |
::std::size_t | degree () const |
Real | duration () const |
Real & | lower () |
const Real & | lower () 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... | |
Real & | upper () |
const Real & | upper () const |
Public Member Functions inherited from rl::math::Function< Quaternion > | |
Function () | |
virtual | ~Function () |
virtual Function * | clone () const=0 |
Real | duration () const |
Real & | lower () |
const Real & | lower () const |
Real & | upper () |
const Real & | upper () const |
Static Public Member Functions | |
static Polynomial< Quaternion > | CubicFirst (const Quaternion &y0, const Quaternion &y1, const Vector3 &yd0, const Vector3 &yd1, const Real &x1=1) |
static Polynomial< Quaternion > | Linear (const Quaternion &y0, const Quaternion &y1, const Real &x1=1) |
Public Attributes | |
Quaternion | y0 |
Protected Attributes | |
::std::vector< Vector3 > | c |
Real | x0 |
Real | x1 |
Protected Attributes inherited from rl::math::Function< Quaternion > | |
Real | x0 |
Real | x1 |
Private Member Functions | |
Polynomial< Quaternion > | derivative () const |
Vector3 | eval (const Real &x) const |
Static Private Member Functions | |
static Vector3 | invB (const Vector3 &e, const Real &dtheta, const Vector3 &x) |
|
inline |
|
inlinevirtual |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inlineprivate |
|
inline |
|
inlineprivate |
|
inlinestaticprivate |
|
inlinestatic |
|
inline |
|
inline |
|
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.
[in] | x | Input value of the function or derivative |
[in] | derivative | Order of the derivative to be evaluated |
Implements rl::math::Function< Quaternion >.
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |