29 #ifndef __PASO_OPTIONS_H__ 30 #define __PASO_OPTIONS_H__ 34 #include <boost/python/object.hpp> 37 #define PASO_DEFAULT 0 39 #define PASO_CHOLEVSKY 2 43 #define PASO_BICGSTAB 6 46 #define PASO_JACOBI 10 48 #define PASO_PRES20 12 50 #define PASO_UMFPACK 16 51 #define PASO_NO_REORDERING 17 52 #define PASO_MINIMUM_FILL_IN 18 53 #define PASO_NESTED_DISSECTION 19 54 #define PASO_ITERATIVE 20 56 #define PASO_REC_ILU 23 57 #define PASO_TRILINOS 24 58 #define PASO_NONLINEAR_GMRES 25 60 #define PASO_MINRES 27 61 #define PASO_GAUSS_SEIDEL 28 62 #define PASO_GS PASO_GAUSS_SEIDEL 64 #define PASO_DEFAULT_REORDERING 30 65 #define PASO_NO_PRECONDITIONER 36 66 #define PASO_CLASSIC_INTERPOLATION_WITH_FF_COUPLING 50 67 #define PASO_CLASSIC_INTERPOLATION 51 68 #define PASO_DIRECT_INTERPOLATION 52 69 #define PASO_LINEAR_CRANK_NICOLSON 66 70 #define PASO_CRANK_NICOLSON 67 71 #define PASO_BACKWARD_EULER 68 73 #define PASO_SMOOTHER 99999999 82 Options(
const boost::python::object& options);
99 static const char*
name(
int key);
105 static int getSolver(
int solver,
int package,
bool symmetry,
151 #endif // __PASO_OPTIONS_H__ double residual_norm
Definition: Options.h:141
double relaxation_factor
Definition: Options.h:127
int ode_solver
Definition: Options.h:130
dim_t num_inner_iter
Definition: Options.h:135
bool reordering
Definition: Options.h:117
int sweeps
Definition: Options.h:125
static const char * name(int key)
Definition: Options.cpp:149
bool symmetric
Definition: Options.h:110
double set_up_time
Definition: Options.h:137
double inner_tolerance
Definition: Options.h:114
double coarse_level_sparsity
Definition: Options.h:145
void updateEscriptDiagnostics(boost::python::object &options) const
updates SolverBuddy diagnostics from this
Definition: Options.cpp:429
bool converged
Definition: Options.h:142
bool use_local_preconditioner
Definition: Options.h:128
boost::shared_ptr< JMPI_ > JMPI
Definition: EsysMPI.h:71
double coarsening_selection_time
Definition: Options.h:138
dim_t inner_iter_max
Definition: Options.h:120
index_t restart
Definition: Options.h:124
double drop_tolerance
Definition: Options.h:121
int preconditioner
Definition: Options.h:118
dim_t num_level
Definition: Options.h:134
double absolute_tolerance
Definition: Options.h:113
Definition: BiCGStab.cpp:25
double preconditioner_size
Definition: Options.h:143
int package
Definition: Options.h:109
int index_t
type for array/matrix indices used both globally and on each rank
Definition: DataTypes.h:59
dim_t num_iter
Definition: Options.h:133
double coarsening_matrix_time
Definition: Options.h:139
bool accept_failed_convergence
Definition: Options.h:126
double tolerance
Definition: Options.h:112
void showDiagnostics() const
prints diagnostic data
Definition: Options.cpp:104
bool time_step_backtracking_used
Definition: Options.h:144
dim_t num_coarse_unknowns
Definition: Options.h:146
void show() const
prints current option values
Definition: Options.cpp:121
void setDefaults()
sets the default values for solver options
Definition: Options.cpp:61
Options()
Definition: Options.h:79
static int getSolver(int solver, int package, bool symmetry, const escript::JMPI &mpi_info)
returns the solver to be used with given combination
Definition: Options.cpp:219
int method
Definition: Options.h:108
static int getPackage(int solver, int package, bool symmetry, const escript::JMPI &mpi_info)
Definition: Options.cpp:310
double time
Definition: Options.h:136
bool hermitian
Definition: Options.h:111
dim_t refinements
Definition: Options.h:129
double net_time
Definition: Options.h:140
index_t truncation
Definition: Options.h:123
double drop_storage
Definition: Options.h:122
static int mapEscriptOption(int escriptOption)
returns the corresponding paso option code for an escript option code
Definition: Options.cpp:350
index_t dim_t
Definition: DataTypes.h:64
bool adapt_inner_tolerance
Definition: Options.h:115
dim_t iter_max
Definition: Options.h:119
bool verbose
Definition: Options.h:116