task-capture-point-inequality.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2020 CNRS, NYU, MPI Tübingen, PAL Robotics
3 //
4 // This file is part of tsid
5 // tsid is free software: you can redistribute it
6 // and/or modify it under the terms of the GNU Lesser General Public
7 // License as published by the Free Software Foundation, either version
8 // 3 of the License, or (at your option) any later version.
9 // tsid is distributed in the hope that it will be
10 // useful, but WITHOUT ANY WARRANTY; without even the implied warranty
11 // of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // General Lesser Public License for more details. You should have
13 // received a copy of the GNU Lesser General Public License along with
14 // tsid If not, see
15 // <http://www.gnu.org/licenses/>.
16 //
17 
18 #ifndef __invdyn_task_capture_point_inequality_hpp__
19 #define __invdyn_task_capture_point_inequality_hpp__
20 
24 #include <vector>
25 #include <pinocchio/multibody/model.hpp>
26 #include <pinocchio/multibody/data.hpp>
27 
28 namespace tsid {
29 namespace tasks {
30 
32  public:
33  EIGEN_MAKE_ALIGNED_OPERATOR_NEW
34 
35  typedef math::Index Index;
42 
44  const double timeStep);
45 
46  int dim() const override;
47 
49  Data& data) override;
50 
51  const ConstraintBase& getConstraint() const override;
52 
53  Vector getAcceleration(ConstRefVector dv) const override;
54 
55  const Vector& position() const override;
56 
57  void setSupportLimitsXAxis(const double x_min, const double x_max);
58 
59  void setSupportLimitsYAxis(const double y_min, const double y_max);
60 
61  void setSafetyMargin(const double x_margin, const double y_margin);
62 
63  protected:
69 
71 
75 
77  double m_delta_t;
78  double m_g;
79  double m_w;
80  double m_ka;
81  int m_dim;
82 
85 };
86 
87 } // namespace tasks
88 } // namespace tsid
89 
90 #endif // ifndef __invdyn_task_capture_point_inequality_hpp__
demo_quadruped.v
v
Definition: demo_quadruped.py:80
tsid::tasks::TaskCapturePointInequality::compute
const ConstraintBase & compute(double t, ConstRefVector q, ConstRefVector v, Data &data) override
Definition: task-capture-point-inequality.cpp:95
tsid::tasks::TaskCapturePointInequality::m_delta_t
double m_delta_t
Definition: task-capture-point-inequality.hpp:77
pinocchio::DataTpl
tsid::tasks::TaskCapturePointInequality::m_support_limits_y
Vector m_support_limits_y
Definition: task-capture-point-inequality.hpp:74
task-motion.hpp
tsid::math::ConstraintBase
Abstract class representing a linear equality/inequality constraint. Equality constraints are represe...
Definition: constraint-base.hpp:35
tsid::tasks::TaskCapturePointInequality::m_g
double m_g
Definition: task-capture-point-inequality.hpp:78
pinocchio::SE3
context::SE3 SE3
tsid::tasks::TaskCapturePointInequality::Data
pinocchio::Data Data
Definition: task-capture-point-inequality.hpp:40
setup.data
data
Definition: setup.in.py:48
demo_quadruped.robot
robot
Definition: demo_quadruped.py:51
tsid::tasks::TaskCapturePointInequality::m_support_limits_x
Vector m_support_limits_x
Definition: task-capture-point-inequality.hpp:73
tsid::tasks::TaskCapturePointInequality::m_drift
Vector3 m_drift
Definition: task-capture-point-inequality.hpp:65
tsid::tasks::TaskCapturePointInequality::dim
int dim() const override
Return the dimension of the task. \info should be overloaded in the child class.
Definition: task-capture-point-inequality.cpp:60
tsid::tasks::TaskCapturePointInequality::m_drift_vec
Vector m_drift_vec
Definition: task-capture-point-inequality.hpp:64
trajectory-base.hpp
tsid::tasks::TaskCapturePointInequality::m_safety_margin
Vector m_safety_margin
Definition: task-capture-point-inequality.hpp:72
Index
PINOCCHIO_COMPILER_DIAGNOSTIC_POP typedef std::size_t Index
demo_quadruped.q
q
Definition: demo_quadruped.py:74
tsid::tasks::TaskCapturePointInequality::Matrix
math::Matrix Matrix
Definition: task-capture-point-inequality.hpp:37
tsid::tasks::TaskCapturePointInequality::m_constraint
ConstraintInequality m_constraint
Definition: task-capture-point-inequality.hpp:70
tsid::tasks::TaskCapturePointInequality::getAcceleration
Vector getAcceleration(ConstRefVector dv) const override
Definition: task-capture-point-inequality.cpp:62
tsid::math::Index
std::size_t Index
Definition: math/fwd.hpp:53
tsid::tasks::TaskCapturePointInequality::m_rp_max
Vector m_rp_max
Definition: task-capture-point-inequality.hpp:68
tsid::tasks::TaskCapturePointInequality
Definition: task-capture-point-inequality.hpp:31
tsid::tasks::TaskCapturePointInequality::Index
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::Index Index
Definition: task-capture-point-inequality.hpp:35
tsid::tasks::TaskCapturePointInequality::TaskCapturePointInequality
TaskCapturePointInequality(const std::string &name, RobotWrapper &robot, const double timeStep)
Definition: task-capture-point-inequality.cpp:33
tsid::tasks::TaskCapturePointInequality::position
const Vector & position() const override
Definition: task-capture-point-inequality.cpp:66
tsid::math::Matrix
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > Matrix
Definition: math/fwd.hpp:36
tsid::tasks::TaskCapturePointInequality::setSafetyMargin
void setSafetyMargin(const double x_margin, const double y_margin)
Definition: task-capture-point-inequality.cpp:89
tsid::tasks::TaskCapturePointInequality::m_v_com
Vector m_v_com
Definition: task-capture-point-inequality.hpp:66
tsid::math::ConstraintInequality
Definition: math/constraint-inequality.hpp:26
tsid::tasks::TaskCapturePointInequality::setSupportLimitsXAxis
void setSupportLimitsXAxis(const double x_min, const double x_max)
Definition: task-capture-point-inequality.cpp:71
tsid::tasks::TaskCapturePointInequality::m_dim
int m_dim
Definition: task-capture-point-inequality.hpp:81
tsid::tasks::TaskCapturePointInequality::Vector3
math::Vector3 Vector3
Definition: task-capture-point-inequality.hpp:38
tsid::tasks::TaskMotion
Definition: task-motion.hpp:26
tsid::math::Vector
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > Vector
Definition: math/fwd.hpp:35
constraint-inequality.hpp
tsid::tasks::TaskCapturePointInequality::m_ka
double m_ka
Definition: task-capture-point-inequality.hpp:80
tsid
Definition: bindings/python/constraint/constraint-bound.cpp:21
tsid::robots::RobotWrapper
Wrapper for a robot based on pinocchio.
Definition: robots/robot-wrapper.hpp:37
tsid::tasks::TaskCapturePointInequality::setSupportLimitsYAxis
void setSupportLimitsYAxis(const double y_min, const double y_max)
Definition: task-capture-point-inequality.cpp:80
tsid::tasks::TaskCapturePointInequality::m_p_com
Vector m_p_com
Definition: task-capture-point-inequality.hpp:66
tsid::tasks::TaskBase::name
const std::string & name() const
Definition: task-base.cpp:25
tsid::tasks::TaskCapturePointInequality::Vector
math::Vector Vector
Definition: task-capture-point-inequality.hpp:36
tsid::tasks::TaskCapturePointInequality::b_upper
Vector b_upper
Definition: task-capture-point-inequality.hpp:84
t
Transform3f t
tsid::tasks::TaskCapturePointInequality::m_nv
Eigen::Index m_nv
Definition: task-capture-point-inequality.hpp:76
tsid::tasks::TaskCapturePointInequality::b_lower
Vector b_lower
Definition: task-capture-point-inequality.hpp:83
tsid::tasks::TaskCapturePointInequality::m_rp_min
Vector m_rp_min
Definition: task-capture-point-inequality.hpp:67
tsid::tasks::TaskCapturePointInequality::SE3
pinocchio::SE3 SE3
Definition: task-capture-point-inequality.hpp:41
tsid::tasks::TaskCapturePointInequality::m_w
double m_w
Definition: task-capture-point-inequality.hpp:79
tsid::tasks::TaskCapturePointInequality::ConstraintInequality
math::ConstraintInequality ConstraintInequality
Definition: task-capture-point-inequality.hpp:39
tsid::tasks::TaskBase::ConstRefVector
math::ConstRefVector ConstRefVector
Definition: task-base.hpp:39
tsid::math::Vector3
Eigen::Matrix< Scalar, 3, 1 > Vector3
Definition: math/fwd.hpp:40
tsid::tasks::TaskCapturePointInequality::getConstraint
const ConstraintBase & getConstraint() const override
Definition: task-capture-point-inequality.cpp:67


tsid
Author(s): Andrea Del Prete, Justin Carpentier
autogenerated on Thu Apr 3 2025 02:47:16