Go to the documentation of this file.
9 #ifndef SOBEC_RESIDUAL_COM_VELOCITY_HPP_
10 #define SOBEC_RESIDUAL_COM_VELOCITY_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;
22 template <
typename _Scalar>
24 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
28 typedef ResidualDataAbstractTpl<Scalar>
Base;
32 template <
template <
typename Scalar>
class Model>
35 :
Base(model, data), dvcom_dq(3, model->get_state()->get_nv()) {
38 DataCollectorMultibodyTpl<Scalar>* d =
39 dynamic_cast<DataCollectorMultibodyTpl<Scalar>*
>(shared);
42 "Invalid argument: the shared data should be derived from "
43 "DataCollectorMultibody");
47 pinocchio = d->pinocchio;
72 template <
typename _Scalar>
75 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
79 typedef ResidualModelAbstractTpl<Scalar>
Base;
96 const Vector3s& vref,
const std::size_t nu);
117 virtual void calc(
const boost::shared_ptr<ResidualDataAbstract>& data,
118 const Eigen::Ref<const VectorXs>&
x,
119 const Eigen::Ref<const VectorXs>& u);
128 virtual void calcDiff(
const boost::shared_ptr<ResidualDataAbstract>& data,
129 const Eigen::Ref<const VectorXs>&
x,
130 const Eigen::Ref<const VectorXs>& u);
131 virtual boost::shared_ptr<ResidualDataAbstract> createData(
137 const Vector3s& get_reference()
const;
142 void set_reference(
const Vector3s& vref);
147 using Base::u_dependent_;
149 using Base::v_dependent_;
153 typename StateMultibody::PinocchioModel
165 #endif // SOBEC_RESIDUAL_COM_VELOCITY_HPP_
ResidualDataCoMVelocityTpl(Model< Scalar > *const model, DataCollectorAbstract *const data)
Definition: residual-com-velocity.hpp:33
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
Definition: residual-com-velocity.hpp:77
ResidualModelAbstractTpl< Scalar > Base
Definition: residual-com-velocity.hpp:79
MathBase::MatrixXs MatrixXs
Definition: residual-com-velocity.hpp:86
DataCollectorAbstractTpl< Scalar > DataCollectorAbstract
Definition: residual-com-velocity.hpp:83
ResidualDataCoMVelocityTpl< Scalar > Data
Definition: residual-com-velocity.hpp:80
MathBase::Vector3s Vector3s
Definition: residual-com-velocity.hpp:84
MathBase::VectorXs VectorXs
Definition: residual-com-velocity.hpp:85
StateMultibodyTpl< Scalar > StateMultibody
Definition: residual-com-velocity.hpp:81
ResidualDataAbstractTpl< Scalar > ResidualDataAbstract
Definition: residual-com-velocity.hpp:82
Definition: activation-quad-ref.hpp:19
DataCollectorAbstractTpl< Scalar > DataCollectorAbstract
Definition: residual-com-velocity.hpp:29
Definition: residual-com-velocity.hpp:23
Matrix3xs dvcom_dq
Definition: residual-com-velocity.hpp:49
pinocchio::DataTpl< Scalar > * pinocchio
Pinocchio data.
Definition: residual-com-velocity.hpp:50
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
Definition: residual-com-velocity.hpp:26
CoM velocity residual.
Definition: residual-com-velocity.hpp:73
MathBaseTpl< Scalar > MathBase
Definition: residual-com-velocity.hpp:27
ResidualDataAbstractTpl< Scalar > Base
Definition: residual-com-velocity.hpp:28
MathBaseTpl< Scalar > MathBase
Definition: residual-com-velocity.hpp:78
MathBase::Matrix3xs Matrix3xs
Definition: residual-com-velocity.hpp:30