|
GEOS
|
Set of parameters for a linear solver or preconditioner. More...
#include <LinearSolverParameters.hpp>
Classes | |
| struct | AMG |
| Algebraic multigrid parameters. More... | |
| struct | Block |
| Block preconditioner parameters. More... | |
| struct | Chebyshev |
| Chebyshev iteration/smoothing parameters. More... | |
| struct | DD |
| Domain decomposition parameters. More... | |
| struct | Direct |
| Direct solver parameters: used for SuperLU_Dist interface through hypre and PETSc. More... | |
| struct | IFact |
| Incomplete factorization parameters. More... | |
| struct | Krylov |
| Krylov-method parameters. More... | |
| struct | MGR |
| Multigrid reduction parameters. More... | |
| struct | Multiscale |
| Multiscale preconditioner parameters. More... | |
| struct | Relaxation |
| Relaxation/stationary iteration parameters (Richardson, damped Jacobi, etc.) More... | |
| struct | Scaling |
| Matrix-scaling parameters. More... | |
Public Types | |
| enum class | SolverType : integer { direct , cg , gmres , fgmres , bicgstab , richardson , preconditioner } |
| Linear solver type. More... | |
| enum class | PreconditionerType : integer { none , jacobi , l1jacobi , fgs , sgs , l1sgs , chebyshev , iluk , ilut , ick , ict , amg , mgr , block , direct , bgs , multiscale } |
| Preconditioner type. More... | |
Public Attributes | |
| integer | logLevel = 0 |
| Output level [0=none, 1=basic, 2=everything]. | |
| integer | dofsPerNode = 1 |
| Dofs per node (or support location) for non-scalar problems. | |
| bool | isSymmetric = false |
| Whether input matrix is symmetric (may affect choice of scheme) | |
| integer | stopIfError = 1 |
| Whether to stop the simulation if the linear solver reports an error. | |
| SolverType | solverType = SolverType::direct |
| Solver type. | |
| PreconditionerType | preconditionerType = PreconditionerType::iluk |
| Preconditioner type. | |
| struct geos::LinearSolverParameters::Direct | direct |
| direct solver parameter struct | |
| struct geos::LinearSolverParameters::Krylov | krylov |
| Krylov-method parameter struct. | |
| struct geos::LinearSolverParameters::Relaxation | relaxation |
| Relaxation method parameters. | |
| struct geos::LinearSolverParameters::Chebyshev | chebyshev |
| Chebyshev smoother parameters. | |
| struct geos::LinearSolverParameters::Scaling | scaling |
| Matrix-scaling parameter struct. | |
| struct geos::LinearSolverParameters::AMG | amg |
| Algebraic Multigrid (AMG) parameters. | |
| struct geos::LinearSolverParameters::MGR | mgr |
| Multigrid reduction (MGR) parameters. | |
| struct geos::LinearSolverParameters::IFact | ifact |
| Incomplete factorization parameter struct. | |
| struct geos::LinearSolverParameters::DD | dd |
| Domain decomposition parameter struct. | |
| struct geos::LinearSolverParameters::Block | block |
| Block preconditioner parameters. | |
| struct geos::LinearSolverParameters::Multiscale | multiscale |
| Multiscale preconditioner parameters. | |
Set of parameters for a linear solver or preconditioner.
This class holds a simple tree of linear solver options. They are set to default values, but can be overwritten as needed.
Definition at line 35 of file LinearSolverParameters.hpp.
|
strong |
Preconditioner type.
| Enumerator | |
|---|---|
| none | No preconditioner. |
| jacobi | Jacobi smoothing. |
| l1jacobi | l1-Jacobi smoothing |
| fgs | Gauss-Seidel smoothing (forward sweep) |
| sgs | Symmetric Gauss-Seidel smoothing. |
| l1sgs | l1-Symmetric Gauss-Seidel smoothing |
| chebyshev | Chebyshev polynomial smoothing. |
| iluk | Incomplete LU with k-level of fill. |
| ilut | Incomplete LU with thresholding. |
| ick | Incomplete Cholesky with k-level of fill. |
| ict | Incomplete Cholesky with thresholding. |
| amg | Algebraic Multigrid. |
| mgr | Multigrid reduction (Hypre only) |
| block | Block preconditioner. |
| direct | Direct solver as preconditioner. |
| bgs | Gauss-Seidel smoothing (backward sweep) |
| multiscale | Multiscale preconditioner. |
Definition at line 54 of file LinearSolverParameters.hpp.
|
strong |
Linear solver type.
| Enumerator | |
|---|---|
| direct | Direct solver. |
| cg | CG. |
| gmres | GMRES. |
| fgmres | Flexible GMRES. |
| bicgstab | BiCGStab. |
| richardson | Richardson iteration. |
| preconditioner | Preconditioner only. |
Definition at line 40 of file LinearSolverParameters.hpp.