robotoc
robotoc - efficient ROBOT Optimal Control solvers
|
Functions | |
void | setSlackAndDualPositive (const double barrier_param, ConstraintComponentData &data) |
Sets the slack and dual variables positive. More... | |
void | computeComplementarySlackness (const double barrier_param, ConstraintComponentData &data) |
Computes the residual in the complementarity slackness between the slack and dual variables. More... | |
void | computeComplementarySlackness (const double barrier_param, ConstraintComponentData &data, const int start, const int size) |
Computes the residual in the complementarity slackness between the slack and dual variables. More... | |
template<int Size> | |
void | computeComplementarySlackness (const double barrier_param, ConstraintComponentData &data, const int start) |
Computes the residual in the complementarity slackness between the slack and dual variables. More... | |
double | computeComplementarySlackness (const double barrier_param, const double slack, const double dual) |
Computes the residual in the complementarity slackness between the slack and dual variables. More... | |
void | computeCondensingCoeffcient (ConstraintComponentData &data) |
Computes the coefficient of the condensing. More... | |
void | computeCondensingCoeffcient (ConstraintComponentData &data, const int start, const int size) |
Computes the coefficient of the condensing. More... | |
template<int Size> | |
void | computeCondensingCoeffcient (ConstraintComponentData &data, const int start) |
Computes the coefficient of the condensing. More... | |
double | computeCondensingCoeffcient (const double slack, const double dual, const double residual, const double cmpl) |
Computes the residual in the complementarity slackness between the slack and dual variables. More... | |
double | fractionToBoundarySlack (const double fraction_rate, const ConstraintComponentData &data) |
Applies the fraction-to-boundary-rule to the directions of the slack variables. More... | |
double | fractionToBoundaryDual (const double fraction_rate, const ConstraintComponentData &data) |
Applies the fraction-to-boundary-rule to the directions of the dual variables. More... | |
double | fractionToBoundary (const int dim, const double fraction_rate, const Eigen::VectorXd &vec, const Eigen::VectorXd &dvec) |
Applies the fraction-to-boundary-rule. More... | |
double | fractionToBoundary (const double fraction_rate, const double var, const double dvar) |
Applies the fraction-to-boundary-rule. More... | |
void | computeDualDirection (ConstraintComponentData &data) |
Computes the direction of the dual variable from slack, primal residual, complementary slackness, and the direction of the slack. More... | |
void | computeDualDirection (ConstraintComponentData &data, const int start, const int size) |
Computes the direction of the dual variable from slack, primal residual, complementary slackness, and the direction of the slack. More... | |
template<int Size> | |
void | computeDualDirection (ConstraintComponentData &data, const int start) |
Computes the direction of the dual variable from slack, primal residual, complementary slackness, and the direction of the slack. More... | |
double | computeDualDirection (const double slack, const double dual, const double dslack, const double cmpl) |
Computes the direction of the dual variable from slack, primal residual, complementary slackness, and the direction of the slack. More... | |
template<typename VectorType > | |
double | logBarrier (const double barrier_param, const Eigen::MatrixBase< VectorType > &vec) |
Computes the log barrier function. More... | |
|
inline |
Computes the residual in the complementarity slackness between
the slack and dual variables.
[in] | barrier_param | Barrier parameter. Must be positive. |
[in] | slack | An element of the slack variable. |
[in] | dual | An element of the dual variable. |
|
inline |
Computes the residual in the complementarity slackness between
the slack and dual variables.
[in] | barrier_param | Barrier parameter. Must be positive. |
[in,out] | data | Constraint component data. |
|
inline |
Computes the residual in the complementarity slackness between
the slack and dual variables.
[in] | barrier_param | Barrier parameter. Must be positive. |
[in,out] | data | Constraint data. |
[in] | start | Start position of the segment. |
Size | Size of the segment. |
|
inline |
Computes the residual in the complementarity slackness between
the slack and dual variables.
[in] | barrier_param | Barrier parameter. Must be positive. |
[in,out] | data | Constraint data. |
[in] | start | Start position of the segment. |
[in] | size | Size of the segment. |
|
inline |
Computes the residual in the complementarity slackness between
the slack and dual variables.
[in] | slack | An element of the slack variable. |
[in] | dual | An element of the dual variable. |
[in] | residual | An element of the primal residual. |
[in] | cmpl | An element of the complementarity slackness. |
|
inline |
Computes the coefficient of the condensing.
[in,out] | data | Constraint component data. |
|
inline |
Computes the coefficient of the condensing.
[in,out] | data | Constraint data. |
[in] | start | Start position of the segment. |
Size | Size of the segment. |
|
inline |
Computes the coefficient of the condensing.
[in,out] | data | Constraint data. |
[in] | start | Start position of the segment. |
[in] | size | Size of the segment. |
|
inline |
Computes the direction of the dual variable from slack, primal residual, complementary slackness, and the direction of the slack.
[in] | slack | The slack variable. |
[in] | dual | The dual variable. |
[in] | dslack | The direction of the slack variable. |
[in] | cmpl | The complementary slackness. |
|
inline |
Computes the direction of the dual variable from slack, primal residual, complementary slackness, and the direction of the slack.
[in,out] | data | Constraint component data. |
|
inline |
Computes the direction of the dual variable from slack, primal residual, complementary slackness, and the direction of the slack.
[in,out] | data | Constraint data. |
[in] | start | Start position of the segment. |
|
inline |
Computes the direction of the dual variable from slack, primal residual, complementary slackness, and the direction of the slack.
[in,out] | data | Constraint data. |
[in] | start | Start position of the segment. |
[in] | size | Size of the segment. |
|
inline |
Applies the fraction-to-boundary-rule.
[in] | fraction_rate | Must be larger than 0 and smaller than 1. Should be between 0.9 and 0.995. |
[in] | var | A variable. |
[in] | dvar | A direction the variable. |
|
inline |
Applies the fraction-to-boundary-rule.
[in] | dim | Dimension of vec and dvec. |
[in] | fraction_rate | Must be larger than 0 and smaller than 1. Should be between 0.9 and 0.995. |
[in] | vec | A vector. |
[in] | dvec | A direction vector of vec. |
|
inline |
Applies the fraction-to-boundary-rule to the directions of the dual variables.
[in] | fraction_rate | Must be larger than 0 and smaller than 1. Should be between 0.9 and 0.995. |
[in] | data | Constraint component data. |
|
inline |
Applies the fraction-to-boundary-rule to the directions of the slack variables.
[in] | fraction_rate | Must be larger than 0 and smaller than 1. Should be between 0.9 and 0.995. |
[in] | data | Constraint component data. |
|
inline |
Computes the log barrier function.
[in] | barrier_param | Barrier parameter. Must be positive. |
[in] | vec | Argument of the log function. All the components must be positive. |
|
inline |
Sets the slack and dual variables positive.
[in] | barrier_param | Barrier parameter. Must be positive. |
[in,out] | data | Constraint component data. |