32 #include <pinocchio/algorithm/aba-derivatives.hpp> 33 #include <pinocchio/algorithm/joint-configuration.hpp> 39 pinocchio::computeABADerivatives(
model_, *
pinocchio_data_.get(), x.head(
num_positions_), x.tail(
num_velocities_), u,
fx_.block(
num_velocities_, 0,
num_velocities_,
num_velocities_),
fx_.block(
num_velocities_,
num_velocities_,
num_velocities_,
num_velocities_),
fu_.bottomRightCorner(
num_velocities_,
num_velocities_));
62 case Integrator::SymplecticEuler:
void ComputeDerivatives(const StateVector &x, const ControlVector &u) override
void dIntegrateTransport(const LieGroupGenericTpl< LieGroupCollection > &lg, const Eigen::MatrixBase< Config_t > &q, const Eigen::MatrixBase< Tangent_t > &v, const Eigen::MatrixBase< JacobianIn_t > &J_in, const Eigen::MatrixBase< JacobianOut_t > &J_out, const ArgumentPosition arg)
ControlDerivative fu(const StateVector &x, const ControlVector &u) override
void dIntegrate(const LieGroupGenericTpl< LieGroupCollection > &lg, const Eigen::MatrixBase< Config_t > &q, const Eigen::MatrixBase< Tangent_t > &v, const Eigen::MatrixBase< JacobianOut_t > &J, const ArgumentPosition arg, const AssignmentOperatorType op=SETTO)
Eigen::Matrix< T, NU, 1 > ControlVector
StateDerivative fx(const StateVector &x, const ControlVector &u) override
std::unique_ptr< pinocchio::Data > pinocchio_data_
void computeABADerivatives(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const Eigen::MatrixBase< TangentVectorType1 > &v, const Eigen::MatrixBase< TangentVectorType2 > &tau, const Eigen::MatrixBase< MatrixType1 > &aba_partial_dq, const Eigen::MatrixBase< MatrixType2 > &aba_partial_dv, const Eigen::MatrixBase< MatrixType3 > &aba_partial_dtau)
int get_num_state_derivative() const
Eigen::Matrix< T, NX, 1 > StateVector