Ginkgo
Generated from pipelines/1570051012 branch based on develop. Ginkgo version 1.9.0
A numerical linear algebra library targeting many-core architectures
|
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...
#include <ginkgo/core/stop/residual_norm.hpp>
Classes | |
class | Factory |
struct | parameters_type |
Public Types | |
using | ComplexVector = matrix::Dense< to_complex< ValueType > > |
using | NormVector = matrix::Dense< remove_complex< ValueType > > |
using | Vector = matrix::Dense< ValueType > |
Public Member Functions | |
const parameters_type & | get_parameters () const |
Public Member Functions inherited from gko::EnableAbstractPolymorphicObject< ResidualNormBase< ValueType >, Criterion > | |
std::unique_ptr< ResidualNormBase< ValueType > > | create_default (std::shared_ptr< const Executor > exec) const |
std::unique_ptr< ResidualNormBase< ValueType > > | create_default () const |
std::unique_ptr< ResidualNormBase< ValueType > > | clone (std::shared_ptr< const Executor > exec) const |
std::unique_ptr< ResidualNormBase< ValueType > > | clone () const |
ResidualNormBase< ValueType > * | copy_from (const PolymorphicObject *other) |
std::enable_if_t< std::is_base_of< PolymorphicObject, std::decay_t< Derived > >::value, ResidualNormBase< ValueType > > * | copy_from (std::unique_ptr< Derived > &&other) |
std::enable_if_t< std::is_base_of< PolymorphicObject, std::decay_t< Derived > >::value, ResidualNormBase< ValueType > > * | copy_from (const std::unique_ptr< Derived > &other) |
ResidualNormBase< ValueType > * | copy_from (const std::shared_ptr< const PolymorphicObject > &other) |
ResidualNormBase< ValueType > * | move_from (ptr_param< PolymorphicObject > other) |
ResidualNormBase< ValueType > * | clear () |
Static Public Member Functions | |
static auto | build () -> decltype(Factory ::create()) |
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.
when norm(residual) / norm(initial_residual) < threshold. For better performance, the checks are run thanks to kernels on the executor where the algorithm is executed.
initial_residual
in order to compute the first relative residual norm. The check method depends on either the residual_norm
or the residual
being set. When any of those is not correctly provided, an exception ::gko::NotSupported() is thrown.