# MatType

String with the name of a PETSc matrix or the creation function with an optional dynamic library name, for example http://www.mcs.anl.gov/petsc/lib.a:mymatcreate()

### Synopsis

    #define MatType const char*
    #define MATSAME            "same"
    #define MATSEQMAIJ         "seqmaij"
    #define MATMPIMAIJ         "mpimaij"
    #define MATMAIJ            "maij"
    #define MATIS              "is"
    #define MATMPIROWBS        "mpirowbs"
    #define MATSEQAIJ          "seqaij"
    #define MATMPIAIJ          "mpiaij"
    #define MATAIJ             "aij"
    #define MATSHELL           "shell"
    #define MATSEQBDIAG        "seqbdiag"
    #define MATMPIBDIAG        "mpibdiag"
    #define MATBDIAG           "bdiag"
    #define MATSEQDENSE        "seqdense"
    #define MATMPIDENSE        "mpidense"
    #define MATDENSE           "dense"
    #define MATSEQBAIJ         "seqbaij"
    #define MATMPIBAIJ         "mpibaij"
    #define MATBAIJ            "baij"
    #define MATMPIADJ          "mpiadj"
    #define MATSEQSBAIJ        "seqsbaij"
    #define MATMPISBAIJ        "mpisbaij"
    #define MATSBAIJ           "sbaij"
    #define MATDAAD            "daad"
    #define MATMFFD            "mffd"
    #define MATNORMAL          "normal"
    #define MATLRC             "lrc"
    #define MATSEQAIJSPOOLES   "seqaijspooles"
    #define MATMPIAIJSPOOLES   "mpiaijspooles"
    #define MATSEQSBAIJSPOOLES "seqsbaijspooles"
    #define MATMPISBAIJSPOOLES "mpisbaijspooles"
    #define MATAIJSPOOLES      "aijspooles"
    #define MATSBAIJSPOOLES    "sbaijspooles"
    #define MATSUPERLU         "superlu"
    #define MATSUPERLU_DIST    "superlu_dist"
    #define MATUMFPACK         "umfpack"
    #define MATESSL            "essl"
    #define MATLUSOL           "lusol"
    #define MATAIJMUMPS        "aijmumps"
    #define MATSBAIJMUMPS      "sbaijmumps"
    #define MATDSCPACK         "dscpack"
    #define MATMATLAB          "matlab"
    #define MATSEQCSRPERM      "seqcsrperm"
    #define MATMPICSRPERM      "mpicsrperm"
    #define MATCSRPERM         "csrperm"
    #define MATSEQCRL          "seqcrl"
    #define MATMPICRL          "mpicrl"
    #define MATCRL             "crl"
    #define MATPLAPACK         "plapack"
    #define MATSCATTER         "scatter"
    #define MATBLOCKMAT        "blockmat"
    #define MATCOMPOSITE       "composite"
    #define MATSEQFFTW         "seqfftw"

    /* Logging support */
    #define    MAT_FILE_COOKIE 1211216    /* used to indicate matrices in binary files */
    extern PetscCookie PETSCMAT_DLLEXPORT MAT_COOKIE;

### See Also

MatSetType(), Mat

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