29 #ifndef HPP_CONSTRAINTS_FUNCTION_DIFFERENCE_HH
30 #define HPP_CONSTRAINTS_FUNCTION_DIFFERENCE_HH
37 namespace constraints {
48 typedef shared_ptr<Difference>
Ptr_t;
64 inner_->value(l_, arg.segment(lsa_.first, lsa_.second));
65 inner_->value(r_, arg.segment(rsa_.first, rsa_.second));
70 inner_->jacobian(J.middleCols(lsd_.first, lsd_.second),
71 arg.segment(lsa_.first, lsa_.second));
72 inner_->jacobian(J.middleCols(rsd_.first, rsd_.second),
73 arg.segment(rsa_.first, rsa_.second));
74 J.middleCols(rsd_.first, rsd_.second) *= -1;
81 if (inner_ != castother.
inner_)
return false;
82 if (lsa_ != castother.
lsa_)
return false;
83 if (lsd_ != castother.
lsd_)
return false;
84 if (rsa_ != castother.
rsa_)
return false;
85 if (rsd_ != castother.
rsd_)
return false;
90 std::ostream&
print(std::ostream& os)
const;
Definition: differentiable-function.hh:63
virtual bool isEqual(const DifferentiableFunction &other) const
Definition: differentiable-function.hh:206
Definition: difference.hh:46
Difference(const DifferentiableFunctionPtr_t &inner, const size_type &nArgs, const size_type &nDers, const segment_t &lInArgs, const segment_t &lInDers, const segment_t &rInArgs, const segment_t &rInDers)
void impl_jacobian(matrixOut_t J, vectorIn_t arg) const
Definition: difference.hh:69
const segment_t rsa_
Definition: difference.hh:94
const segment_t rsd_
Definition: difference.hh:94
bool isEqual(const DifferentiableFunction &other) const
Definition: difference.hh:77
void impl_compute(LiegroupElementRef y, vectorIn_t arg) const
User implementation of function evaluation.
Definition: difference.hh:63
const segment_t lsd_
Definition: difference.hh:93
const segment_t lsa_
Definition: difference.hh:93
DifferentiableFunctionPtr_t inner_
Definition: difference.hh:92
LiegroupElement l_
Definition: difference.hh:96
std::ostream & print(std::ostream &os) const
Display object in a stream.
shared_ptr< Difference > Ptr_t
Definition: difference.hh:48
#define HPP_CONSTRAINTS_LOCAL
Definition: config.hh:92
shared_ptr< Difference > DifferencePtr_t
Definition: difference.hh:39
pinocchio::LiegroupElement LiegroupElement
Definition: fwd.hh:65
shared_ptr< DifferentiableFunction > DifferentiableFunctionPtr_t
Definition: fwd.hh:113
std::pair< size_type, size_type > segment_t
Definition: fwd.hh:83
pinocchio::size_type size_type
Definition: fwd.hh:47
pinocchio::vectorIn_t vectorIn_t
Definition: fwd.hh:60
Eigen::Ref< matrix_t > matrixOut_t
Definition: fwd.hh:58
pinocchio::LiegroupElementRef LiegroupElementRef
Definition: fwd.hh:66
Definition: active-set-differentiable-function.hh:36