petscmaster 20200531
MatCreateSeqAIJPERM
Creates a sparse matrix of type SEQAIJPERM. This type inherits from AIJ, but calculates some additional permutation information that is used to allow better vectorization of some operations. At the cost of increased storage, the AIJ formatted matrix can be copied to a format in which pieces of the matrix are stored in ELLPACK format, allowing the vectorized matrix multiply routine to use stride1 memory accesses. As with the AIJ type, it is important to preallocate matrix storage in order to get good assembly performance.
Synopsis
PetscErrorCode MatCreateSeqAIJPERM(MPI_Comm comm,PetscInt m,PetscInt n,PetscInt nz,const PetscInt nnz[],Mat *A)
Collective
Input Parameters
 comm   MPI communicator, set to PETSC_COMM_SELF

 m   number of rows

 n   number of columns

 nz   number of nonzeros per row (same for all rows)

 nnz   array containing the number of nonzeros in the various rows
(possibly different for each row) or NULL

Output Parameter
A the matrix
Notes
If nnz is given then nz is ignored
See Also
MatCreate(), MatCreateMPIAIJPERM(), MatSetValues()
Level
intermediate
Location
src/mat/impls/aij/seq/aijperm/aijperm.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages