pyreneCostFunction.hh
Go to the documentation of this file.
1 #ifndef COSTFUNCTIONPYRENEACTUATOR_H
2 #define COSTFUNCTIONPYRENEACTUATOR_H
3 
5 #include <vector>
6 
7 class CostFunctionPyreneActuator : public CostFunction<double, 2, 1> {
8  public:
10 
11  void computeCostAndDeriv(const stateVec_t& X, const stateVec_t& Xdes, const commandVec_t& U);
12  void computeFinalCostAndDeriv(const stateVec_t& X, const stateVec_t& Xdes);
13 
14  void setCostGainState(const stateMat_t& Q);
16  void setCostGainCommand(const commandMat_t& R);
18 
19  void setTauLimit(const double& limit);
20  void setJointLimit(const double& limitUp, const double& limitDown);
21  void setJointVelLimit(const double& limitUp, const double& limitDown);
24 
25  static const double K;
26  static const double offset_m;
27 
28  private:
29  stateMat_t Q;
30  stateMat_t W;
31  commandMat_t R;
32  commandMat_t P;
33  double dt;
34  double tauLim;
35  double alphaTau;
36  double lambdaLimVel;
37  double lambdaLimPos;
38  std::vector<double> jointLim;
39  std::vector<double> jointVelLim;
40 
41  stateVec_t Constraints;
42  stateMat_t dConstraints;
43  stateMat_t ddConstraints;
44  commandVec_t TauConstraints;
45  commandVec_t dTauConstraints;
46  commandVec_t ddTauConstraints;
47 };
48 
49 #endif // COSTFUNCTIONPYRENEACTUATOR_H
CostFunction< double, 2, 1 >::stateVec_t
Eigen::Matrix< double, stateSize, 1 > stateVec_t
Definition: costfunction.hh:9
CostFunctionPyreneActuator
Definition: pyreneCostFunction.hh:7
CostFunction< double, 2, 1 >::commandMat_t
Eigen::Matrix< double, commandSize, commandSize > commandMat_t
Definition: costfunction.hh:17
CostFunctionPyreneActuator::setCostGainState
void setCostGainState(const stateMat_t &Q)
Definition: pyreneCostFunction.cpp:30
CostFunction
Definition: costfunction.hh:7
CostFunction< double, 2, 1 >::commandVec_t
Eigen::Matrix< double, commandSize, 1 > commandVec_t
Definition: costfunction.hh:15
CostFunctionPyreneActuator::CostFunctionPyreneActuator
CostFunctionPyreneActuator()
Definition: pyreneCostFunction.cpp:11
CostFunctionPyreneActuator::computeTauConstraintsAndDeriv
void computeTauConstraintsAndDeriv(const commandVec_t &U)
Definition: pyreneCostFunction.cpp:50
CostFunctionPyreneActuator::setCostGainTorqueConstraint
void setCostGainTorqueConstraint(const commandMat_t &P)
Definition: pyreneCostFunction.cpp:36
CostFunctionPyreneActuator::setCostGainStateConstraint
void setCostGainStateConstraint(const stateMat_t &W)
Definition: pyreneCostFunction.cpp:32
CostFunction< double, 2, 1 >::stateMat_t
Eigen::Matrix< double, stateSize, stateSize > stateMat_t
Definition: costfunction.hh:11
CostFunctionPyreneActuator::computeCostAndDeriv
void computeCostAndDeriv(const stateVec_t &X, const stateVec_t &Xdes, const commandVec_t &U)
Definition: pyreneCostFunction.cpp:76
CostFunctionPyreneActuator::setCostGainCommand
void setCostGainCommand(const commandMat_t &R)
Definition: pyreneCostFunction.cpp:34
CostFunctionPyreneActuator::setJointVelLimit
void setJointVelLimit(const double &limitUp, const double &limitDown)
Definition: pyreneCostFunction.cpp:45
CostFunctionPyreneActuator::offset_m
static const double offset_m
Definition: pyreneCostFunction.hh:26
costfunction.hh
CostFunctionPyreneActuator::setTauLimit
void setTauLimit(const double &limit)
Definition: pyreneCostFunction.cpp:38
CostFunctionPyreneActuator::K
static const double K
Definition: pyreneCostFunction.hh:25
CostFunctionPyreneActuator::computeFinalCostAndDeriv
void computeFinalCostAndDeriv(const stateVec_t &X, const stateVec_t &Xdes)
Definition: pyreneCostFunction.cpp:95
CostFunctionPyreneActuator::setJointLimit
void setJointLimit(const double &limitUp, const double &limitDown)
Definition: pyreneCostFunction.cpp:40
CostFunctionPyreneActuator::computeConstraintsAndDeriv
void computeConstraintsAndDeriv(const stateVec_t &X)
Definition: pyreneCostFunction.cpp:58