SG++-Doxygen-Documentation
|
Linear system solver implementing the iterative BiCGStab method. More...
#include <BiCGStab.hpp>
Public Member Functions | |
BiCGStab () | |
Constructor. More... | |
BiCGStab (size_t maxItCount, double tolerance, const base::DataVector &startingPoint) | |
size_t | getMaxItCount () const |
const base::DataVector & | getStartingPoint () const |
double | getTolerance () const |
void | setMaxItCount (size_t maxItCount) |
void | setStartingPoint (const base::DataVector &startingPoint) |
void | setTolerance (double tolerance) |
bool | solve (SLE &system, base::DataVector &b, base::DataVector &x) const override |
~BiCGStab () override | |
Destructor. More... | |
Public Member Functions inherited from sgpp::optimization::sle_solver::SLESolver | |
SLESolver () | |
Constructor. More... | |
virtual bool | solve (SLE &system, base::DataMatrix &B, base::DataMatrix &X) const |
Virtual method for solving multiple linear systems with different right-hand sides. More... | |
virtual | ~SLESolver () |
Destructor. More... | |
Static Public Attributes | |
static const size_t | DEFAULT_MAX_IT_COUNT = 1000 |
default maximal number of iterations More... | |
static constexpr double | DEFAULT_TOLERANCE = 1e-10 |
default tolerance More... | |
Protected Attributes | |
size_t | N |
maximal number of iterations More... | |
double | tol |
tolerance More... | |
base::DataVector | x0 |
starting vector More... | |
Linear system solver implementing the iterative BiCGStab method.
sgpp::optimization::sle_solver::BiCGStab::BiCGStab | ( | ) |
Constructor.
sgpp::optimization::sle_solver::BiCGStab::BiCGStab | ( | size_t | maxItCount, |
double | tolerance, | ||
const base::DataVector & | startingPoint | ||
) |
maxItCount | maximal number of iterations |
tolerance | tolerance |
startingPoint | starting vector |
|
override |
Destructor.
size_t sgpp::optimization::sle_solver::BiCGStab::getMaxItCount | ( | ) | const |
References N.
const base::DataVector & sgpp::optimization::sle_solver::BiCGStab::getStartingPoint | ( | ) | const |
References x0.
double sgpp::optimization::sle_solver::BiCGStab::getTolerance | ( | ) | const |
References tol.
void sgpp::optimization::sle_solver::BiCGStab::setMaxItCount | ( | size_t | maxItCount | ) |
maxItCount | maximal number of iterations |
References N.
void sgpp::optimization::sle_solver::BiCGStab::setStartingPoint | ( | const base::DataVector & | startingPoint | ) |
startingPoint | starting vector |
References sgpp::base::DataVector::getSize(), and x0.
void sgpp::optimization::sle_solver::BiCGStab::setTolerance | ( | double | tolerance | ) |
tolerance | tolerance |
References tol.
|
overridevirtual |
system | system to be solved | |
b | right-hand side | |
[out] | x | solution to the system |
Implements sgpp::optimization::sle_solver::SLESolver.
References alpha, sgpp::base::DataVector::dotProduct(), sgpp::optimization::Printer::getInstance(), sgpp::optimization::SLE::getMatrixEntry(), sgpp::base::DataVector::getSize(), python.statsfileInfo::i, sgpp::optimization::SLE::matrixVectorMultiplication(), N, friedman::p, sgpp::optimization::Printer::printStatusBegin(), sgpp::optimization::Printer::printStatusEnd(), sgpp::optimization::Printer::printStatusUpdate(), chess::r, create_scripts::s, sgpp::base::DataVector::setAll(), tol, and x0.
|
static |
default maximal number of iterations
|
static |
default tolerance
|
protected |
maximal number of iterations
Referenced by getMaxItCount(), setMaxItCount(), and solve().
|
protected |
tolerance
Referenced by getTolerance(), setTolerance(), and solve().
|
protected |
starting vector
Referenced by getStartingPoint(), setStartingPoint(), and solve().