Skip to main content
`Ctrl`+`K`

# MatSTRUMPACKReordering

sparsity reducing ordering to be used in `MATSOLVERSTRUMPACK`

## Synopsis

    typedef enum {
      MAT_STRUMPACK_NATURAL,
      MAT_STRUMPACK_METIS,
      MAT_STRUMPACK_PARMETIS,
      MAT_STRUMPACK_SCOTCH,
      MAT_STRUMPACK_PTSCOTCH,
      MAT_STRUMPACK_RCM,
      MAT_STRUMPACK_GEOMETRIC,
      MAT_STRUMPACK_AMD,
      MAT_STRUMPACK_MMD,
      MAT_STRUMPACK_AND,
      MAT_STRUMPACK_MLF,
      MAT_STRUMPACK_SPECTRAL
    } MatSTRUMPACKReordering;

## Values

- `MAT_STRUMPACK_NATURAL` - use the current ordering

- `MAT_STRUMPACK_METIS` - use MeTis to compute an ordering

- `MAT_STRUMPACK_PARMETIS` - use ParMeTis to compute an ordering

- `MAT_STRUMPACK_SCOTCH` - use Scotch to compute an ordering

- `MAT_STRUMPACK_PTSCOTCH` - use parallel Scotch to compute an ordering

- `MAT_STRUMPACK_RCM` - use an RCM ordering

- `MAT_STRUMPACK_GEOMETRIC` - use a geometric ordering (needs mesh info from user)

- `MAT_STRUMPACK_AMD` - approximate minimum degree

- `MAT_STRUMPACK_MMD` - multiple minimum degree

- `MAT_STRUMPACK_AND` - approximate nested dissection

- `MAT_STRUMPACK_MLF` - minimum local fill

- `MAT_STRUMPACK_SPECTRAL` - spectral nested dissection

## Developer Note

Should be called `MatSTRUMPACKReorderingType`

## See Also

`Mat`, `MATSOLVERSTRUMPACK`, `MatGetFactor()`, `MatSTRUMPACKSetReordering()`

## Level

intermediate

## Location

include/petscmat.h

## Examples

src/ksp/ksp/tutorials/ex52.c

## Examples

src/ksp/ksp/tutorials/ex52.c

## Examples

src/ksp/ksp/tutorials/ex52.c

## Examples

src/ksp/ksp/tutorials/ex52.c

Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages