utils::HoubaPolynomial< T > Struct Template Reference

#include <lipm_walking/utils/polynomials.h>

Inheritance diagram for utils::HoubaPolynomial< T >:
utils::CubicHermitePolynomial< T > utils::CubicPolynomial< T > utils::CubicPolynomialBase< T > utils::PolynomialBase< T >

Public Member Functions

void reset () override
 
double extraInitVelScaling ()
 
void extraInitVelScaling (double scaling)
 
double extraTargetVelScaling ()
 
void extraTargetVelScaling (double scaling)
 
- Public Member Functions inherited from utils::CubicHermitePolynomial< T >
EIGEN_MAKE_ALIGNED_OPERATOR_NEW CubicHermitePolynomial ()
 
 CubicHermitePolynomial (const T &initPos, const T &initVel, const T &targetPos, const T &targetVel)
 
void reset (const T &initPos, const T &initVel, const T &targetPos, const T &targetVel)
 
void reset (const T &initPos, const T &targetPos)
 
- Public Member Functions inherited from utils::CubicPolynomial< T >
EIGEN_MAKE_ALIGNED_OPERATOR_NEW T zero ()
 
 CubicPolynomial ()
 
- Public Member Functions inherited from utils::CubicPolynomialBase< T >
EIGEN_MAKE_ALIGNED_OPERATOR_NEW CubicPolynomialBase (const T &C0, const T &C1, const T &C2, const T &C3)
 
pos (double t) const
 
vel (double t) const
 
accel (double t) const
 
- Public Member Functions inherited from utils::PolynomialBase< T >
tangent (double t) const
 
double arcLength (double t_start, double t_end) const
 
double arcLengthInverse (double t_start, double length, double t_guess=-1.) const
 

Protected Attributes

double extraInitVelScaling_ = 1.0
 
double extraTargetVelScaling_ = 1.0
 
- Protected Attributes inherited from utils::CubicHermitePolynomial< T >
initPos_
 
initVel_
 
targetPos_
 
targetVel_
 
- Protected Attributes inherited from utils::CubicPolynomialBase< T >
C0_
 
C1_
 
C2_
 
C3_
 

Detailed Description

template<typename T>
struct utils::HoubaPolynomial< T >

Hermite polynomial with Overall Uniformly-Bounded Accelerations (HOUBA).

Note
See https://hal.archives-ouvertes.fr/hal-01363757/document for details on the definition and derivation of these polynomials.

Definition at line 340 of file polynomials.h.

Member Function Documentation

◆ extraInitVelScaling() [1/2]

template<typename T >
double utils::HoubaPolynomial< T >::extraInitVelScaling ( )
inline

Get extra initial velocity scaling.

Definition at line 383 of file polynomials.h.

◆ extraInitVelScaling() [2/2]

template<typename T >
void utils::HoubaPolynomial< T >::extraInitVelScaling ( double  scaling)
inline

Add extra initial velocity scaling to the HOUBA one.

Definition at line 391 of file polynomials.h.

◆ extraTargetVelScaling() [1/2]

template<typename T >
double utils::HoubaPolynomial< T >::extraTargetVelScaling ( )
inline

Get extra target velocity scaling.

Definition at line 399 of file polynomials.h.

◆ extraTargetVelScaling() [2/2]

template<typename T >
void utils::HoubaPolynomial< T >::extraTargetVelScaling ( double  scaling)
inline

Add extra target velocity scaling to the HOUBA one.

Definition at line 407 of file polynomials.h.

◆ reset()

template<typename T >
void utils::HoubaPolynomial< T >::reset ( )
inlineoverridevirtual

Rescale boundary velocities, then reset as Hermite polynomial.

Reimplemented from utils::CubicHermitePolynomial< T >.

Definition at line 353 of file polynomials.h.

Member Data Documentation

◆ extraInitVelScaling_

template<typename T >
double utils::HoubaPolynomial< T >::extraInitVelScaling_ = 1.0
protected

Definition at line 413 of file polynomials.h.

◆ extraTargetVelScaling_

template<typename T >
double utils::HoubaPolynomial< T >::extraTargetVelScaling_ = 1.0
protected

Definition at line 414 of file polynomials.h.


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