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

# MATNEST

MATNEST = "nest" - Matrix type consisting of nested submatrices, each stored separately.

### Notes

This matrix type permits scalable use of PCFieldSplit and avoids the large memory costs of extracting submatrices. It allows the use of symmetric and block formats for parts of multi-physics simulations. It is usually used with DMComposite and DMCreateMatrix()

Each of the submatrices lives on the same MPI communicator as the original nest matrix (though they can have zero rows/columns on some processes.) Thus this is not meant for cases where the submatrices live on far fewer processes than the nest matrix.

### See Also

MatCreate(), MatType, MatCreateNest(), MatNestSetSubMat(), MatNestGetSubMat(),
VecCreateNest(), DMCreateMatrix(), DMCOMPOSITE, MatNestSetVecType(), MatNestGetLocalISs(), MatNestGetISs(), MatNestSetSubMats(), MatNestGetSubMats()

### Level

intermediate

### Location

src/mat/impls/nest/matnest.c

### Examples

src/snes/tutorials/ex28.c.html
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages