PETSc version 3.15.5
Fix/Edit manual page

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 MATSOLVERSCALAPACK        "scalapack"
#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 MATSOLVERCUSPARSEBAND     "cusparseband"
#define MATSOLVERCUDA             "cuda"
#define MATSOLVERKOKKOS           "kokkos"
#define MATSOLVERKOKKOSDEVICE     "kokkosdevice"

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

Notes: MATSOLVERUMFPACK, MATSOLVERCHOLMOD, MATSOLVERKLU, MATSOLVERSPQR 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