Ginkgo  Generated from pipelines/1553167993 branch based on develop. Ginkgo version 1.9.0
A numerical linear algebra library targeting many-core architectures
Namespaces | Classes | Enumerations | Functions
Stopping criteria

A module dedicated to the implementation and usage of the Stopping Criteria in Ginkgo. More...

Namespaces

 gko::stop
 The Stopping criterion namespace.
 

Classes

class  gko::stop::Combined
 The Combined class is used to combine multiple criterions together through an OR operation. More...
 
class  gko::stop::Iteration
 The Iteration class is a stopping criterion which stops the iteration process after a preset number of iterations. More...
 
class  gko::stop::ResidualNormBase< ValueType >
 The ResidualNormBase class provides a framework for stopping criteria related to the residual norm. More...
 
class  gko::stop::ResidualNorm< ValueType >
 The ResidualNorm class is a stopping criterion which stops the iteration process when the actual residual norm is below a certain threshold relative to. More...
 
class  gko::stop::ImplicitResidualNorm< ValueType >
 The ImplicitResidualNorm class is a stopping criterion which stops the iteration process when the implicit residual norm is below a certain threshold relative to. More...
 
class  gko::stop::ResidualNormReduction< ValueType >
 The ResidualNormReduction class is a stopping criterion which stops the iteration process when the residual norm is below a certain threshold relative to the norm of the initial residual, i.e. More...
 
class  gko::stop::RelativeResidualNorm< ValueType >
 The RelativeResidualNorm class is a stopping criterion which stops the iteration process when the residual norm is below a certain threshold relative to the norm of the right-hand side, i.e. More...
 
class  gko::stop::AbsoluteResidualNorm< ValueType >
 The AbsoluteResidualNorm class is a stopping criterion which stops the iteration process when the residual norm is below a certain threshold, i.e. More...
 
class  gko::stopping_status
 This class is used to keep track of the stopping status of one vector. More...
 
class  gko::stop::Time
 The Time class is a stopping criterion which stops the iteration process after a certain amount of time has passed. More...
 

Enumerations

enum  gko::stop::mode { absolute, initial_resnorm, rhs_norm }
 The mode for the residual norm criterion. More...
 

Functions

template<typename FactoryContainer >
std::shared_ptr< const CriterionFactorygko::stop::combine (FactoryContainer &&factories)
 Combines multiple criterion factories into a single combined criterion factory. More...
 

Detailed Description

A module dedicated to the implementation and usage of the Stopping Criteria in Ginkgo.

Enumeration Type Documentation

◆ mode

enum gko::stop::mode
strong

The mode for the residual norm criterion.

  • absolute: Check for tolerance against residual norm. $ || r || \leq \tau $
  • initial_resnorm: Check for tolerance relative to the initial residual norm. $ || r || \leq \tau \times || r_0|| $
  • rhs_norm: Check for tolerance relative to the rhs norm. $ || r || \leq \tau \times || b || $

Function Documentation

◆ combine()

template<typename FactoryContainer >
std::shared_ptr<const CriterionFactory> gko::stop::combine ( FactoryContainer &&  factories)

Combines multiple criterion factories into a single combined criterion factory.

This function treats a singleton container as a special case and avoids creating an additional object and just returns the input factory.

Template Parameters
FactoryContainera random access container type
Parameters
factoriesa list of factories to combined
Returns
a combined criterion factory if the input contains multiple factories or the input factory if the input contains only one factory