petsc-3.7.1 2016-05-15
Report Typos and Errors

MatSchurComplementSetSubMatrices

Sets the matrices that define the Schur complement

Synopsis

#include "petscksp.h" 
PetscErrorCode  MatSchurComplementSetSubMatrices(Mat S,Mat A00,Mat Ap00,Mat A01,Mat A10,Mat A11)
Collective on Mat Many br

Input Parameter

S - matrix obtained with MatCreateSchurComplement (or equivalent) and implementing the action of A11 - A10 ksp(A00,Ap00) A01 Many br
A00,A01,A10,A11 - the four parts of A = [A00 A01; A10 A11] (A11 is optional) Many br
Ap00 - preconditioning matrix for use in ksp(A00,Ap00) to approximate the action of A^{-1}. Many br

Many br

Notes: The Schur complement is NOT actually formed! Rather, this Many brobject performs the matrix-vector product by using formula S = A11 - A10 A^{-1} A01 Many brfor Schur complement S and a KSP solver to approximate the action of A^{-1}. Many br

All four matrices must have the same MPI communicator. Many br

A00 and A11 must be square matrices. Many br

See Also

MatCreateNormal(), MatMult(), MatCreate(), MatSchurComplementGetKSP(), MatSchurComplementUpdateSubMatrices(), MatCreateTranspose(), MatCreateSchurComplement(), 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