MatXAIJSetPreallocation#

set preallocation for serial and parallel MATAIJ, MATBAIJ, and MATSBAIJ 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

Input Parameters#

  • 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#

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

Level#

beginner

Location#

src/mat/utils/gcreate.c


Edit on GitLab

Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages