Ginkgo  Generated from pipelines/1554403166 branch based on develop. Ginkgo version 1.9.0
A numerical linear algebra library targeting many-core architectures
Classes | Typedefs | Enumerations | Functions
gko::stop Namespace Reference

The Stopping criterion namespace. More...

Classes

class  AbsoluteResidualNorm
 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  Combined
 The Combined class is used to combine multiple criterions together through an OR operation. More...
 
class  Criterion
 The Criterion class is a base class for all stopping criteria. More...
 
struct  CriterionArgs
 This struct is used to pass parameters to the EnableDefaultCriterionFactoryCriterionFactory::generate() method. More...
 
class  ImplicitResidualNorm
 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  Iteration
 The Iteration class is a stopping criterion which stops the iteration process after a preset number of iterations. More...
 
class  RelativeResidualNorm
 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  ResidualNorm
 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  ResidualNormBase
 The ResidualNormBase class provides a framework for stopping criteria related to the residual norm. More...
 
class  ResidualNormReduction
 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  Time
 The Time class is a stopping criterion which stops the iteration process after a certain amount of time has passed. More...
 

Typedefs

using CriterionFactory = AbstractFactory< Criterion, CriterionArgs >
 Declares an Abstract Factory specialized for Criterions.
 
template<typename ConcreteFactory , typename ConcreteCriterion , typename ParametersType , typename PolymorphicBase = CriterionFactory>
using EnableDefaultCriterionFactory = EnableDefaultFactory< ConcreteFactory, ConcreteCriterion, ParametersType, PolymorphicBase >
 This is an alias for the EnableDefaultFactory mixin, which correctly sets the template parameters to enable a subclass of CriterionFactory. More...
 

Enumerations

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

Functions

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

Detailed Description

The Stopping criterion namespace.

Stopping criteria

Typedef Documentation

◆ EnableDefaultCriterionFactory

template<typename ConcreteFactory , typename ConcreteCriterion , typename ParametersType , typename PolymorphicBase = CriterionFactory>
using gko::stop::EnableDefaultCriterionFactory = typedef EnableDefaultFactory<ConcreteFactory, ConcreteCriterion, ParametersType, PolymorphicBase>

This is an alias for the EnableDefaultFactory mixin, which correctly sets the template parameters to enable a subclass of CriterionFactory.

Template Parameters
ConcreteFactorythe concrete factory which is being implemented [CRTP parameter]
ConcreteCriterionthe concrete Criterion type which this factory produces, needs to have a constructor which takes a const ConcreteFactory *, and a const CriterionArgs * as parameters.
ParametersTypea subclass of enable_parameters_type template which defines all of the parameters of the factory
PolymorphicBaseparent of ConcreteFactory in the polymorphic hierarchy, has to be a subclass of CriterionFactory