aligator
0.19.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Toggle main menu visibility
Loading...
Searching...
No Matches
centroidal-fwd.hpp
Go to the documentation of this file.
1
2
#pragma once
3
4
#include "
aligator/modelling/dynamics/ode-abstract.hpp
"
5
#include "
aligator/modelling/contact-map.hpp
"
6
7
#include "
aligator/core/vector-space.hpp
"
8
9
namespace
aligator
{
10
namespace
dynamics
{
11
template
<
typename
Scalar>
struct
CentroidalFwdDataTpl
;
12
23
template
<
typename
_Scalar>
24
struct
CentroidalFwdDynamicsTpl
:
ODEAbstractTpl
<_Scalar> {
25
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
26
using
Scalar
= _Scalar;
27
ALIGATOR_DYNAMIC_TYPEDEFS
(
Scalar
);
28
using
Base
=
ODEAbstractTpl<Scalar>
;
29
using
BaseData
=
ContinuousDynamicsDataTpl<Scalar>
;
30
using
ContDataAbstract
=
ContinuousDynamicsDataTpl<Scalar>
;
31
using
Data
=
CentroidalFwdDataTpl<Scalar>
;
32
using
Manifold
=
::aligator::VectorSpaceTpl<Scalar>
;
33
using
Matrix3s
= Eigen::Matrix<Scalar, 3, 3>;
34
using
ContactMap
=
ContactMapTpl<Scalar>
;
35
36
using
Base::nu_
;
37
38
Manifold
space_
;
39
std::size_t
nk_
;
40
double
mass_
;
41
Vector3s
gravity_
;
42
ContactMap
contact_map_
;
43
int
force_size_
;
44
45
const
Manifold
&
space
()
const
{
return
*
space_
; }
46
47
CentroidalFwdDynamicsTpl
(
const
Manifold
&state,
const
double
mass,
48
const
Vector3s &gravity,
49
const
ContactMap
&contact_map,
const
int
force_size);
50
51
void
forward
(
const
ConstVectorRef &x,
const
ConstVectorRef &u,
52
BaseData
&data)
const
;
53
void
dForward
(
const
ConstVectorRef &x,
const
ConstVectorRef &u,
54
BaseData
&data)
const
;
55
56
shared_ptr<ContDataAbstract>
createData
()
const
;
57
};
58
59
template
<
typename
Scalar>
60
struct
CentroidalFwdDataTpl
:
ContinuousDynamicsDataTpl
<Scalar> {
61
using
Base
=
ContinuousDynamicsDataTpl<Scalar>
;
62
using
Matrix3s
= Eigen::Matrix<Scalar, 3, 3>;
63
64
Matrix3s
Jtemp_
;
65
66
CentroidalFwdDataTpl
(
const
CentroidalFwdDynamicsTpl<Scalar>
*cont_dyn);
67
};
68
69
}
// namespace dynamics
70
}
// namespace aligator
71
72
#include "aligator/modelling/dynamics/centroidal-fwd.hxx"
contact-map.hpp
aligator::dynamics
Namespace for modelling system dynamics.
Definition
centroidal-fwd.hpp:10
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
ode-abstract.hpp
Defines a class representing ODEs.
aligator::ContactMapTpl
Contact map for centroidal costs and dynamics.
Definition
contact-map.hpp:8
aligator::VectorSpaceTpl
Standard Euclidean vector space.
Definition
vector-space.hpp:13
aligator::dynamics::CentroidalFwdDataTpl
Definition
centroidal-fwd.hpp:60
aligator::dynamics::CentroidalFwdDataTpl::Matrix3s
Eigen::Matrix< Scalar, 3, 3 > Matrix3s
Definition
centroidal-fwd.hpp:62
aligator::dynamics::CentroidalFwdDataTpl::CentroidalFwdDataTpl
CentroidalFwdDataTpl(const CentroidalFwdDynamicsTpl< Scalar > *cont_dyn)
aligator::dynamics::CentroidalFwdDataTpl::Jtemp_
Matrix3s Jtemp_
Definition
centroidal-fwd.hpp:64
aligator::dynamics::CentroidalFwdDataTpl::Base
ContinuousDynamicsDataTpl< Scalar > Base
Definition
centroidal-fwd.hpp:61
aligator::dynamics::CentroidalFwdDynamicsTpl
Nonlinear centroidal forward dynamics.
Definition
centroidal-fwd.hpp:24
aligator::dynamics::CentroidalFwdDynamicsTpl< Scalar >::force_size_
int force_size_
Definition
centroidal-fwd.hpp:43
aligator::dynamics::CentroidalFwdDynamicsTpl::ALIGATOR_DYNAMIC_TYPEDEFS
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
aligator::dynamics::CentroidalFwdDynamicsTpl::CentroidalFwdDynamicsTpl
CentroidalFwdDynamicsTpl(const Manifold &state, const double mass, const Vector3s &gravity, const ContactMap &contact_map, const int force_size)
aligator::dynamics::CentroidalFwdDynamicsTpl::dForward
void dForward(const ConstVectorRef &x, const ConstVectorRef &u, BaseData &data) const
Evaluate the vector field Jacobians.
aligator::dynamics::CentroidalFwdDynamicsTpl< Scalar >::nk_
std::size_t nk_
Definition
centroidal-fwd.hpp:39
aligator::dynamics::CentroidalFwdDynamicsTpl::Scalar
_Scalar Scalar
Definition
centroidal-fwd.hpp:26
aligator::dynamics::CentroidalFwdDynamicsTpl< Scalar >::gravity_
Vector3s gravity_
Definition
centroidal-fwd.hpp:41
aligator::dynamics::CentroidalFwdDynamicsTpl::BaseData
ContinuousDynamicsDataTpl< Scalar > BaseData
Definition
centroidal-fwd.hpp:29
aligator::dynamics::CentroidalFwdDynamicsTpl< Scalar >::contact_map_
ContactMap contact_map_
Definition
centroidal-fwd.hpp:42
aligator::dynamics::CentroidalFwdDynamicsTpl::space
const Manifold & space() const
Definition
centroidal-fwd.hpp:45
aligator::dynamics::CentroidalFwdDynamicsTpl< Scalar >::space_
Manifold space_
Definition
centroidal-fwd.hpp:38
aligator::dynamics::CentroidalFwdDynamicsTpl::forward
void forward(const ConstVectorRef &x, const ConstVectorRef &u, BaseData &data) const
Evaluate the ODE vector field: this returns the value of .
aligator::dynamics::CentroidalFwdDynamicsTpl::createData
shared_ptr< ContDataAbstract > createData() const
Create a data holder instance.
aligator::dynamics::CentroidalFwdDynamicsTpl::Data
CentroidalFwdDataTpl< Scalar > Data
Definition
centroidal-fwd.hpp:31
aligator::dynamics::CentroidalFwdDynamicsTpl< Scalar >::mass_
double mass_
Definition
centroidal-fwd.hpp:40
aligator::dynamics::CentroidalFwdDynamicsTpl::ContactMap
ContactMapTpl< Scalar > ContactMap
Definition
centroidal-fwd.hpp:34
aligator::dynamics::CentroidalFwdDynamicsTpl::Manifold
::aligator::VectorSpaceTpl< Scalar > Manifold
Definition
centroidal-fwd.hpp:32
aligator::dynamics::CentroidalFwdDynamicsTpl::Base
ODEAbstractTpl< Scalar > Base
Definition
centroidal-fwd.hpp:28
aligator::dynamics::CentroidalFwdDynamicsTpl::Matrix3s
Eigen::Matrix< Scalar, 3, 3 > Matrix3s
Definition
centroidal-fwd.hpp:33
aligator::dynamics::CentroidalFwdDynamicsTpl::ContDataAbstract
ContinuousDynamicsDataTpl< Scalar > ContDataAbstract
Definition
centroidal-fwd.hpp:30
aligator::dynamics::ContinuousDynamicsDataTpl
Data struct for ContinuousDynamicsAbstractTpl.
Definition
continuous-dynamics-abstract.hpp:64
aligator::dynamics::ContinuousDynamicsDataTpl< Scalar >::ContinuousDynamicsDataTpl
ContinuousDynamicsDataTpl(const int ndx, const int nu)
aligator::dynamics::ODEAbstractTpl
Base class for ODE dynamics .
Definition
ode-abstract.hpp:14
aligator::dynamics::ODEAbstractTpl< Scalar >::nu_
const int nu_
vector-space.hpp
include
aligator
modelling
dynamics
centroidal-fwd.hpp
Generated by
1.17.0