DDPSolver< precision, stateSize, commandSize > Class Template Reference

#include <ddp-actuator-solver/ddpsolver.hh>

Classes

struct  traj
 

Public Types

typedef Eigen::Matrix< precision, stateSize, 1 > stateVec_t
 
typedef Eigen::Matrix< precision, 1, stateSize > stateVecTrans_t
 
typedef Eigen::Matrix< precision, stateSize, stateSize > stateMat_t
 
typedef Eigen::Matrix< precision, commandSize, 1 > commandVec_t
 
typedef Eigen::Matrix< precision, 1, commandSize > commandVecTrans_t
 
typedef Eigen::Matrix< precision, commandSize, commandSize > commandMat_t
 
typedef Eigen::Matrix< precision, stateSize, commandSize > stateR_commandC_t
 
typedef Eigen::Matrix< precision, stateSize, commandSize > stateR_commandC_stateD_t[stateSize]
 
typedef Eigen::Matrix< precision, stateSize, commandSize > stateR_commandC_commandD_t[commandSize]
 
typedef Eigen::Matrix< precision, commandSize, stateSize > commandR_stateC_t
 
typedef Eigen::Matrix< precision, commandSize, stateSize > commandR_stateC_stateD_t[stateSize]
 
typedef Eigen::Matrix< precision, commandSize, stateSize > commandR_stateC_commandD_t[commandSize]
 
typedef Eigen::Matrix< precision, stateSize, stateSize > stateR_stateC_commandD_t[commandSize]
 
typedef Eigen::Matrix< precision, commandSize, commandSize > commandR_commandC_stateD_t[stateSize]
 
typedef std::vector< stateVec_tstateVecTab_t
 
typedef std::vector< commandVec_tcommandVecTab_t
 
typedef std::vector< commandR_stateC_tcommandR_stateC_tab_t
 
typedef DynamicModel< precision, stateSize, commandSize > DynamicModel_t
 
typedef CostFunction< precision, stateSize, commandSize > CostFunction_t
 

Public Member Functions

 DDPSolver (DynamicModel_t &myDynamicModel, CostFunction_t &myCostFunction, bool fullDDP=0, bool QPBox=0)
 
void FirstInitSolver (stateVec_t &myxInit, stateVec_t &myxDes, unsigned int &myT, double &mydt, unsigned int &myiterMax, double &mystopCrit)
 
void initSolver (stateVec_t &myxInit, stateVec_t &myxDes)
 
commandVec_t solveTrajectory ()
 
void initTrajectory ()
 
void backwardLoop ()
 
void forwardLoop ()
 
DDPSolver::traj getLastSolvedTrajectory ()
 
DDPSolver::commandVec_t getLastCommand ()
 
bool isQuudefinitePositive (const commandMat_t &Quu_reg)
 

Member Typedef Documentation

◆ commandMat_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, commandSize, commandSize> DDPSolver< precision, stateSize, commandSize >::commandMat_t

◆ commandR_commandC_stateD_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, commandSize, commandSize> DDPSolver< precision, stateSize, commandSize >::commandR_commandC_stateD_t[stateSize]

◆ commandR_stateC_commandD_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, commandSize, stateSize> DDPSolver< precision, stateSize, commandSize >::commandR_stateC_commandD_t[commandSize]

◆ commandR_stateC_stateD_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, commandSize, stateSize> DDPSolver< precision, stateSize, commandSize >::commandR_stateC_stateD_t[stateSize]

◆ commandR_stateC_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, commandSize, stateSize> DDPSolver< precision, stateSize, commandSize >::commandR_stateC_t

◆ commandR_stateC_tab_t

template<typename precision , int stateSize, int commandSize>
typedef std::vector<commandR_stateC_t> DDPSolver< precision, stateSize, commandSize >::commandR_stateC_tab_t

◆ commandVec_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, commandSize, 1> DDPSolver< precision, stateSize, commandSize >::commandVec_t

◆ commandVecTab_t

template<typename precision , int stateSize, int commandSize>
typedef std::vector<commandVec_t> DDPSolver< precision, stateSize, commandSize >::commandVecTab_t

◆ commandVecTrans_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, 1, commandSize> DDPSolver< precision, stateSize, commandSize >::commandVecTrans_t

◆ CostFunction_t

template<typename precision , int stateSize, int commandSize>
typedef CostFunction<precision, stateSize, commandSize> DDPSolver< precision, stateSize, commandSize >::CostFunction_t

◆ DynamicModel_t

template<typename precision , int stateSize, int commandSize>
typedef DynamicModel<precision, stateSize, commandSize> DDPSolver< precision, stateSize, commandSize >::DynamicModel_t

◆ stateMat_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, stateSize, stateSize> DDPSolver< precision, stateSize, commandSize >::stateMat_t

◆ stateR_commandC_commandD_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, stateSize, commandSize> DDPSolver< precision, stateSize, commandSize >::stateR_commandC_commandD_t[commandSize]

◆ stateR_commandC_stateD_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, stateSize, commandSize> DDPSolver< precision, stateSize, commandSize >::stateR_commandC_stateD_t[stateSize]

◆ stateR_commandC_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, stateSize, commandSize> DDPSolver< precision, stateSize, commandSize >::stateR_commandC_t

◆ stateR_stateC_commandD_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, stateSize, stateSize> DDPSolver< precision, stateSize, commandSize >::stateR_stateC_commandD_t[commandSize]

◆ stateVec_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, stateSize, 1> DDPSolver< precision, stateSize, commandSize >::stateVec_t

◆ stateVecTab_t

template<typename precision , int stateSize, int commandSize>
typedef std::vector<stateVec_t> DDPSolver< precision, stateSize, commandSize >::stateVecTab_t

◆ stateVecTrans_t

template<typename precision , int stateSize, int commandSize>
typedef Eigen::Matrix<precision, 1, stateSize> DDPSolver< precision, stateSize, commandSize >::stateVecTrans_t

Constructor & Destructor Documentation

◆ DDPSolver()

template<typename precision , int stateSize, int commandSize>
DDPSolver< precision, stateSize, commandSize >::DDPSolver ( DynamicModel_t myDynamicModel,
CostFunction_t myCostFunction,
bool  fullDDP = 0,
bool  QPBox = 0 
)
inline

Member Function Documentation

◆ backwardLoop()

template<typename precision , int stateSize, int commandSize>
void DDPSolver< precision, stateSize, commandSize >::backwardLoop ( )
inline

◆ FirstInitSolver()

template<typename precision , int stateSize, int commandSize>
void DDPSolver< precision, stateSize, commandSize >::FirstInitSolver ( stateVec_t myxInit,
stateVec_t myxDes,
unsigned int &  myT,
double &  mydt,
unsigned int &  myiterMax,
double &  mystopCrit 
)
inline

◆ forwardLoop()

template<typename precision , int stateSize, int commandSize>
void DDPSolver< precision, stateSize, commandSize >::forwardLoop ( )
inline

◆ getLastCommand()

template<typename precision , int stateSize, int commandSize>
DDPSolver::commandVec_t DDPSolver< precision, stateSize, commandSize >::getLastCommand ( )
inline

◆ getLastSolvedTrajectory()

template<typename precision , int stateSize, int commandSize>
DDPSolver::traj DDPSolver< precision, stateSize, commandSize >::getLastSolvedTrajectory ( )
inline

◆ initSolver()

template<typename precision , int stateSize, int commandSize>
void DDPSolver< precision, stateSize, commandSize >::initSolver ( stateVec_t myxInit,
stateVec_t myxDes 
)
inline

◆ initTrajectory()

template<typename precision , int stateSize, int commandSize>
void DDPSolver< precision, stateSize, commandSize >::initTrajectory ( )
inline

◆ isQuudefinitePositive()

template<typename precision , int stateSize, int commandSize>
bool DDPSolver< precision, stateSize, commandSize >::isQuudefinitePositive ( const commandMat_t Quu_reg)
inline

◆ solveTrajectory()

template<typename precision , int stateSize, int commandSize>
commandVec_t DDPSolver< precision, stateSize, commandSize >::solveTrajectory ( )
inline

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