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-translation.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include "
aligator/core/unary-function.hpp
"
4
#include "
aligator/modelling/multibody/fwd.hpp
"
5
6
#include <pinocchio/multibody/model.hpp>
7
#include <pinocchio/multibody/frame.hpp>
8
#include "
aligator/third-party/polymorphic_cxx14.h
"
9
10
namespace
aligator
{
11
12
template
<
typename
Scalar>
struct
FrameTranslationDataTpl
;
13
14
template
<
typename
_Scalar>
15
struct
FrameTranslationResidualTpl
:
UnaryFunctionTpl
<_Scalar>,
frame_api
{
16
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
17
using
Scalar
= _Scalar;
18
ALIGATOR_DYNAMIC_TYPEDEFS
(
Scalar
);
19
ALIGATOR_UNARY_FUNCTION_INTERFACE
(
Scalar
);
20
using
BaseData
=
typename
Base::Data
;
21
using
Model
= pinocchio::ModelTpl<Scalar>;
22
using
ManifoldPtr
= xyz::polymorphic<ManifoldAbstractTpl<Scalar>>;
23
using
SE3
= pinocchio::SE3Tpl<Scalar>;
24
using
Data
=
FrameTranslationDataTpl<Scalar>
;
25
26
Model
pin_model_
;
27
Vector3s
p_ref_
;
28
29
FrameTranslationResidualTpl
(
const
int
ndx,
const
int
nu
,
const
Model
&model,
30
const
Vector3s &frame_trans,
31
const
pinocchio::FrameIndex frame_id);
32
33
ALIGATOR_DEPRECATED
const
Vector3s &
getReference
()
const
{
return
p_ref_
; }
34
ALIGATOR_DEPRECATED
void
35
setReference
(
const
Eigen::Ref<const Vector3s> &p_new) {
36
p_ref_
= p_new;
37
}
38
39
void
evaluate
(
const
ConstVectorRef &x,
BaseData
&data)
const
;
40
41
void
computeJacobians
(
const
ConstVectorRef &x,
BaseData
&data)
const
;
42
43
shared_ptr<BaseData>
createData
()
const
{
44
return
std::make_shared<Data>(*
this
);
45
}
46
};
47
48
template
<
typename
Scalar>
49
struct
FrameTranslationDataTpl
:
StageFunctionDataTpl
<Scalar> {
50
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
51
using
Base
=
StageFunctionDataTpl<Scalar>
;
52
using
PinData
= pinocchio::DataTpl<Scalar>;
53
55
PinData
pin_data_
;
56
58
typename
math_types<Scalar>::Matrix6Xs
fJf_
;
59
60
FrameTranslationDataTpl
(
const
FrameTranslationResidualTpl<Scalar>
&model);
61
};
62
63
#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
64
extern
template
struct
FrameTranslationResidualTpl<context::Scalar>
;
65
extern
template
struct
FrameTranslationDataTpl<context::Scalar>
;
66
#endif
67
}
// namespace aligator
fwd.hpp
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
polymorphic_cxx14.h
aligator::FrameTranslationDataTpl
Definition
frame-translation.hpp:49
aligator::FrameTranslationDataTpl::pin_data_
PinData pin_data_
Pinocchio data object.
Definition
frame-translation.hpp:55
aligator::FrameTranslationDataTpl::FrameTranslationDataTpl
FrameTranslationDataTpl(const FrameTranslationResidualTpl< Scalar > &model)
aligator::FrameTranslationDataTpl::PinData
pinocchio::DataTpl< Scalar > PinData
Definition
frame-translation.hpp:52
aligator::FrameTranslationDataTpl::fJf_
math_types< Scalar >::Matrix6Xs fJf_
Jacobian of the error, local frame.
Definition
frame-translation.hpp:58
aligator::FrameTranslationDataTpl::Base
StageFunctionDataTpl< Scalar > Base
Definition
frame-translation.hpp:51
aligator::FrameTranslationResidualTpl
Definition
frame-translation.hpp:15
aligator::FrameTranslationResidualTpl::getReference
ALIGATOR_DEPRECATED const Vector3s & getReference() const
Definition
frame-translation.hpp:33
aligator::FrameTranslationResidualTpl::ALIGATOR_UNARY_FUNCTION_INTERFACE
ALIGATOR_UNARY_FUNCTION_INTERFACE(Scalar)
aligator::FrameTranslationResidualTpl::evaluate
void evaluate(const ConstVectorRef &x, BaseData &data) const
aligator::FrameTranslationResidualTpl::pin_model_
Model pin_model_
Definition
frame-translation.hpp:26
aligator::FrameTranslationResidualTpl::createData
shared_ptr< BaseData > createData() const
Instantiate a Data object.
Definition
frame-translation.hpp:43
aligator::FrameTranslationResidualTpl::setReference
ALIGATOR_DEPRECATED void setReference(const Eigen::Ref< const Vector3s > &p_new)
Definition
frame-translation.hpp:35
aligator::FrameTranslationResidualTpl::Model
pinocchio::ModelTpl< Scalar > Model
Definition
frame-translation.hpp:21
aligator::FrameTranslationResidualTpl::Data
FrameTranslationDataTpl< Scalar > Data
Definition
frame-translation.hpp:24
aligator::FrameTranslationResidualTpl::ManifoldPtr
xyz::polymorphic< ManifoldAbstractTpl< Scalar > > ManifoldPtr
Definition
frame-translation.hpp:22
aligator::FrameTranslationResidualTpl::FrameTranslationResidualTpl
FrameTranslationResidualTpl(const int ndx, const int nu, const Model &model, const Vector3s &frame_trans, const pinocchio::FrameIndex frame_id)
aligator::FrameTranslationResidualTpl::p_ref_
Vector3s p_ref_
Definition
frame-translation.hpp:27
aligator::FrameTranslationResidualTpl::SE3
pinocchio::SE3Tpl< Scalar > SE3
Definition
frame-translation.hpp:23
aligator::FrameTranslationResidualTpl::ALIGATOR_DYNAMIC_TYPEDEFS
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
aligator::FrameTranslationResidualTpl::computeJacobians
void computeJacobians(const ConstVectorRef &x, BaseData &data) const
aligator::FrameTranslationResidualTpl::Scalar
_Scalar Scalar
Definition
frame-translation.hpp:17
aligator::FrameTranslationResidualTpl::BaseData
typename Base::Data BaseData
Definition
frame-translation.hpp:20
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
aligator::math_types
Typedefs for math (Eigen vectors, matrices) depending on scalar type.
Definition
math.hpp:123
unary-function.hpp
include
aligator
modelling
multibody
frame-translation.hpp
Generated by
1.17.0