tsid 1.9.0
Efficient Task Space Inverse Dynamics for Multi-body Systems based on Pinocchio
Loading...
Searching...
No Matches
tsid::solvers::SolverHQPBase Class Referenceabstract

Abstract interface for a Quadratic Program (HQP) solver. More...

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

Inheritance diagram for tsid::solvers::SolverHQPBase:
Collaboration diagram for tsid::solvers::SolverHQPBase:

Public Types

typedef math::RefVector RefVector
typedef math::ConstRefVector ConstRefVector
typedef math::ConstRefMatrix ConstRefMatrix

Public Member Functions

 SolverHQPBase (const std::string &name)
virtual ~SolverHQPBase ()=default
virtual const std::string & name () const
virtual void resize (unsigned int n, unsigned int neq, unsigned int nin)=0
virtual const HQPOutputsolve (const HQPData &problemData)=0
virtual void retrieveQPData (const HQPData &problemData, const bool hessianRegularization)=0
virtual double getObjectiveValue ()=0
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)

Static Public Attributes

static EIGEN_MAKE_ALIGNED_OPERATOR_NEW std::string const HQP_status_string [5]

Protected Attributes

std::string m_name
bool m_useWarmStart
unsigned int m_maxIter
double m_maxTime
HQPOutput m_output

Detailed Description

Abstract interface for a Quadratic Program (HQP) solver.

Member Typedef Documentation

◆ ConstRefMatrix

◆ ConstRefVector

◆ RefVector

Constructor & Destructor Documentation

◆ SolverHQPBase()

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

◆ ~SolverHQPBase()

virtual tsid::solvers::SolverHQPBase::~SolverHQPBase()
virtualdefault

Member Function Documentation

◆ getMaximumIterations()

virtual unsigned int tsid::solvers::SolverHQPBase::getMaximumIterations()
inlinevirtual

Get the current maximum number of iterations performed by the solver.

◆ getMaximumTime()

virtual double tsid::solvers::SolverHQPBase::getMaximumTime()
inlinevirtual

Get the maximum time allowed to solve a problem.

◆ getObjectiveValue()

virtual double tsid::solvers::SolverHQPBase::getObjectiveValue()
pure virtual

◆ getUseWarmStart()

virtual bool tsid::solvers::SolverHQPBase::getUseWarmStart()
inlinevirtual

Return true if the solver is allowed to warm start, false otherwise.

◆ name()

virtual const std::string & tsid::solvers::SolverHQPBase::name()const
inlinevirtual

◆ resize()

virtual void tsid::solvers::SolverHQPBase::resize(unsigned intn,
unsigned intneq,
unsigned intnin )
pure virtual

◆ retrieveQPData()

virtual void tsid::solvers::SolverHQPBase::retrieveQPData(const HQPData &problemData,
const boolhessianRegularization )
pure virtual

◆ setMaximumIterations()

bool tsid::solvers::SolverHQPBase::setMaximumIterations(unsigned intmaxIter)
virtual

Set the current maximum number of iterations performed by the solver.

Reimplemented in tsid::solvers::SolverHQuadProgFast, tsid::solvers::SolverHQuadProgRT< nVars, nEqCon, nIneqCon >, tsid::solvers::SolverOSQP, and tsid::solvers::SolverProxQP.

◆ setMaximumTime()

bool tsid::solvers::SolverHQPBase::setMaximumTime(doubleseconds)
virtual

Set the maximum time allowed to solve a problem.

◆ setUseWarmStart()

virtual void tsid::solvers::SolverHQPBase::setUseWarmStart(booluseWarmStart)
inlinevirtual

Specify whether the solver is allowed to use warm-start techniques.

◆ solve()

virtual const HQPOutput & tsid::solvers::SolverHQPBase::solve(const HQPData &problemData)
pure virtual

Member Data Documentation

◆ HQP_status_string

std::string const tsid::solvers::SolverHQPBase::HQP_status_string
static
Initial value:
= {
"HQP_STATUS_OPTIMAL", "HQP_STATUS_INFEASIBLE", "HQP_STATUS_UNBOUNDED",
"HQP_STATUS_MAX_ITER_REACHED", "HQP_STATUS_ERROR"}

◆ m_maxIter

unsigned int tsid::solvers::SolverHQPBase::m_maxIter
protected

◆ m_maxTime

double tsid::solvers::SolverHQPBase::m_maxTime
protected

◆ m_name

std::string tsid::solvers::SolverHQPBase::m_name
protected

◆ m_output

HQPOutput tsid::solvers::SolverHQPBase::m_output
protected

◆ m_useWarmStart

bool tsid::solvers::SolverHQPBase::m_useWarmStart
protected

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