DMSlicedSetPreallocation#
sets the matrix memory preallocation for matrices computed by DMSliced
Synopsis#
#include "petscdmsliced.h"
PetscErrorCode DMSlicedSetPreallocation(DM dm, PetscInt d_nz, const PetscInt d_nnz[], PetscInt o_nz, const PetscInt o_nnz[])
Not Collective
Input Parameters#
slice - the DM object
d_nz - number of block nonzeros per block row in diagonal portion of local submatrix (same for all local rows)
d_nnz - array containing the number of block nonzeros in the various block rows of the in diagonal portion of the local (possibly different for each block row) or NULL.
o_nz - number of block nonzeros per block row in the off-diagonal portion of local submatrix (same for all local rows).
o_nnz - array containing the number of nonzeros in the various block rows of the off-diagonal portion of the local submatrix (possibly different for each block row) or NULL.
Notes#
See MatMPIBAIJSetPreallocation() for more details on preallocation. If a scalar matrix (AIJ) is obtained with DMSlicedGetMatrix(), the correct preallocation will be set, respecting DMSlicedSetBlockFills().
See Also#
DMDestroy()
, DMCreateGlobalVector()
, MatMPIAIJSetPreallocation()
,
MatMPIBAIJSetPreallocation()
, DMSlicedGetMatrix()
, DMSlicedSetBlockFills()
Level#
advanced
Location#
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages