Ginkgo: gko::solver::Idr< ValueType >::parameters_type Struct 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::solver::Idr< ValueType >::parameters_type Struct Reference
Inheritance diagram for gko::solver::Idr< ValueType >::parameters_type:
[legend]
Collaboration diagram for gko::solver::Idr< ValueType >::parameters_type:
[legend]

## Public Member Functions
template<typename... Args>
auto | with_subspace_dim (Args &&... _value) -> std::decay_t< decltype(*(this->self()))> &
template<typename... Args>
auto | with_kappa (Args &&... _value) -> std::decay_t< decltype(*(this->self()))> &
template<typename... Args>
auto | with_deterministic (Args &&... _value) -> std::decay_t< decltype(*(this->self()))> &
template<typename... Args>
auto | with_complex_subspace (Args &&... _value) -> std::decay_t< decltype(*(this->self()))> &
Public Member Functions inherited from gko::solver::enable_preconditioned_iterative_solver_factory_parameters< parameters_type, Factory >
auto | with_preconditioner (::gko::deferred_factory_parameter< preconditioner_type > factory) -> std::decay_t< decltype(*(this->self()))> &
auto | with_generated_preconditioner (Args &&... _value) -> std::decay_t< decltype(*(this->self()))> &
Public Member Functions inherited from gko::solver::enable_iterative_solver_factory_parameters< parameters_type, Factory >
auto | with_criteria (Args &&... factories) -> std::decay_t< decltype(*(this->self()))> &
Public Member Functions inherited from gko::enable_parameters_type< parameters_type, Factory >
parameters_type & | with_loggers (Args &&... _value)
| Provides the loggers to be added to the factory and its generated objects in a fluent interface.
std::unique_ptr< Factory > | on (std::shared_ptr< const Executor > exec) const
| Creates a new factory on the specified executor.

## Public Attributes
size_type | subspace_dim {2u}
| Dimension of the subspace S.
remove_complex< ValueType > | kappa {0.7}
| Threshold to determine if Av_n and v_n are too close to being perpendicular.
bool | deterministic {false}
| If set to true, the vectors spanning the subspace S are chosen deterministically.
bool | complex_subspace {false}
| If set to true, IDR will use a complex subspace S also for real problems, allowing for faster convergence and better results by acknowledging the influence of complex eigenvectors.
Public Attributes inherited from gko::solver::enable_preconditioned_iterative_solver_factory_parameters< parameters_type, Factory >
std::shared_ptr< const LinOpFactory > | preconditioner
| The preconditioner to be used by the iterative solver.
std::shared_ptr< const LinOp > | generated_preconditioner
| Already generated preconditioner.
Public Attributes inherited from gko::solver::enable_iterative_solver_factory_parameters< parameters_type, Factory >
std::vector< std::shared_ptr< const stop::CriterionFactory > > | criteria
| Stopping criteria to be used by the solver.

## Additional Inherited Members
Public Types inherited from gko::enable_parameters_type< parameters_type, Factory >
using | factory

## Member Data Documentation

## ◆ complex_subspace

template<typename ValueType = default_precision>

bool gko::solver::Idr< ValueType >::parameters_type::complex_subspace {false}

If set to true, IDR will use a complex subspace S also for real problems, allowing for faster convergence and better results by acknowledging the influence of complex eigenvectors.

The default is false.

## ◆ deterministic

template<typename ValueType = default_precision>

bool gko::solver::Idr< ValueType >::parameters_type::deterministic {false}

If set to true, the vectors spanning the subspace S are chosen deterministically.

This is mostly needed for testing purposes.

Note: If 'deterministic' is set to true, the subspace vectors are generated in serial on the CPU, which can be very slow.

The default behaviour is to choose the subspace vectors randomly.

## ◆ kappa

template<typename ValueType = default_precision>

remove_complex<ValueType> gko::solver::Idr< ValueType >::parameters_type::kappa {0.7}

Threshold to determine if Av_n and v_n are too close to being perpendicular.

This is considered to be the case if

## ◆ subspace_dim

template<typename ValueType = default_precision>

size_type gko::solver::Idr< ValueType >::parameters_type::subspace_dim {2u}

Dimension of the subspace S.

Determines how many intermediate residuals are computed in each iteration.

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

- ginkgo/core/solver/idr.hpp