petsc-3.12.5 2020-03-29
Report Typos and Errors

MatSolverType

String with the name of a PETSc matrix solver type.

Synopsis

typedef const char* MatSolverType;
#define MATSOLVERSUPERLU          "superlu"
#define MATSOLVERSUPERLU_DIST     "superlu_dist"
#define MATSOLVERSTRUMPACK        "strumpack"
#define MATSOLVERUMFPACK          "umfpack"
#define MATSOLVERCHOLMOD          "cholmod"
#define MATSOLVERKLU              "klu"
#define MATSOLVERSPARSEELEMENTAL  "sparseelemental"
#define MATSOLVERELEMENTAL        "elemental"
#define MATSOLVERESSL             "essl"
#define MATSOLVERLUSOL            "lusol"
#define MATSOLVERMUMPS            "mumps"
#define MATSOLVERMKL_PARDISO      "mkl_pardiso"
#define MATSOLVERMKL_CPARDISO     "mkl_cpardiso"
#define MATSOLVERPASTIX           "pastix"
#define MATSOLVERMATLAB           "matlab"
#define MATSOLVERPETSC            "petsc"
#define MATSOLVERBAS              "bas"
#define MATSOLVERCUSPARSE         "cusparse"
#define MATSOLVERCUDA             "cuda"

For example: "petsc" indicates what PETSc provides, "superlu_dist" the parallel SuperLU_DIST package etc

Notes: MATSOLVERUMFPACK, MATSOLVERCHOLMOD, MATSOLVERKLU form the SuiteSparse package for which you can use --download-suitesparse

See Also

MatGetFactor(), PCFactorSetMatSolverType(), PCFactorGetMatSolverType()

Level

beginner

Location

src/mat/../../include/petscmat.h
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages