ocra-recipes
Doxygen documentation for the ocra-recipes repository
|
BoundFunction class. More...
#include <BoundFunction.h>
Public Types | |
typedef DiagonalLinearFunction | functionType_t |
Public Types inherited from ocra::DiagonalLinearFunction | |
typedef LinearFunction | functionType_t |
Public Types inherited from ocra::LinearFunction | |
typedef Function | functionType_t |
Public Member Functions | |
void | changeIthBound (const int i, const double bound) |
BoundFunction (Variable &x, const VectorXd &bound, eBoundType type) | |
BoundFunction (Variable &x, const double bound, eBoundType type) | |
void | changeBounds (const double bound) |
void | changeBounds (const VectorXd &bounds) |
Public Member Functions inherited from ocra::DiagonalLinearFunction | |
void | changeDiagonal (const VectorXd &d) |
void | changeDiagonal (const double diagonalElementValue, const bool changeDefault=true) |
void | changeDefaultDiagonalValue (const double v) |
void | changeDefaultbValue (const double v) |
template<class VectorBase1 , class VectorBase2 > | |
DiagonalLinearFunction (Variable &x, const VectorBase1 &d, const VectorBase2 &b, const bool useDefaultValue=false, const double defaultDiagValue=1., const double defaultbValue=0.) | |
template<class VectorBase > | |
DiagonalLinearFunction (Variable &x, const double diagonalElementValue, const VectorBase &b, const bool useDefaultValue=false, const double defaultbValue=0.) | |
template<class VectorBase > | |
DiagonalLinearFunction (Variable &x, const VectorBase &d, const double vectorElementValue, const bool useDefaultValue=false, const double defaultDiagValue=1.) | |
DiagonalLinearFunction (Variable &x, const double diagonalElementValue, const double vectorElementValue, const bool useDefaultValue=false) | |
const VectorXd & | getDiagonal () const |
double | getDefaultDiagonalValue () const |
double | getDefaultbValue () const |
bool | isUsingDefaultValue () const |
Public Member Functions inherited from ocra::LinearFunction | |
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) |
Public Member Functions inherited from ocra::Function | |
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 |
Public Member Functions inherited from ocra::ObserverSubject | |
ObserverSubject () | |
virtual | ~ObserverSubject () |
Public Member Functions inherited from ocra::Observer | |
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 () |
Public Member Functions inherited from ocra::ObserverBase< EVT_RESIZE > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::Subject | |
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 |
Public Member Functions inherited from ocra::SubjectBase< EVT_RESIZE > | |
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 |
Public Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_DEPENDENCIES > | |
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 |
Public Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_VALUE > | |
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 |
Public Member Functions inherited from ocra::IFunctionProperties | |
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 |
Public Member Functions inherited from ocra::NamedInstance | |
NamedInstance (const std::string &name) | |
const std::string & | getName () const |
virtual | ~NamedInstance () |
Public Member Functions inherited from ocra::AbilitySet | |
AbilitySet & | add (eFunctionAbility prop) |
AbilitySet & | remove (eFunctionAbility prop) |
Protected Member Functions | |
void | doChangeDiagonal (const VectorXd &d) |
void | doChangeDiagonal (const double diagonalElementValue, const bool changeDefault=true) |
void | doChangeDefaultDiagonalValue (const double v) |
void | doChangeDefaultbValue (const double v) |
Protected Member Functions inherited from ocra::DiagonalLinearFunction | |
DiagonalLinearFunction (Variable &x) | |
virtual void | updateValue () const |
virtual void | doUpdateInputSizeBegin () |
virtual void | doUpdateInputSizeEnd () |
virtual void | doChangeA (const MatrixXd &A) |
int | computeDimensionFromInputSize () const |
void | doUpdateDimensionBegin (int newDimension) |
Protected Member Functions inherited from ocra::LinearFunction | |
LinearFunction (Variable &x, int dimension) | |
virtual void | updateb () const |
virtual void | updateJacobian () const |
virtual void | doChangeb (const VectorXd &b) |
void | inhibitPropagationFromb () const |
void | desinhibitPropagationFromb () const |
Protected Member Functions inherited from ocra::Function | |
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 void | doUpdateDimensionEnd (int oldDimension) |
Protected Member Functions inherited from ocra::ObserverBase< EVT_RESIZE > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_RESIZE > | |
SubjectBase () | |
~SubjectBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_DEPENDENCIES > | |
SubjectBase () | |
~SubjectBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_VALUE > | |
SubjectBase () | |
~SubjectBase () | |
Protected Member Functions inherited from ocra::IFunctionProperties | |
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) |
Protected Member Functions inherited from ocra::AbilitySet | |
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) | |
Protected Member Functions inherited from ocra::CoupledInputOutputSize | |
CoupledInputOutputSize (bool coupledInputOutputSize) | |
bool | inputAndOutputSizesAreCoupled () const |
Additional Inherited Members | |
Protected Types inherited from ocra::ObserverBase< EVT_RESIZE > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
Protected Types inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
Protected Types inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
Protected Attributes inherited from ocra::DiagonalLinearFunction | |
VectorXd | _d |
double | _defaultDiagonalValue |
double | _defaultbValue |
bool | _useDefaultValue |
Protected Attributes inherited from ocra::LinearFunction | |
VectorXd | _b |
bool | _bIsUpToDate |
Protected Attributes inherited from ocra::Function | |
Variable & | x |
VectorXd & | _value |
MatrixXd & | _jacobian |
const int & | _dim |
BoundFunction class.
Function to describe bound constraints or so that the constraint can be written Ax+b<=0
Definition at line 45 of file BoundFunction.h.
Definition at line 50 of file BoundFunction.h.
ocra::BoundFunction::BoundFunction | ( | Variable & | x, |
const VectorXd & | bound, | ||
eBoundType | type | ||
) |
Constructors
[in] | x | The variable on which to build the function. |
[in] | bound | A vector or a double used to build a constant vector, representing bounds on the variable |
[in] | the | type of the bound |
Definition at line 6 of file BoundFunction.cpp.
ocra::BoundFunction::BoundFunction | ( | Variable & | x, |
const double | bound, | ||
eBoundType | type | ||
) |
Definition at line 18 of file BoundFunction.cpp.
void ocra::BoundFunction::changeBounds | ( | const double | bound | ) |
Change all the bounds to the given value(s)
Definition at line 54 of file BoundFunction.cpp.
void ocra::BoundFunction::changeBounds | ( | const VectorXd & | bounds | ) |
Definition at line 63 of file BoundFunction.cpp.
void ocra::BoundFunction::changeIthBound | ( | const int | i, |
const double | bound | ||
) |
Change the ith bound to the given value
Definition at line 71 of file BoundFunction.cpp.
|
protectedvirtual |
Reimplemented from ocra::DiagonalLinearFunction.
Definition at line 48 of file BoundFunction.cpp.
|
protectedvirtual |
Reimplemented from ocra::DiagonalLinearFunction.
Definition at line 42 of file BoundFunction.cpp.
|
protectedvirtual |
Overloads of DiagonalLinearFunction methods. All throw a runtime_error: diagonal value are fixed for a BoundFunction and default value cannot be changed.
Reimplemented from ocra::DiagonalLinearFunction.
Definition at line 30 of file BoundFunction.cpp.
|
protectedvirtual |
Reimplemented from ocra::DiagonalLinearFunction.
Definition at line 36 of file BoundFunction.cpp.