14 namespace task_dynamics
65 Config(
double di,
double ds,
double xsi,
double xsiOff = 0);
96 const std::optional<VectorConstRef> & xsiOff = std::nullopt);
116 const Eigen::VectorXd & rhs,
118 const Eigen::VectorXd & di,
119 const Eigen::VectorXd & ds,
120 const Eigen::VectorXd & xsi,
125 const Eigen::VectorXd & rhs,
128 const Eigen::VectorXd & di,
129 const Eigen::VectorXd & ds,
130 const Eigen::VectorXd & xsi,
139 void updateValue_(
double s);
144 Eigen::VectorXd xsiOff_;
150 Eigen::VectorXd axsi_;
151 std::vector<bool> active_;
207 const Eigen::VectorXd & rhs)
const override;
210 template<
typename Derived,
typename... Args>
213 const Eigen::VectorXd & rhs,
214 Args &&... args)
const
218 return std::make_unique<Derived>(f, t, rhs, std::forward<Args>(args)..., dt_, autoXsi_, di_, ds_, xsi_, big_);
220 return std::make_unique<Derived>(f, t, rhs, std::forward<Args>(args)..., autoXsi_, di_, ds_, xsi_, big_);
225 Eigen::VectorXd xsi_;
#define TVM_DLLAPI
Definition: api.h:35
Definition: VelocityDamper.h:77
Eigen::VectorXd xsi_
Definition: VelocityDamper.h:106
AnisotropicConfig(const Config &config)
Eigen::VectorXd di_
Definition: VelocityDamper.h:104
Eigen::VectorXd ds_
Definition: VelocityDamper.h:105
Eigen::VectorXd xsiOff_
Definition: VelocityDamper.h:107
AnisotropicConfig(const VectorConstRef &di, const VectorConstRef &ds, const VectorConstRef &xsi, const std::optional< VectorConstRef > &xsiOff=std::nullopt)
Definition: VelocityDamper.h:51
double xsi_
Definition: VelocityDamper.h:69
double ds_
Definition: VelocityDamper.h:68
double xsiOff_
Definition: VelocityDamper.h:70
Config(double di, double ds, double xsi, double xsiOff=0)
double di_
Definition: VelocityDamper.h:67
Definition: VelocityDamper.h:111
Impl(FunctionPtr f, constraint::Type t, const Eigen::VectorXd &rhs, double dt, bool autoXsi, const Eigen::VectorXd &di, const Eigen::VectorXd &ds, const Eigen::VectorXd &xsi, double big)
void updateValue() override
Impl(FunctionPtr f, constraint::Type t, const Eigen::VectorXd &rhs, bool autoXsi, const Eigen::VectorXd &di, const Eigen::VectorXd &ds, const Eigen::VectorXd &xsi, double big)
Definition: VelocityDamper.h:45
VelocityDamper(double dt, const AnisotropicConfig &config, double big=constant::big_number)
Velocity damper for second order dynamics.
VelocityDamper(double dt, const Config &config, double big=constant::big_number)
Velocity damper for second order dynamics.
~VelocityDamper() override=default
std::unique_ptr< abstract::TaskDynamicsImpl > impl_(FunctionPtr f, constraint::Type t, const Eigen::VectorXd &rhs) const override
Order order_() const override
VelocityDamper(const AnisotropicConfig &config, double big=constant::big_number)
Velocity damper for first order dynamics.
std::unique_ptr< abstract::TaskDynamicsImpl > impl_(FunctionPtr f, constraint::Type t, const Eigen::VectorXd &rhs, Args &&... args) const
Definition: VelocityDamper.h:211
VelocityDamper(const Config &config, double big=constant::big_number)
Velocity damper for first order dynamics.
Definition: TaskDynamicsImpl.h:33
Definition: TaskDynamics.h:37
Type
Definition: enums.h:15
Order
Definition: enums.h:14
std::shared_ptr< function::abstract::Function > FunctionPtr
Definition: defs.h:57
Eigen::Ref< const Eigen::VectorXd > VectorConstRef
Definition: defs.h:50