![]() |
Implementation of the conjugate projected gradient algorithm.TODO: description of the CPG solver TODO: capabilities of the CPG solver (which LCP problems, etc) TODO: known issues of the CPG solver. More...
#include <CPG.h>
Inherits blaze::Solver.
Public Member Functions | |
Constructors | |
CPG () | |
The default constructor for the CPG class. | |
Utility functions | |
template<typename CP > | |
bool | solve (CP &cp) |
TODO. | |
Get functions | |
size_t | getMaxIterations () const |
Returns the maximum number of iterations the solver may spend solving the problem. | |
size_t | getLastIterations () const |
Returns the number of iterations spent in the last solution process. | |
real | getLastPrecision () const |
Returns the precision of the solution after the solution process. | |
real | getThreshold () const |
Returns the threshold that classifies a solution as good enough. | |
Set functions | |
void | setMaxIterations (size_t maxIterations) |
Sets the maximum number of iterations the solver may spend solving the problem. | |
void | setThreshold (real threshold) |
Sets the threshold which classifies a solution as good enough. | |
Protected Attributes | |
Member variables | |
size_t | maxIterations_ |
The maximum number of iterations. | |
size_t | lastIterations_ |
The number of iterations spent in the last solution process. | |
real | lastPrecision_ |
The precision of the solution after the solution process. | |
real | threshold_ |
Precision threshold for the solution. | |
Private Attributes | |
Member variables | |
VecN | r_ |
TODO. | |
VecN | w_ |
TODO. | |
VecN | p_ |
TODO. | |
DynamicVector< int > | activity_ |
TODO. | |
Implementation of the conjugate projected gradient algorithm.
TODO: description of the CPG solver TODO: capabilities of the CPG solver (which LCP problems, etc) TODO: known issues of the CPG solver.
|
inlineinherited |
Returns the number of iterations spent in the last solution process.
|
inlineinherited |
Returns the precision of the solution after the solution process.
The solver is not enforced to compute the precision after the solution. Instead it can just report infinity as the last precision.
|
inlineinherited |
Returns the maximum number of iterations the solver may spend solving the problem.
|
inlineinherited |
Returns the threshold that classifies a solution as good enough.
|
inlineinherited |
Sets the maximum number of iterations the solver may spend solving the problem.
maxIterations | The maximum number of iterations spent in the solver. |
|
inlineinherited |
Sets the threshold which classifies a solution as good enough.
threshold | The threshold for the solution quality. |
bool blaze::CPG::solve | ( | CP & | cp | ) |
TODO.
cp | TODO |
TODO
|
protectedinherited |
The maximum number of iterations.
This is the maximum number of iterations the solver will spend for solving the given problem.