Template Class ImpulseModelAbstractTpl

Inheritance Relationships

Base Type

Derived Types

Class Documentation

template<typename _Scalar>
class ImpulseModelAbstractTpl : public crocoddyl::ImpulseModelBase

Subclassed by crocoddyl::ImpulseModel3DTpl< _Scalar >, crocoddyl::ImpulseModel6DTpl< _Scalar >

Public Types

typedef MathBaseTpl<Scalar> MathBase
typedef ImpulseDataAbstractTpl<Scalar> ImpulseDataAbstract
typedef StateMultibodyTpl<Scalar> StateMultibody
typedef MathBase::VectorXs VectorXs
typedef MathBase::MatrixXs MatrixXs

Public Functions

ImpulseModelAbstractTpl(std::shared_ptr<StateMultibody> state, const pinocchio::ReferenceFrame type, const std::size_t nc)
DEPRECATED ("Use constructor that passes the type type of contact, this assumes is " "pinocchio::LOCAL", ImpulseModelAbstractTpl(std::shared_ptr< StateMultibody > state, const std::size_t nc);) virtual ~ImpulseModelAbstractTpl()=default
virtual void calc(const std::shared_ptr<ImpulseDataAbstract> &data, const Eigen::Ref<const VectorXs> &x) = 0
virtual void calcDiff(const std::shared_ptr<ImpulseDataAbstract> &data, const Eigen::Ref<const VectorXs> &x) = 0
virtual void updateForce(const std::shared_ptr<ImpulseDataAbstract> &data, const VectorXs &force) = 0
void updateForceDiff(const std::shared_ptr<ImpulseDataAbstract> &data, const MatrixXs &df_dx) const
void setZeroForce(const std::shared_ptr<ImpulseDataAbstract> &data) const
void setZeroForceDiff(const std::shared_ptr<ImpulseDataAbstract> &data) const
virtual std::shared_ptr<ImpulseDataAbstract> createData(pinocchio::DataTpl<Scalar> *const data)
const std::shared_ptr<StateMultibody> &get_state() const
std::size_t get_nc() const
DEPRECATED("Use get_nc().", std::size_t get_ni() const ;) std pinocchio::FrameIndex get_id () const

Return the reference frame id.

void set_id(const pinocchio::FrameIndex id)

Modify the reference frame id.

void set_type(const pinocchio::ReferenceFrame type)

Modify the type of contact.

pinocchio::ReferenceFrame get_type() const

Return the type of contact.

virtual void print(std::ostream &os) const

Print relevant information of the impulse model.

Parameters:

os[out] Output stream object

Public Members

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar

Protected Functions

inline ImpulseModelAbstractTpl()

Protected Attributes

std::shared_ptr<StateMultibody> state_
std::size_t nc_
pinocchio::FrameIndex id_

Reference frame id of the contact.

pinocchio::ReferenceFrame type_

Type of contact.

Friends

template<class Scalar>
friend std::ostream &operator<<(std::ostream &os, const ImpulseModelAbstractTpl<Scalar> &model)

Print information on the impulse model.