FLIQC_controller_core 1.0.2
|
A bridge class to the LCQPow library. More...
#include <LCQPow_bridge.hpp>
Classes | |
class | LCQPow_impl |
Implementation of the LCQPow_bridge class. More... | |
struct | LCQPow_impl_deleter |
The deleter for LCQPow_impl. More... | |
Public Member Functions | |
LCQPow_bridge () | |
Construct a new LCQPow_bridge object. | |
~LCQPow_bridge ()=default | |
Destroy the LCQPow_bridge object. | |
void | updateOptions (void) |
update the options for the solver. Call this when you change the option attributes. | |
void | runSolver (const LCQProblemInput &input, LCQProblemOutput &output) |
run the solver and get the result | |
LCQProblemDebug | getDebugStatistics (void) |
getDebugStatistics | |
Public Attributes | |
double | stationarityTolerance = 1.0e-3 |
Stationarity tolerance, tolerance for optimization. | |
double | complementarityTolerance = 1.0e-3 |
Complementarity tolerance, tolerance for complementarity vertical constraint. | |
double | initialPenaltyParameter = 0.01 |
Initial penalty parameter, initial penalty parameter for complementarity. | |
double | penaltyUpdateFactor = 2.0 |
Penalty update factor, factor for updating penaltised complementarity term. | |
int | nVariables |
Number of variables. | |
int | nConstraints |
Number of constraints. | |
int | nComplementarity |
Number of complementarity variables. | |
Protected Attributes | |
std::unique_ptr< LCQPow_impl, LCQPow_impl_deleter > | pimpl |
Pointer to the implementation. | |
A bridge class to the LCQPow library.
This class provides an interface to the LCQPow library for solving linear complementarity quadratic programming (LCQP) problems.
This class encapsulates the LCQPow implementation and provides methods to update options, run the solver, and retrieve debug statistics.
After initializing the LCQPow_bridge object, you can set several options and need to call updateOptions() before running the solver if you change some of the options.
Then you can call runSolver() with input to retrieve the output.
Definition at line 260 of file LCQPow_bridge.hpp.
FLIQC_controller_core::LCQPow_bridge::LCQPow_bridge | ( | ) |
Construct a new LCQPow_bridge object.
Definition at line 234 of file LCQPow_bridge.cpp.
LCQProblemDebug FLIQC_controller_core::LCQPow_bridge::getDebugStatistics | ( | void | ) |
getDebugStatistics
Definition at line 280 of file LCQPow_bridge.cpp.
void FLIQC_controller_core::LCQPow_bridge::runSolver | ( | const LCQProblemInput & | input, |
LCQProblemOutput & | output | ||
) |
run the solver and get the result
[in] | input | The input of the problem. |
[out] | output | The output of the problem. |
LCQPowException | If the solver fails to solve the problem, it will throw an exception. |
Definition at line 247 of file LCQPow_bridge.cpp.
void FLIQC_controller_core::LCQPow_bridge::updateOptions | ( | void | ) |
update the options for the solver. Call this when you change the option attributes.
Options that could be initialized one time and used in each run (which needs updateOptions): stationarityTolerance, complementarityTolerance, initialPenaltyParameter, penaltyUpdateFactor
Options that will be initialized in each run (Which doesn't need updateOptions): nVariables, nConstraints, nComplementarity
Definition at line 240 of file LCQPow_bridge.cpp.
double FLIQC_controller_core::LCQPow_bridge::complementarityTolerance = 1.0e-3 |
Complementarity tolerance, tolerance for complementarity vertical constraint.
Definition at line 306 of file LCQPow_bridge.hpp.
double FLIQC_controller_core::LCQPow_bridge::initialPenaltyParameter = 0.01 |
Initial penalty parameter, initial penalty parameter for complementarity.
Definition at line 307 of file LCQPow_bridge.hpp.
int FLIQC_controller_core::LCQPow_bridge::nComplementarity |
Number of complementarity variables.
Definition at line 311 of file LCQPow_bridge.hpp.
int FLIQC_controller_core::LCQPow_bridge::nConstraints |
Number of constraints.
Definition at line 310 of file LCQPow_bridge.hpp.
int FLIQC_controller_core::LCQPow_bridge::nVariables |
Number of variables.
Definition at line 309 of file LCQPow_bridge.hpp.
double FLIQC_controller_core::LCQPow_bridge::penaltyUpdateFactor = 2.0 |
Penalty update factor, factor for updating penaltised complementarity term.
Definition at line 308 of file LCQPow_bridge.hpp.
|
protected |
Pointer to the implementation.
Definition at line 280 of file LCQPow_bridge.hpp.
double FLIQC_controller_core::LCQPow_bridge::stationarityTolerance = 1.0e-3 |
Stationarity tolerance, tolerance for optimization.
Definition at line 305 of file LCQPow_bridge.hpp.