utils::RetimedPolynomial< Polynomial, T > Struct Template Reference

#include <lipm_walking/utils/polynomials.h>

Public Member Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW RetimedPolynomial ()
 
 RetimedPolynomial (Polynomial< T > poly, double duration)
 
double duration () const
 
void reset (const T &initPos, const T &targetPos, double duration)
 
void reset (const T &initPos, const T &initVel, const T &targetPos, const T &targetVel, double duration)
 
void reset (const T &initPos, const T &initVel, const T &initAccel, const T &targetPos, const T &targetVel, const T &targetAccel, double duration)
 
double s (double t) const
 
double sd (double t) const
 
pos (double t) const
 
vel (double t) const
 
accel (double t) const
 

Protected Attributes

double duration_
 
Polynomial< T > poly_
 

Detailed Description

template<template< class > class Polynomial, typename T>
struct utils::RetimedPolynomial< Polynomial, T >

Polynomial whose argument $s \in [0, 1]$ is retimed to $t \in [0, T]$ by $ s(t) = t / T $.

Definition at line 662 of file polynomials.h.

Constructor & Destructor Documentation

◆ RetimedPolynomial() [1/2]

template<template< class > class Polynomial, typename T >
EIGEN_MAKE_ALIGNED_OPERATOR_NEW utils::RetimedPolynomial< Polynomial, T >::RetimedPolynomial ( )
inline

Empty constructor.

Definition at line 669 of file polynomials.h.

◆ RetimedPolynomial() [2/2]

template<template< class > class Polynomial, typename T >
utils::RetimedPolynomial< Polynomial, T >::RetimedPolynomial ( Polynomial< T >  poly,
double  duration 
)
inline

Constructor.

Parameters
polyPolynomial whose argument $s \in [0, 1]$.
durationNew duration T of the retiming $t \in [0, T]$.

Definition at line 678 of file polynomials.h.

Member Function Documentation

◆ accel()

template<template< class > class Polynomial, typename T >
T utils::RetimedPolynomial< Polynomial, T >::accel ( double  t) const
inline

Acceleration along the retimed trajectory.

Parameters
tTime $t \in [0, T]$.

Definition at line 795 of file polynomials.h.

◆ duration()

template<template< class > class Polynomial, typename T >
double utils::RetimedPolynomial< Polynomial, T >::duration ( ) const
inline

Get trajectory duration.

Definition at line 683 of file polynomials.h.

◆ pos()

template<template< class > class Polynomial, typename T >
T utils::RetimedPolynomial< Polynomial, T >::pos ( double  t) const
inline

Position along the retimed trajectory.

Parameters
tTime $t \in [0, T]$.

Definition at line 775 of file polynomials.h.

◆ reset() [1/3]

template<template< class > class Polynomial, typename T >
void utils::RetimedPolynomial< Polynomial, T >::reset ( const T &  initPos,
const T &  initVel,
const T &  initAccel,
const T &  targetPos,
const T &  targetVel,
const T &  targetAccel,
double  duration 
)
inline

Reset duration and boundary positions, velocities and accelerations.

Parameters
initPosInitial position.
initVelInitial velocity.
initAccelInitial acceleration.
targetPosTarget position.
targetVelTarget velocity.
targetAccelTarget acceleration.
durationNew duration T of the trajectory.

Definition at line 739 of file polynomials.h.

◆ reset() [2/3]

template<template< class > class Polynomial, typename T >
void utils::RetimedPolynomial< Polynomial, T >::reset ( const T &  initPos,
const T &  initVel,
const T &  targetPos,
const T &  targetVel,
double  duration 
)
inline

Reset duration and boundary positions and velocities.

Parameters
initPosInitial position.
initVelInitial velocity.
targetPosTarget position.
targetVelTarget velocity.
durationNew duration T of the trajectory.

Definition at line 716 of file polynomials.h.

◆ reset() [3/3]

template<template< class > class Polynomial, typename T >
void utils::RetimedPolynomial< Polynomial, T >::reset ( const T &  initPos,
const T &  targetPos,
double  duration 
)
inline

Reset duration and boundary positions.

Parameters
initPosInitial position.
targetPosTarget position.
durationNew duration T of the trajectory.

Definition at line 697 of file polynomials.h.

◆ s()

template<template< class > class Polynomial, typename T >
double utils::RetimedPolynomial< Polynomial, T >::s ( double  t) const
inline

Mapping from $t \in [0, T]$ to $s(t) \in [0, 1]$.

Definition at line 756 of file polynomials.h.

◆ sd()

template<template< class > class Polynomial, typename T >
double utils::RetimedPolynomial< Polynomial, T >::sd ( double  t) const
inline

Mapping from $t \in [0, T]$ to $\dot{s}(t) = \frac{{\rm d}(s(t))}{{\rm d}t}$.

Definition at line 765 of file polynomials.h.

◆ vel()

template<template< class > class Polynomial, typename T >
T utils::RetimedPolynomial< Polynomial, T >::vel ( double  t) const
inline

Velocity along the retimed trajectory.

Parameters
tTime t $\in [0, T]$.

Definition at line 785 of file polynomials.h.

Member Data Documentation

◆ duration_

template<template< class > class Polynomial, typename T >
double utils::RetimedPolynomial< Polynomial, T >::duration_
protected

Definition at line 801 of file polynomials.h.

◆ poly_

template<template< class > class Polynomial, typename T >
Polynomial<T> utils::RetimedPolynomial< Polynomial, T >::poly_
protected

Definition at line 802 of file polynomials.h.


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