30 #ifndef EXOTICA_CORE_END_POSE_PROBLEM_H_ 31 #define EXOTICA_CORE_END_POSE_PROBLEM_H_ 36 #include <exotica_core/end_pose_problem_initializer.h> 47 void Instantiate(
const EndPoseProblemInitializer& init)
override;
52 void SetRho(
const std::string& task_name,
const double& rho);
53 Eigen::VectorXd
GetGoal(
const std::string& task_name);
54 double GetRho(
const std::string& task_name);
56 void SetRhoEQ(
const std::string& task_name,
const double& rho);
57 Eigen::VectorXd
GetGoalEQ(
const std::string& task_name);
58 double GetRhoEQ(
const std::string& task_name);
60 void SetRhoNEQ(
const std::string& task_name,
const double& rho);
61 Eigen::VectorXd
GetGoalNEQ(
const std::string& task_name);
62 double GetRhoNEQ(
const std::string& task_name);
91 #endif // EXOTICA_CORE_END_POSE_PROBLEM_H_ Arbitrarily constrained end-pose problem implementation.
Eigen::MatrixXd GetInequalityJacobian()
void SetGoal(const std::string &task_name, Eigen::VectorXdRefConst goal)
virtual ~EndPoseProblem()
Eigen::MatrixXd GetBounds() const
Eigen::VectorXd GetInequality()
double GetRho(const std::string &task_name)
void SetGoalEQ(const std::string &task_name, Eigen::VectorXdRefConst goal)
void Update(Eigen::VectorXdRefConst x)
Eigen::VectorXd GetGoalEQ(const std::string &task_name)
Eigen::Array< Eigen::MatrixXd, Eigen::Dynamic, 1 > Hessian
void SetRhoNEQ(const std::string &task_name, const double &rho)
void SetRhoEQ(const std::string &task_name, const double &rho)
Eigen::VectorXd GetGoal(const std::string &task_name)
Eigen::RowVectorXd GetScalarJacobian()
double GetRhoEQ(const std::string &task_name)
void SetRho(const std::string &task_name, const double &rho)
void PreUpdate() override
Eigen::MatrixXd GetEqualityJacobian()
const Eigen::Ref< const Eigen::VectorXd > & VectorXdRefConst
Convenience wrapper for storing references to sub-matrices/vectors.
void Instantiate(const EndPoseProblemInitializer &init) override
double GetRhoNEQ(const std::string &task_name)
Eigen::VectorXd GetEquality()
bool IsValid() override
Evaluates whether the problem is valid.
std::shared_ptr< exotica::EndPoseProblem > EndPoseProblemPtr
Eigen::VectorXd GetGoalNEQ(const std::string &task_name)
double GetScalarTaskCost(const std::string &task_name) const
void SetGoalNEQ(const std::string &task_name, Eigen::VectorXdRefConst goal)