A projected Gauss-Seidel Solver for (box) LCPs.TODO: description of the PGS solver TODO: capabilities of the PGS solver (which LCP problems, etc) TODO: known issues of the PGS solver.
More...
#include <PGS.h>
Inherits blaze::Solver.
|
template<typename CP > |
bool | solve (CP &cp) |
| Solves the provided complementarity problem. More...
|
|
template<typename CP > |
real | sweep (CP &cp) const |
| TODO. More...
|
|
A projected Gauss-Seidel Solver for (box) LCPs.
TODO: description of the PGS solver TODO: capabilities of the PGS solver (which LCP problems, etc) TODO: known issues of the PGS solver.
size_t blaze::Solver::getLastIterations |
( |
| ) |
const |
|
inlineinherited |
Returns the number of iterations spent in the last solution process.
- Returns
- The number of iterations spent in the last solution process.
real blaze::Solver::getLastPrecision |
( |
| ) |
const |
|
inlineinherited |
Returns the precision of the solution after the solution process.
- 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.
size_t blaze::Solver::getMaxIterations |
( |
| ) |
const |
|
inlineinherited |
Returns the maximum number of iterations the solver may spend solving the problem.
- Returns
- The maximum number of iterations spent in the solver.
real blaze::Solver::getThreshold |
( |
| ) |
const |
|
inlineinherited |
Returns the threshold that classifies a solution as good enough.
- Returns
- The threshold for the solution quality.
void blaze::Solver::setMaxIterations |
( |
size_t |
maxIterations | ) |
|
|
inlineinherited |
Sets the maximum number of iterations the solver may spend solving the problem.
- Parameters
-
maxIterations | The maximum number of iterations spent in the solver. |
void blaze::Solver::setThreshold |
( |
real |
threshold | ) |
|
|
inlineinherited |
Sets the threshold which classifies a solution as good enough.
- Parameters
-
threshold | The threshold for the solution quality. |
template<typename CP >
bool blaze::PGS::solve |
( |
CP & |
cp | ) |
|
Solves the provided complementarity problem.
- Parameters
-
cp | The complementarity problem to solve. |
- Returns
- Returns true if the solution is sufficiently accurate, otherwise it returns false.
TODO
template<typename CP >
real blaze::PGS::sweep |
( |
CP & |
cp | ) |
const |
|
inlineprivate |
TODO.
- Parameters
-
cp | The complementarity problem to solve. |
- Returns
- TODO
TODO
TODO.
- Parameters
-
cp | The complementarity problem to solve. |
- Returns
- TODO
TODO: specialization for contact LCPs TODO: more infos
VecN blaze::PGS::diagonal_ |
|
private |
Vector for the diagonal entries of the LCP matrix.
For performance reasons, the vector contains the inverse of the diagonal elements.
size_t blaze::Solver::maxIterations_ |
|
protectedinherited |
The maximum number of iterations.
This is the maximum number of iterations the solver will spend for solving the given problem.
The documentation for this class was generated from the following files: