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

The Stopping criterion namespace. More...

Classes

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  Iteration
 The Iteration class is a stopping criterion which stops the iteration process after a preset number of iterations. More...
 
class  ResidualNormReduction
 The ResidualNormReduction class is a stopping criterion which stops the iteration process when the relative residual norm is below a certain threshold. More...
 
class  Time
 The Time class is a stopping criterion which stops the iteration process after a certain amout 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...
 

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 parmeter]
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