GEOSX
Public Types | Public Attributes | List of all members
geos::LinearSolverParameters::Direct Struct Reference

Direct solver parameters: used for SuperLU_Dist interface through hypre and PETSc. More...

#include <LinearSolverParameters.hpp>

Public Types

enum  ColPerm : integer {
  ColPerm::none, ColPerm::MMD_AtplusA, ColPerm::MMD_AtA, ColPerm::colAMD,
  ColPerm::metis, ColPerm::parmetis
}
 How to permute the columns. More...
 
enum  RowPerm : integer { RowPerm::none, RowPerm::mc64 }
 How to permute the rows. More...
 

Public Attributes

integer checkResidual = 0
 Whether to check the linear system solution residual.
 
integer equilibrate = 1
 Whether to scale the rows and columns of the matrix.
 
ColPerm colPerm = ColPerm::metis
 Columns permutation.
 
RowPerm rowPerm = RowPerm::mc64
 Rows permutation.
 
integer replaceTinyPivot = 1
 Whether to replace tiny pivots by sqrt(epsilon)*norm(A)
 
integer iterativeRefine = 1
 Whether to perform iterative refinement.
 
integer parallel = 1
 Whether to use a parallel solver (instead of a serial one)
 

Detailed Description

Direct solver parameters: used for SuperLU_Dist interface through hypre and PETSc.

Definition at line 80 of file LinearSolverParameters.hpp.

Member Enumeration Documentation

◆ ColPerm

How to permute the columns.

Enumerator
none 

natural

MMD_AtplusA 

multiple minimum degree on At+A

MMD_AtA 

multiple minimum degree on At*A (heavy)

colAMD 

approximate minimum degree on columns

metis 

using METIS

parmetis 

using ParMETIS

Definition at line 85 of file LinearSolverParameters.hpp.

◆ RowPerm

How to permute the rows.

Enumerator
none 

natural

mc64 

using HSL routine MC64

Definition at line 98 of file LinearSolverParameters.hpp.


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