:orphan: # MATAIJPERM "AIJPERM" - A matrix type to be used for sparse matrices. This matrix type is identical to `MATSEQAIJPERM` when constructed with a single process communicator, and `MATMPIAIJPERM` otherwise. As a result, for single process communicators, `MatSeqAIJSetPreallocation()` is supported, and similarly `MatMPIAIJSetPreallocation()` is supported for communicators controlling multiple processes. It is recommended that you call both of the above preallocation routines for simplicity. ## Options Database Key - ***-mat_type aijperm -*** sets the matrix type to `MATAIJPERM` ## See Also [](ch_matrices), `Mat`, `MatCreateMPIAIJPERM()`, `MATSEQAIJPERM`, `MATMPIAIJPERM`, `MATSEQAIJ`, `MATMPIAIJ`, `MATSEQAIJMKL`, `MATMPIAIJMKL`, `MATSEQAIJSELL`, `MATMPIAIJSELL` ## Level beginner ## Location src/mat/impls/aij/mpi/aijperm/mpiaijperm.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/mat/impls/aij/mpi/aijperm/mpiaijperm.c) [Index of all Mat routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)