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-kinodynamics.cpp
Go to the documentation of this file.
1
2
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/python/fwd.hpp
"
12
#include "
aligator/modelling/dynamics/kinodynamics-fwd.hpp
"
13
#include "
aligator/modelling/multibody/fwd.hpp
"
14
#include <pinocchio/multibody/model.hpp>
15
16
namespace
aligator
{
17
namespace
python
{
18
19
void
exposeKinodynamics
() {
20
using namespace
aligator::dynamics
;
21
using
context::PinModel
;
22
using
context::Scalar
;
23
using
context::StageFunction
;
24
using
context::StageFunctionData
;
25
using
context::UnaryFunction
;
26
using
ODEData
=
ContinuousDynamicsDataTpl<Scalar>
;
27
using
ODEAbstract
=
ODEAbstractTpl<Scalar>
;
28
using
ContinuousDynamicsAbstract
=
ContinuousDynamicsAbstractTpl<Scalar>
;
29
using
KinodynamicsFwdData =
KinodynamicsFwdDataTpl<Scalar>
;
30
using
KinodynamicsFwdDynamics =
KinodynamicsFwdDynamicsTpl<Scalar>
;
31
using
context::MultibodyPhaseSpace
;
32
using
Vector3s =
typename
math_types<Scalar>::Vector3s
;
33
34
const
PolymorphicMultiBaseVisitor<ODEAbstract, ContinuousDynamicsAbstract>
35
ode_visitor;
36
37
bp::class_<KinodynamicsFwdDynamics, bp::bases<ODEAbstract>>(
38
"KinodynamicsFwdDynamics"
,
39
"Centroidal forward dynamics + kinematics using Pinocchio."
,
40
bp::init<
const
MultibodyPhaseSpace
&,
const
PinModel
&,
const
Vector3s &,
41
const
std::vector<bool> &,
42
const
std::vector<pinocchio::FrameIndex> &,
const
int
>(
43
"Constructor."
, (
"self"
_a,
"space"
,
"model"
,
"gravity"
,
44
"contact_states"
,
"contact_ids"
,
"force_size"
)))
45
.def_readwrite(
"contact_states"
,
46
&KinodynamicsFwdDynamics::contact_states_)
47
.def(ode_visitor);
48
49
bp::register_ptr_to_python<shared_ptr<KinodynamicsFwdData>>();
50
51
bp::class_<KinodynamicsFwdData, bp::bases<ODEData>>(
"KinodynamicsFwdData"
,
52
bp::no_init)
53
.def_readwrite(
"pin_data"
, &KinodynamicsFwdData::pin_data_);
54
}
55
56
}
// namespace python
57
}
// namespace aligator
58
#endif
fwd.hpp
fwd.hpp
kinodynamics-fwd.hpp
aligator::context::ODEData
dynamics::ContinuousDynamicsDataTpl< Scalar > ODEData
Definition
fwd.hpp:65
aligator::context::ContinuousDynamicsAbstract
dynamics::ContinuousDynamicsAbstractTpl< Scalar > ContinuousDynamicsAbstract
Definition
fwd.hpp:60
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::ODEAbstract
dynamics::ODEAbstractTpl< Scalar > ODEAbstract
Definition
fwd.hpp:64
aligator::context::StageFunctionData
StageFunctionDataTpl< Scalar > StageFunctionData
Definition
context.hpp:19
aligator::dynamics
Namespace for modelling system dynamics.
Definition
centroidal-fwd.hpp:10
aligator::python
The Python bindings.
Definition
blk-matrix.hpp:7
aligator::python::exposeKinodynamics
void exposeKinodynamics()
Definition
expose-kinodynamics.cpp:19
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
aligator::dynamics::ContinuousDynamicsAbstractTpl
Continuous dynamics described by differential-algebraic equations (DAEs) .
Definition
continuous-dynamics-abstract.hpp:19
aligator::dynamics::ContinuousDynamicsDataTpl
Data struct for ContinuousDynamicsAbstractTpl.
Definition
continuous-dynamics-abstract.hpp:64
aligator::dynamics::KinodynamicsFwdDataTpl
Definition
kinodynamics-fwd.hpp:72
aligator::dynamics::KinodynamicsFwdDynamicsTpl
Nonlinear centroidal and full kinematics forward dynamics.
Definition
kinodynamics-fwd.hpp:32
aligator::dynamics::ODEAbstractTpl
Base class for ODE dynamics .
Definition
ode-abstract.hpp:14
aligator::math_types
Typedefs for math (Eigen vectors, matrices) depending on scalar type.
Definition
math.hpp:123
aligator::python::PolymorphicMultiBaseVisitor
Definition
polymorphic.hpp:107
bindings
python
src
modelling
multibody
expose-kinodynamics.cpp
Generated by
1.17.0