Go to the documentation of this file.
24 #ifndef KDL_CHAINHDSOLVER_VERESHCHAGIN_HPP
25 #define KDL_CHAINHDSOLVER_VERESHCHAGIN_HPP
31 #include<Eigen/StdVector>
372 typedef Eigen::Matrix<double, 6, Eigen::Dynamic>
Matrix6Xd;
535 #endif // KDL_CHAINHDSOLVER_VERESHCHAGIN_HPP
std::vector< Frame > Frames
void downwards_sweep(const Jacobian &alfa, const JntArray &ff_torques)
ChainHdSolver_Vereshchagin(const Chain &chain, const Twist &root_acc, const unsigned int nc)
void initial_upwards_sweep(const JntArray &q, const JntArray &q_dot, const JntArray &q_dotdot, const Wrenches &f_ext)
6D Inertia of a articulated body
Eigen::VectorXd total_torques
std::vector< Twist > Twists
~ChainHdSolver_Vereshchagin()
void getTotalTorque(JntArray &total_tau)
Eigen::Matrix< double, 6, Eigen::Dynamic > Matrix6Xd
virtual void updateInternalDataStructures()
represents both translational and rotational velocities.
Eigen::MatrixXd M_0_inverse
Abstract: Acceleration constrained hybrid dynamics calculations for a chain, based on Vereshchagin 19...
void getContraintForceMagnitude(Eigen::VectorXd &nu_)
represents both translational and rotational acceleration.
void constraint_calculation(const JntArray &beta)
represents a frame transformation in 3D space (rotation + translation)
Eigen::Matrix< double, 6, 6 > Matrix6d
segment_info(unsigned int nc)
std::vector< segment_info, Eigen::aligned_allocator< segment_info > > results
void final_upwards_sweep(JntArray &q_dotdot, JntArray &constraint_torques)
ArticulatedBodyInertia P_tilde
Eigen::Matrix< double, 6, 1 > Vector6d
This class encapsulates a serial kinematic interconnection structure. It is built out of segments.
int CartToJnt(const JntArray &q, const JntArray &q_dot, JntArray &q_dotdot, const Jacobian &alfa, const JntArray &beta, const Wrenches &f_ext, const JntArray &ff_torques, JntArray &constraint_torques)
void getTransformedLinkAcceleration(Twists &x_dotdot)