Decorate a trajectory to make time scalable. More...
#include <roboptim/trajectory/free-time-trajectory.hh>
Public Types | |
typedef Trajectory < T::derivabilityOrder > | parent_t |
Parent type. | |
typedef T | fixedTimeTrajectory_t |
Fixed point trajectory type. | |
typedef FreeTimeTrajectory< T > | self_t |
Self type. | |
typedef parent_t::value_type | value_type |
Import value type. | |
typedef parent_t::size_type | size_type |
Import size type. | |
typedef parent_t::result_t | result_t |
Import result type. | |
typedef parent_t::gradient_t | gradient_t |
Import gradient type. | |
typedef parent_t::vector_t | vector_t |
Import vector type. | |
typedef parent_t::jacobian_t | jacobian_t |
Import jacobian type. | |
typedef parent_t::interval_t | interval_t |
Import interval type. | |
Public Member Functions | |
FreeTimeTrajectory (const fixedTimeTrajectory_t &traj, value_type s) throw () | |
FreeTimeTrajectory (const self_t &traj) throw () | |
virtual | ~FreeTimeTrajectory () throw () |
virtual jacobian_t | variationConfigWrtParam (double t) const throw () |
Get the variation of a configuration with respect to parameter vector. | |
virtual jacobian_t | variationDerivWrtParam (double t, size_type order) const throw () |
Get the variation of a derivative with respect to parameter vector. | |
virtual value_type | singularPointAtRank (size_type rank) const |
Get singular point at given rank. | |
virtual vector_t | derivBeforeSingularPoint (size_type rank, size_type order) const |
Get left limit value of derivative at given singular point. | |
virtual vector_t | derivAfterSingularPoint (size_type rank, size_type order) const |
Get right limit value of derivative at given singular point. | |
virtual void | setParameters (const vector_t &) throw () |
value_type | timeScale () const throw () |
Get time scale factor. | |
size_type | getTimeScalingIndex () const throw () |
virtual std::ostream & | print (std::ostream &o) const throw () |
Display the function on the specified output stream. | |
virtual void | normalizeAngles (size_type index) throw () |
Normalize angles in parameters array. | |
const fixedTimeTrajectory_t & | getFixedTimeTrajectory () const throw () |
self_t * | resize (interval_t timeRange) const throw () |
Clone and resize a trajectory. | |
fixedTimeTrajectory_t * | makeFixedTimeTrajectory () const throw () |
double | scaleTime (double t) const throw () |
Scale input time argument. | |
double | unscaleTime (double t) const throw () |
jacobian_t | variationConfigWrtParam (StableTimePoint tp) const throw () |
jacobian_t | variationDerivWrtParam (StableTimePoint tp, size_type order) const throw () |
Protected Member Functions | |
void | impl_compute (result_t &, double) const throw () |
void | impl_derivative (gradient_t &g, double x, size_type order) const throw () |
void | impl_derivative (gradient_t &g, StableTimePoint, size_type order) const throw () |
Decorate a trajectory to make time scalable.
Build a trajectory from an input trajectory and a time scale factor.
typedef T roboptim::FreeTimeTrajectory< T >::fixedTimeTrajectory_t |
Fixed point trajectory type.
typedef parent_t::gradient_t roboptim::FreeTimeTrajectory< T >::gradient_t |
Import gradient type.
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
typedef parent_t::interval_t roboptim::FreeTimeTrajectory< T >::interval_t |
Import interval type.
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
typedef parent_t::jacobian_t roboptim::FreeTimeTrajectory< T >::jacobian_t |
Import jacobian type.
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
typedef Trajectory<T::derivabilityOrder> roboptim::FreeTimeTrajectory< T >::parent_t |
Parent type.
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
typedef parent_t::result_t roboptim::FreeTimeTrajectory< T >::result_t |
Import result type.
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
typedef FreeTimeTrajectory<T> roboptim::FreeTimeTrajectory< T >::self_t |
Self type.
typedef parent_t::size_type roboptim::FreeTimeTrajectory< T >::size_type |
Import size type.
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
typedef parent_t::value_type roboptim::FreeTimeTrajectory< T >::value_type |
Import value type.
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
typedef parent_t::vector_t roboptim::FreeTimeTrajectory< T >::vector_t |
Import vector type.
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
roboptim::FreeTimeTrajectory< T >::FreeTimeTrajectory | ( | const fixedTimeTrajectory_t & | traj, |
value_type | s | ||
) | throw () |
Constructor with fixed definition interval trajectory
traj | trajectory defining this one by reparameterization |
s | time scale |
roboptim::FreeTimeTrajectory< T >::FreeTimeTrajectory | ( | const self_t & | traj | ) | throw () |
roboptim::FreeTimeTrajectory< T >::~FreeTimeTrajectory | ( | ) | throw () [virtual] |
FreeTimeTrajectory< T >::vector_t roboptim::FreeTimeTrajectory< T >::derivAfterSingularPoint | ( | size_type | rank, |
size_type | order | ||
) | const [virtual] |
Get right limit value of derivative at given singular point.
rank | rank of the singular points. |
order | order of derivation. |
derivative | Limit of the derivative at singular point for decreasing parameter values. |
Implements roboptim::Trajectory< T::derivabilityOrder >.
FreeTimeTrajectory< T >::vector_t roboptim::FreeTimeTrajectory< T >::derivBeforeSingularPoint | ( | size_type | rank, |
size_type | order | ||
) | const [virtual] |
Get left limit value of derivative at given singular point.
rank | rank of the singular points. |
order | order of derivation. |
Implements roboptim::Trajectory< T::derivabilityOrder >.
const fixedTimeTrajectory_t& roboptim::FreeTimeTrajectory< T >::getFixedTimeTrajectory | ( | ) | const throw () [inline] |
size_type roboptim::FreeTimeTrajectory< T >::getTimeScalingIndex | ( | ) | const throw () [inline] |
void roboptim::FreeTimeTrajectory< T >::impl_compute | ( | result_t & | res, |
double | t | ||
) | const throw () [protected] |
void roboptim::FreeTimeTrajectory< T >::impl_derivative | ( | gradient_t & | g, |
double | x, | ||
size_type | order | ||
) | const throw () [protected] |
void roboptim::FreeTimeTrajectory< T >::impl_derivative | ( | gradient_t & | g, |
StableTimePoint | stp, | ||
size_type | order | ||
) | const throw () [protected, virtual] |
Implements roboptim::Trajectory< T::derivabilityOrder >.
fixedTimeTrajectory_t* roboptim::FreeTimeTrajectory< T >::makeFixedTimeTrajectory | ( | ) | const throw () [inline] |
void roboptim::FreeTimeTrajectory< T >::normalizeAngles | ( | size_type | index | ) | throw () [virtual] |
Normalize angles in parameters array.
Make sure angles are continuous.
index | Angles index in parameter array. |
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
std::ostream & roboptim::FreeTimeTrajectory< T >::print | ( | std::ostream & | o | ) | const throw () [virtual] |
Display the function on the specified output stream.
o | output stream used for display |
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
self_t* roboptim::FreeTimeTrajectory< T >::resize | ( | interval_t | timeRange | ) | const throw () [inline, virtual] |
Clone and resize a trajectory.
Implements roboptim::Trajectory< T::derivabilityOrder >.
References roboptim::FreeTimeTrajectory< T >::scaleTime(), roboptim::Trajectory< DerivabilityOrder >::timeRange(), roboptim::Trajectory< T::derivabilityOrder >::timeRange(), and roboptim::tMax.
double roboptim::FreeTimeTrajectory< T >::scaleTime | ( | double | t | ) | const throw () |
Scale input time argument.
Scale input argument with the same factor that the input trajectory:
where is the input trajectory time range and
the scale factor.
t | input time |
Referenced by roboptim::FreeTimeTrajectory< T >::resize().
void roboptim::FreeTimeTrajectory< T >::setParameters | ( | const vector_t & | p | ) | throw () [virtual] |
Reimplemented from roboptim::Trajectory< T::derivabilityOrder >.
References roboptim::removeScaleFromParameters().
FreeTimeTrajectory< T >::value_type roboptim::FreeTimeTrajectory< T >::singularPointAtRank | ( | size_type | rank | ) | const [virtual] |
Get singular point at given rank.
Implements roboptim::Trajectory< T::derivabilityOrder >.
FreeTimeTrajectory< T >::value_type roboptim::FreeTimeTrajectory< T >::timeScale | ( | ) | const throw () |
Get time scale factor.
double roboptim::FreeTimeTrajectory< T >::unscaleTime | ( | double | t | ) | const throw () |
References roboptim::tMax.
FreeTimeTrajectory< T >::jacobian_t roboptim::FreeTimeTrajectory< T >::variationConfigWrtParam | ( | double | t | ) | const throw () [virtual] |
Get the variation of a configuration with respect to parameter vector.
t | value ![]() |
Implements roboptim::Trajectory< T::derivabilityOrder >.
FreeTimeTrajectory< T >::jacobian_t roboptim::FreeTimeTrajectory< T >::variationConfigWrtParam | ( | StableTimePoint | tp | ) | const throw () [virtual] |
Implements roboptim::Trajectory< T::derivabilityOrder >.
FreeTimeTrajectory< T >::jacobian_t roboptim::FreeTimeTrajectory< T >::variationDerivWrtParam | ( | double | t, |
size_type | order | ||
) | const throw () [virtual] |
Get the variation of a derivative with respect to parameter vector.
t | value ![]() |
order | order ![]() |
Implements roboptim::Trajectory< T::derivabilityOrder >.
FreeTimeTrajectory< T >::jacobian_t roboptim::FreeTimeTrajectory< T >::variationDerivWrtParam | ( | StableTimePoint | tp, |
size_type | order | ||
) | const throw () [virtual] |
Implements roboptim::Trajectory< T::derivabilityOrder >.