#include "petscksp.h" PetscErrorCode MatSchurComplementSetSubMatrices(Mat S,Mat A00,Mat Ap00,Mat A01,Mat A10,Mat A11)Collective on S
S | - matrix obtained with MatSetType(S,MATSCHURCOMPLEMENT) | |
A00,A01,A10,A11 | - the four parts of A = [A00 A01; A10 A11] (A11 is optional) | |
Ap00 | - preconditioning matrix for use in ksp(A00,Ap00) to approximate the action of A^{-1}. |
All four matrices must have the same MPI communicator.
A00 and A11 must be square matrices.
This is to be used in the context of code such as
MatSetType(S,MATSCHURCOMPLEMENT);
MatSchurComplementSetSubMatrices(S,...);
while MatSchurComplementUpdateSubMatrices() should only be called after MatCreateSchurComplement() or MatSchurComplementSetSubMatrices()