Ginkgo Generated from branch based on main. Ginkgo version 1.11.0
A numerical linear algebra library targeting many-core architectures
Loading...
Searching...
No Matches
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  ResidualNormBase
 The ResidualNormBase class provides a framework for stopping criteria related to the residual norm. 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  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  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  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  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  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
 This is an alias for the EnableDefaultFactory mixin, which correctly sets the template parameters to enable a subclass of CriterionFactory.

Enumerations

enum class  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.

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
Initial value:
EnableDefaultFactory<ConcreteFactory, ConcreteCriterion, ParametersType,
PolymorphicBase>
This mixin provides a default implementation of a concrete factory.
Definition abstract_factory.hpp:126

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