sobec::HorizonManager Class Reference

#include <sobec/walk-with-traj/horizon_manager.hpp>

Public Member Functions

 HorizonManager ()
 
 HorizonManager (const HorizonManagerSettings &horizonSettings, const Eigen::VectorXd &x0, const std::vector< AMA > &runningModels, const AMA &terminalModel)
 
void initialize (const HorizonManagerSettings &horizonSettings, const Eigen::VectorXd &x0, const std::vector< AMA > &runningModels, const AMA &terminalModel)
 
AMA ama (const unsigned long time)
 
IAM iam (const unsigned long time)
 
IAM terminaliam ()
 
DAM dam (const unsigned long time)
 
DAM terminaldam ()
 
ADA ada (const unsigned long time)
 
IAD iad (const unsigned long time)
 
DAD dad (const unsigned long time)
 
pinocchio::Data pinData (const unsigned long time)
 
Cost costs (const unsigned long time)
 
Cost terminalCosts ()
 
Contact contacts (const unsigned long time)
 
boost::shared_ptr< crocoddyl::StateMultibody > state (const unsigned long time)
 
boost::shared_ptr< crocoddyl::ActuationModelFloatingBase > actuation (const unsigned long time)
 
void setActuationReference (const unsigned long time, const std::string &nameCostActuation, const Eigen::VectorXd &reference)
 
Eigen::VectorXd getActuationReference (const unsigned long time, const std::string &nameCostActuation)
 
void setBalancingTorque (const unsigned long time, const std::string &nameCostActuation, const Eigen::VectorXd &x)
 
void setBalancingTorque (const unsigned long time, const std::string &nameCostActuation, const std::string &nameCostState)
 
void setPoseReference (const unsigned long time, const std::string &nameCost, const pinocchio::SE3 &ref_placement)
 
void setRotationReference (const unsigned long time, const std::string &nameCost, const Eigen::Matrix3d &ref_rotation)
 
void setTerminalRotationReference (const std::string &nameCost, const Eigen::Matrix3d &ref_rotation)
 
void setTranslationReference (const unsigned long time, const std::string &nameCost, const eVector3 &ref_translation)
 
void setTerminalPoseReference (const std::string &nameCost, const pinocchio::SE3 &ref_placement)
 
void setTerminalTranslationReference (const std::string &nameCost, const eVector3 &ref_translation)
 
const pinocchio::SE3 & getFootPoseReference (const unsigned long time, const std::string &nameCostFootPose)
 
const pinocchio::SE3 & getTerminalFootPoseReference (const std::string &nameCostFootPose)
 
void setVelocityRefCOM (const unsigned long time, const std::string &nameCost, const eVector3 &ref_placement)
 
void setVelocityRefFeet (const unsigned long time, const std::string &nameCost, const pinocchio::Motion &ref_velocity)
 
void activateContactLF (const unsigned long time, const std::string &nameContacttLF)
 
void activateContactRF (const unsigned long time, const std::string &nameContactRF)
 
void removeContactLF (const unsigned long time, const std::string &nameContactLF)
 
void removeContactRF (const unsigned long time, const std::string &nameContactRF)
 
void setForceReference (const unsigned long time, const std::string &nameCost, const eVector6 &reference)
 
void setWrenchReference (const unsigned long time, const std::string &nameCost, const eVector6 &reference)
 
void setTerminalPoseCoM (const std::string &nameCost, const eVector3 &ref_placement)
 
void setTerminalDCMReference (const std::string &nameCost, const eVector3 &ref_translation)
 
void setSwingingLF (const unsigned long time, const std::string &nameContactLF, const std::string &nameContactRF, const std::string &nameForceContactLF)
 
void setSwingingRF (const unsigned long time, const std::string &nameContactLF, const std::string &nameContactRF, const std::string &nameForceContactRF)
 
void setDoubleSupport (const unsigned long time, const std::string &nameContactLF, const std::string &nameContactRF)
 
void setSurfaceInequality (const unsigned long time, const std::string &nameCost, const eVector2 &XYpose, const double &orientation)
 
const eVector3getFootForce (const unsigned long time, const std::string &nameFootForceCost)
 
const eVector3getFootTorque (const unsigned long time, const std::string &nameFootForceCost)
 
const std::set< std::string > & get_contacts (const unsigned long time)
 
void recede (const AMA &new_model, const ADA &new_data)
 
void recede (const AMA &new_model)
 
void recede ()
 
int supportSize (const unsigned long time)
 
unsigned long size ()
 
void solve (const Eigen::VectorXd &measured_x, const std::size_t ddpIteration, const bool is_feasible=false)
 
const Eigen::VectorXd & currentTorques (const Eigen::VectorXd &measured_x)
 
DDP get_ddp ()
 
void set_ddp (const DDP &ddp)
 

Public Attributes

bool initialized_ = false
 

Constructor & Destructor Documentation

◆ HorizonManager() [1/2]

sobec::HorizonManager::HorizonManager ( )

◆ HorizonManager() [2/2]

sobec::HorizonManager::HorizonManager ( const HorizonManagerSettings horizonSettings,
const Eigen::VectorXd &  x0,
const std::vector< AMA > &  runningModels,
const AMA terminalModel 
)

Member Function Documentation

◆ activateContactLF()

void sobec::HorizonManager::activateContactLF ( const unsigned long  time,
const std::string &  nameContacttLF 
)

◆ activateContactRF()

void sobec::HorizonManager::activateContactRF ( const unsigned long  time,
const std::string &  nameContactRF 
)

◆ actuation()

boost::shared_ptr< crocoddyl::ActuationModelFloatingBase > sobec::HorizonManager::actuation ( const unsigned long  time)

◆ ada()

ADA sobec::HorizonManager::ada ( const unsigned long  time)

◆ ama()

AMA sobec::HorizonManager::ama ( const unsigned long  time)

◆ contacts()

Contact sobec::HorizonManager::contacts ( const unsigned long  time)

◆ costs()

Cost sobec::HorizonManager::costs ( const unsigned long  time)

◆ currentTorques()

const Eigen::VectorXd & sobec::HorizonManager::currentTorques ( const Eigen::VectorXd &  measured_x)
Todo:
: make a boolean -> IT is necessary to have solved at least one time to use this method.

◆ dad()

DAD sobec::HorizonManager::dad ( const unsigned long  time)

◆ dam()

DAM sobec::HorizonManager::dam ( const unsigned long  time)

◆ get_contacts()

const std::set< std::string > & sobec::HorizonManager::get_contacts ( const unsigned long  time)

◆ get_ddp()

DDP sobec::HorizonManager::get_ddp ( )
inline

◆ getActuationReference()

Eigen::VectorXd sobec::HorizonManager::getActuationReference ( const unsigned long  time,
const std::string &  nameCostActuation 
)

◆ getFootForce()

const eVector3 & sobec::HorizonManager::getFootForce ( const unsigned long  time,
const std::string &  nameFootForceCost 
)

◆ getFootPoseReference()

const pinocchio::SE3 & sobec::HorizonManager::getFootPoseReference ( const unsigned long  time,
const std::string &  nameCostFootPose 
)

◆ getFootTorque()

const eVector3 & sobec::HorizonManager::getFootTorque ( const unsigned long  time,
const std::string &  nameFootForceCost 
)

◆ getTerminalFootPoseReference()

const pinocchio::SE3 & sobec::HorizonManager::getTerminalFootPoseReference ( const std::string &  nameCostFootPose)

◆ iad()

IAD sobec::HorizonManager::iad ( const unsigned long  time)

◆ iam()

IAM sobec::HorizonManager::iam ( const unsigned long  time)

◆ initialize()

void sobec::HorizonManager::initialize ( const HorizonManagerSettings horizonSettings,
const Eigen::VectorXd &  x0,
const std::vector< AMA > &  runningModels,
const AMA terminalModel 
)

◆ pinData()

pinocchio::Data sobec::HorizonManager::pinData ( const unsigned long  time)

◆ recede() [1/3]

void sobec::HorizonManager::recede ( )

◆ recede() [2/3]

void sobec::HorizonManager::recede ( const AMA new_model)

◆ recede() [3/3]

void sobec::HorizonManager::recede ( const AMA new_model,
const ADA new_data 
)

◆ removeContactLF()

void sobec::HorizonManager::removeContactLF ( const unsigned long  time,
const std::string &  nameContactLF 
)

◆ removeContactRF()

void sobec::HorizonManager::removeContactRF ( const unsigned long  time,
const std::string &  nameContactRF 
)

◆ set_ddp()

void sobec::HorizonManager::set_ddp ( const DDP ddp)
inline

◆ setActuationReference()

void sobec::HorizonManager::setActuationReference ( const unsigned long  time,
const std::string &  nameCostActuation,
const Eigen::VectorXd &  reference 
)

◆ setBalancingTorque() [1/2]

void sobec::HorizonManager::setBalancingTorque ( const unsigned long  time,
const std::string &  nameCostActuation,
const Eigen::VectorXd &  x 
)

◆ setBalancingTorque() [2/2]

void sobec::HorizonManager::setBalancingTorque ( const unsigned long  time,
const std::string &  nameCostActuation,
const std::string &  nameCostState 
)
Todo:
: All functions using string names, should receive such names as input.

◆ setDoubleSupport()

void sobec::HorizonManager::setDoubleSupport ( const unsigned long  time,
const std::string &  nameContactLF,
const std::string &  nameContactRF 
)

◆ setForceReference()

void sobec::HorizonManager::setForceReference ( const unsigned long  time,
const std::string &  nameCost,
const eVector6 reference 
)

◆ setPoseReference()

void sobec::HorizonManager::setPoseReference ( const unsigned long  time,
const std::string &  nameCost,
const pinocchio::SE3 &  ref_placement 
)

◆ setRotationReference()

void sobec::HorizonManager::setRotationReference ( const unsigned long  time,
const std::string &  nameCost,
const Eigen::Matrix3d &  ref_rotation 
)

◆ setSurfaceInequality()

void sobec::HorizonManager::setSurfaceInequality ( const unsigned long  time,
const std::string &  nameCost,
const eVector2 XYpose,
const double &  orientation 
)

◆ setSwingingLF()

void sobec::HorizonManager::setSwingingLF ( const unsigned long  time,
const std::string &  nameContactLF,
const std::string &  nameContactRF,
const std::string &  nameForceContactLF 
)

◆ setSwingingRF()

void sobec::HorizonManager::setSwingingRF ( const unsigned long  time,
const std::string &  nameContactLF,
const std::string &  nameContactRF,
const std::string &  nameForceContactRF 
)

◆ setTerminalDCMReference()

void sobec::HorizonManager::setTerminalDCMReference ( const std::string &  nameCost,
const eVector3 ref_translation 
)

◆ setTerminalPoseCoM()

void sobec::HorizonManager::setTerminalPoseCoM ( const std::string &  nameCost,
const eVector3 ref_placement 
)

◆ setTerminalPoseReference()

void sobec::HorizonManager::setTerminalPoseReference ( const std::string &  nameCost,
const pinocchio::SE3 &  ref_placement 
)

◆ setTerminalRotationReference()

void sobec::HorizonManager::setTerminalRotationReference ( const std::string &  nameCost,
const Eigen::Matrix3d &  ref_rotation 
)

◆ setTerminalTranslationReference()

void sobec::HorizonManager::setTerminalTranslationReference ( const std::string &  nameCost,
const eVector3 ref_translation 
)

◆ setTranslationReference()

void sobec::HorizonManager::setTranslationReference ( const unsigned long  time,
const std::string &  nameCost,
const eVector3 ref_translation 
)

◆ setVelocityRefCOM()

void sobec::HorizonManager::setVelocityRefCOM ( const unsigned long  time,
const std::string &  nameCost,
const eVector3 ref_placement 
)

◆ setVelocityRefFeet()

void sobec::HorizonManager::setVelocityRefFeet ( const unsigned long  time,
const std::string &  nameCost,
const pinocchio::Motion &  ref_velocity 
)

◆ setWrenchReference()

void sobec::HorizonManager::setWrenchReference ( const unsigned long  time,
const std::string &  nameCost,
const eVector6 reference 
)

◆ size()

unsigned long sobec::HorizonManager::size ( )

◆ solve()

void sobec::HorizonManager::solve ( const Eigen::VectorXd &  measured_x,
const std::size_t  ddpIteration,
const bool  is_feasible = false 
)

◆ state()

boost::shared_ptr< crocoddyl::StateMultibody > sobec::HorizonManager::state ( const unsigned long  time)

◆ supportSize()

int sobec::HorizonManager::supportSize ( const unsigned long  time)

◆ terminalCosts()

Cost sobec::HorizonManager::terminalCosts ( )

◆ terminaldam()

DAM sobec::HorizonManager::terminaldam ( )

◆ terminaliam()

IAM sobec::HorizonManager::terminaliam ( )

Member Data Documentation

◆ initialized_

bool sobec::HorizonManager::initialized_ = false

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