Skip to main content
`Ctrl`+`K`

# MATSOLVERPASTIX

A solver package providing direct solvers (LU) for distributed and sequential matrices via the external package PaStiX. Use `./configure --download-hwloc --download-metis --download-ptscotch --download-pastix --download-netlib-lapack [or MKL for ex. --with-blaslapack-dir=${MKLROOT}]` to have PETSc installed with PasTiX.

Use `-pc_type lu` `-pc_factor_mat_solver_type pastix` to use this direct solver.

## Options Database Keys

-mat_pastix_verbose <0,1,2> - print level of information messages from PaStiX -mat_pastix_factorization <0,1,2,3,4> - Factorization algorithm (Cholesky, LDL^t, LU, LL^t, LDL^h) -mat_pastix_itermax - Maximum number of iterations during refinement -mat_pastix_epsilon_refinement - Epsilon for refinement -mat_pastix_epsilon_magn_ctrl - Epsilon for magnitude control -mat_pastix_ordering <0,1> - Ordering (Scotch or Metis) -mat_pastix_thread_nbr - Set the numbers of threads for each MPI process -mat_pastix_scheduler <0,1,2,3,4> - Scheduler (sequential, static, parsec, starpu, dynamic) -mat_pastix_compress_when <0,1,2,3> - When to compress (never, minimal-theory, just-in-time, supernodes) -mat_pastix_compress_tolerance - Tolerance for low-rank kernels.

## Notes

This only works for matrices with symmetric nonzero structure, if you pass it a matrix with nonsymmetric structure PasTiX, and hence, PETSc return with an error.

## See Also

Matrices, `Mat`, `PCFactorSetMatSolverType()`, `MatSolverType`, `MatGetFactor()`

## Level

beginner

## Location

src/mat/impls/aij/mpi/pastix/pastix.c

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