Ginkgo: gko::stopping_status Class Reference

| 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::stopping_status Class Reference
Stopping criteria

This class is used to keep track of the stopping status of one vector. More...

`#include <ginkgo/core/stop/stopping_status.hpp>`

## Public Member Functions
bool | has_stopped () const noexcept
| Check if any stopping criteria was fulfilled.
bool | has_converged () const noexcept
| Check if convergence was reached.
bool | is_finalized () const noexcept
| Check if the corresponding vector stores the finalized result.
uint8 | get_id () const noexcept
| Get the id of the stopping criterion which caused the stop.
void | reset () noexcept
| Clear all flags.
void | stop (uint8 id, bool set_finalized=true) noexcept
| Call if a stop occurred due to a hard limit (and convergence was not reached).
void | converge (uint8 id, bool set_finalized=true) noexcept
| Call if convergence occurred.
void | finalize () noexcept
| Set the result to be finalized (it needs to be stopped or converged first).

## Friends
bool | operator== (const stopping_status &x, const stopping_status &y)
| Checks if two stopping statuses are equivalent.
bool | operator!= (const stopping_status &x, const stopping_status &y)
| Checks if two stopping statuses are different.

## Detailed Description

This class is used to keep track of the stopping status of one vector.

## Member Function Documentation

## ◆ converge()

void gko::stopping_status::converge | ( | uint8 | id,
|  | bool | set_finalized = true )
| inlinenoexcept

Call if convergence occurred.

Parameters

  id | id of the stopping criteria.
  set_finalized | Controls if the current version should count as finalized (set to true) or not (set to false).

References has_stopped().

## ◆ get_id()

uint8 gko::stopping_status::get_id | ( |  | ) | const
| inlinenoexcept

Get the id of the stopping criterion which caused the stop.

Returns
  Returns the id of the stopping criterion which caused the stop.

Referenced by has_stopped().

## ◆ has_converged()

bool gko::stopping_status::has_converged | ( |  | ) | const
| inlinenoexcept

Check if convergence was reached.

Returns
  Returns true if convergence was reached.

## ◆ has_stopped()

bool gko::stopping_status::has_stopped | ( |  | ) | const
| inlinenoexcept

Check if any stopping criteria was fulfilled.

Returns
  Returns true if any stopping criteria was fulfilled.

References get_id().

Referenced by converge(), finalize(), and stop().

## ◆ is_finalized()

bool gko::stopping_status::is_finalized | ( |  | ) | const
| inlinenoexcept

Check if the corresponding vector stores the finalized result.

Returns
  Returns true if the corresponding vector stores the finalized result.

## ◆ stop()

void gko::stopping_status::stop | ( | uint8 | id,
|  | bool | set_finalized = true )
| inlinenoexcept

Call if a stop occurred due to a hard limit (and convergence was not reached).

Parameters

  id | id of the stopping criteria.
  set_finalized | Controls if the current version should count as finalized (set to true) or not (set to false).

References has_stopped().

## Friends And Related Symbol Documentation

## ◆ operator!=

bool operator!= | ( | const stopping_status & | x,
|  | const stopping_status & | y )
| friend

Checks if two stopping statuses are different.

Parameters

  x | a stopping status
  y | a stopping status

Returns
  true if and only if !(x == y)

References operator!=.

Referenced by operator!=.

## ◆ operator==

bool operator== | ( | const stopping_status & | x,
|  | const stopping_status & | y )
| friend

Checks if two stopping statuses are equivalent.

Parameters

  x | a stopping status
  y | a stopping status

Returns
  true if and only if both x and y have the same mask and converged and finalized state

References operator==.

Referenced by operator==.

The documentation for this class was generated from the following file:

- ginkgo/core/stop/stopping_status.hpp