|
mc_rtc
2.14.0
|
#include <mc_solver/EqualityConstraint.h>


Public Types | |
| using | Base = Constraint< tasks::qp::Equality, UpdateT > |
Public Member Functions | |
| template<typename U = UpdateT, typename = typename std::enable_if<std::is_same<U, utils::UpdateRobot>::value>::type> | |
| EqualityConstraint (unsigned int rIndex) | |
| template<typename U = UpdateT, typename = typename std::enable_if<std::is_same<U, utils::UpdateLambda>::value>::type> | |
| EqualityConstraint (const tasks::qp::ContactId &cid) | |
| template<typename U = UpdateT, typename = typename std::enable_if<std::is_same<U, utils::UpdateForce>::value>::type> | |
| EqualityConstraint (const mc_solver::QPSolver &solver, const tasks::qp::ContactId &cid) | |
| const Eigen::MatrixXd & | AEq () const override |
| std::string | descEq (const std::vector< rbd::MultiBody > &, int i) override |
Public Member Functions inherited from tasks::qp::ConstraintFunction< Fun > | |
| virtual | ~ConstraintFunction () override |
| void | addToSolver (QPSolver &sol) |
| void | addToSolver (const std::vector< rbd::MultiBody > &mbs, QPSolver &sol) |
| void | removeFromSolver (QPSolver &sol) |
Additional Inherited Members | |
Protected Member Functions inherited from mc_solver::utils::Constraint< tasks::qp::Equality, UpdateT > | |
| Constraint (unsigned int rIndex) | |
| Constraint (const tasks::qp::ContactId &cid) | |
| Constraint (const mc_solver::QPSolver &solver, const tasks::qp::ContactId &cid) | |
| virtual | ~Constraint () |
| void | updateNrVars (const std::vector< rbd::MultiBody > &mbs, const tasks::qp::SolverData &data) override |
| void | update (const std::vector< rbd::MultiBody > &mbs, const std::vector< rbd::MultiBodyConfig > &mbcs, const tasks::qp::SolverData &data) override |
Helper class to write an equality constraint for Tasks.
This implements \( A * x = b \)
You must implement the following functions:
Depending on what the constraint applies to you have to make sure A has the following size:
| using mc_solver::utils::EqualityConstraint< UpdateT >::Base = Constraint<tasks::qp::Equality, UpdateT> |
|
inlineexplicit |
|
inlineexplicit |
|
inline |
|
inlineoverride |
|
inlineoverride |