aligator
0.19.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Toggle main menu visibility
Loading...
Searching...
No Matches
angular-momentum.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include "
aligator/core/unary-function.hpp
"
4
5
namespace
aligator
{
6
7
template
<
typename
Scalar>
struct
AngularMomentumDataTpl
;
8
17
18
template
<
typename
_Scalar>
19
struct
AngularMomentumResidualTpl
:
UnaryFunctionTpl
<_Scalar> {
20
21
public
:
22
using
Scalar
= _Scalar;
23
ALIGATOR_DYNAMIC_TYPEDEFS
(
Scalar
);
24
ALIGATOR_UNARY_FUNCTION_INTERFACE
(
Scalar
);
25
using
BaseData
=
typename
Base::Data
;
26
using
Data
=
AngularMomentumDataTpl<Scalar>
;
27
28
AngularMomentumResidualTpl
(
const
int
ndx,
const
int
nu
,
const
Vector3s &L_ref)
29
:
Base
(ndx,
nu
, 3)
30
,
L_ref_
(L_ref) {}
31
32
const
Vector3s &
getReference
()
const
{
return
L_ref_
; }
33
void
setReference
(
const
Eigen::Ref<const Vector3s> &L_new) {
L_ref_
= L_new; }
34
35
void
evaluate
(
const
ConstVectorRef &x,
BaseData
&data)
const
;
36
37
void
computeJacobians
(
const
ConstVectorRef &,
BaseData
&data)
const
;
38
39
shared_ptr<BaseData>
createData
()
const
{
40
return
std::make_shared<Data>(
this
);
41
}
42
43
protected
:
44
Vector3s
L_ref_
;
45
};
46
47
template
<
typename
Scalar>
48
struct
AngularMomentumDataTpl
:
StageFunctionDataTpl
<Scalar> {
49
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
50
using
Base
=
StageFunctionDataTpl<Scalar>
;
51
52
AngularMomentumDataTpl
(
const
AngularMomentumResidualTpl<Scalar>
*model);
53
};
54
55
}
// namespace aligator
56
57
#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
58
#include "aligator/modelling/centroidal/angular-momentum.txx"
59
#endif
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
aligator::AngularMomentumDataTpl
Definition
angular-momentum.hpp:48
aligator::AngularMomentumDataTpl::AngularMomentumDataTpl
AngularMomentumDataTpl(const AngularMomentumResidualTpl< Scalar > *model)
aligator::AngularMomentumDataTpl::Base
StageFunctionDataTpl< Scalar > Base
Definition
angular-momentum.hpp:50
aligator::AngularMomentumResidualTpl
This residual returns the angular momentum for a centroidal model with state .
Definition
angular-momentum.hpp:19
aligator::AngularMomentumResidualTpl::ALIGATOR_UNARY_FUNCTION_INTERFACE
ALIGATOR_UNARY_FUNCTION_INTERFACE(Scalar)
aligator::AngularMomentumResidualTpl::getReference
const Vector3s & getReference() const
Definition
angular-momentum.hpp:32
aligator::AngularMomentumResidualTpl::computeJacobians
void computeJacobians(const ConstVectorRef &, BaseData &data) const
aligator::AngularMomentumResidualTpl::AngularMomentumResidualTpl
AngularMomentumResidualTpl(const int ndx, const int nu, const Vector3s &L_ref)
Definition
angular-momentum.hpp:28
aligator::AngularMomentumResidualTpl::BaseData
typename Base::Data BaseData
Definition
angular-momentum.hpp:25
aligator::AngularMomentumResidualTpl::L_ref_
Vector3s L_ref_
Definition
angular-momentum.hpp:44
aligator::AngularMomentumResidualTpl::createData
shared_ptr< BaseData > createData() const
Instantiate a Data object.
Definition
angular-momentum.hpp:39
aligator::AngularMomentumResidualTpl::evaluate
void evaluate(const ConstVectorRef &x, BaseData &data) const
aligator::AngularMomentumResidualTpl::ALIGATOR_DYNAMIC_TYPEDEFS
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
aligator::AngularMomentumResidualTpl::Scalar
_Scalar Scalar
Definition
angular-momentum.hpp:22
aligator::AngularMomentumResidualTpl::setReference
void setReference(const Eigen::Ref< const Vector3s > &L_new)
Definition
angular-momentum.hpp:33
aligator::AngularMomentumResidualTpl::Data
AngularMomentumDataTpl< Scalar > Data
Definition
angular-momentum.hpp:26
aligator::StageFunctionDataTpl< Scalar >::StageFunctionDataTpl
StageFunctionDataTpl(const int ndx, const int nu, const int nr)
aligator::StageFunctionTpl::nu
const int nu
Control dimension.
Definition
function-abstract.hpp:21
aligator::StageFunctionTpl< Scalar >::Data
StageFunctionDataTpl< Scalar > Data
Definition
function-abstract.hpp:16
aligator::UnaryFunctionTpl
Represents unary functions of the form , with no control (or next-state) arguments.
Definition
unary-function.hpp:12
aligator::UnaryFunctionTpl::Base
StageFunctionTpl< Scalar > Base
Definition
unary-function.hpp:15
unary-function.hpp
include
aligator
modelling
centroidal
angular-momentum.hpp
Generated by
1.17.0