petsc-3.14.6 2021-03-30
Report Typos and Errors

MatCreateSeqSELL

Creates a sparse matrix in SELL format.

Synopsis

#include "petscmat.h"  
PetscErrorCode MatCreateSeqSELL(MPI_Comm comm,PetscInt m,PetscInt n,PetscInt maxallocrow,const PetscInt rlen[],Mat *A)
Collective

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: MatCreate(), MatCreateSELL(), MatSetValues()

Level

intermediate

Location

src/mat/impls/sell/seq/sell.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages