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

#include <tsid/solvers/solver-osqp.hpp>

Inheritance diagram for tsid::solvers::SolverOSQP:
Collaboration diagram for tsid::solvers::SolverOSQP:

Public Types

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

Public Member Functions

 SolverOSQP (const std::string &name)
 
 SolverOSQP (const SolverOSQP &other)
 
void resize (unsigned int n, unsigned int neq, unsigned int nin) override
 
void retrieveQPData (const HQPData &problemData, const bool hessianRegularization=false) override
 
const QPData getQPData () const
 
const HQPOutputsolve (const HQPData &problemData) override
 
double getObjectiveValue () override
 
bool setMaximumIterations (unsigned int maxIter) override
 
void setSigma (double sigma)
 
void setAlpha (double alpha)
 
void setRho (double rho)
 
void setEpsilonAbsolute (double epsAbs)
 
void setEpsilonRelative (double epsRel)
 
void setVerbose (bool isVerbose=false)
 
- 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 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

double m_objValue
 
double m_hessian_regularization
 
OsqpEigen::Solver m_solver
 
unsigned int m_neq
 
unsigned int m_nin
 number of equality constraints More...
 
unsigned int m_n
 number of inequality constraints More...
 
QPDataTpl< double > m_qpData
 number of variables More...
 
double m_rho
 
double m_sigma
 
double m_alpha
 
double m_epsAbs
 
double m_epsRel
 
bool m_isVerbose
 
bool m_isDataInitialized
 
- 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]
 

Member Typedef Documentation

◆ ConstRefMatrix

◆ ConstRefVector

◆ RefVector

◆ Vector

Constructor & Destructor Documentation

◆ SolverOSQP() [1/2]

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

◆ SolverOSQP() [2/2]

tsid::solvers::SolverOSQP::SolverOSQP ( const SolverOSQP other)

Member Function Documentation

◆ getObjectiveValue()

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

Get the objective value of the last solved problem.

Implements tsid::solvers::SolverHQPBase.

◆ getQPData()

const QPData tsid::solvers::SolverOSQP::getQPData ( ) const
inline

Return the QP data object.

◆ resize()

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

◆ retrieveQPData()

void tsid::solvers::SolverOSQP::retrieveQPData ( const HQPData problemData,
const bool  hessianRegularization = false 
)
overridevirtual

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

Implements tsid::solvers::SolverHQPBase.

◆ sendMsg()

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

◆ setAlpha()

void tsid::solvers::SolverOSQP::setAlpha ( double  alpha)

◆ setEpsilonAbsolute()

void tsid::solvers::SolverOSQP::setEpsilonAbsolute ( double  epsAbs)

◆ setEpsilonRelative()

void tsid::solvers::SolverOSQP::setEpsilonRelative ( double  epsRel)

◆ setMaximumIterations()

bool tsid::solvers::SolverOSQP::setMaximumIterations ( unsigned int  maxIter)
overridevirtual

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

Reimplemented from tsid::solvers::SolverHQPBase.

◆ setRho()

void tsid::solvers::SolverOSQP::setRho ( double  rho)

◆ setSigma()

void tsid::solvers::SolverOSQP::setSigma ( double  sigma)

◆ setVerbose()

void tsid::solvers::SolverOSQP::setVerbose ( bool  isVerbose = false)

◆ solve()

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

Solve the given Hierarchical Quadratic Program.

Implements tsid::solvers::SolverHQPBase.

Member Data Documentation

◆ m_alpha

double tsid::solvers::SolverOSQP::m_alpha
protected

◆ m_epsAbs

double tsid::solvers::SolverOSQP::m_epsAbs
protected

◆ m_epsRel

double tsid::solvers::SolverOSQP::m_epsRel
protected

◆ m_hessian_regularization

double tsid::solvers::SolverOSQP::m_hessian_regularization
protected

◆ m_isDataInitialized

bool tsid::solvers::SolverOSQP::m_isDataInitialized
protected

◆ m_isVerbose

bool tsid::solvers::SolverOSQP::m_isVerbose
protected

◆ m_n

unsigned int tsid::solvers::SolverOSQP::m_n
protected

number of inequality constraints

◆ m_neq

unsigned int tsid::solvers::SolverOSQP::m_neq
protected

◆ m_nin

unsigned int tsid::solvers::SolverOSQP::m_nin
protected

number of equality constraints

◆ m_objValue

double tsid::solvers::SolverOSQP::m_objValue
protected

◆ m_qpData

QPDataTpl<double> tsid::solvers::SolverOSQP::m_qpData
protected

number of variables

◆ m_rho

double tsid::solvers::SolverOSQP::m_rho
protected

◆ m_sigma

double tsid::solvers::SolverOSQP::m_sigma
protected

◆ m_solver

OsqpEigen::Solver tsid::solvers::SolverOSQP::m_solver
protected

◆ Matrix

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::Matrix tsid::solvers::SolverOSQP::Matrix

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