petsc-3.14.5 2021-03-03
Report Typos and Errors

# MatSetBlockSize

Sets the matrix block size.

### Synopsis

    #include "petscmat.h"
    PetscErrorCode MatSetBlockSize(Mat mat,PetscInt bs)

Logically Collective on Mat

### Input Parameters

| mat | - the matrix
| bs | - block size

### Notes

Block row formats are MATSEQBAIJ, MATMPIBAIJ, MATSEQSBAIJ, MATMPISBAIJ. These formats ALWAYS have square block storage in the matrix. This must be called before MatSetUp() or MatXXXSetPreallocation() (or will default to 1) and the block size cannot be changed later.

For MATMPIAIJ and MATSEQAIJ matrix formats, this function can be called at a later stage, provided that the specified block size is compatible with the matrix local sizes.

### See Also

MatCreateSeqBAIJ(), MatCreateBAIJ(), MatGetBlockSize(), MatSetBlockSizes(), MatGetBlockSizes()

### Level

intermediate

### Location

src/mat/interface/matrix.c

### Examples

src/ksp/ksp/tutorials/ex4.c.html
src/ksp/ksp/tutorials/ex55.c.html
src/ksp/ksp/tutorials/ex56.c.html
src/snes/tutorials/ex56.c.html
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages