template<typename t_Scalar, int t_primal_size, int t_has_bounds, int t_general_ctr_number>
class qpmad::SolverBase< t_Scalar, t_primal_size, t_has_bounds, t_general_ctr_number >
Definition at line 32 of file implementation.h.
|
| SolverBase () |
|
SolverParameters::HessianType | getHessianType () const |
| Returns type of the Hessian produced by the latest execution of solve() . More...
|
|
std::ptrdiff_t | getNumberOfInequalityIterations () const |
| Returns number of inequality iterations during the latest execution of solve() . More...
|
|
template<int t_status_size, int t_dual_size, int t_index_size> |
void | getInequalityDual (Vector< t_dual_size > &dual, Eigen::Matrix< MatrixIndex, t_index_size, 1 > &indices, Eigen::Matrix< bool, t_status_size, 1 > &is_lower) const |
| Returns dual variables (Lagrange multipliers) corresponding to inequality constraints. Must be called after successful solve() , the result is undefined if previous call to solve() failed. More...
|
|
void | reserve (const MatrixIndex primal_size, const MatrixIndex num_simple_bounds, const MatrixIndex num_general_constraints) |
|
|
void | reserveMachinery (const MatrixIndex primal_size, const MatrixIndex num_general_constraints) |
|
void | reserveDual (const MatrixIndex primal_size) |
|
template<class t_MatrixType > |
void | initializeMachineryLazy (t_MatrixType &H, const bool return_inverted_cholesky_factor) |
|
template<class t_Primal , class t_LowerBounds , class t_UpperBounds , class t_Constraints , class t_ConstraintsLowerBounds , class t_ConstraintsUpperBounds > |
void | chooseConstraint (const t_Primal &primal, const t_LowerBounds &lb, const t_UpperBounds &ub, const t_Constraints &A, const t_ConstraintsLowerBounds &Alb, const t_ConstraintsUpperBounds &Aub, const double tolerance) |
|
void | checkConstraintViolation (const MatrixIndex i, const double lb_i, const double ub_i, const double ctr_i_dot_primal) |
|
template<class t_VectorType , class t_MatrixType > |
double | getConstraintDotPrimalStepDirection (const t_VectorType &primal_step_direction, const t_MatrixType &A) const |
|
template<class t_primal > |
void | setZero (t_primal &primal) |
|
void | setZero (VectorRef primal) |
|
template<typename t_Scalar , int t_primal_size, int t_has_bounds, int t_general_ctr_number>
template<class t_Primal , class t_LowerBounds , class t_UpperBounds , class t_Constraints , class t_ConstraintsLowerBounds , class t_ConstraintsUpperBounds >
void qpmad::SolverBase< t_Scalar, t_primal_size, t_has_bounds, t_general_ctr_number >::chooseConstraint |
( |
const t_Primal & |
primal, |
|
|
const t_LowerBounds & |
lb, |
|
|
const t_UpperBounds & |
ub, |
|
|
const t_Constraints & |
A, |
|
|
const t_ConstraintsLowerBounds & |
Alb, |
|
|
const t_ConstraintsUpperBounds & |
Aub, |
|
|
const double |
tolerance |
|
) |
| |
|
inlineprivate |
template<typename t_Scalar , int t_primal_size, int t_has_bounds, int t_general_ctr_number>
template<int t_status_size, int t_dual_size, int t_index_size>
void qpmad::SolverBase< t_Scalar, t_primal_size, t_has_bounds, t_general_ctr_number >::getInequalityDual |
( |
Vector< t_dual_size > & |
dual, |
|
|
Eigen::Matrix< MatrixIndex, t_index_size, 1 > & |
indices, |
|
|
Eigen::Matrix< bool, t_status_size, 1 > & |
is_lower |
|
) |
| const |
|
inline |
Returns dual variables (Lagrange multipliers) corresponding to inequality constraints. Must be called after successful solve()
, the result is undefined if previous call to solve()
failed.
- Template Parameters
-
t_status_size | |
t_dual_size | |
t_index_size | |
- Parameters
-
[out] | dual | dual variables |
[out] | indices | constraint indices corresponding to the dual variables, index 0 corresponds to the first simple bound if present or to the first general constraint otherwise |
[out] | is_lower | flags indicating if lower or upper bound is active |
Definition at line 141 of file implementation.h.
template<typename t_Scalar , int t_primal_size, int t_has_bounds, int t_general_ctr_number>
template<class t_primal , class t_H , class t_h , class t_lb , class t_ub , class t_A , class t_Alb , class t_Aub >
ReturnStatus qpmad::SolverBase< t_Scalar, t_primal_size, t_has_bounds, t_general_ctr_number >::solveGeneric |
( |
t_primal & |
primal, |
|
|
t_H & |
H, |
|
|
const t_h & |
h, |
|
|
const t_lb & |
lb, |
|
|
const t_ub & |
ub, |
|
|
const t_A & |
A, |
|
|
const t_Alb & |
Alb, |
|
|
const t_Aub & |
Aub, |
|
|
const SolverParameters & |
param |
|
) |
| |
|
inlineprotected |