Ginkgo Generated from branch based on master. Ginkgo version 1.7.0
A numerical linear algebra library targeting many-core architectures
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
gko::factorization::ParIc< ValueType, IndexType >::parameters_type Struct Reference
Inheritance diagram for gko::factorization::ParIc< ValueType, IndexType >::parameters_type:
[legend]
Collaboration diagram for gko::factorization::ParIc< ValueType, IndexType >::parameters_type:
[legend]

Public Member Functions

template<typename... Args>
auto with_iterations (Args &&... _value) -> std::decay_t< decltype(*(this->self()))> &
 
template<typename... Args>
auto with_skip_sorting (Args &&... _value) -> std::decay_t< decltype(*(this->self()))> &
 
template<typename... Args>
auto with_l_strategy (Args &&... _value) -> std::decay_t< decltype(*(this->self()))> &
 
template<typename... Args>
auto with_both_factors (Args &&... _value) -> 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 iterations { 0 }
 The number of iterations the compute kernel will use when doing the factorization.
 
bool skip_sorting { false }
 The system_matrix, which will be given to this factory, must be sorted (first by row, then by column) in order for the algorithm to work.
 
std::shared_ptr< typename matrix_type::strategy_typel_strategy { nullptr }
 Strategy which will be used by the L matrix.
 
bool both_factors { true }
 true will generate both L and L^H, false will only generate the L factor, resulting in a Composition of only a single LinOp.
 

Additional Inherited Members

- Public Types inherited from gko::enable_parameters_type< parameters_type, Factory >
using factory
 

Member Data Documentation

◆ both_factors

template<typename ValueType = default_precision, typename IndexType = int32>
bool gko::factorization::ParIc< ValueType, IndexType >::parameters_type::both_factors { true }

true will generate both L and L^H, false will only generate the L factor, resulting in a Composition of only a single LinOp.

This can be used to avoid the transposition operation.

◆ iterations

template<typename ValueType = default_precision, typename IndexType = int32>
size_type gko::factorization::ParIc< ValueType, IndexType >::parameters_type::iterations { 0 }

The number of iterations the compute kernel will use when doing the factorization.

The default value 0 means Auto, so the implementation decides on the actual value depending on the resources that are available.

◆ l_strategy

template<typename ValueType = default_precision, typename IndexType = int32>
std::shared_ptr<typename matrix_type::strategy_type> gko::factorization::ParIc< ValueType, IndexType >::parameters_type::l_strategy { nullptr }

Strategy which will be used by the L matrix.

The default value nullptr will result in the strategy classical.

◆ skip_sorting

template<typename ValueType = default_precision, typename IndexType = int32>
bool gko::factorization::ParIc< ValueType, IndexType >::parameters_type::skip_sorting { false }

The system_matrix, which will be given to this factory, must be sorted (first by row, then by column) in order for the algorithm to work.

If it is known that the matrix will be sorted, this parameter can be set to true to skip the sorting (therefore, shortening the runtime). However, if it is unknown or if the matrix is known to be not sorted, it must remain false, otherwise, the factorization might be incorrect.


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