Template Class GaussSeidelRelaxation

Inheritance Relationships

Base Type

Class Documentation

template<class Matrix>
class GaussSeidelRelaxation : public NetworKit::Smoother<Matrix>

Implementation of the Gauss-Seidel smoother.

Public Functions

inline GaussSeidelRelaxation(double tolerance = 1e-15)

Constructs a Gauss-Seidel smoother with the given tolerance (default: 1e-15).

Parameters:

tolerance

virtual Vector relax(const Matrix &A, const Vector &b, const Vector &initialGuess, count maxIterations = std::numeric_limits<count>::max()) const override

Utilizes Gauss-Seidel relaxations until the given number of maxIterations is reached or the relative residual is below the tolerance specified in the constructor. The solver starts with initialGuess as intitial guess to the solution.

Parameters:
  • A – The matrix.

  • b – The right-hand-side.

  • initialGuess

  • maxIterations

Returns:

The (approximate) solution to the system.

virtual Vector relax(const Matrix &A, const Vector &b, count maxIterations = std::numeric_limits<count>::max()) const override

Utilizes Gauss-Seidel relaxations until the given number of maxIterations is reached or the relative residual is below the tolerance specified in the constructor.

Parameters:
  • A – The matrix.

  • b – The right-hand-side.

  • maxIterations

Returns:

The (approximate) solution to the system.