A configuration class holding options for use within the different linear solvers. More...
#include <config.hpp>
Public Types | |
typedef std::vector< std::pair< std::size_t, std::size_t > > | block_preconditioner_boundaries_container |
![]() | |
enum | { dense_linear_solver , serial_linear_solver , parallel_linear_solver , gpu_parallel_linear_solver , petsc_parallel_linear_solver , petsc_parallel_AMGX_solver } |
Public Member Functions | |
linear_solver_config () | |
void | scale (bool value) |
Controls the scaling of unkowns. Give "false" to disable unkown scaling. More... | |
bool | scale () const |
Returns whether or not the unkowns are scaled before solving the equation set. More... | |
long | id () const |
Returns the current linear solver ID. More... | |
void | set (long solver_id) |
Sets a new linear solver. Provide IDs defined in. More... | |
void | set (std::string solver_name) |
Sets a new linear solver. Provide IDs defined in. More... | |
void | finalize_petsc () |
double | tolerance () const |
Returns the tolerance for the (iterative) linear solver. More... | |
void | tolerance (double tol) |
Sets the tolerance for the (iterative) linear solver. Non-positive values are ignored. More... | |
std::size_t | max_iters () const |
Returns the maximum number of iterative linear solver iterations. More... | |
void | max_iters (std::size_t iters) |
Sets the maximum number of iterations within the iterative linear solver. More... | |
std::size_t | ilut_entries () const |
Returns the maximum number of entries in each of the two factors of the ILUT preconditioner. More... | |
void | ilut_entries (std::size_t num) |
Sets the maximum number of entries in each of the two factors of the ILUT preconditioner. More... | |
double | ilut_drop_tolerance () const |
Returns the drop tolerance for the ILUT preconditioenr. More... | |
void | ilut_drop_tolerance (double tol) |
Sets the drop tolerance for the ILUT preconditioner. Non-positive values are ignored. More... | |
block_preconditioner_boundaries_container & | block_preconditioner_boundaries () |
block_preconditioner_boundaries_container const & | block_preconditioner_boundaries () const |
int | getArgc () const |
void | setArgc (int argc) |
char ** | getArgv () const |
void | setArgv (char **argv) |
void | finalize () const |
A configuration class holding options for use within the different linear solvers.
Internal note: May require a bit more polishing, particularly with respect to preconditioners
Definition at line 56 of file config.hpp.
typedef std::vector<std::pair<std::size_t, std::size_t> > viennashe::solvers::linear_solver_config::block_preconditioner_boundaries_container |
Definition at line 59 of file config.hpp.
|
inline |
Definition at line 61 of file config.hpp.
|
inline |
Definition at line 188 of file config.hpp.
|
inline |
Definition at line 192 of file config.hpp.
|
inline |
Definition at line 217 of file config.hpp.
|
inline |
Definition at line 138 of file config.hpp.
|
inline |
Definition at line 197 of file config.hpp.
|
inline |
Definition at line 207 of file config.hpp.
|
inline |
Returns the current linear solver ID.
Definition at line 79 of file config.hpp.
|
inline |
Returns the drop tolerance for the ILUT preconditioenr.
Definition at line 177 of file config.hpp.
|
inline |
Sets the drop tolerance for the ILUT preconditioner. Non-positive values are ignored.
Definition at line 182 of file config.hpp.
|
inline |
Returns the maximum number of entries in each of the two factors of the ILUT preconditioner.
Definition at line 166 of file config.hpp.
|
inline |
Sets the maximum number of entries in each of the two factors of the ILUT preconditioner.
Definition at line 171 of file config.hpp.
|
inline |
Returns the maximum number of iterative linear solver iterations.
Definition at line 155 of file config.hpp.
|
inline |
Sets the maximum number of iterations within the iterative linear solver.
Definition at line 160 of file config.hpp.
|
inline |
Returns whether or not the unkowns are scaled before solving the equation set.
Definition at line 73 of file config.hpp.
|
inline |
Controls the scaling of unkowns. Give "false" to disable unkown scaling.
Definition at line 68 of file config.hpp.
|
inline |
Sets a new linear solver. Provide IDs defined in.
Definition at line 84 of file config.hpp.
|
inline |
Sets a new linear solver. Provide IDs defined in.
Definition at line 104 of file config.hpp.
|
inline |
Definition at line 202 of file config.hpp.
|
inline |
Definition at line 212 of file config.hpp.
|
inline |
Returns the tolerance for the (iterative) linear solver.
Definition at line 143 of file config.hpp.
|
inline |
Sets the tolerance for the (iterative) linear solver. Non-positive values are ignored.
Definition at line 148 of file config.hpp.