33 virtual void coriolis(
const std::array<double, 7>& q,
34 const std::array<double, 7>& dq,
35 const std::array<double, 9>& i_total,
37 const std::array<double, 3>& f_x_ctotal,
38 std::array<double, 7>& c_ne) = 0;
55 virtual void coriolis(
const std::array<double, 7>& q,
56 const std::array<double, 7>& dq,
57 const std::array<double, 9>& i_total,
59 const std::array<double, 3>& f_x_ctotal,
60 const std::array<double, 3>& g_earth,
61 std::array<double, 7>& c_ne) = 0;
73 virtual void gravity(
const std::array<double, 7>& q,
74 const std::array<double, 3>& g_earth,
76 const std::array<double, 3>& f_x_ctotal,
77 std::array<double, 7>& g_ne) = 0;
91 virtual void mass(
const std::array<double, 7>& q,
92 const std::array<double, 9>& i_total,
94 const std::array<double, 3>& f_x_ctotal,
95 std::array<double, 49>& m_ne) = 0;
104 virtual std::array<double, 16>
pose(
105 const std::array<double, 7>& q,
106 int joint_index) = 0;
117 const std::array<double, 7>& q,
118 const std::array<double, 16>& f_t_ee) = 0;
127 const std::array<double, 7>& q) = 0;
139 const std::array<double, 7>& q,
140 const std::array<double, 16>& f_t_ee,
141 const std::array<double, 16>& ee_t_k) = 0;
150 const std::array<double, 7>& q,
151 int joint_index) = 0;
160 const std::array<double, 7>& q) = 0;
170 const std::array<double, 7>& q,
171 const std::array<double, 16>& f_t_ee) = 0;
183 const std::array<double, 7>& q,
184 const std::array<double, 16>& f_t_ee,
185 const std::array<double, 16>& ee_t_k) = 0;
195 const std::array<double, 7>& q,
196 int joint_index) = 0;
205 const std::array<double, 7>& q) = 0;
215 const std::array<double, 7>& q,
216 const std::array<double, 16>& f_t_ee) = 0;
228 const std::array<double, 7>& q,
229 const std::array<double, 16>& f_t_ee,
230 const std::array<double, 16>& ee_t_k) = 0;
Robot dynamic parameters computed from the URDF model with Pinocchio.
Definition robot_model_base.h:16
virtual std::array< double, 42 > zeroJacobianFlange(const std::array< double, 7 > &q)=0
Calculates the 6x7 zero Jacobian for the flange frame, relative to the base frame.
virtual void coriolis(const std::array< double, 7 > &q, const std::array< double, 7 > &dq, const std::array< double, 9 > &i_total, double m_total, const std::array< double, 3 > &f_x_ctotal, std::array< double, 7 > &c_ne)=0
Calculates the Coriolis force vector (state-space equation): , in .
virtual std::array< double, 42 > zeroJacobianEe(const std::array< double, 7 > &q, const std::array< double, 16 > &f_t_ee)=0
Calculates the 6x7 zero Jacobian for the end effector frame, relative to the base frame.
virtual std::array< double, 42 > bodyJacobian(const std::array< double, 7 > &q, int joint_index)=0
Calculates the 6x7 body Jacobian for the given joint, relative to that joint's frame.
virtual std::array< double, 42 > bodyJacobianEe(const std::array< double, 7 > &q, const std::array< double, 16 > &f_t_ee)=0
Calculates the 6x7 body Jacobian for the end effector frame, relative to that frame.
virtual std::array< double, 42 > bodyJacobianStiffness(const std::array< double, 7 > &q, const std::array< double, 16 > &f_t_ee, const std::array< double, 16 > &ee_t_k)=0
Calculates the 6x7 body Jacobian for the stiffness frame, relative to that frame.
virtual std::array< double, 42 > zeroJacobianStiffness(const std::array< double, 7 > &q, const std::array< double, 16 > &f_t_ee, const std::array< double, 16 > &ee_t_k)=0
Calculates the 6x7 zero Jacobian for the stiffness frame, relative to the base frame.
virtual std::array< double, 42 > zeroJacobian(const std::array< double, 7 > &q, int joint_index)=0
Calculates the 6x7 zero Jacobian for the given joint, relative to the base frame.
virtual std::array< double, 16 > poseFlange(const std::array< double, 7 > &q)=0
Calculates the homogeneous transformation matrix for the flange.
virtual std::array< double, 16 > poseStiffness(const std::array< double, 7 > &q, const std::array< double, 16 > &f_t_ee, const std::array< double, 16 > &ee_t_k)=0
Calculates the homogeneous transformation matrix for the stiffness frame.
virtual std::array< double, 16 > poseEe(const std::array< double, 7 > &q, const std::array< double, 16 > &f_t_ee)=0
Calculates the homogeneous transformation matrix for the end effector, applying the end effector tran...
virtual void gravity(const std::array< double, 7 > &q, const std::array< double, 3 > &g_earth, double m_total, const std::array< double, 3 > &f_x_ctotal, std::array< double, 7 > &g_ne)=0
Calculates the gravity vector.
virtual void coriolis(const std::array< double, 7 > &q, const std::array< double, 7 > &dq, const std::array< double, 9 > &i_total, double m_total, const std::array< double, 3 > &f_x_ctotal, const std::array< double, 3 > &g_earth, std::array< double, 7 > &c_ne)=0
Calculates the Coriolis force vector with configurable gravity (recommended implementation).
virtual std::array< double, 16 > pose(const std::array< double, 7 > &q, int joint_index)=0
Calculates the homogeneous transformation matrix for the specified joint or link.
virtual void mass(const std::array< double, 7 > &q, const std::array< double, 9 > &i_total, double m_total, const std::array< double, 3 > &f_x_ctotal, std::array< double, 49 > &m_ne)=0
Calculates the 7x7 inertia matrix.
virtual std::array< double, 42 > bodyJacobianFlange(const std::array< double, 7 > &q)=0
Calculates the 6x7 body Jacobian for the flange frame, relative to that frame.