y(t) = K * exp(A * (t - t_j)) * alpha.col(j) + piecewise_polynomial_part(t)
T | The scalar type, which must be double . |
#include <drake/common/trajectories/exponential_plus_piecewise_polynomial.h>
Public Member Functions | |
ExponentialPlusPiecewisePolynomial ()=default | |
template<typename DerivedK , typename DerivedA , typename DerivedAlpha > | |
ExponentialPlusPiecewisePolynomial (const Eigen::MatrixBase< DerivedK > &K, const Eigen::MatrixBase< DerivedA > &A, const Eigen::MatrixBase< DerivedAlpha > &alpha, const PiecewisePolynomial< T > &piecewise_polynomial_part) | |
ExponentialPlusPiecewisePolynomial (const PiecewisePolynomial< T > &piecewise_polynomial_part) | |
~ExponentialPlusPiecewisePolynomial () override=default | |
std::unique_ptr< Trajectory< T > > | Clone () const override |
MatrixX< T > | value (const T &t) const override |
Evaluates the trajectory at the given time t . More... | |
ExponentialPlusPiecewisePolynomial | derivative (int derivative_order=1) const |
Eigen::Index | rows () const override |
Eigen::Index | cols () const override |
void | shiftRight (double offset) |
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable | |
ExponentialPlusPiecewisePolynomial (const ExponentialPlusPiecewisePolynomial &)=default | |
ExponentialPlusPiecewisePolynomial & | operator= (const ExponentialPlusPiecewisePolynomial &)=default |
ExponentialPlusPiecewisePolynomial (ExponentialPlusPiecewisePolynomial &&)=default | |
ExponentialPlusPiecewisePolynomial & | operator= (ExponentialPlusPiecewisePolynomial &&)=default |
![]() | |
~PiecewiseTrajectory () override=default | |
int | get_number_of_segments () const |
T | start_time (int segment_number) const |
T | end_time (int segment_number) const |
T | duration (int segment_number) const |
T | start_time () const override |
T | end_time () const override |
boolean< T > | is_time_in_range (const T &t) const |
Returns true iff t >= getStartTime() && t <= getEndTime() . More... | |
int | get_segment_index (const T &t) const |
const std::vector< T > & | get_segment_times () const |
void | segment_number_range_check (int segment_number) const |
![]() | |
virtual | ~Trajectory ()=default |
MatrixX< T > | vector_values (const std::vector< T > &t) const |
If cols()==1, then evaluates the trajectory at each time t , and returns the results as a Matrix with the ith column corresponding to the ith time. More... | |
bool | has_derivative () const |
Returns true iff the Trajectory provides and implementation for EvalDerivative() and MakeDerivative(). More... | |
MatrixX< T > | EvalDerivative (const T &t, int derivative_order=1) const |
Evaluates the derivative of this at the given time t . More... | |
std::unique_ptr< Trajectory< T > > | MakeDerivative (int derivative_order=1) const |
Takes the derivative of this Trajectory. More... | |
Additional Inherited Members | |
![]() | |
static std::vector< T > | RandomSegmentTimes (int num_segments, std::default_random_engine &generator) |
![]() | |
static constexpr double | kEpsilonTime = std::numeric_limits<double>::epsilon() |
Minimum delta quantity used for comparing time. More... | |
![]() | |
PiecewiseTrajectory ()=default | |
PiecewiseTrajectory (const std::vector< T > &breaks) | |
breaks increments must be greater or equal to kEpsilonTime. More... | |
bool | SegmentTimesEqual (const PiecewiseTrajectory &b, double tol=kEpsilonTime) const |
const std::vector< T > & | breaks () const |
std::vector< T > & | get_mutable_breaks () |
PiecewiseTrajectory (const PiecewiseTrajectory &)=default | |
PiecewiseTrajectory & | operator= (const PiecewiseTrajectory &)=default |
PiecewiseTrajectory (PiecewiseTrajectory &&)=default | |
PiecewiseTrajectory & | operator= (PiecewiseTrajectory &&)=default |
![]() | |
Trajectory ()=default | |
virtual bool | do_has_derivative () const |
virtual MatrixX< T > | DoEvalDerivative (const T &t, int derivative_order) const |
Trajectory (const Trajectory &)=default | |
Trajectory & | operator= (const Trajectory &)=default |
Trajectory (Trajectory &&)=default | |
Trajectory & | operator= (Trajectory &&)=default |
|
default |
|
default |
|
default |
ExponentialPlusPiecewisePolynomial | ( | const Eigen::MatrixBase< DerivedK > & | K, |
const Eigen::MatrixBase< DerivedA > & | A, | ||
const Eigen::MatrixBase< DerivedAlpha > & | alpha, | ||
const PiecewisePolynomial< T > & | piecewise_polynomial_part | ||
) |
ExponentialPlusPiecewisePolynomial | ( | const PiecewisePolynomial< T > & | piecewise_polynomial_part | ) |
|
overridedefault |
|
overridevirtual |
Implements Trajectory< T >.
|
overridevirtual |
Implements Trajectory< T >.
ExponentialPlusPiecewisePolynomial derivative | ( | int | derivative_order = 1 | ) | const |
|
default |
|
default |
|
overridevirtual |
Implements Trajectory< T >.
void shiftRight | ( | double | offset | ) |
|
overridevirtual |
Evaluates the trajectory at the given time t
.
t | The time at which to evaluate the trajectory. |
Implements Trajectory< T >.