29 #ifndef __PASO_OPTIONS_H__ 30 #define __PASO_OPTIONS_H__ 32 #include "esysUtils/types.h" 35 #define PASO_DEFAULT 0 37 #define PASO_CHOLEVSKY 2 41 #define PASO_BICGSTAB 6 44 #define PASO_JACOBI 10 46 #define PASO_PRES20 12 48 #define PASO_UMFPACK 16 49 #define PASO_NO_REORDERING 17 50 #define PASO_MINIMUM_FILL_IN 18 51 #define PASO_NESTED_DISSECTION 19 52 #define PASO_ITERATIVE 20 55 #define PASO_REC_ILU 23 56 #define PASO_TRILINOS 24 57 #define PASO_NONLINEAR_GMRES 25 59 #define PASO_MINRES 27 60 #define PASO_GAUSS_SEIDEL 28 61 #define PASO_GS PASO_GAUSS_SEIDEL 63 #define PASO_DEFAULT_REORDERING 30 64 #define PASO_SUPER_LU 31 65 #define PASO_PASTIX 32 66 #define PASO_YAIR_SHAPIRA_COARSENING 33 67 #define PASO_RUGE_STUEBEN_COARSENING 34 68 #define PASO_AGGREGATION_COARSENING 35 69 #define PASO_NO_PRECONDITIONER 36 71 #define PASO_STANDARD_COARSENING 39 72 #define PASO_CLASSIC_INTERPOLATION_WITH_FF_COUPLING 50 73 #define PASO_CLASSIC_INTERPOLATION 51 74 #define PASO_DIRECT_INTERPOLATION 52 75 #define PASO_BOOMERAMG 60 76 #define PASO_CIJP_FIXED_RANDOM_COARSENING 61 77 #define PASO_CIJP_COARSENING 62 78 #define PASO_FALGOUT_COARSENING 63 79 #define PASO_PMIS_COARSENING 64 80 #define PASO_HMIS_COARSENING 65 81 #define PASO_LINEAR_CRANK_NICOLSON 66 82 #define PASO_CRANK_NICOLSON 67 83 #define PASO_BACKWARD_EULER 68 85 #define PASO_SMOOTHER 99999999 103 static const char*
name(
int key);
109 static int getSolver(
int solver,
int package,
bool symmetry,
167 #endif // __PASO_OPTIONS_H__ static int getPackage(int solver, int package, bool symmetry, const esysUtils::JMPI &mpi_info)
Definition: Options.cpp:330
void showDiagnostics() const
prints diagnostic data
Definition: Options.cpp:89
double residual_norm
Definition: Options.h:157
double relaxation_factor
Definition: Options.h:138
int ode_solver
Definition: Options.h:146
#define PASO_DLL_API
Definition: Paso.h:41
dim_t num_inner_iter
Definition: Options.h:151
double min_coarse_sparsity
Definition: Options.h:140
bool reordering
Definition: Options.h:120
int sweeps
Definition: Options.h:128
static const char * name(int key)
Definition: Options.cpp:141
bool symmetric
Definition: Options.h:114
double set_up_time
Definition: Options.h:153
double inner_tolerance
Definition: Options.h:117
static int getSolver(int solver, int package, bool symmetry, const esysUtils::JMPI &mpi_info)
returns the solver to be used with given combination
Definition: Options.cpp:239
double coarse_level_sparsity
Definition: Options.h:161
void show() const
prints current option values
Definition: Options.cpp:106
bool converged
Definition: Options.h:158
bool use_local_preconditioner
Definition: Options.h:139
int post_sweeps
Definition: Options.h:130
double coarsening_selection_time
Definition: Options.h:154
dim_t inner_iter_max
Definition: Options.h:123
dim_t coarse_matrix_refinements
Definition: Options.h:142
index_t restart
Definition: Options.h:127
double drop_tolerance
Definition: Options.h:124
int preconditioner
Definition: Options.h:121
bool usePanel
Definition: Options.h:144
dim_t num_level
Definition: Options.h:150
int interpolation_method
Definition: Options.h:145
double absolute_tolerance
Definition: Options.h:116
double preconditioner_size
Definition: Options.h:159
int pre_sweeps
Definition: Options.h:129
int package
Definition: Options.h:113
double diagonal_dominance_threshold
Definition: Options.h:143
dim_t min_coarse_matrix_size
Definition: Options.h:133
dim_t num_iter
Definition: Options.h:149
double coarsening_matrix_time
Definition: Options.h:155
bool accept_failed_convergence
Definition: Options.h:136
int cycle_type
Definition: Options.h:131
double tolerance
Definition: Options.h:115
bool time_step_backtracking_used
Definition: Options.h:160
dim_t num_coarse_unknowns
Definition: Options.h:162
void setDefaults()
sets the default values for solver options
Definition: Options.cpp:34
Options()
Definition: Options.h:92
int index_t
Definition: types.h:24
int method
Definition: Options.h:112
index_t dim_t
Definition: types.h:27
double coarsening_threshold
Definition: Options.h:135
double time
Definition: Options.h:152
dim_t refinements
Definition: Options.h:141
double net_time
Definition: Options.h:156
index_t truncation
Definition: Options.h:126
int level_max
Definition: Options.h:132
double drop_storage
Definition: Options.h:125
boost::shared_ptr< JMPI_ > JMPI
Definition: Esys_MPI.h:79
int smoother
Definition: Options.h:134
index_t coarsening_method
Definition: Options.h:137
bool adapt_inner_tolerance
Definition: Options.h:118
dim_t iter_max
Definition: Options.h:122
bool verbose
Definition: Options.h:119