MatCreateSeqSELL#
Creates a sparse matrix in MATSEQSELL
format.
Synopsis#
#include "petscmat.h"
PetscErrorCode MatCreateSeqSELL(MPI_Comm comm, PetscInt m, PetscInt n, PetscInt maxallocrow, const PetscInt rlen[], Mat *A)
Collective on comm
Input Parameters#
comm - MPI communicator, set to
PETSC_COMM_SELF
m - number of rows
n - number of columns
rlenmax - maximum number of nonzeros in a row
rlen - array containing the number of nonzeros in the various rows (possibly different for each row) or NULL
Output Parameter#
A - the matrix
It is recommended that one use the MatCreate()
, MatSetType()
and/or MatSetFromOptions()
,
MatXXXXSetPreallocation() paradigm instead of this routine directly.
[MatXXXXSetPreallocation() is, for example, MatSeqSELLSetPreallocation()
]
Notes#
If nnz is given then nz is ignored
Specify the preallocated storage with either rlenmax or rlen (not both).
Set rlenmax = PETSC_DEFAULT
and rlen = NULL for PETSc to control dynamic memory
allocation. For large problems you MUST preallocate memory or you
will get TERRIBLE performance, see the users’ manual chapter on matrices.
.seealso: Mat
, MATSEQSELL
, MatCreate()
, MatCreateSELL()
, MatSetValues()
, MatSeqSELLSetPreallocation()
, MATSELL
, MATSEQSELL
, MATMPISELL
Level#
intermediate
Location#
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages