| 
    Template Numerical Library version\ main:6a1fe78
    
   | 
 
Base class for iterative solvers. More...
#include <TNL/Solvers/StaticIterativeSolver.h>

Public Member Functions | |
| __cuda_callable__ | StaticIterativeSolver ()=default | 
| Default constructor.  | |
| __cuda_callable__ bool | checkConvergence () | 
| Checks whether the convergence occurred already.   | |
| __cuda_callable__ bool | checkNextIteration () | 
| Checks if the solver is allowed to do the next iteration.   | |
| __cuda_callable__ const Real & | getConvergenceResidue () const | 
| Gets the the convergence threshold.   | |
| __cuda_callable__ const Real & | getDivergenceResidue () const | 
| Gets the limit for the divergence criterion.   | |
| __cuda_callable__ const Index & | getIterations () const | 
| Gets the number of iterations performed by the solver so far.   | |
| __cuda_callable__ const Index & | getMaxIterations () const | 
| Gets the maximal number of iterations the solver is allowed to perform.   | |
| __cuda_callable__ const Index & | getMinIterations () const | 
| Gets the minimal number of iterations the solver is supposed to do.   | |
| __cuda_callable__ const Real & | getResidue () const | 
| Gets the residue reached at the current iteration.   | |
| __cuda_callable__ bool | nextIteration () | 
| Proceeds to the next iteration.   | |
| __cuda_callable__ void | resetIterations () | 
| Sets the the number of the current iterations to zero.  | |
| __cuda_callable__ void | setConvergenceResidue (const Real &convergenceResidue) | 
| Sets the threshold for the convergence.   | |
| __cuda_callable__ void | setDivergenceResidue (const Real &divergenceResidue) | 
| Sets the residue limit for the divergence criterion.   | |
| __cuda_callable__ void | setMaxIterations (const Index &maxIterations) | 
| Sets the maximal number of iterations the solver is allowed to perform.   | |
| __cuda_callable__ void | setMinIterations (const Index &minIterations) | 
| Sets the minimal number of iterations the solver is supposed to do.   | |
| __cuda_callable__ void | setResidue (const Real &residue) | 
| Sets the residue reached at the current iteration.   | |
| bool | setup (const Config::ParameterContainer ¶meters, const std::string &prefix="") | 
| Method for setup of the iterative solver based on configuration parameters.   | |
Static Public Member Functions | |
| static void | configSetup (Config::ConfigDescription &config, const std::string &prefix="") | 
| This method defines configuration entries for setup of the iterative solver.   | |
Protected Attributes | |
| Real | convergenceResidue = 1e-6 | 
| Index | currentIteration = 0 | 
| Real | currentResidue = 0 | 
| Real | divergenceResidue = std::numeric_limits< Real >::max() | 
| Index | maxIterations = 1000000000 | 
| Index | minIterations = 0 | 
| Index | refreshRate = 1 | 
Base class for iterative solvers.
| Real | is a floating point type used for computations. | 
| Index | is an indexing type. | 
      
  | 
  nodiscard | 
Checks whether the convergence occurred already.
      
  | 
  nodiscard | 
Checks if the solver is allowed to do the next iteration.
      
  | 
  static | 
This method defines configuration entries for setup of the iterative solver.
The following entries are defined:
max-iterations - maximal number of iterations the solver may perform.
min-iterations - minimal number of iterations the solver must perform.
convergence-residue - convergence occurs when the residue drops bellow this limit.
divergence-residue - divergence occurs when the residue exceeds given limit.
| config | contains description of configuration parameters. | 
| prefix | is a prefix of particular configuration entries. | 
      
  | 
  nodiscard | 
Gets the the convergence threshold.
See IterativeSolver::setConvergenceResidue.
      
  | 
  nodiscard | 
Gets the limit for the divergence criterion.
See IterativeSolver::setDivergenceResidue.
      
  | 
  nodiscard | 
Gets the number of iterations performed by the solver so far.
      
  | 
  nodiscard | 
Gets the maximal number of iterations the solver is allowed to perform.
See IterativeSolver::setMaxIterations.
      
  | 
  nodiscard | 
Gets the minimal number of iterations the solver is supposed to do.
      
  | 
  nodiscard | 
Gets the residue reached at the current iteration.
      
  | 
  nodiscard | 
Proceeds to the next iteration.
| __cuda_callable__ void TNL::Solvers::StaticIterativeSolver< Real, Index >::setConvergenceResidue | ( | const Real & | convergenceResidue | ) | 
Sets the threshold for the convergence.
The convergence occurs when the residue drops bellow this limit.
| convergenceResidue | is threshold for the convergence. | 
| __cuda_callable__ void TNL::Solvers::StaticIterativeSolver< Real, Index >::setDivergenceResidue | ( | const Real & | divergenceResidue | ) | 
Sets the residue limit for the divergence criterion.
The divergence occurs when the residue exceeds the limit.
| divergenceResidue | the residue limit of the divergence. | 
| __cuda_callable__ void TNL::Solvers::StaticIterativeSolver< Real, Index >::setMaxIterations | ( | const Index & | maxIterations | ) | 
Sets the maximal number of iterations the solver is allowed to perform.
If the number of iterations performed by the solver exceeds given limit, the divergence occurs.
| maxIterations | maximal number of allowed iterations. | 
| __cuda_callable__ void TNL::Solvers::StaticIterativeSolver< Real, Index >::setMinIterations | ( | const Index & | minIterations | ) | 
Sets the minimal number of iterations the solver is supposed to do.
| minIterations | minimal number of iterations the solver is supposed to do. | 
| __cuda_callable__ void TNL::Solvers::StaticIterativeSolver< Real, Index >::setResidue | ( | const Real & | residue | ) | 
Sets the residue reached at the current iteration.
| residue | reached at the current iteration. | 
| bool TNL::Solvers::StaticIterativeSolver< Real, Index >::setup | ( | const Config::ParameterContainer & | parameters, | 
| const std::string & | prefix = "" ) | 
Method for setup of the iterative solver based on configuration parameters.
| parameters | contains values of the define configuration entries. | 
| prefix | is a prefix of particular configuration entries. |