ocra-recipes
Doxygen documentation for the ocra-recipes repository
|
Create a linear function that represents the joint limit function for the full formalism. More...
#include <JointLimitConstraint.h>
Classes | |
struct | Pimpl |
Public Types | |
typedef LinearFunction | functionType_t |
![]() | |
typedef LinearFunction | functionType_t |
![]() | |
typedef Function | functionType_t |
Public Member Functions | |
FullJointLimitFunction (const Model &model) | |
~FullJointLimitFunction () | |
![]() | |
JointLimitFunction (const Model &m, Variable &var) | |
~JointLimitFunction () | |
double | getHorizonOfPrediction () const |
void | setHorizonOfPrediction (double newHpos) |
void | setJointLimits (const Eigen::VectorXd &lowerLimits, const Eigen::VectorXd &upperLimits) |
void | setJointLowerLimits (const Eigen::VectorXd &newLowerLimits) |
void | setJointUpperLimits (const Eigen::VectorXd &newUpperLimits) |
const Eigen::VectorXd & | getJointLowerLimits () const |
const Eigen::VectorXd & | getJointUpperLimits () const |
void | setJointLimit (int i, double newLowerLimit, double newUpperLimit) |
void | setJointLowerLimit (int i, double newLowerLimit) |
void | setJointUpperLimit (int i, double newUpperLimit) |
double | getJointLowerLimit (int i) const |
double | getJointUpperLimit (int i) const |
![]() | |
template<class Derived , class VectorBase > | |
LinearFunction (Variable &x, const MatrixBase< Derived > &A, const VectorBase &b) | |
~LinearFunction () | |
void | invalidateb (int timestamp) |
const MatrixXd & | getA () const |
const VectorXd & | getb () const |
void | changeA (const MatrixXd &A) |
void | changeb (const VectorXd &b) |
![]() | |
virtual | ~Function () |
int | getDimension () const |
virtual void | updateFdot () const |
virtual void | updateFddot () const |
virtual void | updateJdotXdot () const |
const Variable & | getVariable () const |
Variable & | getVariable () |
template<eFunctionAbility Ability> | |
void | invalidate () |
void | invalidateAll (int timestamp) |
void | invalidateAll () |
template<eFunctionAbility Ability> | |
bool | isValid () const |
template<eFunctionAbility Ability> | |
bool | canCompute () const |
template<eFunctionAbility Ability> | |
const IFunction< Ability >::return_type & | get () const |
template<eFunctionAbility Ability> | |
IFunction< Ability >::return_sub_type | get (int index) const |
const VectorXd & | getValue () const |
double | getValue (int index) const |
const MatrixXd & | getJacobian () const |
MatrixXdRow | getJacobian (int index) const |
![]() | |
ObserverSubject () | |
virtual | ~ObserverSubject () |
![]() | |
virtual | ~Observer () |
template<int EVT> | |
void | bind (SubjectBase< EVT > &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
template<int EVT> | |
void | stopPropagation () |
![]() | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
![]() | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
![]() | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
![]() | |
virtual | ~Subject () |
template<int EVT, class Derived , class Base > | |
void | connect (Derived &object, void(Base::*newCallback)(int)) const |
Call this method to register a non-static method as a callback. More... | |
template<int EVT> | |
void | connect (void(*newCallback)(int)) const |
Call this method to register a free function as a callback. More... | |
template<int EVT, class Derived , class Base > | |
void | disconnect (Derived &object, void(Base::*callbackToErase)(int)) const |
Disconnect non-static method. More... | |
template<int EVT> | |
void | disconnect (void(*callbackToErase)(int)) const |
Disconnect free function. More... | |
template<int EVT> | |
void | propagate () const |
template<int EVT> | |
void | propagate (int timestamp) const |
![]() | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
![]() | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
![]() | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
![]() | |
bool | hasSeparableTimeDependancy (void) const |
eFunctionLinearity | getType (void) const |
eFunctionConvexity | getConvexityProperty (void) const |
int | getContinuityProperty (void) const |
const std::string & | getProperty (int i) const |
int | getNumberOfProperties (void) const |
bool | hasProperty (const std::string &functionProperty) const |
bool | isExplicitlyTimeDependant (void) const |
![]() | |
NamedInstance (const std::string &name) | |
const std::string & | getName () const |
virtual | ~NamedInstance () |
![]() | |
AbilitySet & | add (eFunctionAbility prop) |
AbilitySet & | remove (eFunctionAbility prop) |
Protected Member Functions | |
virtual void | updateb () const |
![]() | |
void | computeFullJacobian (int varDofs, int nIDofs, Eigen::MatrixXd &fullJacobian) const |
void | computeFullb (const Eigen::VectorXd &gpos, const Eigen::VectorXd &gvel, Eigen::VectorXd &fullb) const |
![]() | |
LinearFunction (Variable &x, int dimension) | |
virtual void | doUpdateInputSizeEnd () |
virtual void | updateValue () const |
virtual void | updateJacobian () const |
virtual void | doChangeA (const MatrixXd &A) |
virtual void | doChangeb (const VectorXd &b) |
void | inhibitPropagationFromb () const |
void | desinhibitPropagationFromb () const |
![]() | |
Function (Variable &x, int dimension, eFunctionLinearity linearity=LINEARITY_UNDEFINED, eFunctionConvexity convexity=CONVEXITY_UNDEFINED, int continuity=CONTINUITY_UNKNOWN, bool explicitlyTimeDependant=false, bool separableTimeDependancy=true) | |
Function Constructor. More... | |
void | disconnectVariable () |
void | changeFunctionDimension (int newDimension) |
void | updateInputSize (int timestamp) |
void | resize () |
virtual int | computeDimensionFromInputSize () const |
virtual void | doUpdateInputSizeBegin () |
virtual void | doUpdateDimensionBegin (int newDimension) |
virtual void | doUpdateDimensionEnd (int oldDimension) |
![]() | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
![]() | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
![]() | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
![]() | |
SubjectBase () | |
~SubjectBase () | |
![]() | |
SubjectBase () | |
~SubjectBase () | |
![]() | |
SubjectBase () | |
~SubjectBase () | |
![]() | |
IFunctionProperties (eFunctionLinearity linearity=LINEARITY_UNDEFINED, eFunctionConvexity convexity=CONVEXITY_UNDEFINED, int continuity=CONTINUITY_UNKNOWN, bool explicitlyTimeDependant=false, bool separableTimeDependancy=true) | |
IFunctionProperties Constructor. More... | |
void | changeType (eFunctionLinearity newType) |
void | changeConvexityProperty (eFunctionConvexity newProperty) |
void | changeContinuityProperty (int newProperty) |
void | addProperty (const std::string &functionProperty) |
void | removeProperty (const std::string &functionProperty) |
void | changeExplicitTimeDependancy (bool b) |
void | changeSeparableTimeDependancy (bool b) |
![]() | |
AbilitySet (const std::vector< bool > &usageSet) | |
const std::vector< bool > & | getUsageSet () const |
AbilitySet (eFunctionAbility prop0=FUN_VALUE, eFunctionAbility prop1=FUN_VALUE) | |
AbilitySet (eFunctionAbility prop0, eFunctionAbility prop1, eFunctionAbility prop2, eFunctionAbility prop3=FUN_VALUE, eFunctionAbility prop4=FUN_VALUE) | |
AbilitySet (eFunctionAbility prop0, eFunctionAbility prop1, eFunctionAbility prop2, eFunctionAbility prop3, eFunctionAbility prop4, eFunctionAbility prop5, eFunctionAbility prop6=FUN_VALUE, eFunctionAbility prop7=FUN_VALUE, eFunctionAbility prop8=FUN_VALUE, eFunctionAbility prop9=FUN_VALUE) | |
![]() | |
CoupledInputOutputSize (bool coupledInputOutputSize) | |
bool | inputAndOutputSizesAreCoupled () const |
Additional Inherited Members | |
![]() | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
![]() | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
![]() | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
![]() | |
Eigen::VectorXd | jointLowerLimits |
Eigen::VectorXd | jointUpperLimits |
double | hpos |
![]() | |
VectorXd | _b |
bool | _bIsUpToDate |
![]() | |
Variable & | x |
VectorXd & | _value |
MatrixXd & | _jacobian |
const int & | _dim |
Create a linear function that represents the joint limit function for the full formalism.
See wJointLimitFunction ofr more information.
Definition at line 120 of file JointLimitConstraint.h.
Definition at line 123 of file JointLimitConstraint.h.
FullJointLimitFunction::FullJointLimitFunction | ( | const Model & | model | ) |
Initialize a joint limits function designed for the full formalism.
model | The Model on which we will update the dynamic parameters |
It is connected with the model and invalidates when EVT_CHANGE_VALUE is raised. Furthermore, it computes the Jacobian matrix
which is constant.
Definition at line 297 of file JointLimitConstraint.cpp.
FullJointLimitFunction::~FullJointLimitFunction | ( | ) |
Destructor
It is disconnected from the model.
Definition at line 317 of file JointLimitConstraint.cpp.
|
protectedvirtual |
Update the vector for the full formalism.
It calls computeFullb(const Eigen::VectorXd&, const Eigen::VectorXd&, Eigen::VectorXd&) const.
Reimplemented from ocra::LinearFunction.
Definition at line 327 of file JointLimitConstraint.cpp.