39 for (std::size_t i = 0; i <
joint_map_.size(); ++i)
49 if (jacobian.rows() !=
N_)
ThrowNamed(
"Wrong size of jacobian! " <<
N_);
51 for (std::size_t i = 0; i <
joint_map_.size(); ++i)
65 if (jacobian.rows() !=
N_)
ThrowNamed(
"Wrong size of jacobian! " <<
N_);
66 if (hessian.size() !=
N_)
ThrowNamed(
"Wrong size of Hessian!" <<
N_ <<
" vs " << hessian.size());
68 for (std::size_t i = 0; i <
joint_map_.size(); ++i)
91 const int num_controlled_joints =
scene_->GetKinematicTree().GetNumControlledJoints();
94 if (
parameters_.JointMap.rows() > num_controlled_joints)
95 ThrowPretty(
"Number of mapped joints greater than controlled joints!");
98 for (
int i = 0; i <
parameters_.JointMap.rows(); ++i)
106 for (
int i = 0; i < num_controlled_joints; ++i)
int TaskSpaceDim() override
Eigen::Ref< Eigen::VectorXd > VectorXdRef
std::shared_ptr< Scene > ScenePtr
ContinuousJointPoseInitializer parameters_
const Eigen::Ref< const Eigen::VectorXd > & VectorXdRefConst
Eigen::Ref< Hessian > HessianRef
void AssignScene(ScenePtr scene) override
Eigen::Ref< Eigen::MatrixXd > MatrixXdRef
REGISTER_TASKMAP_TYPE("ContinuousJointPose", exotica::ContinuousJointPose)
std::vector< int > joint_map_
void Update(Eigen::VectorXdRefConst x, Eigen::VectorXdRef phi) override