SlicedSetPreallocation

sets the matrix memory preallocation for matrices computed by Sliced

Synopsis

#include "petscda.h"     
#include "petscmat.h"    
#include "petscmat.h"    
PetscErrorCode PETSCDM_DLLEXPORT SlicedSetPreallocation(Sliced slice,PetscInt d_nz,const PetscInt d_nnz[],PetscInt o_nz,const PetscInt o_nnz[])
Not Collective

Input Parameters

slice - the Sliced 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 PETSC_NULL. You must leave room for the diagonal entry even if it is zero.
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 PETSC_NULL.

Notes

See MatMPIBAIJSetPreallocation() for more details on preallocation. If a scalar matrix (AIJ) is obtained with SlicedGetMatrix(), the correct preallocation will be set, respecting SlicedSetBlockFills().

See Also

SlicedDestroy(), SlicedCreateGlobalVector(), SlicedGetGlobalIndices(), MatMPIAIJSetPreallocation(),
MatMPIBAIJSetPreallocation(), SlicedGetMatrix(), SlicedSetBlockFills()

Level:advanced
Location:
src/dm/da/utils/sliced.c
Index of all DA routines
Table of Contents for all manual pages
Index of all manual pages