paso::Options Struct Reference

`#include <Options.h>`

## Public Member Functions

| Options ()
| Options (const boost::python::object &options)
| constructor that fills values from an escript SolverBuddy instance More...
void | setDefaults ()
| sets the default values for solver options More...
void | show () const
| prints current option values More...
void | showDiagnostics () const
| prints diagnostic data More...
void | updateEscriptDiagnostics (boost::python::object &options) const
| updates SolverBuddy diagnostics from this More...

## Static Public Member Functions

static int | mapEscriptOption (int escriptOption)
| returns the corresponding paso option code for an escript option code More...
static const char * | name (int key)
static int | getPackage (int solver, int package, bool symmetry, const escript::JMPI &mpi_info)
static int | getSolver (int solver, int package, bool symmetry, const escript::JMPI &mpi_info)
| returns the solver to be used with given combination More...

## Public Attributes

int | method
int | package
bool | symmetric
bool | hermitian
double | tolerance
double | absolute_tolerance
double | inner_tolerance
bool | adapt_inner_tolerance
bool | verbose
bool | reordering
int | preconditioner
dim_t | iter_max
dim_t | inner_iter_max
double | drop_tolerance
double | drop_storage
index_t | truncation
index_t | restart
int | sweeps
bool | accept_failed_convergence
double | relaxation_factor
bool | use_local_preconditioner
dim_t | refinements
int | ode_solver
dim_t | num_iter
dim_t | num_level
dim_t | num_inner_iter
double | time
double | set_up_time
double | coarsening_selection_time
double | coarsening_matrix_time
double | net_time
double | residual_norm
bool | converged
double | preconditioner_size
bool | time_step_backtracking_used
double | coarse_level_sparsity
dim_t | num_coarse_unknowns

## Constructor & Destructor Documentation

## Options() [1/2]

paso::Options::Options | ( |  | ) |

inline

## Options() [2/2]

paso::Options::Options | ( | const boost::python::object & | options | ) |

constructor that fills values from an escript SolverBuddy instance

## Member Function Documentation

## getPackage()

int paso::Options::getPackage | ( | int | solver,
|  | int | package,
|  | bool | symmetry,
|  | const escript::JMPI & | mpi_info
| ) |  |

static

References PASO_DEFAULT, PASO_DIRECT, PASO_MKL, PASO_MUMPS, PASO_PASO, PASO_TRILINOS, and PASO_UMFPACK.

Referenced by paso::SystemMatrix< T >::getSystemMatrixTypeId().

## getSolver()

int paso::Options::getSolver | ( | int | solver,
|  | int | package,
|  | bool | symmetry,
|  | const escript::JMPI & | mpi_info
| ) |  |

static

returns the solver to be used with given combination

References PASO_BICGSTAB, PASO_CHOLEVSKY, PASO_DEFAULT, PASO_DIRECT, PASO_GMRES, PASO_MINRES, PASO_MKL, PASO_MUMPS, PASO_NONLINEAR_GMRES, PASO_PASO, PASO_PCG, PASO_PRES20, PASO_TFQMR, PASO_TRILINOS, and PASO_UMFPACK.

Referenced by paso::Solver().

## mapEscriptOption()

int paso::Options::mapEscriptOption | ( | int | escriptOption | ) |

static

returns the corresponding paso option code for an escript option code

References PASO_BACKWARD_EULER, PASO_BICGSTAB, PASO_CGS, PASO_CHOLEVSKY, PASO_CR, PASO_CRANK_NICOLSON, PASO_DEFAULT, PASO_DEFAULT_REORDERING, PASO_DIRECT, PASO_GAUSS_SEIDEL, PASO_GMRES, PASO_ILU0, PASO_ILUT, PASO_ITERATIVE, PASO_JACOBI, PASO_LINEAR_CRANK_NICOLSON, PASO_MINIMUM_FILL_IN, PASO_MINRES, PASO_MKL, PASO_MUMPS, PASO_NESTED_DISSECTION, PASO_NO_PRECONDITIONER, PASO_NO_REORDERING, PASO_NONLINEAR_GMRES, PASO_PASO, PASO_PCG, PASO_PRES20, PASO_REC_ILU, PASO_RILU, PASO_TFQMR, PASO_TRILINOS, PASO_UMFPACK, escript::SO_DEFAULT, escript::SO_METHOD_BICGSTAB, escript::SO_METHOD_CGS, escript::SO_METHOD_CHOLEVSKY, escript::SO_METHOD_CR, escript::SO_METHOD_DIRECT, escript::SO_METHOD_GMRES, escript::SO_METHOD_ITERATIVE, escript::SO_METHOD_MINRES, escript::SO_METHOD_NONLINEAR_GMRES, escript::SO_METHOD_PCG, escript::SO_METHOD_PRES20, escript::SO_METHOD_TFQMR, escript::SO_ODESOLVER_BACKWARD_EULER, escript::SO_ODESOLVER_CRANK_NICOLSON, escript::SO_ODESOLVER_LINEAR_CRANK_NICOLSON, escript::SO_PACKAGE_MKL, escript::SO_PACKAGE_MUMPS, escript::SO_PACKAGE_PASO, escript::SO_PACKAGE_TRILINOS, escript::SO_PACKAGE_UMFPACK, escript::SO_PRECONDITIONER_GAUSS_SEIDEL, escript::SO_PRECONDITIONER_ILU0, escript::SO_PRECONDITIONER_ILUT, escript::SO_PRECONDITIONER_JACOBI, escript::SO_PRECONDITIONER_NONE, escript::SO_PRECONDITIONER_REC_ILU, escript::SO_PRECONDITIONER_RILU, escript::SO_REORDERING_DEFAULT, escript::SO_REORDERING_MINIMUM_FILL_IN, escript::SO_REORDERING_NESTED_DISSECTION, and escript::SO_REORDERING_NONE.

Referenced by paso::SystemMatrix< T >::getSystemMatrixTypeId().

## name()

const char * paso::Options::name | ( | int | key | ) |

static

References PASO_BACKWARD_EULER, PASO_BICGSTAB, PASO_CGS, PASO_CHOLEVSKY, PASO_CR, PASO_CRANK_NICOLSON, PASO_DEFAULT, PASO_DEFAULT_REORDERING, PASO_DIRECT, PASO_GAUSS_SEIDEL, PASO_GMRES, PASO_ILU0, PASO_ILUT, PASO_ITERATIVE, PASO_JACOBI, PASO_LINEAR_CRANK_NICOLSON, PASO_MINIMUM_FILL_IN, PASO_MINRES, PASO_MKL, PASO_MUMPS, PASO_NESTED_DISSECTION, PASO_NO_PRECONDITIONER, PASO_NO_REORDERING, PASO_NONLINEAR_GMRES, PASO_PASO, PASO_PCG, PASO_PRES20, PASO_REC_ILU, PASO_RILU, PASO_TFQMR, PASO_TRILINOS, and PASO_UMFPACK.

Referenced by show().

## setDefaults()

void paso::Options::setDefaults | ( |  | ) |

sets the default values for solver options

References absolute_tolerance, accept_failed_convergence, adapt_inner_tolerance, coarse_level_sparsity, coarsening_matrix_time, coarsening_selection_time, converged, drop_storage, drop_tolerance, hermitian, inner_iter_max, inner_tolerance, iter_max, method, net_time, num_coarse_unknowns, num_inner_iter, num_iter, num_level, ode_solver, PASO_DEFAULT, PASO_JACOBI, PASO_LINEAR_CRANK_NICOLSON, PASO_NO_REORDERING, preconditioner, preconditioner_size, refinements, relaxation_factor, reordering, residual_norm, restart, set_up_time, sweeps, symmetric, time, time_step_backtracking_used, tolerance, truncation, use_local_preconditioner, and verbose.

## show()

void paso::Options::show | ( |  | ) | const

prints current option values

References method, name(), package, and verbose.

## showDiagnostics()

void paso::Options::showDiagnostics | ( |  | ) | const

prints diagnostic data

References coarsening_matrix_time, coarsening_selection_time, converged, net_time, num_inner_iter, num_iter, num_level, preconditioner_size, residual_norm, set_up_time, time, and time_step_backtracking_used.

## updateEscriptDiagnostics()

void paso::Options::updateEscriptDiagnostics | ( | boost::python::object & | options | ) | const

updates SolverBuddy diagnostics from this

References coarse_level_sparsity, converged, net_time, num_coarse_unknowns, num_inner_iter, num_iter, num_level, residual_norm, SET, set_up_time, time, and time_step_backtracking_used.

Referenced by paso::SystemMatrix< T >::setToSolution(), and paso::TransportProblem::setToSolution().

## Member Data Documentation

## absolute_tolerance

double paso::Options::absolute_tolerance

Referenced by setDefaults(), paso::Solver_NewtonGMRES(), and paso::FCT_Solver::updateNL().

## accept_failed_convergence

bool paso::Options::accept_failed_convergence

Referenced by setDefaults(), and paso::SystemMatrix< T >::solve().

## adapt_inner_tolerance

bool paso::Options::adapt_inner_tolerance

Referenced by setDefaults(), and paso::Solver_NewtonGMRES().

## coarse_level_sparsity

double paso::Options::coarse_level_sparsity

Referenced by setDefaults(), and updateEscriptDiagnostics().

## coarsening_matrix_time

double paso::Options::coarsening_matrix_time

Referenced by setDefaults(), and showDiagnostics().

## coarsening_selection_time

double paso::Options::coarsening_selection_time

Referenced by setDefaults(), and showDiagnostics().

## converged

bool paso::Options::converged

Referenced by setDefaults(), showDiagnostics(), paso::SystemMatrix< T >::solve(), paso::Solver(), and updateEscriptDiagnostics().

## drop_storage

double paso::Options::drop_storage

Referenced by setDefaults().

## drop_tolerance

double paso::Options::drop_tolerance

Referenced by setDefaults().

## hermitian

bool paso::Options::hermitian

Referenced by setDefaults().

## inner_iter_max

dim_t paso::Options::inner_iter_max

Referenced by setDefaults(), and paso::Solver_NewtonGMRES().

## inner_tolerance

double paso::Options::inner_tolerance

Referenced by setDefaults(), and paso::Solver_NewtonGMRES().

## iter_max

dim_t paso::Options::iter_max

Referenced by setDefaults(), paso::Solver(), paso::Solver_NewtonGMRES(), and paso::FCT_Solver::updateNL().

## method

int paso::Options::method

Referenced by setDefaults(), show(), and paso::Solver().

## net_time

double paso::Options::net_time

Referenced by setDefaults(), showDiagnostics(), paso::Solver(), and updateEscriptDiagnostics().

## num_coarse_unknowns

dim_t paso::Options::num_coarse_unknowns

Referenced by setDefaults(), and updateEscriptDiagnostics().

## num_inner_iter

dim_t paso::Options::num_inner_iter

Referenced by setDefaults(), showDiagnostics(), paso::Solver(), and updateEscriptDiagnostics().

## num_iter

dim_t paso::Options::num_iter

Referenced by setDefaults(), showDiagnostics(), paso::SystemMatrix< T >::solve(), paso::TransportProblem::solve(), paso::Solver(), updateEscriptDiagnostics(), and paso::FCT_Solver::updateNL().

## num_level

dim_t paso::Options::num_level

Referenced by setDefaults(), showDiagnostics(), paso::Solver(), and updateEscriptDiagnostics().

## ode_solver

int paso::Options::ode_solver

Referenced by paso::FCT_Solver::FCT_Solver(), setDefaults(), and paso::TransportProblem::solve().

## package

int paso::Options::package

Referenced by show().

## preconditioner

int paso::Options::preconditioner

Referenced by paso::FCT_Solver::initialize(), paso::Preconditioner_alloc(), and setDefaults().

## preconditioner_size

double paso::Options::preconditioner_size

Referenced by setDefaults(), and showDiagnostics().

## refinements

dim_t paso::Options::refinements

Referenced by setDefaults(), and paso::SystemMatrix< T >::solve().

## relaxation_factor

double paso::Options::relaxation_factor

Referenced by setDefaults().

## reordering

bool paso::Options::reordering

Referenced by setDefaults(), and paso::SystemMatrix< T >::solve().

## residual_norm

double paso::Options::residual_norm

Referenced by setDefaults(), showDiagnostics(), paso::SystemMatrix< T >::solve(), paso::Solver(), and updateEscriptDiagnostics().

## restart

index_t paso::Options::restart

Referenced by setDefaults(), and paso::Solver().

## set_up_time

double paso::Options::set_up_time

Referenced by setDefaults(), showDiagnostics(), paso::SystemMatrix< T >::solve(), paso::Solver(), and updateEscriptDiagnostics().

## sweeps

int paso::Options::sweeps

Referenced by paso::FCT_Solver::initialize(), paso::Preconditioner_alloc(), and setDefaults().

## symmetric

bool paso::Options::symmetric

Referenced by setDefaults(), and paso::Solver().

## time

double paso::Options::time

Referenced by setDefaults(), showDiagnostics(), paso::SystemMatrix< T >::solve(), paso::Solver(), and updateEscriptDiagnostics().

## time_step_backtracking_used

bool paso::Options::time_step_backtracking_used

Referenced by setDefaults(), showDiagnostics(), paso::TransportProblem::solve(), and updateEscriptDiagnostics().

## tolerance

double paso::Options::tolerance

Referenced by setDefaults(), paso::Solver(), paso::Solver_NewtonGMRES(), paso::FCT_Solver::updateLCN(), and paso::FCT_Solver::updateNL().

## truncation

index_t paso::Options::truncation

Referenced by setDefaults(), and paso::Solver().

## use_local_preconditioner

bool paso::Options::use_local_preconditioner

Referenced by paso::FCT_Solver::initialize(), paso::Preconditioner_alloc(), and setDefaults().

## verbose

bool paso::Options::verbose

Referenced by paso::FCT_Solver::initialize(), paso::Preconditioner_alloc(), setDefaults(), show(), paso::SystemMatrix< T >::solve(), paso::TransportProblem::solve(), paso::Solver(), paso::Solver_NewtonGMRES(), paso::FCT_Solver::updateLCN(), and paso::FCT_Solver::updateNL().

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

- Options.h
- Options.cpp