Drake
ExponentialPlusPiecewisePolynomial< CoefficientType > Class Template Reference

y(t) = K * exp(A * (t - t_j)) * alpha.col(j) + piecewise_polynomial_part(t) More...

#include <drake/systems/trajectories/ExponentialPlusPiecewisePolynomial.h>

Inheritance diagram for ExponentialPlusPiecewisePolynomial< CoefficientType >:
Collaboration diagram for ExponentialPlusPiecewisePolynomial< CoefficientType >:

Public Types

typedef Eigen::Matrix< CoefficientType, Eigen::Dynamic, Eigen::Dynamic > MatrixX
 
typedef Eigen::Matrix< CoefficientType, Eigen::Dynamic, 1 > VectorX
 
typedef Eigen::Matrix< double, Eigen::Dynamic, 1 > ValueType
 

Public Member Functions

 ExponentialPlusPiecewisePolynomial ()
 
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< CoefficientType > &piecewise_polynomial_part)
 
 ExponentialPlusPiecewisePolynomial (const PiecewisePolynomial< CoefficientType > &piecewise_polynomial_part)
 
ValueType value (double t) const
 
ExponentialPlusPiecewisePolynomial derivative (int derivative_order=1) const
 
virtual Eigen::Index rows () const
 
virtual Eigen::Index cols () const
 
void shiftRight (double offset)
 
- Public Member Functions inherited from PiecewiseFunction
 PiecewiseFunction (std::vector< double > const &segment_times)
 
virtual ~PiecewiseFunction ()
 
int getNumberOfSegments () const
 
double getStartTime (int segment_number) const
 
double getEndTime (int segment_number) const
 
double getDuration (int segment_number) const
 
double getStartTime () const
 
double getEndTime () const
 
int getSegmentIndex (double t) const
 
const std::vector< double > & getSegmentTimes () const
 
void segmentNumberRangeCheck (int segment_number) const
 

Additional Inherited Members

- Static Public Member Functions inherited from PiecewiseFunction
static std::vector< doublerandomSegmentTimes (int num_segments, std::default_random_engine &generator)
 
- Protected Member Functions inherited from PiecewiseFunction
bool segmentTimesEqual (const PiecewiseFunction &b, double tol) const
 
void checkScalarValued () const
 
 PiecewiseFunction ()
 
- Protected Attributes inherited from PiecewiseFunction
std::vector< doublesegment_times
 

Detailed Description

template<typename CoefficientType = double>
class ExponentialPlusPiecewisePolynomial< CoefficientType >

y(t) = K * exp(A * (t - t_j)) * alpha.col(j) + piecewise_polynomial_part(t)

Member Typedef Documentation

typedef Eigen::Matrix<CoefficientType, Eigen::Dynamic, Eigen::Dynamic> MatrixX
typedef Eigen::Matrix<double, Eigen::Dynamic, 1> ValueType
typedef Eigen::Matrix<CoefficientType, Eigen::Dynamic, 1> VectorX

Constructor & Destructor Documentation

ExponentialPlusPiecewisePolynomial ( const Eigen::MatrixBase< DerivedK > &  K,
const Eigen::MatrixBase< DerivedA > &  A,
const Eigen::MatrixBase< DerivedAlpha > &  alpha,
const PiecewisePolynomial< CoefficientType > &  piecewise_polynomial_part 
)
inline
ExponentialPlusPiecewisePolynomial ( const PiecewisePolynomial< CoefficientType > &  piecewise_polynomial_part)

Here is the call graph for this function:

Member Function Documentation

Eigen::Index cols ( ) const
virtual

Implements PiecewiseFunction.

ExponentialPlusPiecewisePolynomial< CoefficientType > derivative ( int  derivative_order = 1) const

Here is the caller graph for this function:

Eigen::Index rows ( ) const
virtual

Implements PiecewiseFunction.

void shiftRight ( double  offset)
ExponentialPlusPiecewisePolynomial< CoefficientType >::ValueType value ( double  t) const

Here is the call graph for this function:

Here is the caller graph for this function:


The documentation for this class was generated from the following files: