petsc-3.12.1 2019-10-22
Report Typos and Errors

# MatXAIJSetPreallocation

set preallocation for serial and parallel AIJ, BAIJ, and SBAIJ matrices and their unassembled versions.

### Synopsis

    #include "petscmat.h"
    PetscErrorCode MatXAIJSetPreallocation(Mat A,PetscInt bs,const PetscInt dnnz[],const PetscInt onnz[],const PetscInt dnnzu[],const PetscInt onnzu[])

Collective on Mat

### Input Arguments

| A | - matrix being preallocated
| bs | - block size
| dnnz | - number of nonzero column blocks per block row of diagonal part of parallel matrix
| onnz | - number of nonzero column blocks per block row of off-diagonal part of parallel matrix
| dnnzu | - number of nonzero column blocks per block row of upper-triangular part of diagonal part of parallel matrix
| onnzu | - number of nonzero column blocks per block row of upper-triangular part of off-diagonal part of parallel matrix

### See Also

MatSeqAIJSetPreallocation(), MatMPIAIJSetPreallocation(), MatSeqBAIJSetPreallocation(), MatMPIBAIJSetPreallocation(), MatSeqSBAIJSetPreallocation(), MatMPISBAIJSetPreallocation(),
PetscSplitOwnership()

### Level

beginner

### Location

src/mat/utils/gcreate.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages