# MatFactorGetSolverType
Returns name of the package providing the factorization routines 
## Synopsis
```
#include "petscmat.h" 
PetscErrorCode MatFactorGetSolverType(Mat mat, MatSolverType *type)
```
Not Collective


## Input Parameter

- ***mat -*** the matrix, must be a factored matrix



## Output Parameter

- ***type -*** the string name of the package (do not free this string)



## Note
In Fortran you pass in a empty string and the package name will be copied into it.
(Make sure the string is long enough)




## See Also
 [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSolverType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/interface/matrix.c.html#MatFactorGetSolverType">src/mat/interface/matrix.c</A>

## Implementations

<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/aij/mpi/clique/clique.cxx.html#MatFactorGetSolverType_SparseElemental">MatFactorGetSolverType_SparseElemental in src/mat/impls/aij/mpi/clique/clique.cxx</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/aij/mpi/mumps/mumps.c.html#MatFactorGetSolverType_mumps">MatFactorGetSolverType_mumps in src/mat/impls/aij/mpi/mumps/mumps.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/aij/mpi/pastix/pastix.c.html#MatFactorGetSolverType_pastix">MatFactorGetSolverType_pastix in src/mat/impls/aij/mpi/pastix/pastix.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/aij/seq/aijfact.c.html#MatFactorGetSolverType_petsc">MatFactorGetSolverType_petsc in src/mat/impls/aij/seq/aijfact.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/aij/seq/essl/essl.c.html#MatFactorGetSolverType_essl">MatFactorGetSolverType_essl in src/mat/impls/aij/seq/essl/essl.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/aij/seq/kokkos/aijkok.kokkos.cxx.html#MatFactorGetSolverType_SeqAIJKokkos">MatFactorGetSolverType_SeqAIJKokkos in src/mat/impls/aij/seq/kokkos/aijkok.kokkos.cxx</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/baij/seq/baijfact.c.html#MatFactorGetSolverType_petsc">MatFactorGetSolverType_petsc in src/mat/impls/baij/seq/baijfact.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/sbaij/seq/sbaij.c.html#MatFactorGetSolverType_petsc">MatFactorGetSolverType_petsc in src/mat/impls/sbaij/seq/sbaij.c</A><BR>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/mat/interface/matrix.c)


[Index of all Mat routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
