petsc-3.12.4 2020-02-04
Report Typos and Errors

# MatFactorGetSchurComplement

Gets access to a Schur complement matrix using the current Schur data within a factored matrix

### Synopsis

    #include "petscmat.h"
    PetscErrorCode MatFactorGetSchurComplement(Mat F,Mat* S,MatFactorSchurStatus* status)

Logically Collective on Mat

### Input Parameters

| F | - the factored matrix obtained by calling MatGetFactor()
| *S | - location where to return the Schur complement, can be NULL
| status | - the status of the Schur complement matrix, can be NULL

### Notes

You must call MatFactorSetSchurIS() before calling this routine.

Schur complement mode is currently implemented for sequential matrices. The routine returns a the Schur Complement stored within the data strutures of the solver. If MatFactorInvertSchurComplement() has previously been called, the returned matrix is actually the inverse of the Schur complement. The returned matrix should not be destroyed; the caller should call MatFactorRestoreSchurComplement() when the object is no longer needed.

Use MatFactorCreateSchurComplement() to create a copy of the Schur complement matrix that is within a factored matrix

See MatCreateSchurComplement() or MatGetSchurComplement() for ways to create virtual or approximate Schur complements.

### References

### See Also

MatGetFactor(), MatFactorSetSchurIS(), MatFactorRestoreSchurComplement(), MatFactorCreateSchurComplement(), MatFactorSchurStatus

### Level

advanced

### Location

src/mat/interface/matrix.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages