schwz  Generated automatically from develop
Classes | Public Attributes | List of all members
schwz::Metadata< ValueType, IndexType > Struct Template Reference

The solver metadata struct. More...

#include <settings.hpp>

Collaboration diagram for schwz::Metadata< ValueType, IndexType >:
[legend]

Classes

struct  post_process_data
 The struct used for storing data for post-processing. More...
 

Public Attributes

MPI_Comm mpi_communicator
 The MPI communicator.
 
gko::size_type global_size = 0
 The size of the global matrix.
 
gko::size_type oned_laplacian_size = 0
 The size of the 1 dimensional laplacian grid.
 
gko::size_type local_size = 0
 The size of the local subdomain matrix.
 
gko::size_type local_size_x = 0
 The size of the local subdomain matrix + the overlap.
 
gko::size_type local_size_o = 0
 The size of the local subdomain matrix + the overlap.
 
gko::size_type overlap_size = 0
 The size of the overlap between the subdomains.
 
gko::size_type num_subdomains = 1
 The number of subdomains used within the solver.
 
int my_rank
 The rank of the subdomain.
 
int my_local_rank
 The local rank of the subdomain.
 
int local_num_procs
 The local number of procs in the subdomain.
 
int comm_size
 The number of subdomains used within the solver, size of the communicator.
 
int num_threads
 The number of threads used within the solver for each subdomain.
 
IndexType iter_count
 The iteration count of the solver.
 
ValueType tolerance
 The tolerance of the complete solver. More...
 
ValueType local_solver_tolerance
 The tolerance of the local solver in case of an iterative solve. More...
 
IndexType max_iters
 The maximum iteration count of the Schwarz solver.
 
IndexType local_max_iters
 The maximum iteration count of the local iterative solver.
 
IndexType updated_max_iters
 The updated maximum iteration count of the local iterative solver.
 
std::string local_precond
 Local preconditioner.
 
unsigned int precond_max_block_size
 The maximum block size for the preconditioner.
 
ValueType current_residual_norm = -1.0
 The current residual norm of the subdomain.
 
ValueType min_residual_norm = -1.0
 The minimum residual norm of the subdomain.
 
std::vector< std::tuple< int, int, int, std::string, std::vector< ValueType > > > time_struct
 The struct used to measure the timings of each function within the solver loop.
 
std::vector< std::tuple< int, std::vector< std::tuple< int, int > >, std::vector< std::tuple< int, int > >, int, int > > comm_data_struct
 The struct used to measure the timings of each function within the solver loop.
 
post_process_data post_process_data
 
double init_mpi_wtime = 0.0
 
std::shared_ptr< gko::Array< IndexType > > global_to_local
 The mapping containing the global to local indices.
 
std::shared_ptr< gko::Array< IndexType > > local_to_global
 The mapping containing the local to global indices.
 
gko::Array< IndexType > overlap_row
 The overlap row indices.
 
std::shared_ptr< gko::Array< IndexType > > first_row
 The starting row of each subdomain in the matrix.
 
std::shared_ptr< gko::Array< IndexType > > permutation
 The permutation used for the re-ordering.
 
std::shared_ptr< gko::Array< IndexType > > i_permutation
 The inverse permutation used for the re-ordering.
 

Detailed Description

template<typename ValueType, typename IndexType>
struct schwz::Metadata< ValueType, IndexType >

The solver metadata struct.

Template Parameters
ValueTypeThe type of the floating point values.
IndexTypeThe type of the index type values.

Member Data Documentation

◆ local_solver_tolerance

template<typename ValueType, typename IndexType>
ValueType schwz::Metadata< ValueType, IndexType >::local_solver_tolerance

The tolerance of the local solver in case of an iterative solve.

The residual norm reduction required.

◆ tolerance

template<typename ValueType, typename IndexType>
ValueType schwz::Metadata< ValueType, IndexType >::tolerance

The tolerance of the complete solver.

The residual norm reduction required.


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