humoto
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
humoto::constraints::ConstraintsBase Class Referenceabstract

Detailed Description

Constraints abstract interface class.

Definition at line 376 of file constraints_base.h.

#include <constraints_base.h>

Inheritance diagram for humoto::constraints::ConstraintsBase:
Inheritance graph

Public Member Functions

virtual void addATAandATb (Eigen::MatrixXd &H, Eigen::VectorXd &g) const
 Compute 'A^T * A' for general equality constaints and save or add the result to H. Compute 'A^T * b' for general equality constaints and save or add the result to g. More...
 
virtual void checkConsistency () const =0
 Check consistency of the constraints. More...
 
virtual void computeViolations (ViolationsConstraints &violations, const Location &location, const Solution &solution) const =0
 Compute violations given a solution vector. More...
 
virtual void copyBodyTo (Eigen::MatrixXd &A, const Location &location) const =0
 Copy body to the given matrix. More...
 
virtual void copyBoundsTo (Eigen::VectorXd &lb, Eigen::VectorXd &ub, const Location &location) const =0
 Copy bounds to given vectors. More...
 
virtual void copyNegativeBodyTo (Eigen::MatrixXd &A, const Location &location) const =0
 Copy negated body to the given matrix. More...
 
virtual std::size_t copyTo (ContainerILU &container, const std::size_t constraints_offset) const
 Set constraints. More...
 
virtual std::size_t copyTo (ContainerAL &container, const std::size_t constraints_offset) const
 Copy constraints to a container. More...
 
virtual std::size_t copyTo (ContainerAB &container, const std::size_t constraints_offset) const
 Copy constraints to a container. More...
 
virtual std::size_t copyTo (ContainerALU &container, const std::size_t constraints_offset) const
 Copy constraints to a container. More...
 
virtual void determineActiveSet (ActiveSetConstraints &active_set, const Location &location, const Solution &solution) const =0
 Determine active set given a solution vector. More...
 
virtual void getATAandATb (Eigen::MatrixXd &H, Eigen::VectorXd &g) const
 Compute 'A^T * A' for general equality constaints and save or add the result to H. Compute 'A^T * b' for general equality constaints and save or add the result to g. More...
 
Location getCopyLocation (const std::size_t number_of_constraints, const std::size_t constraints_offset, const std::size_t number_of_variables) const
 Computes location of the copied constraints in a container and verifies their consistency. More...
 
virtual std::size_t getNumberOfConstraints () const =0
 Returns number of constraints in the task. More...
 
std::size_t getNumberOfVariables () const
 Returns number of variables in the task. More...
 
virtual ConstraintType::Type getType () const =0
 Returns type of the constraints. More...
 
bool isEquality () const
 Check properties of the constriaints. More...
 
bool isSimple () const
 Check properties of the constriaints. More...
 
bool isTwoSidedInequality () const
 Check properties of the constriaints. More...
 
void log (humoto::Logger &logger, const LogEntryName &parent=LogEntryName(), const std::string &name="constraints") const
 Log data. More...
 

Protected Member Functions

 ConstraintsBase ()
 
 ~ConstraintsBase ()
 Protected destructor: prevent destruction of the child classes through a base pointer. More...
 
virtual void logBody (humoto::Logger &logger, const LogEntryName &parent=LogEntryName(), const std::string &name="constraints") const =0
 Log body. More...
 
virtual void logBounds (humoto::Logger &logger, const LogEntryName &parent=LogEntryName(), const std::string &name="constraints") const =0
 Log bounds. More...
 
void reset (const std::size_t number_of_constraints=0, const std::size_t number_of_variables=0, const bool initialize_matrices=false)
 Initialize constraints. More...
 
virtual void resetBody (const std::size_t number_of_constraints=0, const bool initialize_matrices=false)=0
 Reset body of constraints (matrix A or I) More...
 
virtual void resetBounds (const std::size_t number_of_constraints=0, const bool initialize_matrices=false)=0
 Reset bounds of constraints (b, lb, ub) More...
 
void setNumberOfVariables (const std::size_t number_of_variables)
 Set number of variables. More...
 

Protected Attributes

std::size_t number_of_variables_
 

Constructor & Destructor Documentation

◆ ~ConstraintsBase()

humoto::constraints::ConstraintsBase::~ConstraintsBase ( )
inlineprotected

Protected destructor: prevent destruction of the child classes through a base pointer.

Definition at line 383 of file constraints_base.h.

◆ ConstraintsBase()

humoto::constraints::ConstraintsBase::ConstraintsBase ( )
inlineprotected

Definition at line 386 of file constraints_base.h.

Member Function Documentation

◆ addATAandATb()

virtual void humoto::constraints::ConstraintsBase::addATAandATb ( Eigen::MatrixXd &  H,
Eigen::VectorXd &  g 
) const
inlinevirtual

Compute 'A^T * A' for general equality constaints and save or add the result to H. Compute 'A^T * b' for general equality constaints and save or add the result to g.

Parameters
[in,out]Hleft lower triangular part of the result.
[in,out]gresult
Attention
Only the left lower triangular part of H is formed. Apply appropriate conversion with etools::convertLLTtoSymmetric() before using H.

Reimplemented in humoto::constraints::ConstraintsIB0< TaskBase >, humoto::constraints::ConstraintsIB< TaskBase >, humoto::constraints::ConstraintsGIB0< TaskBase >, humoto::constraints::ConstraintsGIB< TaskBase >, humoto::constraints::ConstraintsASB0< TaskBase >, humoto::constraints::ConstraintsASB< TaskBase >, humoto::constraints::ConstraintsAB0< TaskBase >, and humoto::constraints::ConstraintsAB< TaskBase >.

Definition at line 443 of file constraints_base.h.

◆ checkConsistency()

virtual void humoto::constraints::ConstraintsBase::checkConsistency ( ) const
pure virtual

◆ computeViolations()

virtual void humoto::constraints::ConstraintsBase::computeViolations ( ViolationsConstraints violations,
const Location location,
const Solution solution 
) const
pure virtual

Compute violations given a solution vector.

Parameters
[in,out]violationsviolations
[in]locationlocation of the constraints in the active set
[in]solutionsolution vector

Implemented in humoto::constraints::ViolationsComputationB0Mixin< ActiveSetDeterminationBMixin< BodyIMixin< BoundsB0Mixin< TaskBase > > > >, humoto::constraints::ViolationsComputationB0Mixin< ActiveSetDeterminationBMixin< BodyGIMixin< BoundsB0Mixin< TaskBase > > > >, humoto::constraints::ViolationsComputationB0Mixin< ActiveSetDeterminationBMixin< BodyAMixin< BoundsB0Mixin< TaskBase > > > >, humoto::constraints::ViolationsComputationB0Mixin< ActiveSetDeterminationBMixin< BodyASMixin< BoundsB0Mixin< TaskBase > > > >, humoto::constraints::ViolationsComputationBMixin< ActiveSetDeterminationBMixin< BodyAMixin< BoundsBMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationBMixin< ActiveSetDeterminationBMixin< BodyASMixin< BoundsBMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationBMixin< ActiveSetDeterminationBMixin< BodyIMixin< BoundsBMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationBMixin< ActiveSetDeterminationBMixin< BodyGIMixin< BoundsBMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyIMixin< BoundsUMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyASMixin< BoundsUMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyGIMixin< BoundsUMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyAMixin< BoundsUMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyIMixin< BoundsLMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyASMixin< BoundsLMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyAMixin< BoundsLMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyGIMixin< BoundsLMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyIMixin< BoundsLUMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyASMixin< BoundsLUMixin< TaskBase > > > >, humoto::constraints::ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyAMixin< BoundsLUMixin< TaskBase > > > >, and humoto::constraints::ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyGIMixin< BoundsLUMixin< TaskBase > > > >.

◆ copyBodyTo()

virtual void humoto::constraints::ConstraintsBase::copyBodyTo ( Eigen::MatrixXd &  A,
const Location location 
) const
pure virtual

◆ copyBoundsTo()

virtual void humoto::constraints::ConstraintsBase::copyBoundsTo ( Eigen::VectorXd &  lb,
Eigen::VectorXd &  ub,
const Location location 
) const
pure virtual

◆ copyNegativeBodyTo()

virtual void humoto::constraints::ConstraintsBase::copyNegativeBodyTo ( Eigen::MatrixXd &  A,
const Location location 
) const
pure virtual

◆ copyTo() [1/4]

virtual std::size_t humoto::constraints::ConstraintsBase::copyTo ( ContainerILU container,
const std::size_t  constraints_offset 
) const
inlinevirtual

◆ copyTo() [2/4]

virtual std::size_t humoto::constraints::ConstraintsBase::copyTo ( ContainerAL container,
const std::size_t  constraints_offset 
) const
inlinevirtual

Copy constraints to a container.

Parameters
[in,out]container
[in]constraints_offsetfirst row offset
Returns
offset of the end of added constraints

Reimplemented in humoto::constraints::CopyTwoSidedInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyASMixin< BoundsLUMixin< TaskBase > > > > > >, humoto::constraints::CopyTwoSidedInequalityToALMixin< CopyAnyToALUMixin< CopySimpleToILUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyIMixin< BoundsLUMixin< TaskBase > > > > > > >, humoto::constraints::CopyTwoSidedInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyGIMixin< BoundsLUMixin< TaskBase > > > > > >, humoto::constraints::CopyTwoSidedInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyAMixin< BoundsLUMixin< TaskBase > > > > > >, humoto::constraints::CopyUpperInequalityToALMixin< CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyGIMixin< BoundsLUMixin< TaskBase > > > > > > >, humoto::constraints::CopyUpperInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyAMixin< BoundsUMixin< TaskBase > > > > > >, humoto::constraints::CopyUpperInequalityToALMixin< CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyASMixin< BoundsLUMixin< TaskBase > > > > > > >, humoto::constraints::CopyUpperInequalityToALMixin< CopyLowerInequalityToALMixin< CopyAnyToALUMixin< CopySimpleToILUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyIMixin< BoundsLUMixin< TaskBase > > > > > > > >, humoto::constraints::CopyUpperInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyASMixin< BoundsUMixin< TaskBase > > > > > >, humoto::constraints::CopyUpperInequalityToALMixin< CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyAMixin< BoundsLUMixin< TaskBase > > > > > > >, humoto::constraints::CopyUpperInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyGIMixin< BoundsUMixin< TaskBase > > > > > >, humoto::constraints::CopyUpperInequalityToALMixin< CopyAnyToALUMixin< CopySimpleToILUMixin< ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyIMixin< BoundsUMixin< TaskBase > > > > > > >, humoto::constraints::CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyAMixin< BoundsLMixin< TaskBase > > > > > >, humoto::constraints::CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyASMixin< BoundsLUMixin< TaskBase > > > > > >, humoto::constraints::CopyLowerInequalityToALMixin< CopyAnyToALUMixin< CopySimpleToILUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyIMixin< BoundsLUMixin< TaskBase > > > > > > >, humoto::constraints::CopyLowerInequalityToALMixin< CopyAnyToALUMixin< CopySimpleToILUMixin< ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyIMixin< BoundsLMixin< TaskBase > > > > > > >, humoto::constraints::CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyASMixin< BoundsLMixin< TaskBase > > > > > >, humoto::constraints::CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyGIMixin< BoundsLUMixin< TaskBase > > > > > >, humoto::constraints::CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyGIMixin< BoundsLMixin< TaskBase > > > > > >, and humoto::constraints::CopyLowerInequalityToALMixin< CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyAMixin< BoundsLUMixin< TaskBase > > > > > >.

Definition at line 472 of file constraints_base.h.

◆ copyTo() [3/4]

virtual std::size_t humoto::constraints::ConstraintsBase::copyTo ( ContainerAB container,
const std::size_t  constraints_offset 
) const
inlinevirtual

◆ copyTo() [4/4]

virtual std::size_t humoto::constraints::ConstraintsBase::copyTo ( ContainerALU container,
const std::size_t  constraints_offset 
) const
inlinevirtual

Copy constraints to a container.

Parameters
[in,out]container
[in]constraints_offsetfirst row offset
Returns
offset of the end of added constraints

Reimplemented in humoto::constraints::CopyAnyToALUMixin< ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyASMixin< BoundsUMixin< TaskBase > > > > >, humoto::constraints::CopyAnyToALUMixin< CopyEqualityToABMixin< ViolationsComputationBMixin< ActiveSetDeterminationBMixin< BodyASMixin< BoundsBMixin< TaskBase > > > > > >, humoto::constraints::CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyAMixin< BoundsLUMixin< TaskBase > > > > >, humoto::constraints::CopyAnyToALUMixin< CopyEqualityToABMixin< ViolationsComputationBMixin< ActiveSetDeterminationBMixin< BodyAMixin< BoundsBMixin< TaskBase > > > > > >, humoto::constraints::CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyGIMixin< BoundsLUMixin< TaskBase > > > > >, humoto::constraints::CopyAnyToALUMixin< ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyGIMixin< BoundsUMixin< TaskBase > > > > >, humoto::constraints::CopyAnyToALUMixin< ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyAMixin< BoundsLMixin< TaskBase > > > > >, humoto::constraints::CopyAnyToALUMixin< CopySimpleToILUMixin< ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyIMixin< BoundsUMixin< TaskBase > > > > > >, humoto::constraints::CopyAnyToALUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyASMixin< BoundsLUMixin< TaskBase > > > > >, humoto::constraints::CopyAnyToALUMixin< CopyEqualityToABMixin< ViolationsComputationB0Mixin< ActiveSetDeterminationBMixin< BodyAMixin< BoundsB0Mixin< TaskBase > > > > > >, humoto::constraints::CopyAnyToALUMixin< ViolationsComputationUMixin< ActiveSetDeterminationUMixin< BodyAMixin< BoundsUMixin< TaskBase > > > > >, humoto::constraints::CopyAnyToALUMixin< CopySimpleToILUMixin< ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyIMixin< BoundsLMixin< TaskBase > > > > > >, humoto::constraints::CopyAnyToALUMixin< CopySimpleToILUMixin< CopyEqualityToABMixin< ViolationsComputationBMixin< ActiveSetDeterminationBMixin< BodyIMixin< BoundsBMixin< TaskBase > > > > > > >, humoto::constraints::CopyAnyToALUMixin< CopyEqualityToABMixin< ViolationsComputationB0Mixin< ActiveSetDeterminationBMixin< BodyGIMixin< BoundsB0Mixin< TaskBase > > > > > >, humoto::constraints::CopyAnyToALUMixin< ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyASMixin< BoundsLMixin< TaskBase > > > > >, humoto::constraints::CopyAnyToALUMixin< CopySimpleToILUMixin< ViolationsComputationLUMixin< ActiveSetDeterminationLUMixin< BodyIMixin< BoundsLUMixin< TaskBase > > > > > >, humoto::constraints::CopyAnyToALUMixin< CopySimpleToILUMixin< CopyEqualityToABMixin< ViolationsComputationB0Mixin< ActiveSetDeterminationBMixin< BodyIMixin< BoundsB0Mixin< TaskBase > > > > > > >, humoto::constraints::CopyAnyToALUMixin< CopyEqualityToABMixin< ViolationsComputationBMixin< ActiveSetDeterminationBMixin< BodyGIMixin< BoundsBMixin< TaskBase > > > > > >, humoto::constraints::CopyAnyToALUMixin< CopyEqualityToABMixin< ViolationsComputationB0Mixin< ActiveSetDeterminationBMixin< BodyASMixin< BoundsB0Mixin< TaskBase > > > > > >, and humoto::constraints::CopyAnyToALUMixin< ViolationsComputationLMixin< ActiveSetDeterminationLMixin< BodyGIMixin< BoundsLMixin< TaskBase > > > > >.

Definition at line 502 of file constraints_base.h.

◆ determineActiveSet()

virtual void humoto::constraints::ConstraintsBase::determineActiveSet ( ActiveSetConstraints active_set,
const Location location,
const Solution solution 
) const
pure virtual

Determine active set given a solution vector.

Parameters
[in,out]active_setactive set
[in]locationlocation of the constraints in the active set
[in]solutionsolution vector

Implemented in humoto::constraints::ActiveSetDeterminationBMixin< BodyAMixin< BoundsBMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationBMixin< BodyAMixin< BoundsB0Mixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationBMixin< BodyGIMixin< BoundsB0Mixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationBMixin< BodyIMixin< BoundsBMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationBMixin< BodyASMixin< BoundsB0Mixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationBMixin< BodyIMixin< BoundsB0Mixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationBMixin< BodyASMixin< BoundsBMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationBMixin< BodyGIMixin< BoundsBMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationUMixin< BodyASMixin< BoundsUMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationUMixin< BodyGIMixin< BoundsUMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationUMixin< BodyIMixin< BoundsUMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationUMixin< BodyAMixin< BoundsUMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationLMixin< BodyIMixin< BoundsLMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationLMixin< BodyASMixin< BoundsLMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationLMixin< BodyGIMixin< BoundsLMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationLMixin< BodyAMixin< BoundsLMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationLUMixin< BodyIMixin< BoundsLUMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationLUMixin< BodyGIMixin< BoundsLUMixin< TaskBase > > >, humoto::constraints::ActiveSetDeterminationLUMixin< BodyAMixin< BoundsLUMixin< TaskBase > > >, and humoto::constraints::ActiveSetDeterminationLUMixin< BodyASMixin< BoundsLUMixin< TaskBase > > >.

◆ getATAandATb()

virtual void humoto::constraints::ConstraintsBase::getATAandATb ( Eigen::MatrixXd &  H,
Eigen::VectorXd &  g 
) const
inlinevirtual

Compute 'A^T * A' for general equality constaints and save or add the result to H. Compute 'A^T * b' for general equality constaints and save or add the result to g.

Parameters
[in,out]Hleft lower triangular part of the result.
[in,out]gresult
Attention
Only the left lower triangular part of H is formed. Apply appropriate conversion with etools::convertLLTtoSymmetric() before using H.

Reimplemented in humoto::constraints::ConstraintsIB0< TaskBase >, humoto::constraints::ConstraintsIB< TaskBase >, humoto::constraints::ConstraintsGIB0< TaskBase >, humoto::constraints::ConstraintsGIB< TaskBase >, humoto::constraints::ConstraintsASB0< TaskBase >, humoto::constraints::ConstraintsASB< TaskBase >, humoto::constraints::ConstraintsAB0< TaskBase >, and humoto::constraints::ConstraintsAB< TaskBase >.

Definition at line 436 of file constraints_base.h.

◆ getCopyLocation()

Location humoto::constraints::ContainerBase::getCopyLocation ( const std::size_t  number_of_constraints,
const std::size_t  constraints_offset,
const std::size_t  number_of_variables 
) const
inlineinherited

Computes location of the copied constraints in a container and verifies their consistency.

Parameters
[in]number_of_constraintsnumber of added constraints
[in]constraints_offsetoffset in the container
[in]number_of_variablesnumber of variables in the container
Returns
Location

Definition at line 262 of file constraints_base.h.

◆ getNumberOfConstraints()

virtual std::size_t humoto::constraints::ContainerBase::getNumberOfConstraints ( ) const
pure virtualinherited

◆ getNumberOfVariables()

std::size_t humoto::constraints::ContainerBase::getNumberOfVariables ( ) const
inlineinherited

Returns number of variables in the task.

Returns
number of variables

Definition at line 215 of file constraints_base.h.

◆ getType()

virtual ConstraintType::Type humoto::constraints::ConstraintsBase::getType ( ) const
pure virtual

◆ isEquality()

bool humoto::constraints::ConstraintsBase::isEquality ( ) const
inline

Check properties of the constriaints.

Returns
true/false

Definition at line 523 of file constraints_base.h.

◆ isSimple()

bool humoto::constraints::ConstraintsBase::isSimple ( ) const
inline

Check properties of the constriaints.

Returns
true/false

Definition at line 529 of file constraints_base.h.

◆ isTwoSidedInequality()

bool humoto::constraints::ConstraintsBase::isTwoSidedInequality ( ) const
inline

Check properties of the constriaints.

Returns
true/false

Definition at line 535 of file constraints_base.h.

◆ log()

void humoto::constraints::ContainerBase::log ( humoto::Logger logger,
const LogEntryName parent = LogEntryName(),
const std::string &  name = "constraints" 
) const
inlineinherited

Log data.

Parameters
[in,out]loggerlogger
[in]parentparent
[in]namename

Definition at line 238 of file constraints_base.h.

◆ logBody()

virtual void humoto::constraints::ContainerBase::logBody ( humoto::Logger logger,
const LogEntryName parent = LogEntryName(),
const std::string &  name = "constraints" 
) const
protectedpure virtualinherited

Log body.

Parameters
[in,out]loggerlogger
[in]parentparent
[in]namename

Implemented in humoto::constraints::BodyGIMixin< BoundsBMixin< TaskBase > >, humoto::constraints::BodyGIMixin< BoundsB0Mixin< TaskBase > >, humoto::constraints::BodyGIMixin< BoundsLUMixin< TaskBase > >, humoto::constraints::BodyGIMixin< BoundsLMixin< TaskBase > >, humoto::constraints::BodyGIMixin< BoundsUMixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsBMixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsB0Mixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsLUMixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsLUMixin< ContainerBase > >, humoto::constraints::BodyIMixin< BoundsLMixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsUMixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsBMixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsB0Mixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsLUMixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsLMixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsUMixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsBMixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsB0Mixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsLUMixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsLMixin< ContainerBase > >, humoto::constraints::BodyAMixin< BoundsLUMixin< ContainerBase > >, humoto::constraints::BodyAMixin< BoundsLMixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsUMixin< TaskBase > >, and humoto::constraints::BodyAMixin< BoundsBMixin< ContainerBase > >.

◆ logBounds()

virtual void humoto::constraints::ContainerBase::logBounds ( humoto::Logger logger,
const LogEntryName parent = LogEntryName(),
const std::string &  name = "constraints" 
) const
protectedpure virtualinherited

◆ reset()

void humoto::constraints::ContainerBase::reset ( const std::size_t  number_of_constraints = 0,
const std::size_t  number_of_variables = 0,
const bool  initialize_matrices = false 
)
inlineprotectedinherited

Initialize constraints.

Parameters
[in]number_of_constraintsnumber of constraints
[in]number_of_variablesnumber of variables
[in]initialize_matricesinitialize matrices using defaults

Definition at line 175 of file constraints_base.h.

◆ resetBody()

virtual void humoto::constraints::ContainerBase::resetBody ( const std::size_t  number_of_constraints = 0,
const bool  initialize_matrices = false 
)
protectedpure virtualinherited

Reset body of constraints (matrix A or I)

Parameters
[in]number_of_constraintsnumber of constraints
[in]initialize_matricesinitialize matrices using defaults

Implemented in humoto::constraints::BodyGIMixin< BoundsBMixin< TaskBase > >, humoto::constraints::BodyGIMixin< BoundsB0Mixin< TaskBase > >, humoto::constraints::BodyGIMixin< BoundsLUMixin< TaskBase > >, humoto::constraints::BodyGIMixin< BoundsLMixin< TaskBase > >, humoto::constraints::BodyGIMixin< BoundsUMixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsBMixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsB0Mixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsLUMixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsLUMixin< ContainerBase > >, humoto::constraints::BodyIMixin< BoundsLMixin< TaskBase > >, humoto::constraints::BodyIMixin< BoundsUMixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsBMixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsB0Mixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsLUMixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsLMixin< TaskBase > >, humoto::constraints::BodyASMixin< BoundsUMixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsBMixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsB0Mixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsLUMixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsLMixin< ContainerBase > >, humoto::constraints::BodyAMixin< BoundsLUMixin< ContainerBase > >, humoto::constraints::BodyAMixin< BoundsLMixin< TaskBase > >, humoto::constraints::BodyAMixin< BoundsUMixin< TaskBase > >, and humoto::constraints::BodyAMixin< BoundsBMixin< ContainerBase > >.

◆ resetBounds()

virtual void humoto::constraints::ContainerBase::resetBounds ( const std::size_t  number_of_constraints = 0,
const bool  initialize_matrices = false 
)
protectedpure virtualinherited

◆ setNumberOfVariables()

void humoto::constraints::ContainerBase::setNumberOfVariables ( const std::size_t  number_of_variables)
inlineprotectedinherited

Set number of variables.

Parameters
[in]number_of_variablesnumber of variables

Definition at line 142 of file constraints_base.h.

Member Data Documentation

◆ number_of_variables_

std::size_t humoto::constraints::ContainerBase::number_of_variables_
protectedinherited

Definition at line 120 of file constraints_base.h.


The documentation for this class was generated from the following file: