Go to the documentation of this file.
22 this->delta_t = delta_t;
23 GMM =
new Gaussians(nStates, nVar, f_mu, f_sigma, f_prio);
29 const vector<double> pri_vec,
30 const vector<double> mu_vec,
31 const vector<double> sig_vec)
33 this->delta_t = delta_t;
34 GMM =
new Gaussians(nStates, nVar, pri_vec, mu_vec, sig_vec);
41 GMM->
InitFastGMR(first_inindex, last_inindex, first_outindex, last_outindex);
43 gDim = last_inindex - first_inindex + 1;
44 if (gDim !=
static_cast<unsigned int>(last_outindex - first_outindex + 1))
46 cout <<
"dynamics dimension is not matching" << endl;
66 this->target_t = target_t;
69 this->target = target;
99 this->current_t = current_t;
125 target_t -= (delta_t * lamda);
127 gXi += (
getVelocity(gXi - target) * (delta_t * lamda));
135 unsigned int frame = 0;
void setCurrentTime(double current_t)
MathLib::Vector getState(void)
MathLib::Vector getTarget(void)
Eigen::Matrix< T, 3, 1 > Vector
#define GMR_ERROR_TOLERANCE
void setState(MathLib::Vector state)
MathLib::Vector getNextState(void)
Vertex target(const detail::edge_base< Directed, Vertex > &e, const PCG &)
double getCurrentTime(void)
GMRDynamics(int nStates, int nVar, double delta_t, const char *f_mu, const char *f_sigma, const char *f_prio)
void setTarget(MathLib::Vector target, double target_t=-1.0)
MathLib::Vector getVelocity(MathLib::Vector x)
void setStateTarget(MathLib::Vector state, MathLib::Vector target)
#define REACHING_ITERATION_MAX
void InitFastGMR(int first_inindex, int last_inindex, int first_outindex, int last_outindex)
void initGMR(int first_inindex, int last_inindex, int first_outindex, int last_outindex)
double getReachingTime(double lamda)
void Regression(const MathLib::Vector &indata, MathLib::Vector &outdata, MathLib::Matrix &derGMR)