aligator
0.19.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Toggle main menu visibility
Loading...
Searching...
No Matches
linear-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
LinearMomentumDataTpl
;
8
17
18
template
<
typename
_Scalar>
19
struct
LinearMomentumResidualTpl
:
UnaryFunctionTpl
<_Scalar> {
20
public
:
21
using
Scalar
= _Scalar;
22
ALIGATOR_DYNAMIC_TYPEDEFS
(
Scalar
);
23
ALIGATOR_UNARY_FUNCTION_INTERFACE
(
Scalar
);
24
using
BaseData
=
typename
Base::Data
;
25
using
Data
=
LinearMomentumDataTpl<Scalar>
;
26
27
LinearMomentumResidualTpl
(
const
int
ndx,
const
int
nu
,
const
Vector3s &h_ref)
28
:
Base
(ndx,
nu
, 3)
29
,
h_ref_
(h_ref) {}
30
31
const
Vector3s &
getReference
()
const
{
return
h_ref_
; }
32
void
setReference
(
const
Eigen::Ref<const Vector3s> &h_new) {
h_ref_
= h_new; }
33
34
void
evaluate
(
const
ConstVectorRef &x,
BaseData
&data)
const
;
35
36
void
computeJacobians
(
const
ConstVectorRef &,
BaseData
&data)
const
;
37
38
shared_ptr<BaseData>
createData
()
const
{
39
return
std::make_shared<Data>(
this
);
40
}
41
42
protected
:
43
Vector3s
h_ref_
;
44
};
45
46
template
<
typename
Scalar>
47
struct
LinearMomentumDataTpl
:
StageFunctionDataTpl
<Scalar> {
48
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
49
using
Base
=
StageFunctionDataTpl<Scalar>
;
50
51
LinearMomentumDataTpl
(
const
LinearMomentumResidualTpl<Scalar>
*model);
52
};
53
54
}
// namespace aligator
55
56
#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
57
#include "aligator/modelling/centroidal/linear-momentum.txx"
58
#endif
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
aligator::LinearMomentumDataTpl
Definition
linear-momentum.hpp:47
aligator::LinearMomentumDataTpl::LinearMomentumDataTpl
LinearMomentumDataTpl(const LinearMomentumResidualTpl< Scalar > *model)
aligator::LinearMomentumDataTpl::Base
StageFunctionDataTpl< Scalar > Base
Definition
linear-momentum.hpp:49
aligator::LinearMomentumResidualTpl
This residual returns the linear momentum for a centroidal model with state .
Definition
linear-momentum.hpp:19
aligator::LinearMomentumResidualTpl::computeJacobians
void computeJacobians(const ConstVectorRef &, BaseData &data) const
aligator::LinearMomentumResidualTpl::Data
LinearMomentumDataTpl< Scalar > Data
Definition
linear-momentum.hpp:25
aligator::LinearMomentumResidualTpl::BaseData
typename Base::Data BaseData
Definition
linear-momentum.hpp:24
aligator::LinearMomentumResidualTpl::evaluate
void evaluate(const ConstVectorRef &x, BaseData &data) const
aligator::LinearMomentumResidualTpl::createData
shared_ptr< BaseData > createData() const
Instantiate a Data object.
Definition
linear-momentum.hpp:38
aligator::LinearMomentumResidualTpl::ALIGATOR_DYNAMIC_TYPEDEFS
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
aligator::LinearMomentumResidualTpl::LinearMomentumResidualTpl
LinearMomentumResidualTpl(const int ndx, const int nu, const Vector3s &h_ref)
Definition
linear-momentum.hpp:27
aligator::LinearMomentumResidualTpl::getReference
const Vector3s & getReference() const
Definition
linear-momentum.hpp:31
aligator::LinearMomentumResidualTpl::setReference
void setReference(const Eigen::Ref< const Vector3s > &h_new)
Definition
linear-momentum.hpp:32
aligator::LinearMomentumResidualTpl::Scalar
_Scalar Scalar
Definition
linear-momentum.hpp:21
aligator::LinearMomentumResidualTpl::h_ref_
Vector3s h_ref_
Definition
linear-momentum.hpp:43
aligator::LinearMomentumResidualTpl::ALIGATOR_UNARY_FUNCTION_INTERFACE
ALIGATOR_UNARY_FUNCTION_INTERFACE(Scalar)
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
linear-momentum.hpp
Generated by
1.17.0