All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
blaze::CG Class Reference

A conjugate gradient solver.TODO: description TODO: Problem formulation: $ A \cdot x + b = 0 $ !! More...

#include <CG.h>

Inherits blaze::Solver.

Public Member Functions

Constructors
 CG ()
 The default constructor for the conjugate gradient solver.
 
Solver functions
bool solve (LSE &lse)
 TODO. More...
 
bool solve (const CMatMxN &A, const VecN &b, VecN &x)
 TODO. More...
 
Get functions
size_t getMaxIterations () const
 Returns the maximum number of iterations the solver may spend solving the problem. More...
 
size_t getLastIterations () const
 Returns the number of iterations spent in the last solution process. More...
 
real getLastPrecision () const
 Returns the precision of the solution after the solution process. More...
 
real getThreshold () const
 Returns the threshold that classifies a solution as good enough. More...
 
Set functions
void setMaxIterations (size_t maxIterations)
 Sets the maximum number of iterations the solver may spend solving the problem. More...
 
void setThreshold (real threshold)
 Sets the threshold which classifies a solution as good enough. More...
 

Protected Attributes

Member variables
size_t maxIterations_
 The maximum number of iterations. More...
 
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 d_
 TODO.
 
VecN h_
 TODO.
 

Detailed Description

A conjugate gradient solver.

TODO: description TODO: Problem formulation: $ A \cdot x + b = 0 $ !!

Member Function Documentation

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
maxIterationsThe 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
thresholdThe threshold for the solution quality.
bool blaze::CG::solve ( LSE lse)
inline

TODO.

Parameters
lseTODO
Returns
TODO

TODO: description TODO: Problem formulation: $ A \cdot x + b = 0 $ !!

bool blaze::CG::solve ( const CMatMxN A,
const VecN b,
VecN x 
)

TODO.

Parameters
ATODO
bTODO
xTODO
Returns
void
Exceptions
std::invalid_argumentSystem matrix is not square.
std::invalid_argumentSystem matrix is not symmetric.
std::invalid_argumentInvalid right-hand side vector size.

TODO: description TODO: Problem formulation: $ A \cdot x + b = 0 $ !!

Member Data Documentation

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: