aligator
0.19.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Toggle main menu visibility
Loading...
Searching...
No Matches
expose-fly-high.cpp
Go to the documentation of this file.
1
3
#ifdef ALIGATOR_WITH_PINOCCHIO
4
5
// Boost.Python 1.74 include manually mpl/vector/vector20.hpp
6
// that prevent us to define mpl::list and mpl::vector with
7
// the right size.
8
// To avoid this issue this header should be included first.
9
#include <pinocchio/fwd.hpp>
10
11
#include "
aligator/modelling/multibody/fwd.hpp
"
12
13
#include "
aligator/python/fwd.hpp
"
14
#include "
aligator/python/modelling/multibody-utils.hpp
"
15
#include "
aligator/modelling/multibody/fly-high.hpp
"
16
17
namespace
aligator
{
18
namespace
python
{
19
20
using
context::MultibodyPhaseSpace
;
21
using
context::PinModel
;
22
using
context::Scalar
;
23
using
context::StageFunction
;
24
using
context::StageFunctionData
;
25
using
context::UnaryFunction
;
26
27
void
exposeFlyHigh
() {
28
using
FlyHighResidual =
FlyHighResidualTpl<Scalar>
;
29
PolymorphicMultiBaseVisitor<UnaryFunction, StageFunction>
unary_visitor
;
30
31
bp::class_<FlyHighResidual, bp::bases<UnaryFunction>>(
32
"FlyHighResidual"
,
33
"A residual function :math:`r(x) = v_{j,xy} e^{-s z_j}` where :math:`j` "
34
"is a given frame index."
,
35
bp::no_init)
36
.def(bp::init<
const
int
,
const
PinModel
&, pinocchio::FrameIndex,
Scalar
,
37
std::size_t>(
38
(
"self"
_a,
"ndx"
,
"model"
,
"frame_id"
,
"slope"
,
"nu"
)))
39
.def(
FrameAPIVisitor<FlyHighResidual>
())
40
.def(
unary_visitor
)
41
.def_readwrite(
"slope"
, &FlyHighResidual::slope_,
42
"The slope parameter of the function."
);
43
44
bp::class_<FlyHighResidual::Data, bp::bases<StageFunctionData>>(
45
"FlyHighResidualData"
, bp::no_init)
46
.def_readonly(
"ez"
, &FlyHighResidual::Data::ez)
47
.def_readonly(
"pin_data"
, &FlyHighResidual::Data::pdata_);
48
}
49
50
}
// namespace python
51
}
// namespace aligator
52
53
#endif
fwd.hpp
fly-high.hpp
fwd.hpp
multibody-utils.hpp
aligator::context::PinModel
pinocchio::ModelTpl< Scalar, Options > PinModel
Definition
fwd.hpp:21
aligator::context::StageFunction
StageFunctionTpl< Scalar > StageFunction
Definition
context.hpp:17
aligator::context::Scalar
double Scalar
Definition
context.hpp:9
aligator::context::UnaryFunction
UnaryFunctionTpl< Scalar > UnaryFunction
Definition
context.hpp:18
aligator::context::MultibodyPhaseSpace
MultibodyPhaseSpace< Scalar > MultibodyPhaseSpace
Definition
fwd.hpp:29
aligator::context::StageFunctionData
StageFunctionDataTpl< Scalar > StageFunctionData
Definition
context.hpp:19
aligator::python
The Python bindings.
Definition
blk-matrix.hpp:7
aligator::python::exposeFlyHigh
void exposeFlyHigh()
Definition
expose-fly-high.cpp:27
aligator::python::unary_visitor
const PolymorphicMultiBaseVisitor< UnaryFunction, StageFunction > unary_visitor
Definition
expose-function-ops.cpp:20
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
aligator::FlyHighResidualTpl
A port of sobec's ResidualModelFlyHighTpl.
Definition
fly-high.hpp:12
aligator::python::FrameAPIVisitor
Definition
multibody-utils.hpp:14
aligator::python::PolymorphicMultiBaseVisitor
Definition
polymorphic.hpp:107
bindings
python
src
modelling
multibody
expose-fly-high.cpp
Generated by
1.17.0