tsid  1.8.0
Efficient Task Space Inverse Dynamics for Multi-body Systems based on Pinocchio
tsid::solvers::SolverHQpmad Class Reference

Implementation of Quadratic Program (HQP) solver using qpmad. More...

#include <tsid/solvers/solver-HQP-qpmad.hpp>

Inheritance diagram for tsid::solvers::SolverHQpmad:
Collaboration diagram for tsid::solvers::SolverHQpmad:

Public Types

typedef math::Vector Vector
 
typedef math::RefVector RefVector
 
typedef math::ConstRefVector ConstRefVector
 
typedef math::ConstRefMatrix ConstRefMatrix
 
typedef qpmad::SolverParameters Settings
 
- Public Types inherited from tsid::solvers::SolverHQPBase
typedef math::RefVector RefVector
 
typedef math::ConstRefVector ConstRefVector
 
typedef math::ConstRefMatrix ConstRefMatrix
 

Public Member Functions

 SolverHQpmad (const std::string &name)
 
void resize (unsigned int n, unsigned int neq, unsigned int nin) override
 
const HQPOutputsolve (const HQPData &problemData) override
 
void retrieveQPData (const HQPData &problemData, const bool hessianRegularization=true) override
 
double getObjectiveValue () override
 
Settingssettings ()
 
- Public Member Functions inherited from tsid::solvers::SolverHQPBase
 SolverHQPBase (const std::string &name)
 
virtual ~SolverHQPBase ()=default
 
virtual const std::string & name () const
 
virtual bool getUseWarmStart ()
 
virtual void setUseWarmStart (bool useWarmStart)
 
virtual unsigned int getMaximumIterations ()
 
virtual bool setMaximumIterations (unsigned int maxIter)
 
virtual double getMaximumTime ()
 
virtual bool setMaximumTime (double seconds)
 

Public Attributes

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::Matrix Matrix
 

Protected Member Functions

void sendMsg (const std::string &s)
 

Protected Attributes

qpmad::Solver m_solver
 
Settings m_settings
 
bool m_has_bounds
 
Matrix m_H
 
Vector m_g
 
Vector m_lb
 
Vector m_ub
 
Matrix m_C
 
Vector m_cl
 
Vector m_cu
 
double m_hessian_regularization
 
unsigned int m_nc
 
unsigned int m_n
 number of equality-inequality constraints More...
 
- Protected Attributes inherited from tsid::solvers::SolverHQPBase
std::string m_name
 
bool m_useWarmStart
 
unsigned int m_maxIter
 
double m_maxTime
 
HQPOutput m_output
 

Additional Inherited Members

- Static Public Attributes inherited from tsid::solvers::SolverHQPBase
static EIGEN_MAKE_ALIGNED_OPERATOR_NEW std::string const HQP_status_string [5]
 

Detailed Description

Implementation of Quadratic Program (HQP) solver using qpmad.

Member Typedef Documentation

◆ ConstRefMatrix

◆ ConstRefVector

◆ RefVector

◆ Settings

typedef qpmad::SolverParameters tsid::solvers::SolverHQpmad::Settings

◆ Vector

Constructor & Destructor Documentation

◆ SolverHQpmad()

tsid::solvers::SolverHQpmad::SolverHQpmad ( const std::string &  name)

Member Function Documentation

◆ getObjectiveValue()

double tsid::solvers::SolverHQpmad::getObjectiveValue ( )
overridevirtual

Get the objective value of the last solved problem.

Implements tsid::solvers::SolverHQPBase.

◆ resize()

void tsid::solvers::SolverHQpmad::resize ( unsigned int  n,
unsigned int  neq,
unsigned int  nin 
)
overridevirtual

◆ retrieveQPData()

void tsid::solvers::SolverHQpmad::retrieveQPData ( const HQPData problemData,
const bool  hessianRegularization = true 
)
overridevirtual

Retrieve the matrices describing a QP problem from the problem data.

Implements tsid::solvers::SolverHQPBase.

◆ sendMsg()

void tsid::solvers::SolverHQpmad::sendMsg ( const std::string &  s)
protected

◆ settings()

Settings& tsid::solvers::SolverHQpmad::settings ( )
inline

◆ solve()

const HQPOutput & tsid::solvers::SolverHQpmad::solve ( const HQPData problemData)
overridevirtual

Solve the given Hierarchical Quadratic Program

Implements tsid::solvers::SolverHQPBase.

Member Data Documentation

◆ m_C

Matrix tsid::solvers::SolverHQpmad::m_C
protected

◆ m_cl

Vector tsid::solvers::SolverHQpmad::m_cl
protected

◆ m_cu

Vector tsid::solvers::SolverHQpmad::m_cu
protected

◆ m_g

Vector tsid::solvers::SolverHQpmad::m_g
protected

◆ m_H

Matrix tsid::solvers::SolverHQpmad::m_H
protected

◆ m_has_bounds

bool tsid::solvers::SolverHQpmad::m_has_bounds
protected

◆ m_hessian_regularization

double tsid::solvers::SolverHQpmad::m_hessian_regularization
protected

◆ m_lb

Vector tsid::solvers::SolverHQpmad::m_lb
protected

◆ m_n

unsigned int tsid::solvers::SolverHQpmad::m_n
protected

number of equality-inequality constraints

◆ m_nc

unsigned int tsid::solvers::SolverHQpmad::m_nc
protected

◆ m_settings

Settings tsid::solvers::SolverHQpmad::m_settings
protected

◆ m_solver

qpmad::Solver tsid::solvers::SolverHQpmad::m_solver
protected

◆ m_ub

Vector tsid::solvers::SolverHQpmad::m_ub
protected

◆ Matrix

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::Matrix tsid::solvers::SolverHQpmad::Matrix

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