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

# MatCreateLocalRef

Gets a logical reference to a local submatrix, for use in assembly

### Synopsis

    #include "petscmat.h"
    PetscErrorCode  MatCreateLocalRef(Mat A,IS isrow,IS iscol,Mat *newmat)

Not Collective

### Input Arguments

| A | - Full matrix, generally parallel
| isrow | - Local index set for the rows
| iscol | - Local index set for the columns

### Output Arguments

| newmat | - New serial Mat

### Notes

Most will use MatGetLocalSubMatrix() which returns a real matrix corresponding to the local block if it available, such as with matrix formats that store these blocks separately.

The new matrix forwards MatSetValuesLocal() and MatSetValuesBlockedLocal() to the global system. In general, it does not define MatMult() or any other functions. Local submatrices can be nested.

### See Also

MatSetValuesLocal(), MatSetValuesBlockedLocal(), MatGetLocalSubMatrix(), MatCreateSubMatrix()

### Level

developer

### Location

src/mat/impls/localref/mlocalref.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages