Go to the documentation of this file.
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);
151 #endif // __PASO_OPTIONS_H__
double getDropTolerance() const
Definition: SolverOptions.cpp:624
void show() const
prints current option values
Definition: Options.cpp:132
Definition: SolverOptions.h:161
Definition: SolverOptions.h:168
#define PASO_TRILINOS
Definition: Options.h:56
#define PASO_CR
Definition: Options.h:40
Options()
Definition: Options.h:78
#define PASO_DIRECT
Definition: Options.h:37
void setDefaults()
sets the default values for solver options
Definition: Options.cpp:72
dim_t num_level
Definition: Options.h:133
#define PASO_GAUSS_SEIDEL
Definition: Options.h:60
Definition: SolverOptions.h:127
bool useLocalPreconditioner() const
Definition: SolverOptions.cpp:778
double preconditioner_size
Definition: Options.h:142
#define PASO_ILUT
Definition: Options.h:44
bool accept_failed_convergence
Definition: Options.h:125
int package
Definition: Options.h:108
#define PASO_DEFAULT
Definition: Options.h:36
double getTolerance() const
Definition: SolverOptions.cpp:588
Definition: SolverOptions.h:122
#define PASO_RILU
Definition: Options.h:62
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:230
double getAbsoluteTolerance() const
Definition: SolverOptions.cpp:600
Definition: SolverOptions.h:149
int getTruncation() const
Definition: SolverOptions.cpp:540
void showDiagnostics() const
prints diagnostic data
Definition: Options.cpp:115
bool time_step_backtracking_used
Definition: Options.h:143
#define PASO_ILU0
Definition: Options.h:43
Definition: SolverOptions.h:141
#define PASO_ITERATIVE
Definition: Options.h:53
int getNumSweeps() const
Definition: SolverOptions.cpp:576
double time
Definition: Options.h:135
static int getPackage(int solver, int package, bool symmetry, const escript::JMPI &mpi_info)
Definition: Options.cpp:321
#define PASO_GMRES
Definition: Options.h:46
SolverOptions getSolverMethod() const
Definition: SolverOptions.cpp:424
double tolerance
Definition: Options.h:111
#define SET(__key__, __val__, __type__)
#define PASO_MINIMUM_FILL_IN
Definition: Options.h:51
int getNumRefinements() const
Definition: SolverOptions.cpp:808
static int mapEscriptOption(int escriptOption)
returns the corresponding paso option code for an escript option code
Definition: Options.cpp:361
#define PASO_CRANK_NICOLSON
Definition: Options.h:69
Definition: SolverOptions.h:151
Definition: SolverOptions.h:145
Definition: SolverOptions.h:159
dim_t num_coarse_unknowns
Definition: Options.h:145
#define PASO_PRES20
Definition: Options.h:47
bool hermitian
Definition: Options.h:110
Definition: SolverOptions.h:142
bool isHermitian() const
Definition: SolverOptions.cpp:686
double net_time
Definition: Options.h:139
Definition: SolverOptions.h:132
#define PASO_MKL
Definition: Options.h:48
#define PASO_NO_REORDERING
Definition: Options.h:50
#define PASO_NO_PRECONDITIONER
Definition: Options.h:64
bool verbose
Definition: Options.h:115
#define PASO_DEFAULT_REORDERING
Definition: Options.h:63
int method
Definition: Options.h:107
bool isVerbose() const
Definition: SolverOptions.cpp:709
Definition: SolverOptions.h:112
#define PASO_PCG
Definition: Options.h:39
#define PASO_TFQMR
Definition: Options.h:58
index_t truncation
Definition: Options.h:122
index_t dim_t
Definition: DataTypes.h:87
boost::shared_ptr< JMPI_ > JMPI
Definition: EsysMPI.h:70
Definition: SolverOptions.h:158
bool reordering
Definition: Options.h:116
bool acceptConvergenceFailure() const
Definition: SolverOptions.cpp:755
#define PASO_LINEAR_CRANK_NICOLSON
Definition: Options.h:68
bool symmetric
Definition: Options.h:109
double inner_tolerance
Definition: Options.h:113
dim_t refinements
Definition: Options.h:128
double getRelaxationFactor() const
Definition: SolverOptions.cpp:648
dim_t num_inner_iter
Definition: Options.h:134
int getInnerIterMax() const
Definition: SolverOptions.cpp:552
double getInnerTolerance() const
Definition: SolverOptions.cpp:612
int _getRestartForC() const
Definition: SolverOptions.cpp:525
Definition: SolverOptions.h:150
double drop_storage
Definition: Options.h:121
#define PASO_NONLINEAR_GMRES
Definition: Options.h:57
dim_t iter_max
Definition: Options.h:118
Definition: SolverOptions.h:119
void updateEscriptDiagnostics(boost::python::object &options) const
updates SolverBuddy diagnostics from this
Definition: Options.cpp:440
bool converged
Definition: Options.h:141
bool use_local_preconditioner
Definition: Options.h:127
double relaxation_factor
Definition: Options.h:126
#define PASO_PASO
Definition: Options.h:54
double coarse_level_sparsity
Definition: Options.h:144
#define PASO_UMFPACK
Definition: Options.h:49
int getIterMax() const
Definition: SolverOptions.cpp:564
bool adapt_inner_tolerance
Definition: Options.h:114
Definition: SolverOptions.h:129
#define PASO_BICGSTAB
Definition: Options.h:42
SolverOptions getReordering() const
Definition: SolverOptions.cpp:507
bool isSymmetric() const
Definition: SolverOptions.cpp:663
double residual_norm
Definition: Options.h:140
Definition: SolverOptions.h:160
Definition: SolverOptions.h:117
SolverOptions getPreconditioner() const
Definition: SolverOptions.cpp:355
int ode_solver
Definition: Options.h:129
double drop_tolerance
Definition: Options.h:120
PasoException exception class.
Definition: PasoException.h:43
#define PASO_MINRES
Definition: Options.h:59
int preconditioner
Definition: Options.h:117
Definition: SolverOptions.h:131
#define PASO_JACOBI
Definition: Options.h:45
int index_t
type for array/matrix indices used both globally and on each rank
Definition: DataTypes.h:82
dim_t inner_iter_max
Definition: Options.h:119
#define PASO_CGS
Definition: Options.h:41
static const char * name(int key)
Definition: Options.cpp:160
Definition: SolverOptions.h:121
double set_up_time
Definition: Options.h:136
int sweeps
Definition: Options.h:124
Definition: SolverOptions.h:140
Definition: SolverOptions.h:104
Definition: SolverOptions.h:144
double coarsening_selection_time
Definition: Options.h:137
#define PASO_REC_ILU
Definition: Options.h:55
#define PASO_BACKWARD_EULER
Definition: Options.h:70
#define PASO_NESTED_DISSECTION
Definition: Options.h:52
double absolute_tolerance
Definition: Options.h:112
Definition: SolverOptions.h:146
Definition: SolverOptions.h:113
bool adaptInnerTolerance() const
Definition: SolverOptions.cpp:732
Definition: BiCGStab.cpp:25
double coarsening_matrix_time
Definition: Options.h:138
Definition: SolverOptions.h:111
Definition: SolverOptions.h:143
Definition: SolverOptions.h:134
double getDropStorage() const
Definition: SolverOptions.cpp:636
Definition: SolverOptions.h:114
Definition: SolverOptions.h:136
Definition: SolverOptions.h:133
SolverOptions getODESolver() const
Definition: SolverOptions.cpp:827
#define PASO_CHOLEVSKY
Definition: Options.h:38
dim_t num_iter
Definition: Options.h:132
index_t restart
Definition: Options.h:123
Definition: SolverOptions.h:120