petsc-3.4.2 2013-07-02

# MatCreateSchurComplement

Creates a new matrix object that behaves like the Schur complement of a matrix

### Synopsis

    #include "petscksp.h"
    PetscErrorCode  MatCreateSchurComplement(Mat A00,Mat Ap00,Mat A01,Mat A10,Mat A11,Mat *N)

Collective on Mat

### Input Parameter

A00,A01,A10,A11 -the four parts of the original matrix (A00 is optional)

### Output Parameter

N -the matrix that the Schur complement A11 - A10 ksp(A00) A01

Notes: The Schur complement is NOT actually formed! Rather this object performs the matrix-vector product by using the the formula for the Schur complement and a KSP solver to approximate the action of inv(A)

All four matrices must have the same MPI communicator

A00 and A11 must be square matrices

### See Also

MatCreateNormal(), MatMult(), MatCreate(), MatSchurComplementGetKSP(), MatSchurComplementUpdate(), MatCreateTranspose(), MatGetSchurComplement()

Level:intermediate
Location: src/ksp/ksp/utils/schurm.c
Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages