Go to the documentation of this file.
9 #ifndef SOBEC_RESIDUAL_2D_SURFACE_HPP_
10 #define SOBEC_RESIDUAL_2D_SURFACE_HPP_
12 #include <crocoddyl/core/residual-base.hpp>
13 #include <crocoddyl/multibody/data/multibody.hpp>
14 #include <crocoddyl/multibody/fwd.hpp>
15 #include <crocoddyl/multibody/states/multibody.hpp>
20 using namespace crocoddyl;
30 template <
typename _Scalar>
33 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
37 typedef ResidualModelAbstractTpl<Scalar>
Base;
58 const pinocchio::FrameIndex frame_id,
60 const Scalar separation,
const Scalar orientation,
61 const Scalar alpha,
const std::size_t nu);
74 const pinocchio::FrameIndex frame_id,
76 const Scalar separation,
const Scalar orientation,
87 virtual void calc(
const boost::shared_ptr<ResidualDataAbstract>& data,
88 const Eigen::Ref<const VectorXs>&
x,
89 const Eigen::Ref<const VectorXs>& u);
98 virtual void calcDiff(
const boost::shared_ptr<ResidualDataAbstract>& data,
99 const Eigen::Ref<const VectorXs>&
x,
100 const Eigen::Ref<const VectorXs>& u);
101 virtual boost::shared_ptr<ResidualDataAbstract> createData(
107 const pinocchio::FrameIndex& get_frame_id()
const;
112 void set_frame_id(
const pinocchio::FrameIndex& fid);
118 void set_Ab(
const Vector2s support_translation,
const Scalar orientation);
129 using Base::u_dependent_;
131 using Base::v_dependent_;
134 pinocchio::FrameIndex frame_id;
135 boost::shared_ptr<typename StateMultibody::PinocchioModel>
137 Vector2s support_translation_;
148 template <
typename _Scalar>
150 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
154 typedef ResidualDataAbstractTpl<Scalar>
Base;
160 template <
template <
typename Scalar>
class Model>
163 :
Base(model, data), fJf(6, model->get_state()->get_nv()) {
166 DataCollectorMultibodyTpl<Scalar>* d =
167 dynamic_cast<DataCollectorMultibodyTpl<Scalar>*
>(shared);
170 "Invalid argument: the shared data should be derived from "
171 "DataCollectorMultibody");
175 pinocchio = d->pinocchio;
195 #endif // SOBEC_RESIDUAL_2D_surface_HPP_
Matrix6xs fJf
Local Jacobian of the frame.
Definition: residual-2D-surface.hpp:179
StateMultibodyTpl< Scalar > StateMultibody
Definition: residual-2D-surface.hpp:39
const Vector2s & get_b() const
Definition: residual-2D-surface.hpp:121
MathBaseTpl< Scalar > MathBase
Definition: residual-2D-surface.hpp:36
ResidualDataAbstractTpl< Scalar > Base
Definition: residual-2D-surface.hpp:154
MathBase::VectorXs VectorXs
Definition: residual-2D-surface.hpp:44
ResidualData2DSurfaceTpl< Scalar > Data
Definition: residual-2D-surface.hpp:38
Cost penalizing the position of one effector with respect to the other.
Definition: residual-2D-surface.hpp:31
Definition: activation-quad-ref.hpp:19
void set_b(const Vector2s &b)
Definition: residual-2D-surface.hpp:124
MathBaseTpl< Scalar > MathBase
Definition: residual-2D-surface.hpp:153
MathBase::Vector3s Vector3s
Definition: residual-2D-surface.hpp:42
ResidualData2DSurfaceTpl(Model< Scalar > *const model, DataCollectorAbstract *const data)
Definition: residual-2D-surface.hpp:161
MathBase::Vector2s Vector2s
Definition: residual-2D-surface.hpp:43
ResidualDataAbstractTpl< Scalar > ResidualDataAbstract
Definition: residual-2D-surface.hpp:40
MathBase::Matrix6xs Matrix6xs
Definition: residual-2D-surface.hpp:156
const MatrixXs & get_A() const
Definition: residual-2D-surface.hpp:120
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
Definition: residual-2D-surface.hpp:152
MathBase::Matrix3s Matrix3s
Definition: residual-2D-surface.hpp:46
void set_A(const MatrixXs &A)
Definition: residual-2D-surface.hpp:123
MathBase::VectorXs VectorXs
Definition: residual-2D-surface.hpp:158
pinocchio::DataTpl< Scalar > * pinocchio
Pinocchio data.
Definition: residual-2D-surface.hpp:178
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
Definition: residual-2D-surface.hpp:35
DataCollectorAbstractTpl< Scalar > DataCollectorAbstract
Definition: residual-2D-surface.hpp:41
ResidualModelAbstractTpl< Scalar > Base
Definition: residual-2D-surface.hpp:37
DataCollectorAbstractTpl< Scalar > DataCollectorAbstract
Definition: residual-2D-surface.hpp:155
MathBase::MatrixXs MatrixXs
Definition: residual-2D-surface.hpp:45
MathBase::Matrix3xs Matrix3xs
Definition: residual-2D-surface.hpp:157
Definition: residual-2D-surface.hpp:149