Main Page
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
c
d
e
g
h
i
m
n
p
r
s
t
u
v
w
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
Classes
Class List
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
~
Functions
_
a
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
x
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
p
q
r
s
t
v
w
x
Typedefs
c
d
f
h
m
r
s
t
v
Enumerations
Enumerator
Files
File List
File Members
All
b
c
d
e
g
h
l
m
n
p
q
r
s
t
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
b
c
d
e
p
r
s
t
include
tsid
solvers
solver-HQP-base.hpp
Go to the documentation of this file.
1
//
2
// Copyright (c) 2017 CNRS
3
//
4
// This file is part of tsid
5
// tsid is free software: you can redistribute it
6
// and/or modify it under the terms of the GNU Lesser General Public
7
// License as published by the Free Software Foundation, either version
8
// 3 of the License, or (at your option) any later version.
9
// tsid is distributed in the hope that it will be
10
// useful, but WITHOUT ANY WARRANTY; without even the implied warranty
11
// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
// General Lesser Public License for more details. You should have
13
// received a copy of the GNU Lesser General Public License along with
14
// tsid If not, see
15
// <http://www.gnu.org/licenses/>.
16
//
17
18
#ifndef __invdyn_solvers_hqp_base_hpp__
19
#define __invdyn_solvers_hqp_base_hpp__
20
21
#include "
tsid/solvers/fwd.hpp
"
22
#include "
tsid/solvers/solver-HQP-output.hpp
"
23
#include "
tsid/math/constraint-base.hpp
"
24
25
#include <vector>
26
#include <utility>
27
28
namespace
tsid
{
29
namespace
solvers {
30
34
class
TSID_DLLAPI
SolverHQPBase
{
35
public
:
36
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
37
38
static
std::string
const
HQP_status_string[5];
39
40
typedef
math::RefVector
RefVector
;
41
typedef
math::ConstRefVector
ConstRefVector
;
42
typedef
math::ConstRefMatrix
ConstRefMatrix
;
43
44
SolverHQPBase
(
const
std::string&
name
);
45
virtual
~
SolverHQPBase
() =
default
;
46
47
virtual
const
std::string&
name
()
const
{
return
m_name; }
48
49
virtual
void
resize(
unsigned
int
n
,
unsigned
int
neq
,
unsigned
int
nin
) = 0;
50
53
virtual
const
HQPOutput
&
solve
(
const
HQPData
& problemData) = 0;
54
56
virtual
void
retrieveQPData(
const
HQPData
& problemData,
57
const
bool
hessianRegularization) = 0;
58
60
virtual
double
getObjectiveValue() = 0;
61
63
virtual
bool
getUseWarmStart
() {
return
m_useWarmStart; }
65
virtual
void
setUseWarmStart
(
bool
useWarmStart) {
66
m_useWarmStart = useWarmStart;
67
}
68
70
virtual
unsigned
int
getMaximumIterations
() {
return
m_maxIter; }
72
virtual
bool
setMaximumIterations(
unsigned
int
maxIter);
73
75
virtual
double
getMaximumTime
() {
return
m_maxTime; }
77
virtual
bool
setMaximumTime(
double
seconds);
78
79
protected
:
80
std::string
m_name
;
81
bool
m_useWarmStart
;
// true if the solver is allowed to warm start
82
unsigned
int
m_maxIter
;
// max number of iterations
83
double
m_maxTime
;
// max time to solve the HQP [s]
84
HQPOutput
m_output
;
85
};
86
87
}
// namespace solvers
88
}
// namespace tsid
89
90
#endif // ifndef __invdyn_solvers_hqp_base_hpp__
tsid::solvers::SolverHQPBase::m_output
HQPOutput m_output
Definition:
solver-HQP-base.hpp:84
tsid::solvers::SolverHQPBase::name
virtual const std::string & name() const
Definition:
solver-HQP-base.hpp:47
tsid::solvers::SolverHQPBase::ConstRefVector
math::ConstRefVector ConstRefVector
Definition:
solver-HQP-base.hpp:41
test_Solvers.neq
int neq
Definition:
test_Solvers.py:13
tsid::solvers::SolverHQPBase::m_useWarmStart
bool m_useWarmStart
Definition:
solver-HQP-base.hpp:81
tsid::solvers::SolverHQPBase::m_name
std::string m_name
Definition:
solver-HQP-base.hpp:80
solver-HQP-output.hpp
tsid::solvers::SolverHQPBase::getMaximumIterations
virtual unsigned int getMaximumIterations()
Definition:
solver-HQP-base.hpp:70
tsid::solvers::SolverHQPBase::m_maxIter
unsigned int m_maxIter
Definition:
solver-HQP-base.hpp:82
solve
Mat & solve(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &y)
tsid::math::RefVector
Eigen::Ref< Vector > RefVector
Definition:
math/fwd.hpp:47
tsid::solvers::HQPOutput
Definition:
solver-HQP-output.hpp:29
tsid::solvers::SolverHQPBase
Abstract interface for a Quadratic Program (HQP) solver.
Definition:
solver-HQP-base.hpp:34
test_Solvers.nin
int nin
Definition:
test_Solvers.py:14
tsid::solvers::SolverHQPBase::getUseWarmStart
virtual bool getUseWarmStart()
Definition:
solver-HQP-base.hpp:63
constraint-base.hpp
setup.name
name
Definition:
setup.in.py:179
tsid::math::ConstRefVector
const typedef Eigen::Ref< const Vector > ConstRefVector
Definition:
math/fwd.hpp:48
tsid::solvers::SolverHQPBase::getMaximumTime
virtual double getMaximumTime()
Definition:
solver-HQP-base.hpp:75
tsid::solvers::SolverHQPBase::ConstRefMatrix
math::ConstRefMatrix ConstRefMatrix
Definition:
solver-HQP-base.hpp:42
tsid
Definition:
bindings/python/constraint/constraint-bound.cpp:21
tsid::solvers::SolverHQPBase::setUseWarmStart
virtual void setUseWarmStart(bool useWarmStart)
Definition:
solver-HQP-base.hpp:65
tsid::solvers::SolverHQPBase
class TSID_DLLAPI SolverHQPBase
Definition:
solvers/fwd.hpp:72
tsid::math::ConstRefMatrix
const typedef Eigen::Ref< const Matrix > ConstRefMatrix
Definition:
math/fwd.hpp:51
tsid::solvers::SolverHQPBase::m_maxTime
double m_maxTime
Definition:
solver-HQP-base.hpp:83
tsid::solvers::HQPData
pinocchio::container::aligned_vector< ConstraintLevel > HQPData
Definition:
solvers/fwd.hpp:99
n
Vec3f n
tsid::solvers::SolverHQPBase::RefVector
math::RefVector RefVector
Definition:
solver-HQP-base.hpp:40
fwd.hpp
tsid
Author(s): Andrea Del Prete, Justin Carpentier
autogenerated on Thu Apr 3 2025 02:47:16