petsc-3.10.5 2019-03-28
Report Typos and Errors

# 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

src/dm/impls/sliced/sliced.c
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages