Go to the documentation of this file.
30 #ifndef EXOTICA_CORE_TASKS_H_
31 #define EXOTICA_CORE_TASKS_H_
33 #include <Eigen/Dense>
58 virtual ~Task() =
default;
60 virtual void Initialize(
const std::vector<exotica::Initializer>& inits, std::shared_ptr<PlanningProblem> prob,
TaskSpaceVector& Phi);
104 Eigen::VectorXd
GetGoal(
const std::string& task_name,
int t)
const;
106 void SetRho(
const std::string& task_name,
const double rho_in,
int t);
107 double GetRho(
const std::string& task_name,
int t)
const;
109 Eigen::VectorXd
GetTaskError(
const std::string& task_name,
int t)
const;
110 Eigen::MatrixXd
GetS(
const std::string& task_name,
int t)
const;
112 std::vector<Eigen::VectorXd>
rho;
113 std::vector<TaskSpaceVector>
y;
115 std::vector<TaskSpaceVector>
Phi;
123 std::vector<Eigen::MatrixXd>
S;
139 Eigen::VectorXd
GetGoal(
const std::string& task_name)
const;
141 void SetRho(
const std::string& task_name,
const double rho_in);
142 double GetRho(
const std::string& task_name)
const;
144 Eigen::MatrixXd
GetS(
const std::string& task_name)
const;
145 Eigen::VectorXd
GetTaskError(
const std::string& task_name)
const;
167 Eigen::VectorXd
GetGoal(
const std::string& task_name)
const;
169 void SetRho(
const std::string& task_name,
const double rho);
170 double GetRho(
const std::string& task_name)
const;
180 #endif // EXOTICA_CORE_TASKS_H_
virtual ~SamplingTask()=default
void ReinitializeVariables(int _T, std::shared_ptr< PlanningProblem > _prob, const TaskSpaceVector &_Phi)
std::vector< Hessian > ddPhi_ddu
void Update(const TaskSpaceVector &big_Phi, Eigen::MatrixXdRefConst big_jacobian, HessianRefConst big_hessian)
void SetGoal(const std::string &task_name, Eigen::VectorXdRefConst goal)
double GetRho(const std::string &task_name) const
std::vector< Hessian > hessian
std::vector< TaskMapPtr > TaskMapVec
virtual void Initialize(const std::vector< exotica::Initializer > &inits, std::shared_ptr< PlanningProblem > prob, TaskSpaceVector &Phi)
std::vector< TaskSpaceVector > Phi
Eigen::VectorXd GetGoal(const std::string &task_name) const
void Update(const TaskSpaceVector &big_Phi, Eigen::MatrixXdRefConst big_dPhi_dx, Eigen::MatrixXdRefConst big_dPhi_du, HessianRefConst big_ddPhi_ddx, HessianRefConst big_ddPhi_ddu, HessianRefConst big_ddPhi_dxdu, int t)
Eigen::MatrixXd GetS(const std::string &task_name, int t) const
Eigen::VectorXd GetTaskError(const std::string &task_name, int t) const
Eigen::MatrixXd GetS(const std::string &task_name) const
virtual ~EndPoseTask()=default
void SetRho(const std::string &task_name, const double rho)
void SetGoal(const std::string &task_name, Eigen::VectorXdRefConst goal, int t)
Eigen::MatrixXd GetTaskJacobian(const std::string &task_name) const
Eigen::Array< Eigen::MatrixXd, Eigen::Dynamic, 1 > Hessian
void ValidateTimeIndex(int &t_in) const
virtual ~TimeIndexedTask()=default
void SetRho(const std::string &task_name, const double rho_in, int t)
std::vector< Hessian > ddPhi_dxdu
void Update(const TaskSpaceVector &big_Phi)
std::vector< TaskInitializer > task_initializers_
virtual void Initialize(const std::vector< exotica::Initializer > &inits, std::shared_ptr< PlanningProblem > prob, TaskSpaceVector &Phi)
const typedef Eigen::Ref< const Eigen::VectorXd > & VectorXdRefConst
Convenience wrapper for storing references to sub-matrices/vectors.
std::vector< Eigen::MatrixXd > dPhi_dx
std::vector< Eigen::MatrixXd > dPhi_du
Eigen::VectorXd GetTaskError(const std::string &task_name) const
const typedef Eigen::Ref< const Eigen::MatrixXd > & MatrixXdRefConst
Eigen::internal::ref_selector< Hessian >::type HessianRefConst
double GetRho(const std::string &task_name) const
virtual void Initialize(const std::vector< exotica::Initializer > &inits, std::shared_ptr< PlanningProblem > prob, TaskSpaceVector &Phi)
Eigen::VectorXd GetGoal(const std::string &task_name, int t) const
std::vector< TaskIndexing > indexing
double GetRho(const std::string &task_name, int t) const
void SetGoal(const std::string &task_name, Eigen::VectorXdRefConst goal)
std::vector< Eigen::VectorXd > rho
std::vector< Eigen::MatrixXd > jacobian
Eigen::VectorXd GetGoal(const std::string &task_name) const
std::vector< Eigen::MatrixXd > S
std::vector< Eigen::VectorXd > ydiff
std::vector< Hessian > ddPhi_ddx
std::map< std::string, TaskMapPtr > TaskMapMap
The mapping by name of TaskMaps.
void SetRho(const std::string &task_name, const double rho_in)
virtual void Initialize(const std::vector< exotica::Initializer > &inits, std::shared_ptr< PlanningProblem > prob, TaskSpaceVector &Phi)
std::vector< TaskSpaceVector > y
TimeIndexedTask()=default
geometry_msgs::TransformStamped t
exotica_core
Author(s): Yiming Yang, Michael Camilleri
autogenerated on Fri Aug 2 2024 08:43:02