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 | 
  Public Types inherited from viennashe::solvers::linear_solver_ids | |
| 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.