00001 #ifndef DYNAMICS_UTILITIES_H 00002 #define DYNAMICS_UTILITIES_H 00003 00004 #include <vector> 00005 00006 #include <kdl/jacobian.hpp> 00007 #include <kdl/frames.hpp> 00008 #include <kdl/jntarray.hpp> 00009 #include <kdl/utilities/svd_eigen_HH.hpp> 00010 00011 class DynamicsUtilities 00012 { 00013 public: 00014 DynamicsUtilities(); 00015 ~DynamicsUtilities(); 00016 00017 KDL::Wrench SumWrenches(const std::vector<KDL::Wrench>& f_center); 00018 00019 bool isBaseFrame(const std::vector<std::string> baseFrames, const std::string frame); 00020 00021 void MultiplyJacobianTranspose(const KDL::Jacobian& jac, const KDL::Wrench& src, KDL::JntArray& dest); 00022 00023 int MultiplyJacobianTransposeInverse(const KDL::Jacobian& jac, const KDL::JntArray& src, KDL::Wrench& dest); 00024 00025 double mag(const KDL::Vector& vec); 00026 00027 }; 00028 00029 #endif