aligator
0.19.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Toggle main menu visibility
Loading...
Searching...
No Matches
frame-velocity.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include "
aligator/core/unary-function.hpp
"
4
#include "
./fwd.hpp
"
5
6
#include <pinocchio/multibody/model.hpp>
7
#include <pinocchio/multibody/data.hpp>
8
#include <pinocchio/multibody/frame.hpp>
9
#include "
aligator/third-party/polymorphic_cxx14.h
"
10
11
namespace
aligator
{
12
13
template
<
typename
Scalar>
struct
FrameVelocityDataTpl
;
14
15
template
<
typename
_Scalar>
16
struct
FrameVelocityResidualTpl
:
UnaryFunctionTpl
<_Scalar>,
frame_api
{
17
public
:
18
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
19
using
Scalar
= _Scalar;
20
ALIGATOR_DYNAMIC_TYPEDEFS
(
Scalar
);
21
ALIGATOR_UNARY_FUNCTION_INTERFACE
(
Scalar
);
22
using
BaseData
=
typename
Base::Data
;
23
using
Model
= pinocchio::ModelTpl<Scalar>;
24
using
ManifoldPtr
= xyz::polymorphic<ManifoldAbstractTpl<Scalar>>;
25
using
SE3
= pinocchio::SE3Tpl<Scalar>;
26
using
Motion
= pinocchio::MotionTpl<Scalar>;
27
using
Data
=
FrameVelocityDataTpl<Scalar>
;
28
29
Model
pin_model_
;
30
Motion
vref_
;
31
pinocchio::ReferenceFrame
type_
;
32
33
FrameVelocityResidualTpl
(
const
int
ndx,
const
int
nu
,
const
Model
&model,
34
const
Motion
&velocity,
35
const
pinocchio::FrameIndex
id
,
36
const
pinocchio::ReferenceFrame type);
37
38
ALIGATOR_DEPRECATED
const
Motion
&
getReference
()
const
{
return
vref_
; }
39
ALIGATOR_DEPRECATED
void
setReference
(
const
Motion
&v_new) {
vref_
= v_new; }
40
41
void
evaluate
(
const
ConstVectorRef &x,
BaseData
&data)
const
;
42
void
computeJacobians
(
const
ConstVectorRef &x,
BaseData
&data)
const
;
43
44
shared_ptr<BaseData>
createData
()
const
{
45
return
std::make_shared<Data>(*
this
);
46
}
47
};
48
49
template
<
typename
Scalar>
50
struct
FrameVelocityDataTpl
:
StageFunctionDataTpl
<Scalar> {
51
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
52
using
Base
=
StageFunctionDataTpl<Scalar>
;
53
using
Motion
= pinocchio::MotionTpl<Scalar>;
54
56
pinocchio::DataTpl<Scalar>
pin_data_
;
57
58
FrameVelocityDataTpl
(
const
FrameVelocityResidualTpl<Scalar>
&model);
59
};
60
61
#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
62
extern
template
struct
FrameVelocityResidualTpl<context::Scalar>
;
63
extern
template
struct
FrameVelocityDataTpl<context::Scalar>
;
64
#endif
65
}
// namespace aligator
fwd.hpp
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
polymorphic_cxx14.h
aligator::FrameVelocityDataTpl
Definition
frame-velocity.hpp:50
aligator::FrameVelocityDataTpl::Motion
pinocchio::MotionTpl< Scalar > Motion
Definition
frame-velocity.hpp:53
aligator::FrameVelocityDataTpl::pin_data_
pinocchio::DataTpl< Scalar > pin_data_
Pinocchio data object.
Definition
frame-velocity.hpp:56
aligator::FrameVelocityDataTpl::Base
StageFunctionDataTpl< Scalar > Base
Definition
frame-velocity.hpp:52
aligator::FrameVelocityDataTpl::FrameVelocityDataTpl
FrameVelocityDataTpl(const FrameVelocityResidualTpl< Scalar > &model)
aligator::FrameVelocityResidualTpl
Definition
frame-velocity.hpp:16
aligator::FrameVelocityResidualTpl::createData
shared_ptr< BaseData > createData() const
Instantiate a Data object.
Definition
frame-velocity.hpp:44
aligator::FrameVelocityResidualTpl::SE3
pinocchio::SE3Tpl< Scalar > SE3
Definition
frame-velocity.hpp:25
aligator::FrameVelocityResidualTpl::evaluate
void evaluate(const ConstVectorRef &x, BaseData &data) const
aligator::FrameVelocityResidualTpl::FrameVelocityResidualTpl
FrameVelocityResidualTpl(const int ndx, const int nu, const Model &model, const Motion &velocity, const pinocchio::FrameIndex id, const pinocchio::ReferenceFrame type)
aligator::FrameVelocityResidualTpl::ALIGATOR_DYNAMIC_TYPEDEFS
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
aligator::FrameVelocityResidualTpl::pin_model_
Model pin_model_
Definition
frame-velocity.hpp:29
aligator::FrameVelocityResidualTpl::Motion
pinocchio::MotionTpl< Scalar > Motion
Definition
frame-velocity.hpp:26
aligator::FrameVelocityResidualTpl::Model
pinocchio::ModelTpl< Scalar > Model
Definition
frame-velocity.hpp:23
aligator::FrameVelocityResidualTpl::ManifoldPtr
xyz::polymorphic< ManifoldAbstractTpl< Scalar > > ManifoldPtr
Definition
frame-velocity.hpp:24
aligator::FrameVelocityResidualTpl::computeJacobians
void computeJacobians(const ConstVectorRef &x, BaseData &data) const
aligator::FrameVelocityResidualTpl::setReference
ALIGATOR_DEPRECATED void setReference(const Motion &v_new)
Definition
frame-velocity.hpp:39
aligator::FrameVelocityResidualTpl::vref_
Motion vref_
Definition
frame-velocity.hpp:30
aligator::FrameVelocityResidualTpl::getReference
ALIGATOR_DEPRECATED const Motion & getReference() const
Definition
frame-velocity.hpp:38
aligator::FrameVelocityResidualTpl::BaseData
typename Base::Data BaseData
Definition
frame-velocity.hpp:22
aligator::FrameVelocityResidualTpl::ALIGATOR_UNARY_FUNCTION_INTERFACE
ALIGATOR_UNARY_FUNCTION_INTERFACE(Scalar)
aligator::FrameVelocityResidualTpl::type_
pinocchio::ReferenceFrame type_
Definition
frame-velocity.hpp:31
aligator::FrameVelocityResidualTpl::Scalar
_Scalar Scalar
Definition
frame-velocity.hpp:19
aligator::FrameVelocityResidualTpl::Data
FrameVelocityDataTpl< Scalar > Data
Definition
frame-velocity.hpp:27
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::frame_api
Definition
fwd.hpp:9
unary-function.hpp
include
aligator
modelling
multibody
frame-velocity.hpp
Generated by
1.17.0