schwz  Generated automatically from develop
Namespaces | Classes | Functions
schwz Namespace Reference

The Schwarz wrappers namespace. More...

Namespaces

 CommHelpers
 The CommHelper namespace .
 
 conv_tools
 The conv_tools namespace .
 
 PartitionTools
 The PartitionTools namespace .
 
 SolverTools
 The SolverTools namespace .
 

Classes

class  Communicate
 The communication class that provides the methods for the communication between the subdomains. More...
 
class  device_guard
 This class defines a device guard for the cuda functions and the cuda module. More...
 
struct  Gather
 
class  Initialize
 The initialization class that provides methods for initialization of the solver. More...
 
struct  Metadata
 The solver metadata struct. More...
 
struct  Scatter
 
class  SchwarzBase
 The Base solver class is meant to be the class implementing the common implementations for all the schwarz methods. More...
 
struct  Settings
 The struct that contains the solver settings and the parameters to be set by the user. More...
 
class  Solve
 The Solver class the provides the solver and the convergence checking methods. More...
 
class  SolverRAS
 An implementation of the solver interface using the RAS solver. More...
 
struct  Utils
 The utilities class which provides some checks and basic utilities. More...
 

Functions

template<typename ValueType , typename IndexType >
void gather_add_values (const IndexType num_elems, const IndexType *indices, const ValueType *from_array, ValueType *into_array)
 
template<typename ValueType , typename IndexType >
void gather_diff_values (const IndexType num_elems, const IndexType *indices, const ValueType *from_array, ValueType *into_array)
 
template<typename ValueType , typename IndexType >
void gather_avg_values (const IndexType num_elems, const IndexType *indices, const ValueType *from_array, ValueType *into_array)
 
template<typename ValueType , typename IndexType >
void gather_values (const IndexType num_elems, const IndexType *indices, const ValueType *from_array, ValueType *into_array)
 
template<typename ValueType , typename IndexType >
void scatter_add_values (const IndexType num_elems, const IndexType *indices, const ValueType *from_array, ValueType *into_array)
 
template<typename ValueType , typename IndexType >
void scatter_diff_values (const IndexType num_elems, const IndexType *indices, const ValueType *from_array, ValueType *into_array)
 
template<typename ValueType , typename IndexType >
void scatter_avg_values (const IndexType num_elems, const IndexType *indices, const ValueType *from_array, ValueType *into_array)
 
template<typename ValueType , typename IndexType >
void scatter_values (const IndexType num_elems, const IndexType *indices, const ValueType *from_array, ValueType *into_array)
 
template void gather_values (const int, const int *, const float *, float *)
 
template void gather_values (const int, const int *, const double *, double *)
 
template void gather_values (const int, const int *, const int *, int *)
 
template void gather_values (const int, const int *, const long int *, long int *)
 
template void gather_values (const long int, const long int *, const float *, float *)
 
template void gather_values (const long int, const long int *, const double *, double *)
 
template void gather_values (const long int, const long int *, const int *, int *)
 
template void gather_values (const long int, const long int *, const long int *, long int *)
 
template void gather_add_values (const int, const int *, const float *, float *)
 
template void gather_add_values (const int, const int *, const double *, double *)
 
template void gather_add_values (const int, const int *, const int *, int *)
 
template void gather_add_values (const int, const int *, const long int *, long int *)
 
template void gather_add_values (const long int, const long int *, const float *, float *)
 
template void gather_add_values (const long int, const long int *, const double *, double *)
 
template void gather_add_values (const long int, const long int *, const int *, int *)
 
template void gather_add_values (const long int, const long int *, const long int *, long int *)
 
template void gather_diff_values (const int, const int *, const float *, float *)
 
template void gather_diff_values (const int, const int *, const double *, double *)
 
template void gather_diff_values (const int, const int *, const int *, int *)
 
template void gather_diff_values (const int, const int *, const long int *, long int *)
 
template void gather_diff_values (const long int, const long int *, const float *, float *)
 
template void gather_diff_values (const long int, const long int *, const double *, double *)
 
template void gather_diff_values (const long int, const long int *, const int *, int *)
 
template void gather_diff_values (const long int, const long int *, const long int *, long int *)
 
template void gather_avg_values (const int, const int *, const float *, float *)
 
template void gather_avg_values (const int, const int *, const double *, double *)
 
template void gather_avg_values (const int, const int *, const int *, int *)
 
template void gather_avg_values (const int, const int *, const long int *, long int *)
 
template void gather_avg_values (const long int, const long int *, const float *, float *)
 
template void gather_avg_values (const long int, const long int *, const double *, double *)
 
template void gather_avg_values (const long int, const long int *, const int *, int *)
 
template void gather_avg_values (const long int, const long int *, const long int *, long int *)
 
template void scatter_values (const int, const int *, const float *, float *)
 
template void scatter_values (const int, const int *, const double *, double *)
 
template void scatter_values (const int, const int *, const int *, int *)
 
template void scatter_values (const int, const int *, const long int *, long int *)
 
template void scatter_values (const long int, const long int *, const float *, float *)
 
template void scatter_values (const long int, const long int *, const double *, double *)
 
template void scatter_values (const long int, const long int *, const int *, int *)
 
template void scatter_values (const long int, const long int *, const long int *, long int *)
 
template void scatter_add_values (const int, const int *, const float *, float *)
 
template void scatter_add_values (const int, const int *, const double *, double *)
 
template void scatter_add_values (const int, const int *, const int *, int *)
 
template void scatter_add_values (const int, const int *, const long int *, long int *)
 
template void scatter_add_values (const long int, const long int *, const float *, float *)
 
template void scatter_add_values (const long int, const long int *, const double *, double *)
 
template void scatter_add_values (const long int, const long int *, const int *, int *)
 
template void scatter_add_values (const long int, const long int *, const long int *, long int *)
 
template void scatter_diff_values (const int, const int *, const float *, float *)
 
template void scatter_diff_values (const int, const int *, const double *, double *)
 
template void scatter_diff_values (const int, const int *, const int *, int *)
 
template void scatter_diff_values (const int, const int *, const long int *, long int *)
 
template void scatter_diff_values (const long int, const long int *, const float *, float *)
 
template void scatter_diff_values (const long int, const long int *, const double *, double *)
 
template void scatter_diff_values (const long int, const long int *, const int *, int *)
 
template void scatter_diff_values (const long int, const long int *, const long int *, long int *)
 
template void scatter_avg_values (const int, const int *, const float *, float *)
 
template void scatter_avg_values (const int, const int *, const double *, double *)
 
template void scatter_avg_values (const int, const int *, const int *, int *)
 
template void scatter_avg_values (const int, const int *, const long int *, long int *)
 
template void scatter_avg_values (const long int, const long int *, const float *, float *)
 
template void scatter_avg_values (const long int, const long int *, const double *, double *)
 
template void scatter_avg_values (const long int, const long int *, const int *, int *)
 
template void scatter_avg_values (const long int, const long int *, const long int *, long int *)
 
template<typename ValueType , typename IndexType , typename AdditionalOperation >
__global__ void gather_kernel (const IndexType num_elems, const IndexType *indices, const ValueType *gather_from, ValueType *gather_into, AdditionalOperation op)
 
gko::size_type linearize_index (const gko::size_type row, const gko::size_type col, const gko::size_type num_rows)
 
template<typename ValueType , typename IndexType , typename MixedValueType >
void exchange_boundary_onesided (const Settings &settings, const Metadata< ValueType, IndexType > &metadata, struct Communicate< ValueType, IndexType, MixedValueType >::comm_struct &comm_struct, std::shared_ptr< gko::matrix::Dense< ValueType >> &global_solution)
 
template<typename ValueType , typename IndexType , typename MixedValueType >
void exchange_boundary_twosided (const Settings &settings, const Metadata< ValueType, IndexType > &metadata, struct Communicate< ValueType, IndexType, MixedValueType >::comm_struct &comm_struct, std::shared_ptr< gko::matrix::Dense< ValueType >> &global_solution)
 
template<typename ValueType , typename IndexType , typename AdditionalOperation >
__global__ void scatter_kernel (const IndexType num_elems, const IndexType *indices, const ValueType *scatter_from, ValueType *scatter_into, AdditionalOperation op)
 
template<typename ValueType , typename IndexType >
void write_iters_and_residuals (int num_subd, int my_rank, int iter_count, std::vector< ValueType > &local_res_vec_out, std::vector< IndexType > &local_converged_iter_count, std::vector< ValueType > &local_converged_resnorm, std::vector< ValueType > &local_timestamp, std::string filename)
 
template<typename ValueType , typename IndexType , typename MixedValueType >
void gather_comm_data (int num_subdomains, struct Communicate< ValueType, IndexType, MixedValueType >::comm_struct &comm_struct, std::vector< std::tuple< int, std::vector< std::tuple< int, int >>, std::vector< std::tuple< int, int >>, int, int >> &comm_data_struct)
 
template<typename ValueType >
double get_relative_error (const gko::matrix::Dense< ValueType > *first, const gko::matrix::Dense< ValueType > *second)
 
template<typename ValueType , typename IndexType >
void update_diagonals (std::shared_ptr< gko::matrix::Csr< ValueType, IndexType >> &matrix, std::vector< ValueType > &diags)
 

Detailed Description

The Schwarz wrappers namespace.