Drake
TimeVaryingData Struct Reference

Stores matrix data necessary to construct an affine time varying system as a piecewise polynomial trajectory. More...

#include <systems/primitives/time_varying_data.h>

Inheritance diagram for TimeVaryingData:
[legend]
Collaboration diagram for TimeVaryingData:
[legend]

Public Member Functions

 TimeVaryingData ()=default
 Default constructor. More...
 
 TimeVaryingData (const std::vector< Eigen::MatrixXd > &Ain, const std::vector< Eigen::MatrixXd > &Bin, const std::vector< Eigen::MatrixXd > &f0in, const std::vector< Eigen::MatrixXd > &Cin, const std::vector< Eigen::MatrixXd > &Din, const std::vector< Eigen::MatrixXd > &y0in, double time_period)
 Fully-parameterized constructor of vector of MatrixXd; these are ultimately converted into PiecewisePolynomialTrajectories, whose i-th element corresponds to time = i * time_period. More...
 
 TimeVaryingData (const PiecewisePolynomial< double > &Ain, const PiecewisePolynomial< double > &Bin, const PiecewisePolynomial< double > &f0in, const PiecewisePolynomial< double > &Cin, const PiecewisePolynomial< double > &Din, const PiecewisePolynomial< double > &y0in)
 Fully-parameterized constructor of PiecewisePolynomials. More...
 
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable
 TimeVaryingData (const TimeVaryingData &)=default
 
TimeVaryingDataoperator= (const TimeVaryingData &)=default
 
 TimeVaryingData (TimeVaryingData &&)=default
 
TimeVaryingDataoperator= (TimeVaryingData &&)=default
 

Public Attributes

PiecewisePolynomialTrajectory A {PiecewisePolynomial<double>()}
 
PiecewisePolynomialTrajectory B {PiecewisePolynomial<double>()}
 
PiecewisePolynomialTrajectory f0 {PiecewisePolynomial<double>()}
 
PiecewisePolynomialTrajectory C {PiecewisePolynomial<double>()}
 
PiecewisePolynomialTrajectory D {PiecewisePolynomial<double>()}
 
PiecewisePolynomialTrajectory y0 {PiecewisePolynomial<double>()}
 

Detailed Description

Stores matrix data necessary to construct an affine time varying system as a piecewise polynomial trajectory.

The trajectory matrices must adhere to the following dimensions:

Matrix Num Rows Num Columns
A num states num states
B num states num inputs
C num outputs num states
D num outputs num inputs
f0 num states 1
y0 num outputs 1

Constructor & Destructor Documentation

TimeVaryingData ( const TimeVaryingData )
default
TimeVaryingData ( TimeVaryingData &&  )
default
TimeVaryingData ( )
default

Default constructor.

TimeVaryingData ( const std::vector< Eigen::MatrixXd > &  Ain,
const std::vector< Eigen::MatrixXd > &  Bin,
const std::vector< Eigen::MatrixXd > &  f0in,
const std::vector< Eigen::MatrixXd > &  Cin,
const std::vector< Eigen::MatrixXd > &  Din,
const std::vector< Eigen::MatrixXd > &  y0in,
double  time_period 
)
inline

Fully-parameterized constructor of vector of MatrixXd; these are ultimately converted into PiecewisePolynomialTrajectories, whose i-th element corresponds to time = i * time_period.

These vectors are only well-defined when time_period > 0 (e.g. for discrete-time systems). The matrix values are interpolated linearly in between time steps.

Parameters
time_periodThe time period from which to construct the time vector. time_period must be greater than zero.
TimeVaryingData ( const PiecewisePolynomial< double > &  Ain,
const PiecewisePolynomial< double > &  Bin,
const PiecewisePolynomial< double > &  f0in,
const PiecewisePolynomial< double > &  Cin,
const PiecewisePolynomial< double > &  Din,
const PiecewisePolynomial< double > &  y0in 
)
inline

Fully-parameterized constructor of PiecewisePolynomials.

Member Function Documentation

TimeVaryingData& operator= ( const TimeVaryingData )
default
TimeVaryingData& operator= ( TimeVaryingData &&  )
default

Member Data Documentation


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